]> granicus.if.org Git - php/commitdiff
JIT extension may be NULL
authorDmitry Stogov <dmitry@zend.com>
Tue, 18 Aug 2020 06:28:13 +0000 (09:28 +0300)
committerDmitry Stogov <dmitry@zend.com>
Tue, 18 Aug 2020 06:28:13 +0000 (09:28 +0300)
ext/opcache/jit/zend_jit_trace.c

index b8a4f6ac86f2526436e8d45f46b06938eb118109..6d28780fc5c7eab6c33c868aa539bddc32ec45b4 100644 (file)
@@ -4596,7 +4596,6 @@ done:
                                        if (JIT_G(opt_level) >= ZEND_JIT_LEVEL_INLINE) {
                                                zend_jit_op_array_trace_extension *jit_extension =
                                                        (zend_jit_op_array_trace_extension*)ZEND_FUNC_INFO(p->op_array);
-                                               zend_ssa *op_array_ssa = &jit_extension->func_info.ssa;
 
                                                i = 0;
                                                while (i < p->op_array->num_args) {
@@ -4605,7 +4604,8 @@ done:
                                                        i++;
                                                }
                                                while (i < p->op_array->last_var) {
-                                                       if (zend_jit_var_may_be_modified_indirectly(p->op_array, op_array_ssa, i)) {
+                                                       if (jit_extension
+                                                        && zend_jit_var_may_be_modified_indirectly(p->op_array, &jit_extension->func_info.ssa, i)) {
                                                                SET_STACK_TYPE(call->stack, i, IS_UNKNOWN);
                                                        } else {
                                                                SET_STACK_TYPE(call->stack, i, IS_UNDEF);