diff options
author | Aaron Patterson <[email protected]> | 2021-07-15 11:09:08 -0700 |
---|---|---|
committer | Alan Wu <[email protected]> | 2021-10-20 18:19:37 -0400 |
commit | 05b5a7f01139a3c9610b80194e4385928dd4cd55 (patch) | |
tree | 78c9436e69de0b12b2073ba1b4a5c103dd920b28 /yjit_core.c | |
parent | 0fdcdd267f7c3a482467f60e00049b88da1ae88c (diff) |
Add a guard that we start executing on the first PC
Methods with optional parameters don't always start executing at the
first PC, but we compile all methods assuming that they do. This commit
adds a guard to ensure that we're actually starting at the first PC for
methods with optional params
Diffstat (limited to 'yjit_core.c')
-rw-r--r-- | yjit_core.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/yjit_core.c b/yjit_core.c index 22527e24a6..988f034fc9 100644 --- a/yjit_core.c +++ b/yjit_core.c @@ -535,7 +535,7 @@ uint8_t* gen_entry_point(const rb_iseq_t *iseq, uint32_t insn_idx, rb_execution_ blockid_t blockid = { iseq, insn_idx }; // Write the interpreter entry prologue - uint8_t* code_ptr = yjit_entry_prologue(); + uint8_t* code_ptr = yjit_entry_prologue(iseq); // Try to generate code for the entry block block_t* block = gen_block_version(blockid, &DEFAULT_CTX, ec); |