diff options
-rw-r--r-- | ext/opcache/jit/zend_jit_trace.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/ext/opcache/jit/zend_jit_trace.c b/ext/opcache/jit/zend_jit_trace.c index b73177ee58..f04bfc6442 100644 --- a/ext/opcache/jit/zend_jit_trace.c +++ b/ext/opcache/jit/zend_jit_trace.c @@ -883,6 +883,11 @@ static int is_checked_guard(const zend_ssa *tssa, const zend_op **ssa_opcodes, u || opline->opcode == ZEND_POST_DEC || opline->opcode == ZEND_POST_INC) { return 1; + } else if (opline->opcode == ZEND_ASSIGN_OP + && (opline->extended_value == ZEND_ADD + || opline->extended_value == ZEND_SUB + || opline->extended_value == ZEND_MUL)) { + return 1; } } if (tssa->ops[idx].result_def == var) { |