@@ -12242,6 +12242,15 @@ static int zend_jit_fetch_obj(dasm_State **Dst,
12242
12242
| SET_ZVAL_TYPE_INFO res_addr, IS_OBJECT_EX, TMP1w, TMP2
12243
12243
| b >9
12244
12244
|2:
12245
+ | ldr TMP1w, [FCARG1x, #offsetof(zval, u2.extra)]
12246
+ | TST_32_WITH_CONST TMP1w, IS_PROP_REINITABLE, TMP2w
12247
+ | beq >6
12248
+ | SET_ZVAL_PTR res_addr, FCARG1x, TMP1
12249
+ | SET_ZVAL_TYPE_INFO res_addr, IS_INDIRECT, TMP1w, TMP2
12250
+ | and TMP1w, TMP1w, #(~IS_PROP_REINITABLE)
12251
+ | str TMP1w, [FCARG1x, #offsetof(zval, u2.extra)]
12252
+ | b >9
12253
+ |6:
12245
12254
| mov FCARG1x, FCARG2x
12246
12255
| SET_EX_OPLINE opline, REG0
12247
12256
| EXT_CALL zend_readonly_property_modification_error, REG0
@@ -12295,6 +12304,16 @@ static int zend_jit_fetch_obj(dasm_State **Dst,
12295
12304
| b >9
12296
12305
|.cold_code
12297
12306
|4:
12307
+ | ldr TMP1w, [FCARG1x, #(prop_info->offset + offsetof(zval, u2.extra))]
12308
+ | TST_32_WITH_CONST TMP1w, IS_PROP_REINITABLE, TMP2w
12309
+ | beq >6
12310
+ | LOAD_ZVAL_ADDR FCARG1x, prop_addr
12311
+ | SET_ZVAL_PTR res_addr, FCARG1x, TMP1
12312
+ | SET_ZVAL_TYPE_INFO res_addr, IS_INDIRECT, TMP1w, TMP2
12313
+ | and TMP1w, TMP1w, #(~IS_PROP_REINITABLE)
12314
+ | str TMP1w, [FCARG1x, #(prop_info->offset + offsetof(zval, u2.extra))]
12315
+ | b >9
12316
+ |6:
12298
12317
| LOAD_ADDR FCARG1x, prop_info
12299
12318
| SET_EX_OPLINE opline, REG0
12300
12319
| EXT_CALL zend_readonly_property_modification_error, REG0
0 commit comments