Lines Matching refs:opcode
132 if ((*call_info)->caller_init_opline->opcode == ZEND_NOP) { in zend_ssa_remove_nops()
151 ZEND_ASSERT(op_array->opcodes[b->start].opcode == ZEND_FREE in zend_ssa_remove_nops()
152 || op_array->opcodes[b->start].opcode == ZEND_FE_FREE); in zend_ssa_remove_nops()
160 if (EXPECTED(op_array->opcodes[i].opcode != ZEND_NOP)) { in zend_ssa_remove_nops()
177 if (opline->opcode == ZEND_NOP) { in zend_ssa_remove_nops()
323 if (opline->opcode == ZEND_NEW) { in opline_supports_assign_contraction()
328 if (opline->opcode == ZEND_DO_ICALL || opline->opcode == ZEND_DO_UCALL in opline_supports_assign_contraction()
329 || opline->opcode == ZEND_DO_FCALL || opline->opcode == ZEND_DO_FCALL_BY_NAME) { in opline_supports_assign_contraction()
337 if (opline->opcode == ZEND_POST_INC || opline->opcode == ZEND_POST_DEC) { in opline_supports_assign_contraction()
343 if (opline->opcode == ZEND_INIT_ARRAY) { in opline_supports_assign_contraction()
349 if (opline->opcode == ZEND_CAST in opline_supports_assign_contraction()
356 if ((opline->opcode == ZEND_ASSIGN_OP in opline_supports_assign_contraction()
357 || opline->opcode == ZEND_ASSIGN_OBJ in opline_supports_assign_contraction()
358 || opline->opcode == ZEND_ASSIGN_DIM in opline_supports_assign_contraction()
359 || opline->opcode == ZEND_ASSIGN_OBJ_OP in opline_supports_assign_contraction()
360 || opline->opcode == ZEND_ASSIGN_DIM_OP) in opline_supports_assign_contraction()
398 && call_info->caller_call_opline->opcode == ZEND_DO_ICALL in zend_dfa_optimize_calls()
403 && (call_info->caller_call_opline - 1)->opcode == ZEND_SEND_VAL in zend_dfa_optimize_calls()
422 if (send_array->opcode == ZEND_SEND_VAL in zend_dfa_optimize_calls()
425 && (send_needly->opcode == ZEND_SEND_VAL in zend_dfa_optimize_calls()
426 || send_needly->opcode == ZEND_SEND_VAR) in zend_dfa_optimize_calls()
483 call_info->caller_call_opline->opcode = ZEND_IN_ARRAY; in zend_dfa_optimize_calls()
509 && (op_array->opcodes[use].opcode == ZEND_JMPZ in zend_dfa_optimize_calls()
510 || op_array->opcodes[use].opcode == ZEND_JMPNZ)) { in zend_dfa_optimize_calls()
564 if (opline->opcode == ZEND_NOP) { in compress_block()
639 switch (opline->opcode) { in zend_ssa_replace_control_link()
706 if ((op_array->opcodes[pred_block->start + pred_block->len - 1].opcode == ZEND_FE_FETCH_R in zend_ssa_unlink_block()
707 || op_array->opcodes[pred_block->start + pred_block->len - 1].opcode == ZEND_FE_FETCH_RW) in zend_ssa_unlink_block()
770 switch (opline->opcode) { in zend_dfa_optimize_jmps()
788 opline->opcode = ZEND_JMP; in zend_dfa_optimize_jmps()
797 opline->opcode = ZEND_CHECK_VAR; in zend_dfa_optimize_jmps()
804 opline->opcode = ZEND_FREE; in zend_dfa_optimize_jmps()
814 opline->opcode = ZEND_JMP; in zend_dfa_optimize_jmps()
828 opline->opcode = ZEND_CHECK_VAR; in zend_dfa_optimize_jmps()
835 opline->opcode = ZEND_FREE; in zend_dfa_optimize_jmps()
844 opline->opcode = ZEND_JMPZ; in zend_dfa_optimize_jmps()
850 opline->opcode = ZEND_QM_ASSIGN; in zend_dfa_optimize_jmps()
858 opline->opcode = ZEND_JMPNZ; in zend_dfa_optimize_jmps()
864 opline->opcode = ZEND_QM_ASSIGN; in zend_dfa_optimize_jmps()
872 opline->opcode = ZEND_JMPNZ; in zend_dfa_optimize_jmps()
898 opline->opcode = ZEND_JMP; in zend_dfa_optimize_jmps()
914 opline->opcode = ZEND_JMP; in zend_dfa_optimize_jmps()
937 (opline->opcode == ZEND_SWITCH_LONG && type == IS_LONG) in zend_dfa_optimize_jmps()
938 || (opline->opcode == ZEND_SWITCH_STRING && type == IS_STRING) in zend_dfa_optimize_jmps()
939 || (opline->opcode == ZEND_MATCH && (type == IS_LONG || type == IS_STRING)); in zend_dfa_optimize_jmps()
945 if (!correct_type && opline->opcode != ZEND_MATCH) { in zend_dfa_optimize_jmps()
966 ZEND_ASSERT(opline->opcode == ZEND_MATCH); in zend_dfa_optimize_jmps()
969 opline->opcode = ZEND_JMP; in zend_dfa_optimize_jmps()
1020 && op_array->opcodes[use].opcode != ZEND_FREE in zend_dfa_try_to_replace_result()
1021 && op_array->opcodes[use].opcode != ZEND_SEND_VAL in zend_dfa_try_to_replace_result()
1022 && op_array->opcodes[use].opcode != ZEND_SEND_VAL_EX in zend_dfa_try_to_replace_result()
1023 && op_array->opcodes[use].opcode != ZEND_VERIFY_RETURN_TYPE in zend_dfa_try_to_replace_result()
1024 && op_array->opcodes[use].opcode != ZEND_YIELD) { in zend_dfa_try_to_replace_result()
1149 if (opline->opcode == ZEND_ASSIGN in zend_dfa_optimize_op_array()
1162 } else if (opline->opcode == ZEND_QM_ASSIGN in zend_dfa_optimize_op_array()
1175 if (opline->opcode == ZEND_ADD in zend_dfa_optimize_op_array()
1176 || opline->opcode == ZEND_SUB in zend_dfa_optimize_op_array()
1177 || opline->opcode == ZEND_MUL in zend_dfa_optimize_op_array()
1178 || opline->opcode == ZEND_IS_EQUAL in zend_dfa_optimize_op_array()
1179 || opline->opcode == ZEND_IS_NOT_EQUAL in zend_dfa_optimize_op_array()
1180 || opline->opcode == ZEND_IS_SMALLER in zend_dfa_optimize_op_array()
1181 || opline->opcode == ZEND_IS_SMALLER_OR_EQUAL in zend_dfa_optimize_op_array()
1196 if (opline->opcode == ZEND_ADD) { in zend_dfa_optimize_op_array()
1208 opline->opcode = ZEND_QM_ASSIGN; in zend_dfa_optimize_op_array()
1218 } else if (opline->opcode == ZEND_MUL in zend_dfa_optimize_op_array()
1230 opline->opcode = ZEND_ADD; in zend_dfa_optimize_op_array()
1249 if (opline->opcode == ZEND_ADD || opline->opcode == ZEND_SUB) { in zend_dfa_optimize_op_array()
1259 opline->opcode = ZEND_QM_ASSIGN; in zend_dfa_optimize_op_array()
1263 } else if (opline->opcode == ZEND_MUL in zend_dfa_optimize_op_array()
1275 opline->opcode = ZEND_ADD; in zend_dfa_optimize_op_array()
1283 } else if (opline->opcode == ZEND_CONCAT) { in zend_dfa_optimize_op_array()
1286 opline->opcode = ZEND_FAST_CONCAT; in zend_dfa_optimize_op_array()
1288 } else if (opline->opcode == ZEND_VERIFY_RETURN_TYPE in zend_dfa_optimize_op_array()
1340 if (opline->opcode == ZEND_QM_ASSIGN in zend_dfa_optimize_op_array()
1396 if (op_array->opcodes[op_2].opcode == ZEND_SUB in zend_dfa_optimize_op_array()
1405 op_array->opcodes[op_2].opcode = ZEND_PRE_DEC; in zend_dfa_optimize_op_array()
1412 } else if (op_array->opcodes[op_2].opcode == ZEND_ADD in zend_dfa_optimize_op_array()
1421 op_array->opcodes[op_2].opcode = ZEND_PRE_INC; in zend_dfa_optimize_op_array()
1428 } else if (op_array->opcodes[op_2].opcode == ZEND_ADD in zend_dfa_optimize_op_array()
1437 op_array->opcodes[op_2].opcode = ZEND_PRE_INC; in zend_dfa_optimize_op_array()
1460 if (opline->opcode == ZEND_ASSIGN in zend_dfa_optimize_op_array()
1461 || opline->opcode == ZEND_ASSIGN_OP in zend_dfa_optimize_op_array()
1462 || opline->opcode == ZEND_PRE_INC in zend_dfa_optimize_op_array()
1463 || opline->opcode == ZEND_PRE_DEC) { in zend_dfa_optimize_op_array()
1465 } else if (opline->opcode == ZEND_POST_INC) { in zend_dfa_optimize_op_array()
1472 if (use >= 0 && op_array->opcodes[use].opcode == ZEND_IS_SMALLER in zend_dfa_optimize_op_array()
1475 opline->opcode = ZEND_PRE_INC; in zend_dfa_optimize_op_array()
1476 op_array->opcodes[use].opcode = ZEND_IS_SMALLER_OR_EQUAL; in zend_dfa_optimize_op_array()
1479 } else if (opline->opcode == ZEND_POST_DEC) { in zend_dfa_optimize_op_array()
1486 if (use >= 0 && op_array->opcodes[use].opcode == ZEND_IS_SMALLER in zend_dfa_optimize_op_array()
1489 opline->opcode = ZEND_PRE_DEC; in zend_dfa_optimize_op_array()
1490 op_array->opcodes[use].opcode = ZEND_IS_SMALLER_OR_EQUAL; in zend_dfa_optimize_op_array()
1496 if (opline->opcode == ZEND_ASSIGN in zend_dfa_optimize_op_array()
1550 if (op_array->opcodes[op_2].opcode == ZEND_SUB in zend_dfa_optimize_op_array()
1559 op_array->opcodes[op_2].opcode = ZEND_PRE_DEC; in zend_dfa_optimize_op_array()
1566 } else if (op_array->opcodes[op_2].opcode == ZEND_ADD in zend_dfa_optimize_op_array()
1575 op_array->opcodes[op_2].opcode = ZEND_PRE_INC; in zend_dfa_optimize_op_array()
1582 } else if (op_array->opcodes[op_2].opcode == ZEND_ADD in zend_dfa_optimize_op_array()
1591 op_array->opcodes[op_2].opcode = ZEND_PRE_INC; in zend_dfa_optimize_op_array()
1633 opline->opcode = ZEND_QM_ASSIGN; in zend_dfa_optimize_op_array()
1637 } else if (opline->opcode == ZEND_ASSIGN_OP in zend_dfa_optimize_op_array()
1648 opline->opcode = ZEND_PRE_INC; in zend_dfa_optimize_op_array()
1652 } else if (opline->opcode == ZEND_ASSIGN_OP in zend_dfa_optimize_op_array()
1663 opline->opcode = ZEND_PRE_DEC; in zend_dfa_optimize_op_array()
1671 && opline->opcode == ZEND_ASSIGN_OP in zend_dfa_optimize_op_array()
1681 opline->opcode = opline->extended_value; in zend_dfa_optimize_op_array()