diff options
author | John Hawthorn <[email protected]> | 2024-11-28 00:59:04 -0800 |
---|---|---|
committer | Alan Wu <[email protected]> | 2024-11-28 15:04:12 -0500 |
commit | a5119a3f27c368f649198f7a3b7dce726d9bd2a0 (patch) | |
tree | 73c8d7cc1ac65d8e8f38e7211d6240f0de3ead6f /yjit/src/codegen.rs | |
parent | 50a34637a4bdd64a709937f09c839195a2b1d967 (diff) |
YJIT: Add missing prepare before calling str_dup
Notes
Notes:
Merged: https://github.com/ruby/ruby/pull/12202
Diffstat (limited to 'yjit/src/codegen.rs')
-rw-r--r-- | yjit/src/codegen.rs | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/yjit/src/codegen.rs b/yjit/src/codegen.rs index d0888c39c5..07c8d726d9 100644 --- a/yjit/src/codegen.rs +++ b/yjit/src/codegen.rs @@ -6123,7 +6123,7 @@ fn jit_rb_str_to_s( } fn jit_rb_str_dup( - _jit: &mut JITState, + jit: &mut JITState, asm: &mut Assembler, _ci: *const rb_callinfo, _cme: *const rb_callable_method_entry_t, @@ -6137,6 +6137,8 @@ fn jit_rb_str_dup( } asm_comment!(asm, "String#dup"); + jit_prepare_call_with_gc(jit, asm); + // Check !FL_ANY_RAW(str, FL_EXIVAR), which is part of BARE_STRING_P. let recv_opnd = asm.stack_pop(1); let recv_opnd = asm.load(recv_opnd); |