diff options
author | Takashi Kokubun <takashikkbn@gmail.com> | 2020-06-25 22:21:12 -0700 |
---|---|---|
committer | Takashi Kokubun <takashikkbn@gmail.com> | 2020-06-25 22:21:43 -0700 |
commit | 9dbc2294a6c35f201d9a05d8b02f818c05d6f399 (patch) | |
tree | 1db4ecff421bbbe1b8a4c8cdc9a451985ba99871 /test | |
parent | a640bcee048a25730d259e6e95568111d70443f1 (diff) |
Collect insns from a child process
to make sure :opt_invokebuiltin_delegate_leave doesn't become
:(trace_)opt_invokebuiltin_delegate.
This is to prevent a warning like
> /tmp/ruby/v3/src/trunk-test/test/ruby/test_jit.rb:618: warning:
'opt_invokebuiltin_delegate_leave' insn is not included in the script.
Actual insns are: opt_invokebuiltin_delegate leave
Diffstat (limited to 'test')
-rw-r--r-- | test/ruby/test_jit.rb | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/test/ruby/test_jit.rb b/test/ruby/test_jit.rb index c70a6b2650..339bfa2193 100644 --- a/test/ruby/test_jit.rb +++ b/test/ruby/test_jit.rb @@ -614,7 +614,10 @@ class TestJIT < Test::Unit::TestCase def test_compile_insn_opt_invokebuiltin_delegate_leave skip 'ld SEGVs for this' if RUBY_PLATFORM.start_with?("s390x-") - insns = collect_insns(RubyVM::InstructionSequence.of("\x00".method(:unpack)).to_a) + iseq = eval(EnvUtil.invoke_ruby(['-e', <<~'EOS'], '', true).first) + p RubyVM::InstructionSequence.of("\x00".method(:unpack)).to_a + EOS + insns = collect_insns(iseq) mark_tested_insn(:opt_invokebuiltin_delegate_leave, used_insns: insns) assert_eval_with_jit('print "\x00".unpack("c")', stdout: '[0]', success_count: 1) end |