Skip to content

Commit e417f6f

Browse files
committed
ZJIT: Remove dead function and set .freeze reason
1 parent 491be57 commit e417f6f

File tree

1 file changed

+1
-24
lines changed

1 file changed

+1
-24
lines changed

zjit/src/hir.rs

Lines changed: 1 addition & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -2249,33 +2249,10 @@ impl Function {
22492249
if 0 != ci_flags & VM_CALL_FORWARDING { self.push_insn(block, Insn::IncrCounter(complex_arg_pass_caller_forwarding)); }
22502250
}
22512251

2252-
fn try_rewrite_fixnum_op(&mut self, block: BlockId, orig_insn_id: InsnId, f: &dyn Fn(InsnId, InsnId) -> Insn, bop: u32, left: InsnId, right: InsnId, state: InsnId) {
2253-
if !unsafe { rb_BASIC_OP_UNREDEFINED_P(bop, INTEGER_REDEFINED_OP_FLAG) } {
2254-
// If the basic operation is already redefined, we cannot optimize it.
2255-
self.set_dynamic_send_reason(orig_insn_id, SendWithoutBlockBopRedefined);
2256-
self.push_insn_id(block, orig_insn_id);
2257-
return;
2258-
}
2259-
if self.likely_a(left, types::Fixnum, state) && self.likely_a(right, types::Fixnum, state) {
2260-
if bop == BOP_NEQ {
2261-
// For opt_neq, the interpreter checks that both neq and eq are unchanged.
2262-
self.push_insn(block, Insn::PatchPoint { invariant: Invariant::BOPRedefined { klass: INTEGER_REDEFINED_OP_FLAG, bop: BOP_EQ }, state });
2263-
}
2264-
self.push_insn(block, Insn::PatchPoint { invariant: Invariant::BOPRedefined { klass: INTEGER_REDEFINED_OP_FLAG, bop }, state });
2265-
let left = self.coerce_to(block, left, types::Fixnum, state);
2266-
let right = self.coerce_to(block, right, types::Fixnum, state);
2267-
let result = self.push_insn(block, f(left, right));
2268-
self.make_equal_to(orig_insn_id, result);
2269-
self.insn_types[result.0] = self.infer_type(result);
2270-
} else {
2271-
self.set_dynamic_send_reason(orig_insn_id, SendWithoutBlockOperandsNotFixnum);
2272-
self.push_insn_id(block, orig_insn_id);
2273-
}
2274-
}
2275-
22762252
fn rewrite_if_frozen(&mut self, block: BlockId, orig_insn_id: InsnId, self_val: InsnId, klass: u32, bop: u32, state: InsnId) {
22772253
if !unsafe { rb_BASIC_OP_UNREDEFINED_P(bop, klass) } {
22782254
// If the basic operation is already redefined, we cannot optimize it.
2255+
self.set_dynamic_send_reason(orig_insn_id, SendWithoutBlockBopRedefined);
22792256
self.push_insn_id(block, orig_insn_id);
22802257
return;
22812258
}

0 commit comments

Comments
 (0)