summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@zend.com>2020-07-17 13:03:35 +0300
committerDmitry Stogov <dmitry@zend.com>2020-07-17 13:03:35 +0300
commit83478d4fe0e186b4ce2505b44f73a38896dd5d71 (patch)
treed1620c91ce02b57077925d81e5a18463681bbf44
parent1cba736470fbe40dffb611c1b351f729f2c469a3 (diff)
downloadphp-git-83478d4fe0e186b4ce2505b44f73a38896dd5d71.tar.gz
Side exit on overflow
-rw-r--r--ext/opcache/jit/zend_jit_trace.c5
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) {