@@ -1119,7 +1119,7 @@ static int logical_immediate_p (uint64_t value, uint32_t reg_size)
1119
1119
|| has_concrete_type(src_info & MAY_BE_ANY)) {
1120
1120
|| if (Z_MODE(dst_addr) == IS_MEM_ZVAL) {
1121
1121
|| if ((dst_info & (MAY_BE_ANY|MAY_BE_UNDEF|MAY_BE_GUARD)) != (src_info & (MAY_BE_ANY|MAY_BE_UNDEF|MAY_BE_GUARD))) {
1122
- || zend_uchar type = concrete_type(src_info);
1122
+ || uint32_t type = concrete_type(src_info);
1123
1123
| SET_ZVAL_TYPE_INFO dst_addr, type, Rw(tmp_reg1), Rx(tmp_reg2)
1124
1124
|| }
1125
1125
|| }
@@ -1206,7 +1206,7 @@ static int logical_immediate_p (uint64_t value, uint32_t reg_size)
1206
1206
|| }
1207
1207
|| if ((src_info & (MAY_BE_NULL|MAY_BE_FALSE|MAY_BE_TRUE|MAY_BE_LONG|MAY_BE_DOUBLE)) &&
1208
1208
|| has_concrete_type(src_info & MAY_BE_ANY)) {
1209
- || zend_uchar type = concrete_type(src_info);
1209
+ || uint32_t type = concrete_type(src_info);
1210
1210
|| if (Z_MODE(dst_addr) == IS_MEM_ZVAL) {
1211
1211
|| if ((dst_info & (MAY_BE_ANY|MAY_BE_UNDEF|MAY_BE_GUARD)) != (src_info & (MAY_BE_ANY|MAY_BE_UNDEF))) {
1212
1212
| SET_ZVAL_TYPE_INFO dst_addr, type, Rw(tmp_reg), Rx(tmp_reg2)
@@ -1227,7 +1227,6 @@ static int logical_immediate_p (uint64_t value, uint32_t reg_size)
1227
1227
|.endmacro
1228
1228
1229
1229
|.macro IF_TYPE, type, val, label
1230
- || ZEND_ASSERT(val >=0 && val <= CMP_IMM);
1231
1230
|| if (val == 0) {
1232
1231
| cbz type, label
1233
1232
|| } else {
@@ -1237,7 +1236,6 @@ static int logical_immediate_p (uint64_t value, uint32_t reg_size)
1237
1236
|.endmacro
1238
1237
1239
1238
|.macro IF_NOT_TYPE, type, val, label
1240
- || ZEND_ASSERT(val >=0 && val <= CMP_IMM);
1241
1239
|| if (val == 0) {
1242
1240
| cbnz type, label
1243
1241
|| } else {
@@ -1258,7 +1256,6 @@ static int logical_immediate_p (uint64_t value, uint32_t reg_size)
1258
1256
1259
1257
|.macro CMP_ZVAL_TYPE, addr, val, tmp_reg
1260
1258
|| ZEND_ASSERT(Z_MODE(addr) == IS_MEM_ZVAL);
1261
- || ZEND_ASSERT(val <= CMP_IMM);
1262
1259
| SAFE_MEM_ACC_WITH_UOFFSET_BYTE ldrb, Rw(tmp_reg), Rx(Z_REG(addr)), Z_OFFSET(addr)+offsetof(zval, u1.v.type), Rx(tmp_reg)
1263
1260
| cmp Rw(tmp_reg), #val
1264
1261
|.endmacro
@@ -11349,7 +11346,7 @@ static int zend_jit_fetch_dim_read(dasm_State **Dst,
11349
11346
11350
11347
|8:
11351
11348
if (res_exit_addr) {
11352
- zend_uchar type = concrete_type(res_info);
11349
+ uint32_t type = concrete_type(res_info);
11353
11350
if (op1_info & MAY_BE_ARRAY_OF_REF) {
11354
11351
| ZVAL_DEREF REG0, MAY_BE_REF, TMP1w
11355
11352
}
@@ -12367,7 +12364,7 @@ static int zend_jit_fetch_obj(dasm_State **Dst,
12367
12364
zend_jit_trace_stack *stack = JIT_G(current_frame)->stack;
12368
12365
int32_t exit_point;
12369
12366
const void *exit_addr;
12370
- zend_uchar type;
12367
+ uint32_t type;
12371
12368
zend_jit_addr val_addr = ZEND_ADDR_MEM_ZVAL(ZREG_REG0, 0);
12372
12369
12373
12370
if ((opline->op1_type & (IS_VAR|IS_TMP_VAR))
@@ -14282,7 +14279,7 @@ static int zend_jit_fetch_constant(dasm_State **Dst,
14282
14279
res_info &= ~MAY_BE_GUARD;
14283
14280
ssa->var_info[ssa_op->result_def].type &= ~MAY_BE_GUARD;
14284
14281
14285
- zend_uchar type = concrete_type(res_info);
14282
+ uint32_t type = concrete_type(res_info);
14286
14283
14287
14284
if (type < IS_STRING) {
14288
14285
| IF_NOT_ZVAL_TYPE const_addr, type, &exit_addr, ZREG_TMP1
0 commit comments