[前][次][番号順一覧][スレッド一覧]

ruby-changes:73431

From: Takashi <ko1@a...>
Date: Mon, 5 Sep 2022 18:02:55 +0900 (JST)
Subject: [ruby-changes:73431] 915cbdb226 (master): Stop testing MJIT on s390x

https://git.ruby-lang.org/ruby.git/commit/?id=915cbdb226

From 915cbdb226ebc618f78df05527e82de392aa4152 Mon Sep 17 00:00:00 2001
From: Takashi Kokubun <takashikkbn@g...>
Date: Mon, 5 Sep 2022 02:02:13 -0700
Subject: Stop testing MJIT on s390x

It didn't work either.
http://rubyci.s3.amazonaws.com/s390x/ruby-master/log/20220905T080003Z.fail.html.gz
---
 doc/mjit.md             |  2 +-
 test/lib/jit_support.rb | 24 +++++++++---------------
 2 files changed, 10 insertions(+), 16 deletions(-)

diff --git a/doc/mjit.md b/doc/mjit.md
index 2ca1ce5d4f..9622a3bc26 100644
--- a/doc/mjit.md
+++ b/doc/mjit.md
@@ -14,7 +14,7 @@ The following platforms are either tested on CI or assumed to work. https://github.com/ruby/ruby/blob/trunk/doc/mjit.md#L14
 The MJIT support for the following platforms is no longer maintained.
 
 * OS: Windows (mswin, MinGW), Solaris
-* Arch: SPARC
+* Arch: SPARC, s390x
 
 ### Architectures
 
diff --git a/test/lib/jit_support.rb b/test/lib/jit_support.rb
index 3846749016..1ea8da094e 100644
--- a/test/lib/jit_support.rb
+++ b/test/lib/jit_support.rb
@@ -9,6 +9,10 @@ module JITSupport https://github.com/ruby/ruby/blob/trunk/test/lib/jit_support.rb#L9
     %r[\A.*/bin/intel64/icc\b],
     %r[\A/opt/developerstudio\d+\.\d+/bin/cc\z],
   ]
+  UNSUPPORTED_ARCHITECTURES = [
+    's390x',
+    'sparc',
+  ]
   # debian-riscv64: "gcc: internal compiler error: Segmentation fault signal terminated program cc1" https://rubyci.org/logs/rubyci.s3.amazonaws.com/debian-riscv64/ruby-master/log/20200420T083601Z.fail.html.gz
   # freebsd12: cc1 internal failure https://rubyci.org/logs/rubyci.s3.amazonaws.com/freebsd12/ruby-master/log/20200306T103003Z.fail.html.gz
   # rhel8: one or more PCH files were found, but they were invalid https://rubyci.org/logs/rubyci.s3.amazonaws.com/rhel8/ruby-master/log/20200306T153003Z.fail.html.gz
@@ -55,11 +59,13 @@ module JITSupport https://github.com/ruby/ruby/blob/trunk/test/lib/jit_support.rb#L59
     )
   end
 
+  # For MJIT
   def supported?
     return @supported if defined?(@supported)
-    @supported = RbConfig::CONFIG["MJIT_SUPPORT"] != 'no' && UNSUPPORTED_COMPILERS.all? do |regexp|
-      !regexp.match?(RbConfig::CONFIG['MJIT_CC'])
-    end && !appveyor_pdb_corrupted? && !PENDING_RUBYCI_NICKNAMES.include?(ENV['RUBYCI_NICKNAME'])
+    @supported = RbConfig::CONFIG["MJIT_SUPPORT"] != 'no' &&
+      UNSUPPORTED_COMPILERS.all? { |regexp| !regexp.match?(RbConfig::CONFIG['MJIT_CC']) } &&
+      !PENDING_RUBYCI_NICKNAMES.include?(ENV['RUBYCI_NICKNAME']) &&
+      !UNSUPPORTED_ARCHITECTURES.include?(RUBY_PLATFORM.split('-', 2).first)
   end
 
   def yjit_supported?
@@ -67,18 +73,6 @@ module JITSupport https://github.com/ruby/ruby/blob/trunk/test/lib/jit_support.rb#L73
     RUBY_PLATFORM.match?(/^(x86_64|x64|arm64|aarch64)-/)
   end
 
-  # AppVeyor's Visual Studio 2013 / 2015 are known to spuriously generate broken pch / pdb, like:
-  # error C2859: c:\projects\ruby\x64-mswin_120\include\ruby-2.8.0\x64-mswin64_120\rb_mjit_header-2.8.0.pdb
-  # is not the pdb file that was used when this precompiled header was created, recreate the precompiled header.
-  # https://ci.appveyor.com/project/ruby/ruby/builds/32159878/job/l2p38snw8yxxpp8h
-  #
-  # Until we figure out why, this allows us to skip testing JIT when it happens.
-  def appveyor_pdb_corrupted?
-    return false unless ENV.key?('APPVEYOR')
-    stdout, _stderr, _status = eval_with_jit_without_retry('proc {}.call', verbose: 2, min_calls: 1)
-    stdout.include?('.pdb is not the pdb file that was used when this precompiled header was created, recreate the precompiled header.')
-  end
-
   def remove_mjit_logs(stderr)
     if defined?(RubyVM::MJIT) && RubyVM::MJIT.enabled? # utility for -DFORCE_MJIT_ENABLE
       stderr.gsub(/^MJIT warning: Skipped to compile unsupported instruction: \w+\n/m, '')
-- 
cgit v1.2.1


--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]