Skip to content

Commit 1271dae

Browse files
committed
Fixed incorrect register allocation
1 parent e5fd93e commit 1271dae

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

ext/opcache/jit/zend_jit_trace.c

+6
Original file line numberDiff line numberDiff line change
@@ -3172,6 +3172,12 @@ static zend_jit_reg_var* zend_jit_trace_allocate_registers(zend_jit_trace_rec *t
31723172
idx++;
31733173
while (opline->opcode == ZEND_RECV_INIT) {
31743174
/* RECV_INIT doesn't support registers */
3175+
#ifdef ZEND_JIT_IR
3176+
if (ssa_op->result_use >= 0 && RA_HAS_IVAL(ssa_op->result_use)) {
3177+
RA_IVAL_DEL(ssa_op->result_use);
3178+
count--;
3179+
}
3180+
#endif
31753181
if (ssa_op->result_def >= 0) {
31763182
RA_IVAL_CLOSE(EX_VAR_TO_NUM(opline->result.var), idx);
31773183
SET_STACK_VAR(stack, EX_VAR_TO_NUM(opline->result.var), ssa_op->result_def);

0 commit comments

Comments
 (0)