Skip to content

Commit c3bb308

Browse files
committed
local variable through ep experiment
vibe a b Revert "a" fix call in jit entry (
1 parent 9a55fc5 commit c3bb308

2 files changed

Lines changed: 66 additions & 230 deletions

File tree

zjit/src/backend/lir.rs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ use std::fmt;
33
use std::mem::take;
44
use std::rc::Rc;
55
use crate::bitset::BitSet;
6-
use crate::codegen::{local_size_and_idx_to_ep_offset, perf_symbol_range_start, perf_symbol_range_end};
6+
use crate::codegen::{perf_symbol_range_start, perf_symbol_range_end};
77
use crate::cruby::{IseqPtr, Qundef, RUBY_OFFSET_CFP_ISEQ, RUBY_OFFSET_CFP_JIT_RETURN, RUBY_OFFSET_CFP_PC, RUBY_OFFSET_CFP_SP, SIZEOF_VALUE_I32, vm_stack_canary};
88
use crate::hir::{Invariant, SideExitReason};
99
use crate::hir;
@@ -2621,7 +2621,7 @@ impl Assembler
26212621
pub fn compile_exits(&mut self) -> Vec<Insn> {
26222622
/// Restore VM state (cfp->pc, cfp->sp, stack, locals) for the side exit.
26232623
fn compile_exit_save_state(asm: &mut Assembler, exit: &SideExit) {
2624-
let SideExit { pc, stack, locals, iseq, .. } = exit;
2624+
let SideExit { pc, stack, iseq, .. } = exit;
26252625

26262626
// Side exit blocks are not part of the CFG at the moment,
26272627
// so we need to manually ensure that patchpoints get padded
@@ -2646,12 +2646,12 @@ impl Assembler
26462646
}
26472647
}
26482648

2649-
if !locals.is_empty() {
2650-
asm_comment!(asm, "write locals: {}", join_opnds(&locals, ", "));
2651-
for (idx, &opnd) in locals.iter().enumerate() {
2652-
asm.store(Opnd::mem(64, SP, (-local_size_and_idx_to_ep_offset(locals.len(), idx) - 1) * SIZEOF_VALUE_I32), opnd);
2653-
}
2654-
}
2649+
// if !locals.is_empty() {
2650+
// asm_comment!(asm, "write locals: {}", join_opnds(&locals, ", "));
2651+
// for (idx, &opnd) in locals.iter().enumerate() {
2652+
// asm.store(Opnd::mem(64, SP, (-local_size_and_idx_to_ep_offset(locals.len(), idx) - 1) * SIZEOF_VALUE_I32), opnd);
2653+
// }
2654+
// }
26552655
}
26562656

26572657
/// Tear down the JIT frame and return to the interpreter.

0 commit comments

Comments
 (0)