@@ -2893,7 +2893,7 @@ static int zend_jit(const zend_op_array *op_array, zend_ssa *ssa, const zend_op
2893
2893
}
2894
2894
end = ssa -> cfg .blocks [b ].start + ssa -> cfg .blocks [b ].len - 1 ;
2895
2895
for (i = ssa -> cfg .blocks [b ].start ; i <= end ; i ++ ) {
2896
- zend_ssa_op * ssa_op = & ssa -> ops [i ];
2896
+ zend_ssa_op * ssa_op = ssa -> ops ? & ssa -> ops [i ] : NULL ;
2897
2897
opline = op_array -> opcodes + i ;
2898
2898
switch (opline -> opcode ) {
2899
2899
case ZEND_INIT_FCALL :
@@ -2924,6 +2924,7 @@ static int zend_jit(const zend_op_array *op_array, zend_ssa *ssa, const zend_op
2924
2924
res_use_info = -1 ;
2925
2925
2926
2926
if (opline -> result_type == IS_CV
2927
+ && ssa -> vars
2927
2928
&& ssa_op -> result_use >= 0
2928
2929
&& !ssa -> vars [ssa_op -> result_use ].no_val ) {
2929
2930
zend_jit_addr res_use_addr = RES_USE_REG_ADDR ();
@@ -2984,6 +2985,7 @@ static int zend_jit(const zend_op_array *op_array, zend_ssa *ssa, const zend_op
2984
2985
res_use_info = -1 ;
2985
2986
2986
2987
if (opline -> result_type == IS_CV
2988
+ && ssa -> vars
2987
2989
&& ssa_op -> result_use >= 0
2988
2990
&& !ssa -> vars [ssa_op -> result_use ].no_val ) {
2989
2991
zend_jit_addr res_use_addr = RES_USE_REG_ADDR ();
@@ -3037,6 +3039,7 @@ static int zend_jit(const zend_op_array *op_array, zend_ssa *ssa, const zend_op
3037
3039
res_use_info = -1 ;
3038
3040
3039
3041
if (opline -> result_type == IS_CV
3042
+ && ssa -> vars
3040
3043
&& ssa_op -> result_use >= 0
3041
3044
&& !ssa -> vars [ssa_op -> result_use ].no_val ) {
3042
3045
zend_jit_addr res_use_addr = RES_USE_REG_ADDR ();
0 commit comments