summaryrefslogtreecommitdiff
path: root/lib/ruby_vm/rjit
diff options
context:
space:
mode:
authorTakashi Kokubun <[email protected]>2024-01-16 17:23:46 -0800
committerTakashi Kokubun <[email protected]>2024-01-16 17:27:53 -0800
commite37a37e696fdb97a3028f04d8439c010d52adb62 (patch)
tree89c69e354b1b430fc16fe74189f2974d3b95d65f /lib/ruby_vm/rjit
parent1addb3955c456b01bb029b30dd6343298da0729d (diff)
Drop obsoleted BUILTIN_ATTR_NO_GC attribute
The thing that has used this in the past was very buggy, and we've never revisied it. Let's remove it until we need it again.
Diffstat (limited to 'lib/ruby_vm/rjit')
-rw-r--r--lib/ruby_vm/rjit/insn_compiler.rb11
1 files changed, 4 insertions, 7 deletions
diff --git a/lib/ruby_vm/rjit/insn_compiler.rb b/lib/ruby_vm/rjit/insn_compiler.rb
index c3a3e31f24..6440944944 100644
--- a/lib/ruby_vm/rjit/insn_compiler.rb
+++ b/lib/ruby_vm/rjit/insn_compiler.rb
@@ -4924,13 +4924,10 @@ module RubyVM::RJIT
asm.comment('inlined leaf builtin')
- # Skip this if it doesn't trigger GC
- if iseq.body.builtin_attrs & C::BUILTIN_ATTR_NO_GC == 0
- # The callee may allocate, e.g. Integer#abs on a Bignum.
- # Save SP for GC, save PC for allocation tracing, and prepare
- # for global invalidation after GC's VM lock contention.
- jit_prepare_routine_call(jit, ctx, asm)
- end
+ # The callee may allocate, e.g. Integer#abs on a Bignum.
+ # Save SP for GC, save PC for allocation tracing, and prepare
+ # for global invalidation after GC's VM lock contention.
+ jit_prepare_routine_call(jit, ctx, asm)
# Call the builtin func (ec, recv, arg1, arg2, ...)
asm.mov(C_ARGS[0], EC)