Lines Matching refs:opline

462 	zend_op *opline = op_array->opcodes, *end=opline+op_array->last;  in zend_update_extended_info()  local
464 while (opline<end) { in zend_update_extended_info()
465 if (opline->opcode == ZEND_EXT_STMT) { in zend_update_extended_info()
466 if (opline+1<end) { in zend_update_extended_info()
467 if ((opline+1)->opcode == ZEND_EXT_STMT) { in zend_update_extended_info()
468 opline->opcode = ZEND_NOP; in zend_update_extended_info()
469 opline++; in zend_update_extended_info()
472 if (opline+1<end) { in zend_update_extended_info()
473 opline->lineno = (opline+1)->lineno; in zend_update_extended_info()
476 opline->opcode = ZEND_NOP; in zend_update_extended_info()
479 opline++; in zend_update_extended_info()
563 static uint32_t zend_get_brk_cont_target(const zend_op_array *op_array, const zend_op *opline) { in zend_get_brk_cont_target() argument
564 int nest_levels = opline->op2.num; in zend_get_brk_cont_target()
565 int array_offset = opline->op1.num; in zend_get_brk_cont_target()
574 return opline->opcode == ZEND_BRK ? jmp_to->brk : jmp_to->cont; in zend_get_brk_cont_target()
579 zend_op *opline, *end; in pass_two() local
605 opline = op_array->opcodes; in pass_two()
606 end = opline + op_array->last; in pass_two()
607 while (opline < end) { in pass_two()
608 switch (opline->opcode) { in pass_two()
610 opline->op1.opline_num = op_array->try_catch_array[opline->op1.num].finally_op; in pass_two()
611 zend_resolve_fast_call(op_array, opline - op_array->opcodes); in pass_two()
612 ZEND_PASS_TWO_UPDATE_JMP_TARGET(op_array, opline, opline->op1); in pass_two()
615 zend_resolve_finally_ret(op_array, opline - op_array->opcodes); in pass_two()
618 ZEND_PASS_TWO_UPDATE_JMP_TARGET(op_array, opline, opline->op1); in pass_two()
622opline->extended_value = (uint32_t)(zend_intptr_t)ZEND_CALL_VAR_NUM(NULL, op_array->last_var + opl… in pass_two()
627 uint32_t jmp_target = zend_get_brk_cont_target(op_array, opline); in pass_two()
630 zend_check_finally_breakout(op_array, opline - op_array->opcodes, jmp_target); in pass_two()
632 opline->opcode = ZEND_JMP; in pass_two()
633 opline->op1.opline_num = jmp_target; in pass_two()
634 opline->op2.num = 0; in pass_two()
635 ZEND_PASS_TWO_UPDATE_JMP_TARGET(op_array, opline, opline->op1); in pass_two()
639 zend_resolve_goto_label(op_array, opline); in pass_two()
641 zend_check_finally_breakout(op_array, opline - op_array->opcodes, opline->op1.opline_num); in pass_two()
646 ZEND_PASS_TWO_UPDATE_JMP_TARGET(op_array, opline, opline->op1); in pass_two()
650 opline->extended_value = ZEND_OPLINE_NUM_TO_OFFSET(op_array, opline, opline->extended_value); in pass_two()
662 ZEND_PASS_TWO_UPDATE_JMP_TARGET(op_array, opline, opline->op2); in pass_two()
666 opline->extended_value = ZEND_OPLINE_NUM_TO_OFFSET(op_array, opline, opline->extended_value); in pass_two()
670 if (opline->op1_type != IS_UNUSED) { in pass_two()
671 zend_op *ret = opline; in pass_two()
674 ret->op1 = opline->op1; in pass_two()
675 ret->op1_type = opline->op1_type; in pass_two()
678 MAKE_NOP(opline); in pass_two()
684 opline->opcode = ZEND_GENERATOR_RETURN; in pass_two()
688 if (opline->op1_type == IS_CONST) { in pass_two()
689 ZEND_PASS_TWO_UPDATE_CONSTANT(op_array, opline->op1); in pass_two()
690 } else if (opline->op1_type & (IS_VAR|IS_TMP_VAR)) { in pass_two()
691opline->op1.var = (uint32_t)(zend_intptr_t)ZEND_CALL_VAR_NUM(NULL, op_array->last_var + opline->op… in pass_two()
693 if (opline->op2_type == IS_CONST) { in pass_two()
694 ZEND_PASS_TWO_UPDATE_CONSTANT(op_array, opline->op2); in pass_two()
695 } else if (opline->op2_type & (IS_VAR|IS_TMP_VAR)) { in pass_two()
696opline->op2.var = (uint32_t)(zend_intptr_t)ZEND_CALL_VAR_NUM(NULL, op_array->last_var + opline->op… in pass_two()
698 if (opline->result_type & (IS_VAR|IS_TMP_VAR)) { in pass_two()
699opline->result.var = (uint32_t)(zend_intptr_t)ZEND_CALL_VAR_NUM(NULL, op_array->last_var + opline-… in pass_two()
701 ZEND_VM_SET_OPCODE_HANDLER(opline); in pass_two()
702 opline++; in pass_two()