diff options
author | Takashi Kokubun <[email protected]> | 2023-12-13 09:36:06 -0800 |
---|---|---|
committer | GitHub <[email protected]> | 2023-12-13 09:36:06 -0800 |
commit | 0f1c7e3bcb2ee0cb38d228ba0d23f52ceef5623c (patch) | |
tree | c68784c146a1fb29f7a09a97b8ee2ebb87778abd /lib | |
parent | c83a648fc827ac1430bd1f08f5af19f7174e02aa (diff) |
RJIT: Just skip generating code for aarch64/arm64 (#9221)
Diffstat (limited to 'lib')
-rw-r--r-- | lib/ruby_vm/rjit/compiler.rb | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/ruby_vm/rjit/compiler.rb b/lib/ruby_vm/rjit/compiler.rb index 9ae528a0e9..2c4e1d67cf 100644 --- a/lib/ruby_vm/rjit/compiler.rb +++ b/lib/ruby_vm/rjit/compiler.rb @@ -59,6 +59,7 @@ module RubyVM::RJIT # @param iseq `RubyVM::RJIT::CPointer::Struct_rb_iseq_t` # @param cfp `RubyVM::RJIT::CPointer::Struct_rb_control_frame_t` def compile(iseq, cfp) + return unless supported_platform? pc = cfp.pc.to_i jit = JITState.new(iseq:, cfp:) asm = Assembler.new @@ -505,5 +506,12 @@ module RubyVM::RJIT raise "'#{cond.inspect}' was not true" end end + + def supported_platform? + return @supported_platform if defined?(@supported_platform) + @supported_platform = RUBY_PLATFORM.match?(/x86_64/).tap do |supported| + warn "warning: RJIT does not support #{RUBY_PLATFORM} yet" unless supported + end + end end end |