diff options
author | Dmitry Stogov <dmitry@zend.com> | 2020-07-28 00:14:28 +0300 |
---|---|---|
committer | Dmitry Stogov <dmitry@zend.com> | 2020-07-28 00:14:28 +0300 |
commit | 226617d35804464cda33a1adf0424327da0cde42 (patch) | |
tree | 0c4744245c945af4382280e03b731404941880d5 | |
parent | 274131e4afaa2c2ac07350ef153ebf207baa7b0b (diff) | |
download | php-git-226617d35804464cda33a1adf0424327da0cde42.tar.gz |
Update abstarct stack before guard to keep proper type in side trace
-rw-r--r-- | ext/opcache/jit/zend_jit_trace.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/ext/opcache/jit/zend_jit_trace.c b/ext/opcache/jit/zend_jit_trace.c index e558a48705..abedddec7c 100644 --- a/ext/opcache/jit/zend_jit_trace.c +++ b/ext/opcache/jit/zend_jit_trace.c @@ -4125,6 +4125,7 @@ static const void *zend_jit_trace(zend_jit_trace_rec *trace_buffer, uint32_t par } if (opline->op1_type != IS_CONST && (p+1)->op == ZEND_JIT_TRACE_INIT_CALL && (p+1)->func) { + SET_STACK_TYPE(stack, EX_VAR_TO_NUM(opline->result.var), IS_OBJECT); if (!zend_jit_init_fcall_guard(&dasm_state, opline, (p+1)->func, opline+1)) { goto jit_failure; } |