Skip to content

Commit 2758ff2

Browse files
committed
Tracing: Prevent recording types of variables used to pass zend_class_entry
1 parent af1a7b7 commit 2758ff2

File tree

1 file changed

+14
-0
lines changed

1 file changed

+14
-0
lines changed

ext/opcache/jit/zend_jit_vm_helpers.c

+14
Original file line numberDiff line numberDiff line change
@@ -649,6 +649,20 @@ zend_jit_trace_stop ZEND_FASTCALL zend_jit_trace_execute(zend_execute_data *ex,
649649
if (opline->op2_type & (IS_TMP_VAR|IS_VAR|IS_CV)
650650
&& opline->opcode != ZEND_INSTANCEOF
651651
&& opline->opcode != ZEND_UNSET_STATIC_PROP
652+
&& opline->opcode != ZEND_ISSET_ISEMPTY_STATIC_PROP
653+
&& opline->opcode != ZEND_ASSIGN_STATIC_PROP
654+
&& opline->opcode != ZEND_ASSIGN_STATIC_PROP_REF
655+
&& opline->opcode != ZEND_ASSIGN_STATIC_PROP_OP
656+
&& opline->opcode != ZEND_PRE_INC_STATIC_PROP
657+
&& opline->opcode != ZEND_POST_INC_STATIC_PROP
658+
&& opline->opcode != ZEND_PRE_DEC_STATIC_PROP
659+
&& opline->opcode != ZEND_POST_DEC_STATIC_PROP
660+
&& opline->opcode != ZEND_FETCH_STATIC_PROP_R
661+
&& opline->opcode != ZEND_FETCH_STATIC_PROP_W
662+
&& opline->opcode != ZEND_FETCH_STATIC_PROP_RW
663+
&& opline->opcode != ZEND_FETCH_STATIC_PROP_IS
664+
&& opline->opcode != ZEND_FETCH_STATIC_PROP_FUNC_ARG
665+
&& opline->opcode != ZEND_FETCH_STATIC_PROP_UNSET
652666
&& (opline->op2_type == IS_CV
653667
|| (opline->opcode != ZEND_FE_FETCH_R
654668
&& opline->opcode != ZEND_FE_FETCH_RW))) {

0 commit comments

Comments
 (0)