aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--test/ruby/test_jit.rb8
-rw-r--r--tool/ruby_vm/views/_mjit_compile_insn_body.erb4
2 files changed, 6 insertions, 6 deletions
diff --git a/test/ruby/test_jit.rb b/test/ruby/test_jit.rb
index c70bf962c0..625af12f77 100644
--- a/test/ruby/test_jit.rb
+++ b/test/ruby/test_jit.rb
@@ -686,10 +686,12 @@ class TestJIT < Test::Unit::TestCase
end
def test_stack_pointer_with_regexpmatch
- skip
- assert_eval_with_jit("#{<<~"begin;"}\n#{<<~"end;"}", stdout: "nil\nnil\n", success_count: 1)
+ assert_eval_with_jit("#{<<~"begin;"}\n#{<<~"end;"}", stdout: "aa", success_count: 1)
begin;
- 1000.times { break if /a/ =~ "ab" && !$~[0] }
+ 2.times do
+ break if /a/ =~ "ab" && !$~[0]
+ print $~[0]
+ end
end;
end
diff --git a/tool/ruby_vm/views/_mjit_compile_insn_body.erb b/tool/ruby_vm/views/_mjit_compile_insn_body.erb
index 66c4314380..0fef07da25 100644
--- a/tool/ruby_vm/views/_mjit_compile_insn_body.erb
+++ b/tool/ruby_vm/views/_mjit_compile_insn_body.erb
@@ -69,9 +69,7 @@
% end
% when /\A\s+DISPATCH_ORIGINAL_INSN\([^)]+\);\s+\z/
% # For `opt_xxx`'s fallbacks.
- if (!body->catch_except_p) {
- fprintf(f, " reg_cfp->pc = original_body_iseq + %d;\n", pos);
- }
+ fprintf(f, " reg_cfp->pc = original_body_iseq + %d;\n", pos);
fprintf(f, " goto cancel;\n");
% else
fprintf(f, <%= to_cstr.call(line) %>);