Skip to content

Commit f2ceb63

Browse files
committed
Tracing JIT: Record information about types of defined object properties and use it to optimize code for ASSIGN_OBJ_OP, PRE/POST_INC/DEC_OBJ and FETCH_OBJ_R/IS
1 parent 4d4a175 commit f2ceb63

File tree

5 files changed

+471
-300
lines changed

5 files changed

+471
-300
lines changed

ext/opcache/jit/zend_jit.c

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3177,7 +3177,7 @@ static int zend_jit(const zend_op_array *op_array, zend_ssa *ssa, const zend_op
31773177
}
31783178
if (!zend_jit_incdec_obj(&dasm_state, opline, op_array, ssa, ssa_op,
31793179
op1_info, op1_addr,
3180-
0, ce, ce_is_instanceof, 0, NULL,
3180+
0, ce, ce_is_instanceof, 0, NULL, IS_UNKNOWN,
31813181
zend_may_throw(opline, ssa_op, op_array, ssa))) {
31823182
goto jit_failure;
31833183
}
@@ -3224,7 +3224,7 @@ static int zend_jit(const zend_op_array *op_array, zend_ssa *ssa, const zend_op
32243224
}
32253225
if (!zend_jit_assign_obj_op(&dasm_state, opline, op_array, ssa, ssa_op,
32263226
op1_info, op1_addr, OP1_DATA_INFO(), OP1_DATA_RANGE(),
3227-
0, ce, ce_is_instanceof, 0, NULL,
3227+
0, ce, ce_is_instanceof, 0, NULL, IS_UNKNOWN,
32283228
zend_may_throw(opline, ssa_op, op_array, ssa))) {
32293229
goto jit_failure;
32303230
}
@@ -3264,7 +3264,7 @@ static int zend_jit(const zend_op_array *op_array, zend_ssa *ssa, const zend_op
32643264
}
32653265
if (!zend_jit_assign_obj(&dasm_state, opline, op_array, ssa, ssa_op,
32663266
op1_info, op1_addr, OP1_DATA_INFO(),
3267-
0, ce, ce_is_instanceof, 0, NULL,
3267+
0, ce, ce_is_instanceof, 0, NULL, IS_UNKNOWN,
32683268
zend_may_throw(opline, ssa_op, op_array, ssa))) {
32693269
goto jit_failure;
32703270
}
@@ -3772,6 +3772,7 @@ static int zend_jit(const zend_op_array *op_array, zend_ssa *ssa, const zend_op
37723772
}
37733773
if (!zend_jit_fetch_obj(&dasm_state, opline, op_array, ssa, ssa_op,
37743774
op1_info, op1_addr, 0, ce, ce_is_instanceof, 0, 0, NULL,
3775+
IS_UNKNOWN,
37753776
zend_may_throw(opline, ssa_op, op_array, ssa))) {
37763777
goto jit_failure;
37773778
}

0 commit comments

Comments
 (0)