Lines Matching refs:opline
172 zend_op *opline; in zend_ssa_remove_nops() local
176 opline = op_array->opcodes + old_end - 1; in zend_ssa_remove_nops()
177 if (opline->opcode == ZEND_NOP) { in zend_ssa_remove_nops()
182 zend_optimizer_migrate_jump(op_array, new_opline, opline); in zend_ssa_remove_nops()
223 zend_op *opline = op_array->opcodes + b->start + b->len - 1; in zend_ssa_remove_nops() local
224 zend_optimizer_shift_jump(op_array, opline, shiftlist); in zend_ssa_remove_nops()
322 zend_op_array *op_array, zend_ssa *ssa, zend_op *opline, int src_var, uint32_t cv_var) { in opline_supports_assign_contraction() argument
323 if (opline->opcode == ZEND_NEW) { in opline_supports_assign_contraction()
329 switch (opline->opcode) { in opline_supports_assign_contraction()
331 if ((opline + 1)->op1_type == IS_CV && (opline + 1)->op1.var == cv_var) return 0; in opline_supports_assign_contraction()
334 if (opline->op2_type == IS_CV && opline->op2.var == cv_var) return 0; in opline_supports_assign_contraction()
337 if (opline->op1_type == IS_CV && opline->op1.var == cv_var) return 0; in opline_supports_assign_contraction()
341 if (opline->opcode == ZEND_DO_ICALL || opline->opcode == ZEND_DO_UCALL in opline_supports_assign_contraction()
342 || opline->opcode == ZEND_DO_FCALL || opline->opcode == ZEND_DO_FCALL_BY_NAME) { in opline_supports_assign_contraction()
350 if (opline->opcode == ZEND_POST_INC || opline->opcode == ZEND_POST_DEC) { in opline_supports_assign_contraction()
353 return opline->op1_type != IS_CV || opline->op1.var != cv_var; in opline_supports_assign_contraction()
356 if (opline->opcode == ZEND_INIT_ARRAY) { in opline_supports_assign_contraction()
358 return (opline->op1_type != IS_CV || opline->op1.var != cv_var) in opline_supports_assign_contraction()
359 && (opline->op2_type != IS_CV || opline->op2.var != cv_var); in opline_supports_assign_contraction()
362 if (opline->opcode == ZEND_CAST in opline_supports_assign_contraction()
363 && (opline->extended_value == IS_ARRAY || opline->extended_value == IS_OBJECT)) { in opline_supports_assign_contraction()
366 return opline->op1_type != IS_CV || opline->op1.var != cv_var; in opline_supports_assign_contraction()
369 if ((opline->opcode == ZEND_ASSIGN_OP in opline_supports_assign_contraction()
370 || opline->opcode == ZEND_ASSIGN_OBJ in opline_supports_assign_contraction()
371 || opline->opcode == ZEND_ASSIGN_DIM in opline_supports_assign_contraction()
372 || opline->opcode == ZEND_ASSIGN_OBJ_OP in opline_supports_assign_contraction()
373 || opline->opcode == ZEND_ASSIGN_DIM_OP) in opline_supports_assign_contraction()
374 && opline->op1_type == IS_CV in opline_supports_assign_contraction()
375 && opline->op1.var == cv_var in opline_supports_assign_contraction()
376 && zend_may_throw(opline, &ssa->ops[ssa->vars[src_var].definition], op_array, ssa)) { in opline_supports_assign_contraction()
575 zend_op *opline = &op_array->opcodes[block->start + block->len - 1]; in compress_block() local
577 if (opline->opcode == ZEND_NOP) { in compress_block()
642 zend_op *opline; in zend_ssa_replace_control_link() local
651 opline = op_array->opcodes + src->start + src->len - 1; in zend_ssa_replace_control_link()
652 switch (opline->opcode) { in zend_ssa_replace_control_link()
655 ZEND_ASSERT(ZEND_OP1_JMP_ADDR(opline) == op_array->opcodes + old->start); in zend_ssa_replace_control_link()
656 ZEND_SET_OP_JMP_ADDR(opline, opline->op1, op_array->opcodes + dst->start); in zend_ssa_replace_control_link()
670 if (ZEND_OP2_JMP_ADDR(opline) == op_array->opcodes + old->start) { in zend_ssa_replace_control_link()
671 ZEND_SET_OP_JMP_ADDR(opline, opline->op2, op_array->opcodes + dst->start); in zend_ssa_replace_control_link()
675 if (!(opline->extended_value & ZEND_LAST_CATCH)) { in zend_ssa_replace_control_link()
676 if (ZEND_OP2_JMP_ADDR(opline) == op_array->opcodes + old->start) { in zend_ssa_replace_control_link()
677 ZEND_SET_OP_JMP_ADDR(opline, opline->op2, op_array->opcodes + dst->start); in zend_ssa_replace_control_link()
683 if (ZEND_OFFSET_TO_OPLINE_NUM(op_array, opline, opline->extended_value) == old->start) { in zend_ssa_replace_control_link()
684 opline->extended_value = ZEND_OPLINE_NUM_TO_OFFSET(op_array, opline, dst->start); in zend_ssa_replace_control_link()
691 HashTable *jumptable = Z_ARRVAL(ZEND_OP2_LITERAL(opline)); in zend_ssa_replace_control_link()
694 if (ZEND_OFFSET_TO_OPLINE_NUM(op_array, opline, Z_LVAL_P(zv)) == old->start) { in zend_ssa_replace_control_link()
695 Z_LVAL_P(zv) = ZEND_OPLINE_NUM_TO_OFFSET(op_array, opline, dst->start); in zend_ssa_replace_control_link()
698 if (ZEND_OFFSET_TO_OPLINE_NUM(op_array, opline, opline->extended_value) == old->start) { in zend_ssa_replace_control_link()
699 opline->extended_value = ZEND_OPLINE_NUM_TO_OFFSET(op_array, opline, dst->start); in zend_ssa_replace_control_link()
768 zend_op *opline; in zend_dfa_optimize_jmps() local
782 opline = op_array->opcodes + op_num; in zend_dfa_optimize_jmps()
785 switch (opline->opcode) { in zend_dfa_optimize_jmps()
789 MAKE_NOP(opline); in zend_dfa_optimize_jmps()
796 if (opline->op1_type == IS_CONST) { in zend_dfa_optimize_jmps()
797 if (zend_is_true(CT_CONSTANT_EX(op_array, opline->op1.constant))) { in zend_dfa_optimize_jmps()
798 MAKE_NOP(opline); in zend_dfa_optimize_jmps()
803 opline->opcode = ZEND_JMP; in zend_dfa_optimize_jmps()
804 COPY_NODE(opline->op1, opline->op2); in zend_dfa_optimize_jmps()
811 if (opline->op1_type == IS_CV && (OP1_INFO() & MAY_BE_UNDEF)) { in zend_dfa_optimize_jmps()
812 opline->opcode = ZEND_CHECK_VAR; in zend_dfa_optimize_jmps()
813 opline->op2.num = 0; in zend_dfa_optimize_jmps()
814 …} else if (opline->op1_type == IS_CV || !(OP1_INFO() & (MAY_BE_STRING|MAY_BE_ARRAY|MAY_BE_OBJECT|M… in zend_dfa_optimize_jmps()
815 zend_ssa_remove_instr(ssa, opline, ssa_op); in zend_dfa_optimize_jmps()
819 opline->opcode = ZEND_FREE; in zend_dfa_optimize_jmps()
820 opline->op2.num = 0; in zend_dfa_optimize_jmps()
827 if (opline->op1_type == IS_CONST) { in zend_dfa_optimize_jmps()
828 if (zend_is_true(CT_CONSTANT_EX(op_array, opline->op1.constant))) { in zend_dfa_optimize_jmps()
829 opline->opcode = ZEND_JMP; in zend_dfa_optimize_jmps()
830 COPY_NODE(opline->op1, opline->op2); in zend_dfa_optimize_jmps()
834 MAKE_NOP(opline); in zend_dfa_optimize_jmps()
842 if (opline->op1_type == IS_CV && (OP1_INFO() & MAY_BE_UNDEF)) { in zend_dfa_optimize_jmps()
843 opline->opcode = ZEND_CHECK_VAR; in zend_dfa_optimize_jmps()
844 opline->op2.num = 0; in zend_dfa_optimize_jmps()
845 …} else if (opline->op1_type == IS_CV || !(OP1_INFO() & (MAY_BE_STRING|MAY_BE_ARRAY|MAY_BE_OBJECT|M… in zend_dfa_optimize_jmps()
846 zend_ssa_remove_instr(ssa, opline, ssa_op); in zend_dfa_optimize_jmps()
850 opline->opcode = ZEND_FREE; in zend_dfa_optimize_jmps()
851 opline->op2.num = 0; in zend_dfa_optimize_jmps()
859 opline->opcode = ZEND_JMPZ; in zend_dfa_optimize_jmps()
860 opline->result_type = IS_UNUSED; in zend_dfa_optimize_jmps()
863 } else if (opline->op1_type == IS_CONST) { in zend_dfa_optimize_jmps()
864 if (zend_is_true(CT_CONSTANT_EX(op_array, opline->op1.constant))) { in zend_dfa_optimize_jmps()
865 opline->opcode = ZEND_BOOL; in zend_dfa_optimize_jmps()
873 opline->opcode = ZEND_JMPNZ; in zend_dfa_optimize_jmps()
874 opline->result_type = IS_UNUSED; in zend_dfa_optimize_jmps()
877 } else if (opline->op1_type == IS_CONST) { in zend_dfa_optimize_jmps()
878 if (!zend_is_true(CT_CONSTANT_EX(op_array, opline->op1.constant))) { in zend_dfa_optimize_jmps()
879 opline->opcode = ZEND_BOOL; in zend_dfa_optimize_jmps()
887 opline->opcode = ZEND_JMPNZ; in zend_dfa_optimize_jmps()
888 opline->result_type = IS_UNUSED; in zend_dfa_optimize_jmps()
891 } else if (opline->op1_type == IS_CONST) { in zend_dfa_optimize_jmps()
892 if (!zend_is_true(CT_CONSTANT_EX(op_array, opline->op1.constant))) { in zend_dfa_optimize_jmps()
893 MAKE_NOP(opline); in zend_dfa_optimize_jmps()
904 if (opline->op1_type == IS_CONST in zend_dfa_optimize_jmps()
906 if (Z_TYPE_P(CT_CONSTANT_EX(op_array, opline->op1.constant)) == IS_NULL) { in zend_dfa_optimize_jmps()
908 MAKE_NOP(opline); in zend_dfa_optimize_jmps()
913 opline->opcode = ZEND_JMP; in zend_dfa_optimize_jmps()
914 opline->result_type = IS_UNUSED; in zend_dfa_optimize_jmps()
916 COPY_NODE(opline->op1, opline->op2); in zend_dfa_optimize_jmps()
926 if (opline->op1_type == IS_CONST in zend_dfa_optimize_jmps()
928 if (Z_TYPE_P(CT_CONSTANT_EX(op_array, opline->op1.constant)) == IS_NULL) { in zend_dfa_optimize_jmps()
929 opline->opcode = ZEND_JMP; in zend_dfa_optimize_jmps()
930 opline->result_type = IS_UNUSED; in zend_dfa_optimize_jmps()
932 COPY_NODE(opline->op1, opline->op2); in zend_dfa_optimize_jmps()
937 MAKE_NOP(opline); in zend_dfa_optimize_jmps()
948 if (opline->op1_type == IS_CONST) { in zend_dfa_optimize_jmps()
949 zval *zv = CT_CONSTANT_EX(op_array, opline->op1.constant); in zend_dfa_optimize_jmps()
952 (opline->opcode == ZEND_SWITCH_LONG && type == IS_LONG) in zend_dfa_optimize_jmps()
953 || (opline->opcode == ZEND_SWITCH_STRING && type == IS_STRING) in zend_dfa_optimize_jmps()
954 || (opline->opcode == ZEND_MATCH && (type == IS_LONG || type == IS_STRING)); in zend_dfa_optimize_jmps()
960 if (!correct_type && opline->opcode != ZEND_MATCH) { in zend_dfa_optimize_jmps()
962 MAKE_NOP(opline); in zend_dfa_optimize_jmps()
963 opline->extended_value = 0; in zend_dfa_optimize_jmps()
970 HashTable *jmptable = Z_ARRVAL_P(CT_CONSTANT_EX(op_array, opline->op2.constant)); in zend_dfa_optimize_jmps()
976 target = ZEND_OFFSET_TO_OPLINE_NUM(op_array, opline, Z_LVAL_P(jmp_zv)); in zend_dfa_optimize_jmps()
978 target = ZEND_OFFSET_TO_OPLINE_NUM(op_array, opline, opline->extended_value); in zend_dfa_optimize_jmps()
981 ZEND_ASSERT(opline->opcode == ZEND_MATCH); in zend_dfa_optimize_jmps()
982 target = ZEND_OFFSET_TO_OPLINE_NUM(op_array, opline, opline->extended_value); in zend_dfa_optimize_jmps()
984 opline->opcode = ZEND_JMP; in zend_dfa_optimize_jmps()
985 opline->extended_value = 0; in zend_dfa_optimize_jmps()
986 SET_UNUSED(opline->op1); in zend_dfa_optimize_jmps()
987 ZEND_SET_OP_JMP_ADDR(opline, opline->op1, op_array->opcodes + target); in zend_dfa_optimize_jmps()
988 SET_UNUSED(opline->op2); in zend_dfa_optimize_jmps()
1042 const zend_op *opline = &op_array->opcodes[use]; in zend_dfa_try_to_replace_result() local
1045 if ((opline->op1_type == IS_CV && opline->op1.var == cv) in zend_dfa_try_to_replace_result()
1046 || (opline->op2_type == IS_CV && opline->op2.var == cv) in zend_dfa_try_to_replace_result()
1047 || (opline->result_type == IS_CV && opline->result.var == cv)) { in zend_dfa_try_to_replace_result()
1050 opline--; in zend_dfa_try_to_replace_result()
1103 zend_op *opline; in zend_dfa_optimize_op_array() local
1159 opline = op_array->opcodes + op_1; in zend_dfa_optimize_op_array()
1164 if (opline->opcode == ZEND_ASSIGN in zend_dfa_optimize_op_array()
1165 && opline->op2_type == IS_CONST in zend_dfa_optimize_op_array()
1167 && !RETURN_VALUE_USED(opline) in zend_dfa_optimize_op_array()
1172 zval *zv = CT_CONSTANT_EX(op_array, opline->op2.constant); in zend_dfa_optimize_op_array()
1175 opline->op2.constant = zend_optimizer_add_literal(op_array, &tmp); in zend_dfa_optimize_op_array()
1177 } else if (opline->opcode == ZEND_QM_ASSIGN in zend_dfa_optimize_op_array()
1178 && opline->op1_type == IS_CONST in zend_dfa_optimize_op_array()
1183 zval *zv = CT_CONSTANT_EX(op_array, opline->op1.constant); in zend_dfa_optimize_op_array()
1186 opline->op1.constant = zend_optimizer_add_literal(op_array, &tmp); in zend_dfa_optimize_op_array()
1190 if (opline->opcode == ZEND_ADD in zend_dfa_optimize_op_array()
1191 || opline->opcode == ZEND_SUB in zend_dfa_optimize_op_array()
1192 || opline->opcode == ZEND_MUL in zend_dfa_optimize_op_array()
1193 || opline->opcode == ZEND_IS_EQUAL in zend_dfa_optimize_op_array()
1194 || opline->opcode == ZEND_IS_NOT_EQUAL in zend_dfa_optimize_op_array()
1195 || opline->opcode == ZEND_IS_SMALLER in zend_dfa_optimize_op_array()
1196 || opline->opcode == ZEND_IS_SMALLER_OR_EQUAL in zend_dfa_optimize_op_array()
1199 if (opline->op1_type == IS_CONST && opline->op2_type != IS_CONST) { in zend_dfa_optimize_op_array()
1200 zval *zv = CT_CONSTANT_EX(op_array, opline->op1.constant); in zend_dfa_optimize_op_array()
1208 opline->op1.constant = zend_optimizer_add_literal(op_array, &tmp); in zend_dfa_optimize_op_array()
1209 zv = CT_CONSTANT_EX(op_array, opline->op1.constant); in zend_dfa_optimize_op_array()
1211 if (opline->opcode == ZEND_ADD) { in zend_dfa_optimize_op_array()
1212 zv = CT_CONSTANT_EX(op_array, opline->op1.constant); in zend_dfa_optimize_op_array()
1223 opline->opcode = ZEND_QM_ASSIGN; in zend_dfa_optimize_op_array()
1224 opline->op1_type = opline->op2_type; in zend_dfa_optimize_op_array()
1225 opline->op1.var = opline->op2.var; in zend_dfa_optimize_op_array()
1226 opline->op2_type = IS_UNUSED; in zend_dfa_optimize_op_array()
1227 opline->op2.num = 0; in zend_dfa_optimize_op_array()
1233 } else if (opline->opcode == ZEND_MUL in zend_dfa_optimize_op_array()
1235 zv = CT_CONSTANT_EX(op_array, opline->op1.constant); in zend_dfa_optimize_op_array()
1245 opline->opcode = ZEND_ADD; in zend_dfa_optimize_op_array()
1246 opline->op1_type = opline->op2_type; in zend_dfa_optimize_op_array()
1247 opline->op1.var = opline->op2.var; in zend_dfa_optimize_op_array()
1252 } else if (opline->op1_type != IS_CONST && opline->op2_type == IS_CONST) { in zend_dfa_optimize_op_array()
1253 zval *zv = CT_CONSTANT_EX(op_array, opline->op2.constant); in zend_dfa_optimize_op_array()
1256 && Z_TYPE_INFO_P(CT_CONSTANT_EX(op_array, opline->op2.constant)) == IS_LONG) { in zend_dfa_optimize_op_array()
1261 opline->op2.constant = zend_optimizer_add_literal(op_array, &tmp); in zend_dfa_optimize_op_array()
1262 zv = CT_CONSTANT_EX(op_array, opline->op2.constant); in zend_dfa_optimize_op_array()
1264 if (opline->opcode == ZEND_ADD || opline->opcode == ZEND_SUB) { in zend_dfa_optimize_op_array()
1274 opline->opcode = ZEND_QM_ASSIGN; in zend_dfa_optimize_op_array()
1275 opline->op2_type = IS_UNUSED; in zend_dfa_optimize_op_array()
1276 opline->op2.num = 0; in zend_dfa_optimize_op_array()
1278 } else if (opline->opcode == ZEND_MUL in zend_dfa_optimize_op_array()
1280 zv = CT_CONSTANT_EX(op_array, opline->op2.constant); in zend_dfa_optimize_op_array()
1290 opline->opcode = ZEND_ADD; in zend_dfa_optimize_op_array()
1291 opline->op2_type = opline->op1_type; in zend_dfa_optimize_op_array()
1292 opline->op2.var = opline->op1.var; in zend_dfa_optimize_op_array()
1298 } else if (opline->opcode == ZEND_CONCAT) { in zend_dfa_optimize_op_array()
1301 opline->opcode = ZEND_FAST_CONCAT; in zend_dfa_optimize_op_array()
1303 } else if (opline->opcode == ZEND_VERIFY_RETURN_TYPE in zend_dfa_optimize_op_array()
1304 && opline->op1_type != IS_CONST in zend_dfa_optimize_op_array()
1329 MAKE_NOP(opline); in zend_dfa_optimize_op_array()
1349 MAKE_NOP(opline); in zend_dfa_optimize_op_array()
1355 if (opline->opcode == ZEND_QM_ASSIGN in zend_dfa_optimize_op_array()
1357 && opline->op1_type & (IS_TMP_VAR|IS_VAR) in zend_dfa_optimize_op_array()
1375 src_var, opline->result.var) in zend_dfa_optimize_op_array()
1376 && !variable_defined_or_used_in_range(ssa, EX_VAR_TO_NUM(opline->result.var), in zend_dfa_optimize_op_array()
1405 op_array->opcodes[op_2].result_type = opline->result_type; in zend_dfa_optimize_op_array()
1406 op_array->opcodes[op_2].result.var = opline->result.var; in zend_dfa_optimize_op_array()
1408 MAKE_NOP(opline); in zend_dfa_optimize_op_array()
1474 && RETURN_VALUE_USED(opline)) { in zend_dfa_optimize_op_array()
1475 if (opline->opcode == ZEND_ASSIGN in zend_dfa_optimize_op_array()
1476 || opline->opcode == ZEND_ASSIGN_OP in zend_dfa_optimize_op_array()
1477 || opline->opcode == ZEND_PRE_INC in zend_dfa_optimize_op_array()
1478 || opline->opcode == ZEND_PRE_DEC) { in zend_dfa_optimize_op_array()
1480 } else if (opline->opcode == ZEND_POST_INC) { in zend_dfa_optimize_op_array()
1490 opline->opcode = ZEND_PRE_INC; in zend_dfa_optimize_op_array()
1494 } else if (opline->opcode == ZEND_POST_DEC) { in zend_dfa_optimize_op_array()
1504 opline->opcode = ZEND_PRE_DEC; in zend_dfa_optimize_op_array()
1511 if (opline->opcode == ZEND_ASSIGN in zend_dfa_optimize_op_array()
1513 && !RETURN_VALUE_USED(opline) in zend_dfa_optimize_op_array()
1522 if ((opline->op2_type & (IS_TMP_VAR|IS_VAR)) in zend_dfa_optimize_op_array()
1535 src_var, opline->op1.var) in zend_dfa_optimize_op_array()
1536 && !variable_defined_or_used_in_range(ssa, EX_VAR_TO_NUM(opline->op1.var), in zend_dfa_optimize_op_array()
1559 op_array->opcodes[op_2].result_type = opline->op1_type; in zend_dfa_optimize_op_array()
1560 op_array->opcodes[op_2].result.var = opline->op1.var; in zend_dfa_optimize_op_array()
1562 MAKE_NOP(opline); in zend_dfa_optimize_op_array()
1619 } else if (opline->op2_type == IS_CONST in zend_dfa_optimize_op_array()
1620 || ((opline->op2_type & (IS_TMP_VAR|IS_VAR|IS_CV)) in zend_dfa_optimize_op_array()
1642 opline->result_type = opline->op1_type; in zend_dfa_optimize_op_array()
1643 opline->result.var = opline->op1.var; in zend_dfa_optimize_op_array()
1644 opline->op1_type = opline->op2_type; in zend_dfa_optimize_op_array()
1645 opline->op1.var = opline->op2.var; in zend_dfa_optimize_op_array()
1646 opline->op2_type = IS_UNUSED; in zend_dfa_optimize_op_array()
1647 opline->op2.var = 0; in zend_dfa_optimize_op_array()
1648 opline->opcode = ZEND_QM_ASSIGN; in zend_dfa_optimize_op_array()
1652 } else if (opline->opcode == ZEND_ASSIGN_OP in zend_dfa_optimize_op_array()
1653 && opline->extended_value == ZEND_ADD in zend_dfa_optimize_op_array()
1655 && opline->op2_type == IS_CONST in zend_dfa_optimize_op_array()
1656 && Z_TYPE_P(CT_CONSTANT_EX(op_array, opline->op2.constant)) == IS_LONG in zend_dfa_optimize_op_array()
1657 && Z_LVAL_P(CT_CONSTANT_EX(op_array, opline->op2.constant)) == 1 in zend_dfa_optimize_op_array()
1663 opline->opcode = ZEND_PRE_INC; in zend_dfa_optimize_op_array()
1664 opline->extended_value = 0; in zend_dfa_optimize_op_array()
1665 SET_UNUSED(opline->op2); in zend_dfa_optimize_op_array()
1667 } else if (opline->opcode == ZEND_ASSIGN_OP in zend_dfa_optimize_op_array()
1668 && opline->extended_value == ZEND_SUB in zend_dfa_optimize_op_array()
1670 && opline->op2_type == IS_CONST in zend_dfa_optimize_op_array()
1671 && Z_TYPE_P(CT_CONSTANT_EX(op_array, opline->op2.constant)) == IS_LONG in zend_dfa_optimize_op_array()
1672 && Z_LVAL_P(CT_CONSTANT_EX(op_array, opline->op2.constant)) == 1 in zend_dfa_optimize_op_array()
1678 opline->opcode = ZEND_PRE_DEC; in zend_dfa_optimize_op_array()
1679 opline->extended_value = 0; in zend_dfa_optimize_op_array()
1680 SET_UNUSED(opline->op2); in zend_dfa_optimize_op_array()
1683 && !RETURN_VALUE_USED(opline) in zend_dfa_optimize_op_array()
1686 && opline->opcode == ZEND_ASSIGN_OP in zend_dfa_optimize_op_array()
1687 && opline->extended_value != ZEND_CONCAT) { in zend_dfa_optimize_op_array()
1696 opline->opcode = opline->extended_value; in zend_dfa_optimize_op_array()
1697 opline->extended_value = 0; in zend_dfa_optimize_op_array()
1698 opline->result_type = opline->op1_type; in zend_dfa_optimize_op_array()
1699 opline->result.var = opline->op1.var; in zend_dfa_optimize_op_array()