From a624a5d709e6ee76cbda63b09fe1f99ae6c0e9be Mon Sep 17 00:00:00 2001 From: Takashi Kokubun Date: Sat, 25 Mar 2023 21:57:02 -0700 Subject: [PATCH] RJIT: Scope down send_iseq_complex_has_block exit --- lib/ruby_vm/rjit/insn_compiler.rb | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/lib/ruby_vm/rjit/insn_compiler.rb b/lib/ruby_vm/rjit/insn_compiler.rb index 6d36342d12deac..163395ecf42c9a 100644 --- a/lib/ruby_vm/rjit/insn_compiler.rb +++ b/lib/ruby_vm/rjit/insn_compiler.rb @@ -4858,8 +4858,12 @@ def jit_setup_parameters_complex(jit, ctx, asm, flags, argc, iseq, arg_setup_typ end if iseq.body.param.flags.has_block - asm.incr_counter(:send_iseq_complex_has_block) - return CantCompile + if iseq.body.local_iseq.to_i == iseq.to_i + # Do nothing + else + asm.incr_counter(:send_iseq_complex_has_block) + return CantCompile + end end return opt_pc