diff --git a/bootstraptest/runner.rb b/bootstraptest/runner.rb index 3d423902545a8d..d7289f5a95b14f 100755 --- a/bootstraptest/runner.rb +++ b/bootstraptest/runner.rb @@ -720,4 +720,8 @@ def check_coredump end end +def mmtk? + `#{BT.ruby} -e 'p defined?(GC::MMTk)'`.strip == '"constant"' +end + exit main diff --git a/bootstraptest/test_ractor.rb b/bootstraptest/test_ractor.rb index b29db7ab0eb8de..12d0fff5a642e1 100644 --- a/bootstraptest/test_ractor.rb +++ b/bootstraptest/test_ractor.rb @@ -1,3 +1,5 @@ +return if mmtk? + # Ractor.current returns a current ractor assert_equal 'Ractor', %q{ Ractor.current.class diff --git a/bootstraptest/test_thread.rb b/bootstraptest/test_thread.rb index 5361828403e7df..5648769898e2f9 100644 --- a/bootstraptest/test_thread.rb +++ b/bootstraptest/test_thread.rb @@ -1,3 +1,5 @@ +return if mmtk? + show_limit %q{ threads = [] begin diff --git a/bootstraptest/test_yjit.rb b/bootstraptest/test_yjit.rb index 7158486d5048ff..6313b82f73a732 100644 --- a/bootstraptest/test_yjit.rb +++ b/bootstraptest/test_yjit.rb @@ -1,3 +1,5 @@ +return if mmtk? + assert_equal 'true', %q{ # regression test for tracking type of locals for too long def local_setting_cmp(five) diff --git a/bootstraptest/test_yjit_30k_ifelse.rb b/bootstraptest/test_yjit_30k_ifelse.rb index c3afa95e4dd718..23cd61beb2d971 100644 --- a/bootstraptest/test_yjit_30k_ifelse.rb +++ b/bootstraptest/test_yjit_30k_ifelse.rb @@ -1,3 +1,5 @@ +return if mmtk? + # This is a torture test for the JIT. # There are 30K tiny methods with if-else statements in a 30-deep call hierarchy. assert_equal '100000', %q{ diff --git a/bootstraptest/test_yjit_30k_methods.rb b/bootstraptest/test_yjit_30k_methods.rb index f2acea4ce5d274..c1c2b7edda40db 100644 --- a/bootstraptest/test_yjit_30k_methods.rb +++ b/bootstraptest/test_yjit_30k_methods.rb @@ -1,3 +1,5 @@ +return if mmtk? + # This is a torture test for the JIT. # There are 30K tiny methods in a 30-deep call hierarchy. assert_equal '1000000', %q{ diff --git a/bootstraptest/test_yjit_rust_port.rb b/bootstraptest/test_yjit_rust_port.rb index e399e0e49ef637..b7d3fc62dcc9af 100644 --- a/bootstraptest/test_yjit_rust_port.rb +++ b/bootstraptest/test_yjit_rust_port.rb @@ -1,3 +1,5 @@ +return if mmtk? + # Simple tests that we know we can pass # To keep track of what we got working during the Rust port # And avoid breaking/losing functionality