Lines Matching refs:opline
615 zend_op *opline = &CG(active_op_array)->opcodes[CG(active_op_array)->last-1]; in zend_do_free() local
617 while (opline->opcode == ZEND_END_SILENCE) { in zend_do_free()
618 opline--; in zend_do_free()
621 if (opline->result_type == IS_TMP_VAR && opline->result.var == op1->u.op.var) { in zend_do_free()
622 if (opline->opcode == ZEND_BOOL || opline->opcode == ZEND_BOOL_NOT) { in zend_do_free()
627 opline = get_next_op(CG(active_op_array)); in zend_do_free()
629 opline->opcode = ZEND_FREE; in zend_do_free()
630 SET_NODE(opline->op1, op1); in zend_do_free()
631 SET_UNUSED(opline->op2); in zend_do_free()
633 zend_op *opline = &CG(active_op_array)->opcodes[CG(active_op_array)->last-1]; in zend_do_free() local
634 while (opline->opcode == ZEND_END_SILENCE || in zend_do_free()
635 opline->opcode == ZEND_EXT_FCALL_END || in zend_do_free()
636 opline->opcode == ZEND_OP_DATA) { in zend_do_free()
637 opline--; in zend_do_free()
639 if (opline->result_type == IS_VAR in zend_do_free()
640 && opline->result.var == op1->u.op.var) { in zend_do_free()
641 if (opline->opcode == ZEND_FETCH_R || in zend_do_free()
642 opline->opcode == ZEND_FETCH_DIM_R || in zend_do_free()
643 opline->opcode == ZEND_FETCH_OBJ_R) { in zend_do_free()
647 opline = get_next_op(CG(active_op_array)); in zend_do_free()
648 opline->opcode = ZEND_FREE; in zend_do_free()
649 SET_NODE(opline->op1, op1); in zend_do_free()
650 SET_UNUSED(opline->op2); in zend_do_free()
652 opline->result_type |= EXT_TYPE_UNUSED; in zend_do_free()
655 while (opline >= CG(active_op_array)->opcodes) { in zend_do_free()
656 if (opline->opcode == ZEND_FETCH_LIST && in zend_do_free()
657 opline->op1_type == IS_VAR && in zend_do_free()
658 opline->op1.var == op1->u.op.var) { in zend_do_free()
659 opline = get_next_op(CG(active_op_array)); in zend_do_free()
661 opline->opcode = ZEND_FREE; in zend_do_free()
662 SET_NODE(opline->op1, op1); in zend_do_free()
663 SET_UNUSED(opline->op2); in zend_do_free()
666 if (opline->result_type == IS_VAR in zend_do_free()
667 && opline->result.var == op1->u.op.var) { in zend_do_free()
668 if (opline->opcode == ZEND_NEW) { in zend_do_free()
669 opline->result_type |= EXT_TYPE_UNUSED; in zend_do_free()
670 opline = &CG(active_op_array)->opcodes[CG(active_op_array)->last-1]; in zend_do_free()
671 while (opline->opcode != ZEND_DO_FCALL || opline->op1.num != ZEND_CALL_CTOR) { in zend_do_free()
672 opline--; in zend_do_free()
674 opline->op1.num |= ZEND_CALL_CTOR_RESULT_UNUSED; in zend_do_free()
678 opline--; in zend_do_free()
952 ZEND_API int do_bind_function(const zend_op_array *op_array, const zend_op *opline, HashTable *func… in do_bind_function() argument
958 op1 = CT_CONSTANT_EX(op_array, opline->op1.constant); in do_bind_function()
959 op2 = CT_CONSTANT_EX(op_array, opline->op2.constant); in do_bind_function()
961 op1 = RT_CONSTANT(op_array, opline->op1); in do_bind_function()
962 op2 = RT_CONSTANT(op_array, opline->op2); in do_bind_function()
993 ZEND_API zend_class_entry *do_bind_class(const zend_op_array* op_array, const zend_op *opline, Hash… in do_bind_class() argument
999 op1 = CT_CONSTANT_EX(op_array, opline->op1.constant); in do_bind_class()
1000 op2 = CT_CONSTANT_EX(op_array, opline->op2.constant); in do_bind_class()
1002 op1 = RT_CONSTANT(op_array, opline->op1); in do_bind_class()
1003 op2 = RT_CONSTANT(op_array, opline->op2); in do_bind_class()
1028 …y *do_bind_inherited_class(const zend_op_array *op_array, const zend_op *opline, HashTable *class_… in do_bind_inherited_class() argument
1034 op1 = CT_CONSTANT_EX(op_array, opline->op1.constant); in do_bind_inherited_class()
1035 op2 = CT_CONSTANT_EX(op_array, opline->op2.constant); in do_bind_inherited_class()
1037 op1 = RT_CONSTANT(op_array, opline->op1); in do_bind_inherited_class()
1038 op2 = RT_CONSTANT(op_array, opline->op2); in do_bind_inherited_class()
1073 zend_op *opline = &CG(active_op_array)->opcodes[CG(active_op_array)->last-1]; in zend_do_early_binding() local
1076 while (opline->opcode == ZEND_TICKS && opline > CG(active_op_array)->opcodes) { in zend_do_early_binding()
1077 opline--; in zend_do_early_binding()
1080 switch (opline->opcode) { in zend_do_early_binding()
1082 if (do_bind_function(CG(active_op_array), opline, CG(function_table), 1) == FAILURE) { in zend_do_early_binding()
1088 if (do_bind_class(CG(active_op_array), opline, CG(class_table), 1) == NULL) { in zend_do_early_binding()
1095 zend_op *fetch_class_opline = opline-1; in zend_do_early_binding()
1109 *opline_num = opline - CG(active_op_array)->opcodes; in zend_do_early_binding()
1110 opline->opcode = ZEND_DECLARE_INHERITED_CLASS_DELAYED; in zend_do_early_binding()
1111 opline->result_type = IS_UNUSED; in zend_do_early_binding()
1112 opline->result.opline_num = -1; in zend_do_early_binding()
1116 if (do_bind_inherited_class(CG(active_op_array), opline, CG(class_table), ce, 1) == NULL) { in zend_do_early_binding()
1138 zend_hash_del(table, Z_STR_P(CT_CONSTANT(opline->op1))); in zend_do_early_binding()
1139 zend_del_literal(CG(active_op_array), opline->op1.constant); in zend_do_early_binding()
1140 zend_del_literal(CG(active_op_array), opline->op2.constant); in zend_do_early_binding()
1141 MAKE_NOP(opline); in zend_do_early_binding()
1468 zend_op *opline; in zend_do_extended_info() local
1474 opline = get_next_op(CG(active_op_array)); in zend_do_extended_info()
1476 opline->opcode = ZEND_EXT_STMT; in zend_do_extended_info()
1477 SET_UNUSED(opline->op1); in zend_do_extended_info()
1478 SET_UNUSED(opline->op2); in zend_do_extended_info()
1484 zend_op *opline; in zend_do_extended_fcall_begin() local
1490 opline = get_next_op(CG(active_op_array)); in zend_do_extended_fcall_begin()
1492 opline->opcode = ZEND_EXT_FCALL_BEGIN; in zend_do_extended_fcall_begin()
1493 SET_UNUSED(opline->op1); in zend_do_extended_fcall_begin()
1494 SET_UNUSED(opline->op2); in zend_do_extended_fcall_begin()
1500 zend_op *opline; in zend_do_extended_fcall_end() local
1506 opline = get_next_op(CG(active_op_array)); in zend_do_extended_fcall_end()
1508 opline->opcode = ZEND_EXT_FCALL_END; in zend_do_extended_fcall_end()
1509 SET_UNUSED(opline->op1); in zend_do_extended_fcall_end()
1510 SET_UNUSED(opline->op2); in zend_do_extended_fcall_end()
1822 static void zend_adjust_for_fetch_type(zend_op *opline, uint32_t type) /* {{{ */ in zend_adjust_for_fetch_type() argument
1829 opline->opcode += 3; in zend_adjust_for_fetch_type()
1832 opline->opcode += 6; in zend_adjust_for_fetch_type()
1835 opline->opcode += 9; in zend_adjust_for_fetch_type()
1838 opline->opcode += 12; in zend_adjust_for_fetch_type()
1839 opline->extended_value |= type >> BP_VAR_SHIFT; in zend_adjust_for_fetch_type()
1842 opline->opcode += 15; in zend_adjust_for_fetch_type()
1849 static inline void zend_make_var_result(znode *result, zend_op *opline) /* {{{ */ in zend_make_var_result() argument
1851 opline->result_type = IS_VAR; in zend_make_var_result()
1852 opline->result.var = get_temporary_variable(CG(active_op_array)); in zend_make_var_result()
1853 GET_NODE(result, opline->result); in zend_make_var_result()
1857 static inline void zend_make_tmp_result(znode *result, zend_op *opline) /* {{{ */ in zend_make_tmp_result() argument
1859 opline->result_type = IS_TMP_VAR; in zend_make_tmp_result()
1860 opline->result.var = get_temporary_variable(CG(active_op_array)); in zend_make_tmp_result()
1861 GET_NODE(result, opline->result); in zend_make_tmp_result()
1867 zend_op *opline = get_next_op(CG(active_op_array)); in zend_emit_op() local
1868 opline->opcode = opcode; in zend_emit_op()
1871 SET_UNUSED(opline->op1); in zend_emit_op()
1873 SET_NODE(opline->op1, op1); in zend_emit_op()
1877 SET_UNUSED(opline->op2); in zend_emit_op()
1879 SET_NODE(opline->op2, op2); in zend_emit_op()
1883 zend_make_var_result(result, opline); in zend_emit_op()
1885 return opline; in zend_emit_op()
1891 zend_op *opline = get_next_op(CG(active_op_array)); in zend_emit_op_tmp() local
1892 opline->opcode = opcode; in zend_emit_op_tmp()
1895 SET_UNUSED(opline->op1); in zend_emit_op_tmp()
1897 SET_NODE(opline->op1, op1); in zend_emit_op_tmp()
1901 SET_UNUSED(opline->op2); in zend_emit_op_tmp()
1903 SET_NODE(opline->op2, op2); in zend_emit_op_tmp()
1907 zend_make_tmp_result(result, opline); in zend_emit_op_tmp()
1910 return opline; in zend_emit_op_tmp()
1916 zend_op *opline; in zend_emit_tick() local
1923 opline = get_next_op(CG(active_op_array)); in zend_emit_tick()
1925 opline->opcode = ZEND_TICKS; in zend_emit_tick()
1926 SET_UNUSED(opline->op1); in zend_emit_tick()
1927 SET_UNUSED(opline->op2); in zend_emit_tick()
1928 opline->extended_value = FC(declarables).ticks; in zend_emit_tick()
1941 zend_op *opline = zend_emit_op(NULL, ZEND_JMP, NULL, NULL); in zend_emit_jump() local
1942 opline->op1.opline_num = opnum_target; in zend_emit_jump()
1947 ZEND_API int zend_is_smart_branch(zend_op *opline) /* {{{ */ in zend_is_smart_branch() argument
1949 switch (opline->opcode) { in zend_is_smart_branch()
1973 zend_op *opline; in zend_emit_cond_jump() local
1982 opline = zend_emit_op(NULL, opcode, cond, NULL); in zend_emit_cond_jump()
1983 opline->op2.opline_num = opnum_target; in zend_emit_cond_jump()
1990 zend_op *opline = &CG(active_op_array)->opcodes[opnum_jump]; in zend_update_jump_target() local
1991 switch (opline->opcode) { in zend_update_jump_target()
1993 opline->op1.opline_num = opnum_target; in zend_update_jump_target()
2000 opline->op2.opline_num = opnum_target; in zend_update_jump_target()
2045 zend_op *opline = NULL, *oplines = zend_stack_base(&CG(delayed_oplines_stack)); in zend_delayed_compile_end() local
2050 opline = get_next_op(CG(active_op_array)); in zend_delayed_compile_end()
2051 memcpy(opline, &oplines[i], sizeof(zend_op)); in zend_delayed_compile_end()
2054 return opline; in zend_delayed_compile_end()
2061 zend_op *opline = zend_emit_op(NULL, ZEND_VERIFY_RETURN_TYPE, expr, NULL); in zend_emit_return_type_check() local
2063 opline->result_type = expr->op_type = IS_TMP_VAR; in zend_emit_return_type_check()
2064 opline->result.var = expr->u.op.var = get_temporary_variable(CG(active_op_array)); in zend_emit_return_type_check()
2067 opline->op2.num = CG(active_op_array)->cache_size; in zend_emit_return_type_check()
2070 opline->op2.num = -1; in zend_emit_return_type_check()
2156 static inline void zend_set_class_name_op1(zend_op *opline, znode *class_node) /* {{{ */ in zend_set_class_name_op1() argument
2159 opline->op1_type = IS_CONST; in zend_set_class_name_op1()
2160 opline->op1.constant = zend_add_class_name_literal( in zend_set_class_name_op1()
2163 SET_NODE(opline->op1, class_node); in zend_set_class_name_op1()
2170 zend_op *opline; in zend_compile_class_ref() local
2185 opline = zend_emit_op(result, ZEND_FETCH_CLASS, NULL, NULL); in zend_compile_class_ref()
2186 opline->extended_value = fetch_type | (throw_exception ? ZEND_FETCH_CLASS_EXCEPTION : 0); in zend_compile_class_ref()
2190 opline->op2_type = IS_CONST; in zend_compile_class_ref()
2191 opline->op2.constant = zend_add_class_name_literal(CG(active_op_array), in zend_compile_class_ref()
2199 opline = zend_emit_op(result, ZEND_FETCH_CLASS, NULL, &name_node); in zend_compile_class_ref()
2200 …opline->extended_value = ZEND_FETCH_CLASS_DEFAULT | (throw_exception ? ZEND_FETCH_CLASS_EXCEPTION … in zend_compile_class_ref()
2203 return opline; in zend_compile_class_ref()
2238 zend_op *opline; in zend_compile_simple_var_no_cv() local
2246 opline = zend_delayed_emit_op(result, ZEND_FETCH_R, &name_node, NULL); in zend_compile_simple_var_no_cv()
2248 opline = zend_emit_op(result, ZEND_FETCH_R, &name_node, NULL); in zend_compile_simple_var_no_cv()
2254 opline->extended_value = ZEND_FETCH_GLOBAL; in zend_compile_simple_var_no_cv()
2256 opline->extended_value = ZEND_FETCH_LOCAL; in zend_compile_simple_var_no_cv()
2266 return opline; in zend_compile_simple_var_no_cv()
2273 zend_op *opline = zend_compile_simple_var_no_cv(result, ast, type, delayed); in zend_compile_simple_var() local
2274 zend_adjust_for_fetch_type(opline, type); in zend_compile_simple_var()
2283 zend_op *opline = zend_emit_op(NULL, ZEND_SEPARATE, node, NULL); in zend_separate_if_call_and_write() local
2284 opline->result_type = IS_VAR; in zend_separate_if_call_and_write()
2285 opline->result.var = opline->op1.var; in zend_separate_if_call_and_write()
2348 zend_op *opline = zend_compile_dim_common(result, ast, type); in zend_compile_dim() local
2349 zend_adjust_for_fetch_type(opline, type); in zend_compile_dim()
2370 zend_op *opline; in zend_delayed_compile_prop() local
2380 opline = zend_delayed_emit_op(result, ZEND_FETCH_OBJ_R, &obj_node, &prop_node); in zend_delayed_compile_prop()
2381 if (opline->op2_type == IS_CONST) { in zend_delayed_compile_prop()
2382 convert_to_string(CT_CONSTANT(opline->op2)); in zend_delayed_compile_prop()
2383 zend_alloc_polymorphic_cache_slot(opline->op2.constant); in zend_delayed_compile_prop()
2386 return opline; in zend_delayed_compile_prop()
2400 zend_op *opline = zend_compile_prop_common(result, ast, type); in zend_compile_prop() local
2401 zend_adjust_for_fetch_type(opline, type); in zend_compile_prop()
2411 zend_op *opline; in zend_compile_static_prop_common() local
2423 opline = zend_delayed_emit_op(result, ZEND_FETCH_R, &prop_node, NULL); in zend_compile_static_prop_common()
2425 opline = zend_emit_op(result, ZEND_FETCH_R, &prop_node, NULL); in zend_compile_static_prop_common()
2427 if (opline->op1_type == IS_CONST) { in zend_compile_static_prop_common()
2428 convert_to_string(CT_CONSTANT(opline->op1)); in zend_compile_static_prop_common()
2429 zend_alloc_polymorphic_cache_slot(opline->op1.constant); in zend_compile_static_prop_common()
2432 opline->op2_type = IS_CONST; in zend_compile_static_prop_common()
2433 opline->op2.constant = zend_add_class_name_literal( in zend_compile_static_prop_common()
2436 SET_NODE(opline->op2, &class_node); in zend_compile_static_prop_common()
2438 opline->extended_value |= ZEND_FETCH_STATIC_MEMBER; in zend_compile_static_prop_common()
2440 return opline; in zend_compile_static_prop_common()
2446 zend_op *opline = zend_compile_static_prop_common(result, ast, type, delayed); in zend_compile_static_prop() local
2447 zend_adjust_for_fetch_type(opline, type); in zend_compile_static_prop()
2572 zend_op *opline; in zend_compile_assign() local
2601 opline = zend_delayed_compile_end(offset); in zend_compile_assign()
2602 opline->opcode = ZEND_ASSIGN_DIM; in zend_compile_assign()
2604 opline = zend_emit_op_data(&expr_node); in zend_compile_assign()
2611 opline = zend_delayed_compile_end(offset); in zend_compile_assign()
2612 opline->opcode = ZEND_ASSIGN_OBJ; in zend_compile_assign()
2637 zend_op *opline; in zend_compile_assign_ref() local
2654 opline = zend_emit_op(result, ZEND_ASSIGN_REF, &target_node, &source_node); in zend_compile_assign_ref()
2656 opline->result_type |= EXT_TYPE_UNUSED; in zend_compile_assign_ref()
2660 opline->extended_value = ZEND_RETURNS_FUNCTION; in zend_compile_assign_ref()
2680 zend_op *opline; in zend_compile_compound_assign() local
2699 opline = zend_delayed_compile_end(offset); in zend_compile_compound_assign()
2700 opline->opcode = opcode; in zend_compile_compound_assign()
2701 opline->extended_value = ZEND_ASSIGN_DIM; in zend_compile_compound_assign()
2703 opline = zend_emit_op_data(&expr_node); in zend_compile_compound_assign()
2710 opline = zend_delayed_compile_end(offset); in zend_compile_compound_assign()
2711 opline->opcode = opcode; in zend_compile_compound_assign()
2712 opline->extended_value = ZEND_ASSIGN_OBJ; in zend_compile_compound_assign()
2734 zend_op *opline; in zend_compile_args() local
2743 opline = zend_emit_op(NULL, ZEND_SEND_UNPACK, &arg_node, NULL); in zend_compile_args()
2744 opline->op2.num = arg_count; in zend_compile_args()
2745 opline->result.var = (uint32_t)(zend_intptr_t)ZEND_CALL_ARG(NULL, arg_count); in zend_compile_args()
2813 opline = get_next_op(CG(active_op_array)); in zend_compile_args()
2814 opline->opcode = opcode; in zend_compile_args()
2815 SET_NODE(opline->op1, &arg_node); in zend_compile_args()
2816 SET_UNUSED(opline->op2); in zend_compile_args()
2817 opline->op2.opline_num = arg_num; in zend_compile_args()
2818 opline->result.var = (uint32_t)(zend_intptr_t)ZEND_CALL_ARG(NULL, arg_num); in zend_compile_args()
2825 opline->opcode = ZEND_SEND_VAR; in zend_compile_args()
2826 opline->extended_value = ZEND_ARG_COMPILE_TIME_BOUND; in zend_compile_args()
2828 opline->extended_value = flags; in zend_compile_args()
2831 opline->extended_value = ZEND_ARG_COMPILE_TIME_BOUND; in zend_compile_args()
2866 zend_op *opline; in zend_compile_call_common() local
2875 opline = &CG(active_op_array)->opcodes[opnum_init]; in zend_compile_call_common()
2876 opline->extended_value = arg_count; in zend_compile_call_common()
2878 if (opline->opcode == ZEND_INIT_FCALL) { in zend_compile_call_common()
2879 opline->op1.num = zend_vm_calc_used_stack(arg_count, fbc); in zend_compile_call_common()
2882 call_flags = (opline->opcode == ZEND_NEW ? ZEND_CALL_CTOR : 0); in zend_compile_call_common()
2883 opline = zend_emit_op(result, zend_get_call_op(opline->opcode, fbc), NULL, NULL); in zend_compile_call_common()
2884 opline->op1.num = call_flags; in zend_compile_call_common()
2905 zend_op *opline = get_next_op(CG(active_op_array)); in zend_compile_ns_call() local
2906 opline->opcode = ZEND_INIT_NS_FCALL_BY_NAME; in zend_compile_ns_call()
2907 SET_UNUSED(opline->op1); in zend_compile_ns_call()
2908 opline->op2_type = IS_CONST; in zend_compile_ns_call()
2909 opline->op2.constant = zend_add_ns_func_name_literal( in zend_compile_ns_call()
2911 zend_alloc_cache_slot(opline->op2.constant); in zend_compile_ns_call()
2919 zend_op *opline = get_next_op(CG(active_op_array)); in zend_compile_dynamic_call() local
2926 opline->opcode = ZEND_INIT_STATIC_METHOD_CALL; in zend_compile_dynamic_call()
2927 opline->op1_type = IS_CONST; in zend_compile_dynamic_call()
2928 opline->op1.constant = zend_add_class_name_literal(CG(active_op_array), class); in zend_compile_dynamic_call()
2929 opline->op2_type = IS_CONST; in zend_compile_dynamic_call()
2930 opline->op2.constant = zend_add_func_name_literal(CG(active_op_array), method); in zend_compile_dynamic_call()
2931 zend_alloc_cache_slot(opline->op2.constant); in zend_compile_dynamic_call()
2934 opline->opcode = ZEND_INIT_FCALL_BY_NAME; in zend_compile_dynamic_call()
2935 SET_UNUSED(opline->op1); in zend_compile_dynamic_call()
2936 opline->op2_type = IS_CONST; in zend_compile_dynamic_call()
2937 opline->op2.constant = zend_add_func_name_literal(CG(active_op_array), str); in zend_compile_dynamic_call()
2938 zend_alloc_cache_slot(opline->op2.constant); in zend_compile_dynamic_call()
2941 opline->opcode = ZEND_INIT_DYNAMIC_CALL; in zend_compile_dynamic_call()
2942 SET_UNUSED(opline->op1); in zend_compile_dynamic_call()
2943 SET_NODE(opline->op2, name_node); in zend_compile_dynamic_call()
2987 zend_op *opline; in zend_compile_func_typecheck() local
2994 opline = zend_emit_op_tmp(result, ZEND_TYPE_CHECK, &arg_node, NULL); in zend_compile_func_typecheck()
2995 opline->extended_value = type; in zend_compile_func_typecheck()
3003 zend_op *opline; in zend_compile_func_defined() local
3015 opline = zend_emit_op_tmp(result, ZEND_DEFINED, NULL, NULL); in zend_compile_func_defined()
3016 opline->op1_type = IS_CONST; in zend_compile_func_defined()
3017 LITERAL_STR(opline->op1, name); in zend_compile_func_defined()
3018 zend_alloc_cache_slot(opline->op1.constant); in zend_compile_func_defined()
3035 zend_op *opline; in zend_try_compile_ct_bound_init_user_func() local
3053 opline = zend_emit_op(NULL, ZEND_INIT_FCALL, NULL, NULL); in zend_try_compile_ct_bound_init_user_func()
3054 opline->extended_value = num_args; in zend_try_compile_ct_bound_init_user_func()
3055 opline->op1.num = zend_vm_calc_used_stack(num_args, fbc); in zend_try_compile_ct_bound_init_user_func()
3056 opline->op2_type = IS_CONST; in zend_try_compile_ct_bound_init_user_func()
3057 LITERAL_STR(opline->op2, lcname); in zend_try_compile_ct_bound_init_user_func()
3058 zend_alloc_cache_slot(opline->op2.constant); in zend_try_compile_ct_bound_init_user_func()
3066 zend_op *opline; in zend_compile_init_user_func() local
3075 opline = zend_emit_op(NULL, ZEND_INIT_USER_CALL, NULL, &name_node); in zend_compile_init_user_func()
3076 opline->op1_type = IS_CONST; in zend_compile_init_user_func()
3077 LITERAL_STR(opline->op1, zend_string_copy(orig_func_name)); in zend_compile_init_user_func()
3078 opline->extended_value = num_args; in zend_compile_init_user_func()
3113 zend_op *opline; in zend_compile_func_cuf() local
3117 opline = zend_emit_op(NULL, ZEND_SEND_USER, &arg_node, NULL); in zend_compile_func_cuf()
3119 opline = zend_emit_op(NULL, ZEND_SEND_VAL, &arg_node, NULL); in zend_compile_func_cuf()
3122 opline->op2.num = i; in zend_compile_func_cuf()
3123 opline->result.var = (uint32_t)(zend_intptr_t)ZEND_CALL_ARG(NULL, i); in zend_compile_func_cuf()
3153 zend_op *opline; in zend_compile_assert() local
3162 opline = zend_emit_op(NULL, ZEND_INIT_FCALL, NULL, &name_node); in zend_compile_assert()
3164 opline = zend_emit_op(NULL, ZEND_INIT_NS_FCALL_BY_NAME, NULL, NULL); in zend_compile_assert()
3165 opline->op2_type = IS_CONST; in zend_compile_assert()
3166 opline->op2.constant = zend_add_ns_func_name_literal( in zend_compile_assert()
3169 zend_alloc_cache_slot(opline->op2.constant); in zend_compile_assert()
3276 zend_op *opline; in zend_compile_call() local
3301 opline = zend_emit_op(NULL, ZEND_INIT_FCALL, NULL, &name_node); in zend_compile_call()
3302 zend_alloc_cache_slot(opline->op2.constant); in zend_compile_call()
3316 zend_op *opline; in zend_compile_method_call() local
3325 opline = zend_emit_op(NULL, ZEND_INIT_METHOD_CALL, &obj_node, NULL); in zend_compile_method_call()
3332 opline->op2_type = IS_CONST; in zend_compile_method_call()
3333 opline->op2.constant = zend_add_func_name_literal(CG(active_op_array), in zend_compile_method_call()
3335 zend_alloc_polymorphic_cache_slot(opline->op2.constant); in zend_compile_method_call()
3337 SET_NODE(opline->op2, &method_node); in zend_compile_method_call()
3357 zend_op *opline; in zend_compile_static_call() local
3364 opline = zend_compile_class_ref(&class_node, class_ast, 1); in zend_compile_static_call()
3365 extended_value = opline->extended_value; in zend_compile_static_call()
3380 opline = get_next_op(CG(active_op_array)); in zend_compile_static_call()
3381 opline->opcode = ZEND_INIT_STATIC_METHOD_CALL; in zend_compile_static_call()
3382 opline->extended_value = extended_value; in zend_compile_static_call()
3384 zend_set_class_name_op1(opline, &class_node); in zend_compile_static_call()
3387 opline->op2_type = IS_CONST; in zend_compile_static_call()
3388 opline->op2.constant = zend_add_func_name_literal(CG(active_op_array), in zend_compile_static_call()
3390 if (opline->op1_type == IS_CONST) { in zend_compile_static_call()
3391 zend_alloc_cache_slot(opline->op2.constant); in zend_compile_static_call()
3393 zend_alloc_polymorphic_cache_slot(opline->op2.constant); in zend_compile_static_call()
3396 SET_NODE(opline->op2, &method_node); in zend_compile_static_call()
3411 zend_op *opline; in zend_compile_new() local
3421 opline = &CG(active_op_array)->opcodes[dcl_opnum]; in zend_compile_new()
3422 if (opline->opcode == ZEND_FETCH_CLASS) { in zend_compile_new()
3423 opline++; in zend_compile_new()
3425 class_node.op_type = opline->result_type; in zend_compile_new()
3426 class_node.u.op.var = opline->result.var; in zend_compile_new()
3427 opline->op1.opline_num = get_next_op_number(CG(active_op_array)); in zend_compile_new()
3433 opline = zend_emit_op(result, ZEND_NEW, NULL, NULL); in zend_compile_new()
3436 opline->op1_type = IS_CONST; in zend_compile_new()
3437 opline->op1.constant = zend_add_class_name_literal( in zend_compile_new()
3440 SET_NODE(opline->op1, &class_node); in zend_compile_new()
3447 opline = &CG(active_op_array)->opcodes[opnum]; in zend_compile_new()
3448 opline->op2.opline_num = get_next_op_number(CG(active_op_array)); in zend_compile_new()
3476 zend_op *opline = zend_emit_op(NULL, ZEND_BIND_GLOBAL, &result, &name_node); in zend_compile_global_var() local
3477 zend_alloc_cache_slot(opline->op2.constant); in zend_compile_global_var()
3492 zend_op *opline; in zend_compile_static_var_common() local
3512 opline = zend_emit_op(&result, by_ref ? ZEND_FETCH_W : ZEND_FETCH_R, &var_node, NULL); in zend_compile_static_var_common()
3513 opline->extended_value = ZEND_FETCH_STATIC; in zend_compile_static_var_common()
3545 zend_op *opline; in zend_compile_unset() local
3552 opline = zend_emit_op(NULL, ZEND_UNSET_VAR, &var_node, NULL); in zend_compile_unset()
3553 opline->extended_value = ZEND_FETCH_LOCAL | ZEND_QUICK_SET; in zend_compile_unset()
3555 opline = zend_compile_simple_var_no_cv(NULL, var_ast, BP_VAR_UNSET, 0); in zend_compile_unset()
3556 opline->opcode = ZEND_UNSET_VAR; in zend_compile_unset()
3560 opline = zend_compile_dim_common(NULL, var_ast, BP_VAR_UNSET); in zend_compile_unset()
3561 opline->opcode = ZEND_UNSET_DIM; in zend_compile_unset()
3564 opline = zend_compile_prop_common(NULL, var_ast, BP_VAR_UNSET); in zend_compile_unset()
3565 opline->opcode = ZEND_UNSET_OBJ; in zend_compile_unset()
3568 opline = zend_compile_static_prop_common(NULL, var_ast, BP_VAR_UNSET, 0); in zend_compile_unset()
3569 opline->opcode = ZEND_UNSET_VAR; in zend_compile_unset()
3587 zend_op *opline = get_next_op(CG(active_op_array)); in zend_handle_loops_and_finally_ex() local
3589 opline->opcode = ZEND_FAST_CALL; in zend_handle_loops_and_finally_ex()
3590 opline->result_type = IS_TMP_VAR; in zend_handle_loops_and_finally_ex()
3591 opline->result.var = loop_var->var_num; in zend_handle_loops_and_finally_ex()
3592 SET_UNUSED(opline->op1); in zend_handle_loops_and_finally_ex()
3593 SET_UNUSED(opline->op2); in zend_handle_loops_and_finally_ex()
3594 opline->op1.num = loop_var->u.try_catch_offset; in zend_handle_loops_and_finally_ex()
3604 zend_op *opline; in zend_handle_loops_and_finally_ex() local
3607 opline = get_next_op(CG(active_op_array)); in zend_handle_loops_and_finally_ex()
3608 opline->opcode = loop_var->opcode; in zend_handle_loops_and_finally_ex()
3609 opline->op1_type = loop_var->var_type; in zend_handle_loops_and_finally_ex()
3610 opline->op1.var = loop_var->var_num; in zend_handle_loops_and_finally_ex()
3611 SET_UNUSED(opline->op2); in zend_handle_loops_and_finally_ex()
3612 opline->op2.num = loop_var->u.brk_cont_offset; in zend_handle_loops_and_finally_ex()
3613 opline->extended_value = ZEND_FREE_ON_RETURN; in zend_handle_loops_and_finally_ex()
3633 zend_op *opline; in zend_compile_return() local
3645 opline = zend_emit_op(NULL, ZEND_DISCARD_EXCEPTION, NULL, NULL); in zend_compile_return()
3646 opline->op1_type = IS_TMP_VAR; in zend_compile_return()
3647 opline->op1.var = CG(context).fast_call_var; in zend_compile_return()
3657 opline = zend_emit_op(NULL, by_ref ? ZEND_RETURN_BY_REF : ZEND_RETURN, in zend_compile_return()
3662 opline->extended_value = ZEND_RETURNS_FUNCTION; in zend_compile_return()
3664 opline->extended_value = ZEND_RETURNS_VALUE; in zend_compile_return()
3672 zend_op *opline; in zend_compile_echo() local
3678 opline = zend_emit_op(NULL, ZEND_ECHO, &expr_node, NULL); in zend_compile_echo()
3679 opline->extended_value = 0; in zend_compile_echo()
3698 zend_op *opline; in zend_compile_break_continue() local
3731 opline = zend_emit_op(NULL, ast->kind == ZEND_AST_BREAK ? ZEND_BRK : ZEND_CONT, NULL, NULL); in zend_compile_break_continue()
3732 opline->op1.num = CG(context).current_brk_cont; in zend_compile_break_continue()
3733 opline->op2.num = depth; in zend_compile_break_continue()
3737 void zend_resolve_goto_label(zend_op_array *op_array, zend_op *opline) /* {{{ */ in zend_resolve_goto_label() argument
3740 int current, remove_oplines = opline->op1.num; in zend_resolve_goto_label()
3742 uint32_t opnum = opline - op_array->opcodes; in zend_resolve_goto_label()
3744 label = CT_CONSTANT_EX(op_array, opline->op2.constant); in zend_resolve_goto_label()
3750 CG(zend_lineno) = opline->lineno; in zend_resolve_goto_label()
3757 current = opline->extended_value; in zend_resolve_goto_label()
3762 CG(zend_lineno) = opline->lineno; in zend_resolve_goto_label()
3782 opline->opcode = ZEND_JMP; in zend_resolve_goto_label()
3783 opline->op1.opline_num = dest->opline_num; in zend_resolve_goto_label()
3784 opline->extended_value = 0; in zend_resolve_goto_label()
3785 SET_UNUSED(opline->op1); in zend_resolve_goto_label()
3786 SET_UNUSED(opline->op2); in zend_resolve_goto_label()
3787 SET_UNUSED(opline->result); in zend_resolve_goto_label()
3791 opline--; in zend_resolve_goto_label()
3792 MAKE_NOP(opline); in zend_resolve_goto_label()
3793 ZEND_VM_SET_OPCODE_HANDLER(opline); in zend_resolve_goto_label()
3802 zend_op *opline; in zend_compile_goto() local
3809 opline = zend_emit_op(NULL, ZEND_GOTO, NULL, &label_node); in zend_compile_goto()
3810 opline->op1.num = get_next_op_number(CG(active_op_array)) - opnum_start - 1; in zend_compile_goto()
3811 opline->extended_value = CG(context).current_brk_cont; in zend_compile_goto()
3947 zend_op *opline; in zend_compile_foreach() local
3974 opline = zend_emit_op(&reset_node, by_ref ? ZEND_FE_RESET_RW : ZEND_FE_RESET_R, &expr_node, NULL); in zend_compile_foreach()
3977 opline = zend_emit_op(NULL, by_ref ? ZEND_FE_FETCH_RW : ZEND_FE_FETCH_R, &reset_node, NULL); in zend_compile_foreach()
3981 SET_NODE(opline->op2, &value_node); in zend_compile_foreach()
3983 opline->op2_type = IS_VAR; in zend_compile_foreach()
3984 opline->op2.var = get_temporary_variable(CG(active_op_array)); in zend_compile_foreach()
3985 GET_NODE(&value_node, opline->op2); in zend_compile_foreach()
3994 opline = &CG(active_op_array)->opcodes[opnum_fetch]; in zend_compile_foreach()
3995 zend_make_tmp_result(&key_node, opline); in zend_compile_foreach()
4005 opline = &CG(active_op_array)->opcodes[opnum_reset]; in zend_compile_foreach()
4006 opline->op2.opline_num = get_next_op_number(CG(active_op_array)); in zend_compile_foreach()
4008 opline = &CG(active_op_array)->opcodes[opnum_fetch]; in zend_compile_foreach()
4009 opline->extended_value = get_next_op_number(CG(active_op_array)); in zend_compile_foreach()
4068 zend_op *opline; in zend_compile_switch() local
4119 opline = zend_emit_op(NULL, ZEND_CASE, &expr_node, &cond_node); in zend_compile_switch()
4120 SET_NODE(opline->result, &case_node); in zend_compile_switch()
4121 if (opline->op1_type == IS_CONST) { in zend_compile_switch()
4122 zval_copy_ctor(CT_CONSTANT(opline->op1)); in zend_compile_switch()
4168 zend_op *opline; in zend_compile_try() local
4231 opline = get_next_op(CG(active_op_array)); in zend_compile_try()
4232 opline->opcode = ZEND_CATCH; in zend_compile_try()
4233 opline->op1_type = IS_CONST; in zend_compile_try()
4234 opline->op1.constant = zend_add_class_name_literal(CG(active_op_array), in zend_compile_try()
4237 opline->op2_type = IS_CV; in zend_compile_try()
4238 opline->op2.var = lookup_cv(CG(active_op_array), zend_string_copy(Z_STR_P(var_name))); in zend_compile_try()
4239 opline->result.num = is_last_catch; in zend_compile_try()
4247 opline = &CG(active_op_array)->opcodes[opnum_catch]; in zend_compile_try()
4248 opline->extended_value = get_next_op_number(CG(active_op_array)); in zend_compile_try()
4263 opline = zend_emit_op(NULL, ZEND_FAST_CALL, NULL, NULL); in zend_compile_try()
4264 opline->op1.num = try_catch_offset; in zend_compile_try()
4265 opline->result_type = IS_TMP_VAR; in zend_compile_try()
4266 opline->result.var = CG(context).fast_call_var; in zend_compile_try()
4278 opline = zend_emit_op(NULL, ZEND_FAST_RET, NULL, NULL); in zend_compile_try()
4279 opline->op1_type = IS_TMP_VAR; in zend_compile_try()
4280 opline->op1.var = CG(context).fast_call_var; in zend_compile_try()
4530 zend_op *opline; in zend_compile_params() local
4579 opline = zend_emit_op(NULL, opcode, NULL, &default_node); in zend_compile_params()
4580 SET_NODE(opline->result, &var_node); in zend_compile_params()
4581 opline->op1.num = i + 1; in zend_compile_params()
4642 if (opline->opcode == ZEND_RECV_INIT) { in zend_compile_params()
4644 zend_alloc_cache_slot(opline->op2.constant); in zend_compile_params()
4646 Z_CACHE_SLOT(op_array->literals[opline->op2.constant]) = -1; in zend_compile_params()
4650 opline->op2.num = op_array->cache_size; in zend_compile_params()
4653 opline->op2.num = -1; in zend_compile_params()
4657 if (opline->opcode == ZEND_RECV_INIT) { in zend_compile_params()
4658 Z_CACHE_SLOT(op_array->literals[opline->op2.constant]) = -1; in zend_compile_params()
4660 opline->op2.num = -1; in zend_compile_params()
4874 zend_op *opline; in zend_begin_func_decl() local
4897 opline = zend_emit_op_tmp(result, ZEND_DECLARE_LAMBDA_FUNCTION, NULL, NULL); in zend_begin_func_decl()
4899 opline = get_next_op(CG(active_op_array)); in zend_begin_func_decl()
4900 opline->opcode = ZEND_DECLARE_FUNCTION; in zend_begin_func_decl()
4901 opline->op2_type = IS_CONST; in zend_begin_func_decl()
4902 LITERAL_STR(opline->op2, zend_string_copy(lcname)); in zend_begin_func_decl()
4908 opline->op1_type = IS_CONST; in zend_begin_func_decl()
4909 LITERAL_STR(opline->op1, key); in zend_begin_func_decl()
5170 zend_op *opline; in zend_compile_use_trait() local
5191 opline = get_next_op(CG(active_op_array)); in zend_compile_use_trait()
5192 opline->opcode = ZEND_ADD_TRAIT; in zend_compile_use_trait()
5193 SET_NODE(opline->op1, &FC(implementing_class)); in zend_compile_use_trait()
5194 opline->op2_type = IS_CONST; in zend_compile_use_trait()
5195 opline->op2.constant = zend_add_class_name_literal(CG(active_op_array), in zend_compile_use_trait()
5228 zend_op *opline; in zend_compile_implements() local
5235 opline = zend_emit_op(NULL, ZEND_ADD_INTERFACE, class_node, NULL); in zend_compile_implements()
5236 opline->op2_type = IS_CONST; in zend_compile_implements()
5237 opline->op2.constant = zend_add_class_name_literal(CG(active_op_array), in zend_compile_implements()
5267 zend_op *opline; in zend_compile_class_decl() local
5328 opline = get_next_op(CG(active_op_array)); in zend_compile_class_decl()
5329 zend_make_var_result(&declare_node, opline); in zend_compile_class_decl()
5332 GET_NODE(&FC(implementing_class), opline->result); in zend_compile_class_decl()
5334 opline->op2_type = IS_CONST; in zend_compile_class_decl()
5335 LITERAL_STR(opline->op2, lcname); in zend_compile_class_decl()
5339 opline->opcode = ZEND_DECLARE_ANON_INHERITED_CLASS; in zend_compile_class_decl()
5340 opline->extended_value = extends_node.u.op.var; in zend_compile_class_decl()
5342 opline->opcode = ZEND_DECLARE_ANON_CLASS; in zend_compile_class_decl()
5345 opline->op1_type = IS_UNUSED; in zend_compile_class_decl()
5360 opline->opcode = ZEND_DECLARE_INHERITED_CLASS; in zend_compile_class_decl()
5361 opline->extended_value = extends_node.u.op.var; in zend_compile_class_decl()
5363 opline->opcode = ZEND_DECLARE_CLASS; in zend_compile_class_decl()
5368 opline->op1_type = IS_CONST; in zend_compile_class_decl()
5369 LITERAL_STR(opline->op1, key); in zend_compile_class_decl()
6175 zend_op *opline = zend_compile_prop_common(NULL, var_ast, BP_VAR_RW); in zend_compile_post_incdec() local
6176 opline->opcode = ast->kind == ZEND_AST_POST_INC ? ZEND_POST_INC_OBJ : ZEND_POST_DEC_OBJ; in zend_compile_post_incdec()
6177 zend_make_tmp_result(result, opline); in zend_compile_post_incdec()
6195 zend_op *opline = zend_compile_prop_common(result, var_ast, BP_VAR_RW); in zend_compile_pre_incdec() local
6196 opline->opcode = ast->kind == ZEND_AST_PRE_INC ? ZEND_PRE_INC_OBJ : ZEND_PRE_DEC_OBJ; in zend_compile_pre_incdec()
6210 zend_op *opline; in zend_compile_cast() local
6214 opline = zend_emit_op_tmp(result, ZEND_CAST, &expr_node, NULL); in zend_compile_cast()
6215 opline->extended_value = ast->attr; in zend_compile_cast()
6286 zend_op *opline; in zend_compile_coalesce() local
6296 opline = zend_emit_op_tmp(NULL, ZEND_QM_ASSIGN, &default_node, NULL); in zend_compile_coalesce()
6297 SET_NODE(opline->result, result); in zend_compile_coalesce()
6299 opline = &CG(active_op_array)->opcodes[opnum]; in zend_compile_coalesce()
6300 opline->op2.opline_num = get_next_op_number(CG(active_op_array)); in zend_compile_coalesce()
6306 zend_op *opline; in zend_compile_print() local
6312 opline = zend_emit_op(NULL, ZEND_ECHO, &expr_node, NULL); in zend_compile_print()
6313 opline->extended_value = 1; in zend_compile_print()
6344 zend_op *opline; in zend_compile_yield() local
6363 opline = zend_emit_op(result, ZEND_YIELD, value_node_ptr, key_node_ptr); in zend_compile_yield()
6366 opline->extended_value = ZEND_RETURNS_FUNCTION; in zend_compile_yield()
6394 zend_op *opline; in zend_compile_instanceof() local
6406 opline = zend_compile_class_ref(&class_node, class_ast, 0); in zend_compile_instanceof()
6407 opline->extended_value |= ZEND_FETCH_CLASS_NO_AUTOLOAD; in zend_compile_instanceof()
6410 opline = zend_emit_op_tmp(result, ZEND_INSTANCEOF, &obj_node, NULL); in zend_compile_instanceof()
6413 opline->op2_type = IS_CONST; in zend_compile_instanceof()
6414 opline->op2.constant = zend_add_class_name_literal( in zend_compile_instanceof()
6417 SET_NODE(opline->op2, &class_node); in zend_compile_instanceof()
6426 zend_op *opline; in zend_compile_include_or_eval() local
6431 opline = zend_emit_op(result, ZEND_INCLUDE_OR_EVAL, &expr_node, NULL); in zend_compile_include_or_eval()
6432 opline->extended_value = ast->attr; in zend_compile_include_or_eval()
6443 zend_op *opline = NULL; in zend_compile_isset_or_empty() local
6463 opline = zend_emit_op(result, ZEND_ISSET_ISEMPTY_VAR, &var_node, NULL); in zend_compile_isset_or_empty()
6464 opline->extended_value = ZEND_FETCH_LOCAL | ZEND_QUICK_SET; in zend_compile_isset_or_empty()
6466 opline = zend_compile_simple_var_no_cv(result, var_ast, BP_VAR_IS, 0); in zend_compile_isset_or_empty()
6467 opline->opcode = ZEND_ISSET_ISEMPTY_VAR; in zend_compile_isset_or_empty()
6471 opline = zend_compile_dim_common(result, var_ast, BP_VAR_IS); in zend_compile_isset_or_empty()
6472 opline->opcode = ZEND_ISSET_ISEMPTY_DIM_OBJ; in zend_compile_isset_or_empty()
6475 opline = zend_compile_prop_common(result, var_ast, BP_VAR_IS); in zend_compile_isset_or_empty()
6476 opline->opcode = ZEND_ISSET_ISEMPTY_PROP_OBJ; in zend_compile_isset_or_empty()
6479 opline = zend_compile_static_prop_common(result, var_ast, BP_VAR_IS, 0); in zend_compile_isset_or_empty()
6480 opline->opcode = ZEND_ISSET_ISEMPTY_VAR; in zend_compile_isset_or_empty()
6485 result->op_type = opline->result_type = IS_TMP_VAR; in zend_compile_isset_or_empty()
6486 opline->extended_value |= ast->kind == ZEND_AST_ISSET ? ZEND_ISSET : ZEND_ISEMPTY; in zend_compile_isset_or_empty()
6541 zend_op *opline; in zend_compile_array() local
6573 opline = zend_emit_op_tmp(result, ZEND_INIT_ARRAY, &value_node, key_node_ptr); in zend_compile_array()
6574 opline->extended_value = list->children << ZEND_ARRAY_SIZE_SHIFT; in zend_compile_array()
6576 opline = zend_emit_op(NULL, ZEND_ADD_ARRAY_ELEMENT, in zend_compile_array()
6578 SET_NODE(opline->result, result); in zend_compile_array()
6580 opline->extended_value |= by_ref; in zend_compile_array()
6595 opline = &CG(active_op_array)->opcodes[opnum_init]; in zend_compile_array()
6596 opline->extended_value |= ZEND_ARRAY_NOT_PACKED; in zend_compile_array()
6605 zend_op *opline; in zend_compile_const() local
6632 opline = zend_emit_op_tmp(result, ZEND_FETCH_CONSTANT, NULL, NULL); in zend_compile_const()
6633 opline->op2_type = IS_CONST; in zend_compile_const()
6636 opline->op2.constant = zend_add_const_name_literal( in zend_compile_const()
6639 opline->extended_value = IS_CONSTANT_UNQUALIFIED; in zend_compile_const()
6641 opline->extended_value |= IS_CONSTANT_IN_NAMESPACE; in zend_compile_const()
6642 opline->op2.constant = zend_add_const_name_literal( in zend_compile_const()
6645 opline->op2.constant = zend_add_const_name_literal( in zend_compile_const()
6649 zend_alloc_cache_slot(opline->op2.constant); in zend_compile_const()
6659 zend_op *opline; in zend_compile_class_const() local
6664 zend_op *opline = zend_emit_op_tmp(result, ZEND_FETCH_CLASS_NAME, NULL, NULL); in zend_compile_class_const() local
6665 opline->extended_value = zend_get_class_fetch_type(zend_ast_get_str(class_ast)); in zend_compile_class_const()
6703 opline = zend_emit_op_tmp(result, ZEND_FETCH_CONSTANT, NULL, &const_node); in zend_compile_class_const()
6705 zend_set_class_name_op1(opline, &class_node); in zend_compile_class_const()
6707 if (opline->op1_type == IS_CONST) { in zend_compile_class_const()
6708 zend_alloc_cache_slot(opline->op2.constant); in zend_compile_class_const()
6710 zend_alloc_polymorphic_cache_slot(opline->op2.constant); in zend_compile_class_const()
6727 zend_op *opline = zend_emit_op_tmp(result, ZEND_FETCH_CLASS_NAME, NULL, NULL); in zend_compile_resolve_class_name() local
6728 opline->extended_value = fetch_type; in zend_compile_resolve_class_name()
6734 zend_op *opline = zend_emit_op_tmp(result, ZEND_FETCH_CLASS_NAME, NULL, NULL); in zend_compile_resolve_class_name() local
6735 opline->extended_value = fetch_type; in zend_compile_resolve_class_name()
6749 zend_op *opline = get_next_op(CG(active_op_array)); in zend_compile_rope_add() local
6754 opline->opcode = ZEND_ROPE_INIT; in zend_compile_rope_add()
6755 SET_UNUSED(opline->op1); in zend_compile_rope_add()
6757 opline->opcode = ZEND_ROPE_ADD; in zend_compile_rope_add()
6758 SET_NODE(opline->op1, result); in zend_compile_rope_add()
6760 SET_NODE(opline->op2, elem_node); in zend_compile_rope_add()
6761 SET_NODE(opline->result, result); in zend_compile_rope_add()
6762 opline->extended_value = num; in zend_compile_rope_add()
6763 return opline; in zend_compile_rope_add()
6771 zend_op *opline = NULL, *init_opline; in zend_compile_encaps_list() local
6803 opline = zend_compile_rope_add(result, j++, &elem_node); in zend_compile_encaps_list()
6817 opline = zend_compile_rope_add(result, j++, &last_const_node); in zend_compile_encaps_list()
6821 if (opline->op2_type == IS_CONST) { in zend_compile_encaps_list()
6822 GET_NODE(result, opline->op2); in zend_compile_encaps_list()
6823 MAKE_NOP(opline); in zend_compile_encaps_list()
6825 opline->opcode = ZEND_CAST; in zend_compile_encaps_list()
6826 opline->extended_value = IS_STRING; in zend_compile_encaps_list()
6827 opline->op1_type = opline->op2_type; in zend_compile_encaps_list()
6828 opline->op1 = opline->op2; in zend_compile_encaps_list()
6829 opline->result_type = IS_TMP_VAR; in zend_compile_encaps_list()
6830 opline->result.var = get_temporary_variable(CG(active_op_array)); in zend_compile_encaps_list()
6831 SET_UNUSED(opline->op2); in zend_compile_encaps_list()
6832 GET_NODE(result, opline->result); in zend_compile_encaps_list()
6835 opline->opcode = ZEND_FAST_CONCAT; in zend_compile_encaps_list()
6836 opline->extended_value = 0; in zend_compile_encaps_list()
6837 opline->op1_type = init_opline->op2_type; in zend_compile_encaps_list()
6838 opline->op1 = init_opline->op2; in zend_compile_encaps_list()
6839 opline->result_type = IS_TMP_VAR; in zend_compile_encaps_list()
6840 opline->result.var = get_temporary_variable(CG(active_op_array)); in zend_compile_encaps_list()
6842 GET_NODE(result, opline->result); in zend_compile_encaps_list()
6848 info->cont = info->brk = opline - CG(active_op_array)->opcodes; in zend_compile_encaps_list()
6851 opline->opcode = ZEND_ROPE_END; in zend_compile_encaps_list()
6852 opline->result.var = get_temporary_variable(CG(active_op_array)); in zend_compile_encaps_list()
6853 var = opline->op1.var = get_temporary_variable(CG(active_op_array)); in zend_compile_encaps_list()
6854 GET_NODE(result, opline->result); in zend_compile_encaps_list()
6863 while (opline != init_opline) { in zend_compile_encaps_list()
6864 opline--; in zend_compile_encaps_list()
6865 if (opline->opcode == ZEND_ROPE_ADD && in zend_compile_encaps_list()
6866 opline->result.var == -1) { in zend_compile_encaps_list()
6867 opline->op1.var = var; in zend_compile_encaps_list()
6868 opline->result.var = var; in zend_compile_encaps_list()
6869 } else if (opline->opcode == ZEND_ROPE_INIT && in zend_compile_encaps_list()
6870 opline->result.var == -1) { in zend_compile_encaps_list()
6871 opline->result.var = var; in zend_compile_encaps_list()
6880 zend_op *opline; in zend_compile_magic_const() local
6891 opline = zend_emit_op_tmp(result, ZEND_FETCH_CLASS_NAME, NULL, NULL); in zend_compile_magic_const()
6892 opline->extended_value = ZEND_FETCH_CLASS_SELF; in zend_compile_magic_const()
7363 zend_op *opline; in zend_delayed_compile_var() local
7369 opline = zend_delayed_compile_dim(result, ast, type); in zend_delayed_compile_var()
7370 zend_adjust_for_fetch_type(opline, type); in zend_delayed_compile_var()
7373 opline = zend_delayed_compile_prop(result, ast, type); in zend_delayed_compile_var()
7374 zend_adjust_for_fetch_type(opline, type); in zend_delayed_compile_var()