summaryrefslogtreecommitdiff
path: root/lib/net/http.rb
diff options
context:
space:
mode:
authorAlan Wu <[email protected]>2022-11-10 17:24:10 -0500
committerAlan Wu <[email protected]>2022-11-11 11:13:07 -0500
commit04c5adf80697a310f12f473b5ef772d234576f2b (patch)
tree3b454a97a678f5237bc0b4c4467b5f809fa2c7c4 /lib/net/http.rb
parent90bbc891b192c30432c517ccb279ed687bb2d0b4 (diff)
YJIT: Fix staying in invalidated code after proc calls
Previously, there is no instruction boundary patch point after the call to a non-leaf C function we generate for OPTIMIZED_METHOD_TYPE_CALL. This meant that if code GC is triggered while inside the C function, we would keep running invalidated code when we return from the C function. This had the effect of running stale branch stubs, jumping to bad code, etc. Use jit_prepare_routine_call() to make sure we exit from the invalidated region as soon as possible after the C call in case of invalidation.
Notes
Notes: Merged: https://github.com/ruby/ruby/pull/6711
Diffstat (limited to 'lib/net/http.rb')
0 files changed, 0 insertions, 0 deletions