Re-compile MJIT entry on constant IC update

This commit is contained in:
Takashi Kokubun 2023-02-24 14:38:22 -08:00
parent 15cea7fd0d
commit 5576da7900
Notes: git 2023-03-06 07:29:52 +00:00

View File

@ -133,6 +133,12 @@ module RubyVM::MJIT
list_blocks(iseq, pc).each do |block|
invalidate_block(iseq, block)
end
# If they were the ISEQ's first blocks, re-compile MJIT entry as well
if iseq.body.iseq_encoded.to_i == pc
iseq.body.jit_func = 0
iseq.body.total_calls = 0
end
end
private
@ -255,7 +261,6 @@ module RubyVM::MJIT
@cb.write(branch_asm)
end
end
# TODO: Reset jit_func and total_calls if it's the first block after prelude
end
def list_blocks(iseq, pc)