16
16
* +----------------------------------------------------------------------+
17
17
*/
18
18
19
- #include "../../../ Zend/zend_type_info.h"
19
+ #include "Zend/zend_type_info.h"
20
20
#include "jit/ir/ir.h"
21
21
#include "jit/ir/ir_builder.h"
22
22
#include "jit/tls/zend_jit_tls.h"
@@ -12787,7 +12787,7 @@ static int zend_jit_fetch_dim_read(zend_jit_ctx *jit,
12787
12787
}
12788
12788
}
12789
12789
12790
- if (opline->opcode == ZEND_FETCH_LIST_R ) {
12790
+ if (opline->opcode != ZEND_FETCH_DIM_IS ) {
12791
12791
ir_ref ref;
12792
12792
12793
12793
may_throw = 1;
@@ -12797,19 +12797,11 @@ static int zend_jit_fetch_dim_read(zend_jit_ctx *jit,
12797
12797
jit_SET_EX_OPLINE(jit, opline);
12798
12798
ref = jit_ZVAL_ADDR(jit, op1_addr);
12799
12799
}
12800
- ir_CALL_1(IR_VOID, ir_CONST_FC_FUNC(zend_jit_invalid_array_use), ref);
12801
- }
12802
- if (opline->opcode != ZEND_FETCH_DIM_IS && opline->opcode != ZEND_FETCH_LIST_R) {
12803
- ir_ref ref;
12804
-
12805
- may_throw = 1;
12806
- if ((op1_info & MAY_BE_UNDEF) || (op2_info & MAY_BE_UNDEF)) {
12807
- ref = jit_ZVAL_ADDR(jit, orig_op1_addr);
12800
+ if (opline->opcode == ZEND_FETCH_LIST_R) {
12801
+ ir_CALL_1(IR_VOID, ir_CONST_FC_FUNC(zend_jit_invalid_array_use), ref);
12808
12802
} else {
12809
- jit_SET_EX_OPLINE(jit, opline);
12810
- ref = jit_ZVAL_ADDR(jit, op1_addr);
12803
+ ir_CALL_1(IR_VOID, ir_CONST_FC_FUNC(zend_jit_invalid_array_access), ref);
12811
12804
}
12812
- ir_CALL_1(IR_VOID, ir_CONST_FC_FUNC(zend_jit_invalid_array_access), ref);
12813
12805
}
12814
12806
12815
12807
jit_set_Z_TYPE_INFO(jit, res_addr, IS_NULL);
0 commit comments