test/lib/jit_support.rb: fire test_jit everywhere

That was a workaround to make rubyci green for a short term after the
MJIT merge. As we've done many portability fixes for MJIT, let's try
running test_jit on all rubyci platforms.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65175 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
k0kubun 2018-10-19 14:03:37 +00:00
Родитель 4765da9c58
Коммит 2baf760cc2
4 изменённых файлов: 3 добавлений и 37 удалений

Просмотреть файл

@ -195,7 +195,7 @@ before_script:
script:
- "$SETARCH make -s test TESTOPTS=--color=never"
- "$SETARCH make -s $JOBS test-all -o exts TESTOPTS='-q --color=never --job-status=normal' RUBY_FORCE_TEST_JIT=1"
- "$SETARCH make -s $JOBS test-all -o exts TESTOPTS='-q --color=never --job-status=normal'"
- "$SETARCH make -s $JOBS test-spec MSPECOPT=-j"
# Branch matrix. Not all branches are Travis-ready so we limit branches here.

Просмотреть файл

@ -92,7 +92,7 @@ for:
- set /a JOBS=%NUMBER_OF_PROCESSORS%
- nmake -l "TESTOPTS=-v -q" btest
- nmake -l "TESTOPTS=-v -q" test-basic
- nmake -l "TESTOPTS=-q -j%JOBS% --subprocess-timeout-scale=1.5 --exclude win32ole --exclude test_syntax --exclude test_open-uri" test-all RUBY_FORCE_TEST_JIT=1
- nmake -l "TESTOPTS=-q -j%JOBS% --subprocess-timeout-scale=1.5 --exclude win32ole --exclude test_syntax --exclude test_open-uri" test-all
# separately execute tests that may crash worker without -j.
- nmake -l "TESTOPTS=-q --subprocess-timeout-scale=1.5" test-all TESTS="../test/win32ole ../test/ruby/test_syntax.rb ../test/open-uri/test_open-uri.rb"
- nmake -l test-spec MSPECOPT=-fs
@ -135,5 +135,5 @@ for:
- mingw32-make DESTDIR=../install install-nodoc
test_script:
- mingw32-make test
- mingw32-make test-all TESTOPTS="-j %JOBS% --retry --job-status=normal --show-skip --subprocess-timeout-scale=1.5" RUBY_FORCE_TEST_JIT=1 V=1
- mingw32-make test-all TESTOPTS="-j %JOBS% --retry --job-status=normal --show-skip --subprocess-timeout-scale=1.5"
- mingw32-make test-spec MSPECOPT=-j

Просмотреть файл

@ -6,27 +6,6 @@ module JITSupport
'clang',
]
def self.check_support
# Experimental. If you want to ensure JIT is working with this test, please set this for now.
if ENV.key?('RUBY_FORCE_TEST_JIT')
return true
end
# Very pessimistic check. With this check, we can't ensure JIT is working.
begin
_, err = JITSupport.eval_with_jit_without_retry('proc {}.call', verbose: 1, min_calls: 1, timeout: 10)
rescue Timeout::Error
$stderr.puts "TestJIT: #jit_supported? check timed out"
false
else
err.match?(JIT_SUCCESS_PREFIX).tap do |success|
unless success
$stderr.puts "TestJIT.check_support stderr:\n```\n#{err}\n```\n"
end
end
end
end
module_function
# Run Ruby script with --jit-wait (Synchronous JIT compilation).
# Returns [stdout, stderr]
@ -56,15 +35,6 @@ module JITSupport
)
end
def supported?
return @supported if defined?(@supported)
@supported = JITSupport.check_support.tap do |supported|
unless supported
warn "JIT tests are skipped since JIT seems not working. Set RUBY_FORCE_TEST_JIT=1 to let it fail.", uplevel: 1
end
end
end
def remove_mjit_logs(stderr)
if RubyVM::MJIT.enabled?
stderr.gsub(/^MJIT warning: Skipped to compile unsupported instruction: \w+\n/m, '')

Просмотреть файл

@ -32,10 +32,6 @@ class TestJIT < Test::Unit::TestCase
end
def setup
unless JITSupport.supported?
skip 'JIT seems not supported on this platform'
end
# ruby -w -Itest/lib test/ruby/test_jit.rb
if $VERBOSE && !defined?(@@at_exit_hooked)
at_exit do