From 320d7c54ba01a6a19ebec25dadab7196da95f3e7 Mon Sep 17 00:00:00 2001 From: k0kubun Date: Fri, 19 Oct 2018 15:08:55 +0000 Subject: mjit.c: don't let MJIT.pause hang on full active units test/ruby/test_rubyvm_mjit.rb: add reproductive test [Bug #15071] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65179 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/ruby/test_rubyvm_mjit.rb | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'test/ruby') diff --git a/test/ruby/test_rubyvm_mjit.rb b/test/ruby/test_rubyvm_mjit.rb index ce4940ba2d..b41ad78510 100644 --- a/test/ruby/test_rubyvm_mjit.rb +++ b/test/ruby/test_rubyvm_mjit.rb @@ -33,6 +33,18 @@ class TestRubyVMMJIT < Test::Unit::TestCase ) end + def test_pause_does_not_hang_on_full_units + out, _ = eval_with_jit(<<~'EOS', verbose: 1, min_calls: 1, max_cache: 10, wait: false) + i = 0 + while i < 11 + eval("def mjit#{i}; end; mjit#{i}") + i += 1 + end + print RubyVM::MJIT.pause + EOS + assert_equal('true', out) + end + def test_pause_wait_false out, err = eval_with_jit(<<~'EOS', verbose: 1, min_calls: 1, wait: false) i = 0 -- cgit v1.2.3