mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
sync vm->constant_cache
On multi-ractors, `vm->constant_cache` (and so on) can be accessed in parallel so we need to synchronize the accesses to them. http://rubyci.s3.amazonaws.com/centos7/ruby-master/log/20220407T213003Z.log.html.gz#btest
This commit is contained in:
parent
9ca3d537b9
commit
798e21637f
Notes:
git
2022-04-08 13:31:49 +09:00
1 changed files with 6 additions and 1 deletions
|
@ -4963,7 +4963,12 @@ static void
|
||||||
vm_ic_compile(rb_control_frame_t *cfp, IC ic)
|
vm_ic_compile(rb_control_frame_t *cfp, IC ic)
|
||||||
{
|
{
|
||||||
const rb_iseq_t *iseq = cfp->iseq;
|
const rb_iseq_t *iseq = cfp->iseq;
|
||||||
rb_iseq_each(iseq, cfp->pc - ISEQ_BODY(iseq)->iseq_encoded, vm_ic_compile_i, (void *) ic);
|
|
||||||
|
RB_VM_LOCK_ENTER();
|
||||||
|
{
|
||||||
|
rb_iseq_each(iseq, cfp->pc - ISEQ_BODY(iseq)->iseq_encoded, vm_ic_compile_i, (void *) ic);
|
||||||
|
}
|
||||||
|
RB_VM_LOCK_LEAVE();
|
||||||
}
|
}
|
||||||
|
|
||||||
// For MJIT inlining
|
// For MJIT inlining
|
||||||
|
|
Loading…
Add table
Reference in a new issue