summaryrefslogtreecommitdiff
path: root/include/ruby/atomic.h
diff options
context:
space:
mode:
authorAlan Wu <XrXr@users.noreply.github.com>2025-12-16 14:53:31 -0500
committerGitHub <noreply@github.com>2025-12-16 14:53:31 -0500
commitf3d1557d5c04d7bc0bfa931869fbb35d14592c53 (patch)
tree4eb83f5b5112fbfdf644ef96e35ac63179ae36c0 /include/ruby/atomic.h
parent4fb537b1ee28bb37dbe551ac65c279d436c756bc (diff)
Revert "ZJIT: Allow ccalls above 7 arguments"
This reverts commit 2f151e76b5dc578026706b31f054d5caf5374b05. The SP decrement (push) before the call do not match up with the pops after the call, so registers were restored incorrectly. Code from: ./miniruby --zjit-call-threshold=1 --zjit-dump-disasm -e 'p Time.new(1992, 9, 23, 23, 0, 0, :std)' str x11, [sp, #-0x10]! str x12, [sp, #-0x10]! stur x7, [sp] # last argument mov x0, x20 mov x7, x6 mov x6, x5 mov x5, x4 mov x4, x3 mov x3, x2 mov x2, x1 ldur x1, [x29, #-0x20] mov x16, #0xccfc movk x16, #0x2e7, lsl #16 movk x16, #1, lsl #32 blr x16 ldr x12, [sp], #0x10 # supposed to match str x12, [sp, #-0x10]!, but got last argument ldr x11, [sp], #0x10
Diffstat (limited to 'include/ruby/atomic.h')
0 files changed, 0 insertions, 0 deletions