summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorTakashi Kokubun <takashikkbn@gmail.com>2020-06-25 22:21:12 -0700
committerTakashi Kokubun <takashikkbn@gmail.com>2020-06-25 22:21:43 -0700
commit9dbc2294a6c35f201d9a05d8b02f818c05d6f399 (patch)
tree1db4ecff421bbbe1b8a4c8cdc9a451985ba99871 /test
parenta640bcee048a25730d259e6e95568111d70443f1 (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.rb5
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