Skip to content

Commit 9cb8bcf

Browse files
committed
Use bound spill slots for CV (once again)
1 parent 18be07f commit 9cb8bcf

File tree

1 file changed

+8
-8
lines changed

1 file changed

+8
-8
lines changed

ext/opcache/jit/zend_jit_ir.c

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1231,10 +1231,10 @@ static ir_ref jit_Z_DVAL_ref(zend_jit_ctx *jit, ir_ref ref)
12311231

12321232
static bool zend_jit_spilling_may_cause_conflict(zend_jit_ctx *jit, int var, ir_ref val)
12331233
{
1234-
// if (jit->ctx.ir_base[val].op == IR_RLOAD) {
1235-
// /* Deoptimization */
1236-
// return 0;
1237-
// }
1234+
if (jit->ctx.ir_base[val].op == IR_RLOAD) {
1235+
/* Deoptimization */
1236+
return 0;
1237+
}
12381238
// if (jit->ctx.ir_base[val].op == IR_LOAD
12391239
// && jit->ctx.ir_base[jit->ctx.ir_base[val].op2].op == IR_ADD
12401240
// && jit->ctx.ir_base[jit->ctx.ir_base[jit->ctx.ir_base[val].op2].op1].op == IR_RLOAD
@@ -1245,10 +1245,10 @@ static bool zend_jit_spilling_may_cause_conflict(zend_jit_ctx *jit, int var, ir_
12451245
// // TODO: should be anti-dependent with the following stores ???
12461246
// return 0;
12471247
// }
1248-
// if (jit->ssa->vars[var].var < jit->current_op_array->last_var) {
1249-
// /* IS_CV */
1250-
// return 0;
1251-
// }
1248+
if (jit->ssa->vars[var].var < jit->current_op_array->last_var) {
1249+
/* IS_CV */
1250+
return 0;
1251+
}
12521252
return 1;
12531253
}
12541254

0 commit comments

Comments
 (0)