/php-src/Zend/Optimizer/ |
H A D | zend_call_graph.c | 51 zend_call_info *call_info; in zend_analyze_calls() local 58 call_info = NULL; in zend_analyze_calls() 95 call_info = NULL; in zend_analyze_calls() 105 call_info = NULL; in zend_analyze_calls() 132 if (call_info) { in zend_analyze_calls() 147 if (call_info) { in zend_analyze_calls() 162 if (call_info) { in zend_analyze_calls() 175 zend_call_info *call_info; in zend_is_indirectly_recursive() local 188 while (call_info) { in zend_is_indirectly_recursive() 193 call_info = call_info->next_caller; in zend_is_indirectly_recursive() [all …]
|
H A D | zend_func_info.c | 54 ZEND_ASSERT(!call_info->is_frameless); in zend_range_info() 56 if (!call_info->send_unpack in zend_range_info() 57 && (call_info->num_args == 2 || call_info->num_args == 3) in zend_range_info() 60 zend_op_array *op_array = call_info->caller_op_array; in zend_range_info() 68 if (call_info->num_args == 3) { in zend_range_info() 69 t3 = _ssa_op1_info(op_array, ssa, call_info->arg_info[2].opline, in zend_range_info() 121 return call_info ? info->info_func(call_info, ssa) : 0; in zend_get_internal_func_info() 133 const zend_call_info *call_info, const zend_ssa *ssa, in zend_get_func_info() argument 137 const zend_function *callee_func = call_info->callee_func; in zend_get_func_info() 179 if (!call_info->is_prototype) { in zend_get_func_info() [all …]
|
H A D | zend_func_info.h | 60 const zend_function *callee_func, const zend_call_info *call_info, const zend_ssa *ssa); 62 const zend_call_info *call_info, const zend_ssa *ssa,
|
H A D | dfa_pass.c | 131 while ((*call_info)) { in zend_ssa_remove_nops() 133 *call_info = (*call_info)->next_callee; in zend_ssa_remove_nops() 135 call_info = &(*call_info)->next_callee; in zend_ssa_remove_nops() 241 while (call_info) { in zend_ssa_remove_nops() 242 call_info->caller_init_opline -= in zend_ssa_remove_nops() 245 call_info->caller_call_opline -= in zend_ssa_remove_nops() 248 call_info = call_info->next_callee; in zend_ssa_remove_nops() 410 if (call_info->caller_call_opline in zend_dfa_optimize_calls() 412 && call_info->callee_func in zend_dfa_optimize_calls() 531 call_info = call_info->next_callee; in zend_dfa_optimize_calls() [all …]
|
H A D | zend_optimizer.c | 1509 zend_call_info *call_info =func_info->callee_info; in zend_adjust_fcall_stack_size_graph() local 1511 while (call_info) { in zend_adjust_fcall_stack_size_graph() 1512 zend_op *opline = call_info->caller_init_opline; in zend_adjust_fcall_stack_size_graph() 1514 if (opline && call_info->callee_func && opline->opcode == ZEND_INIT_FCALL) { in zend_adjust_fcall_stack_size_graph() 1515 ZEND_ASSERT(!call_info->is_prototype); in zend_adjust_fcall_stack_size_graph() 1516 opline->op1.num = zend_vm_calc_used_stack(opline->extended_value, call_info->callee_func); in zend_adjust_fcall_stack_size_graph() 1518 call_info = call_info->next_callee; in zend_adjust_fcall_stack_size_graph()
|
H A D | zend_inference.c | 1553 const zend_call_info *call_info; in zend_inference_propagate_range() local 1558 call_info = func_info->call_map[opline - op_array->opcodes]; in zend_inference_propagate_range() 1559 if (!call_info || call_info->is_prototype) { in zend_inference_propagate_range() 1562 if (call_info->callee_func->type == ZEND_USER_FUNCTION) { in zend_inference_propagate_range() 1563 func_info = ZEND_FUNC_INFO(&call_info->callee_func->op_array); in zend_inference_propagate_range() 1573 type = zend_get_func_info(call_info, ssa); in zend_inference_propagate_range() 3884 zend_call_info *call_info; in _zend_update_type_info() local 3889 call_info = func_info->call_map[opline - op_array->opcodes]; in _zend_update_type_info() 3890 if (!call_info) { in _zend_update_type_info() 3896 tmp = zend_get_func_info(call_info, ssa, &ce, &ce_is_instanceof); in _zend_update_type_info() [all …]
|
/php-src/Zend/ |
H A D | zend_vm_execute.skl | 46 uint32_t call_info; 55 call_info = ZEND_CALL_TOP_CODE | ZEND_CALL_HAS_SYMBOL_TABLE; 57 call_info = ZEND_CALL_TOP_CODE | ZEND_CALL_HAS_SYMBOL_TABLE | ZEND_CALL_HAS_THIS; 59 execute_data = zend_vm_stack_push_call_frame(call_info,
|
H A D | zend_execute.h | 260 static zend_always_inline void zend_vm_init_call_frame(zend_execute_data *call, uint32_t call_info,… in zend_vm_init_call_frame() argument 265 ZEND_CALL_INFO(call) = call_info; in zend_vm_init_call_frame() 269 …te_data *zend_vm_stack_push_call_frame_ex(uint32_t used_stack, uint32_t call_info, zend_function *… in zend_vm_stack_push_call_frame_ex() argument 278 …zend_vm_init_call_frame(call, call_info | ZEND_CALL_ALLOCATED, func, num_args, object_or_called_sc… in zend_vm_stack_push_call_frame_ex() 282 zend_vm_init_call_frame(call, call_info, func, num_args, object_or_called_scope); in zend_vm_stack_push_call_frame_ex() 297 static zend_always_inline zend_execute_data *zend_vm_stack_push_call_frame(uint32_t call_info, zend… in zend_vm_stack_push_call_frame() argument 301 return zend_vm_stack_push_call_frame_ex(used_stack, call_info, in zend_vm_stack_push_call_frame() 305 static zend_always_inline void zend_vm_stack_free_extra_args_ex(uint32_t call_info, zend_execute_da… in zend_vm_stack_free_extra_args_ex() argument 307 if (UNEXPECTED(call_info & ZEND_CALL_FREE_EXTRA_ARGS)) { in zend_vm_stack_free_extra_args_ex() 336 static zend_always_inline void zend_vm_stack_free_call_frame_ex(uint32_t call_info, zend_execute_da… in zend_vm_stack_free_call_frame_ex() argument [all …]
|
H A D | zend_vm_def.h | 2923 uint32_t call_info = EX_CALL_INFO(); in ZEND_VM_HOT_HELPER() local 2931 call_info = EX_CALL_INFO(); in ZEND_VM_HOT_HELPER() 2953 call_info = EX_CALL_INFO(); in ZEND_VM_HOT_HELPER() 3015 call_info = EX_CALL_INFO(); in ZEND_VM_HOT_HELPER() 3546 uint32_t call_info; variable 3697 uint32_t call_info; variable 3936 call_info |= ZEND_CALL_CLOSURE; 3942 call_info |= ZEND_CALL_HAS_THIS; 3952 if (call_info & ZEND_CALL_CLOSURE) { 4635 call_info = Z_TYPE_INFO(EX(This)); [all …]
|
H A D | zend_compile.h | 657 #define ZEND_CALL_KIND_EX(call_info) \ argument 658 (call_info & (ZEND_CALL_CODE | ZEND_CALL_TOP)) 663 #define ZEND_ADD_CALL_FLAG_EX(call_info, flag) do { \ argument 664 call_info |= (flag); \ 667 #define ZEND_DEL_CALL_FLAG_EX(call_info, flag) do { \ argument 668 call_info &= ~(flag); \
|
H A D | zend_execute_API.c | 805 uint32_t call_info; in zend_call_function() local 847 call_info = ZEND_CALL_TOP_FUNCTION | ZEND_CALL_DYNAMIC; in zend_call_function() 850 call_info = ZEND_CALL_TOP_FUNCTION | ZEND_CALL_DYNAMIC | ZEND_CALL_HAS_THIS; in zend_call_function() 853 call = zend_vm_stack_push_call_frame(call_info, in zend_call_function() 982 uint32_t call_info; in zend_call_function() local 985 call_info = ZEND_CALL_CLOSURE; in zend_call_function() 987 call_info |= ZEND_CALL_FAKE_CLOSURE; in zend_call_function() 989 ZEND_ADD_CALL_FLAG(call, call_info); in zend_call_function()
|
H A D | zend_vm_execute.h | 7132 uint32_t call_info; in ZEND_INIT_METHOD_CALL_SPEC_CONST_CONST_HANDLER() local 7283 uint32_t call_info; in ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_CONST_HANDLER() local 9706 uint32_t call_info; in ZEND_INIT_METHOD_CALL_SPEC_CONST_TMPVAR_HANDLER() local 9857 uint32_t call_info; in ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_TMPVAR_HANDLER() local 10615 uint32_t call_info; in ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_UNUSED_HANDLER() local 12198 uint32_t call_info; in ZEND_INIT_METHOD_CALL_SPEC_CONST_CV_HANDLER() local 12349 uint32_t call_info; in ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_CV_HANDLER() local 16601 uint32_t call_info; in ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_CONST_HANDLER() local 18094 uint32_t call_info; in ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_TMPVAR_HANDLER() local 19501 uint32_t call_info; in ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_CV_HANDLER() local [all …]
|
H A D | zend_execute.c | 1621 uint32_t call_info = ZEND_CALL_INFO(call); in zend_frameless_observed_call() local 1622 if (UNEXPECTED(call_info & ZEND_CALL_ALLOCATED)) { in zend_frameless_observed_call() 1623 zend_vm_stack_free_call_frame_ex(call_info, call); in zend_frameless_observed_call() 4984 uint32_t call_info; in zend_init_dynamic_call_object() local 4997 call_info |= ZEND_CALL_HAS_THIS; in zend_init_dynamic_call_object() 5001 call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_DYNAMIC; in zend_init_dynamic_call_object() 5003 call_info |= ZEND_CALL_RELEASE_THIS | ZEND_CALL_HAS_THIS; in zend_init_dynamic_call_object() 5017 return zend_vm_stack_push_call_frame(call_info, in zend_init_dynamic_call_object() 5092 call_info |= ZEND_CALL_RELEASE_THIS | ZEND_CALL_HAS_THIS; in zend_init_dynamic_call_array() 5106 return zend_vm_stack_push_call_frame(call_info, in zend_init_dynamic_call_array() [all …]
|
/php-src/sapi/fpm/fpm/ |
H A D | fpm_php_trace.c | 92 uint32_t *call_info = (uint32_t *)&l; in fpm_php_trace_dump() local 97 if (ZEND_CALL_KIND_EX(*call_info) == ZEND_CALL_TOP_CODE) { in fpm_php_trace_dump() 99 } else if (ZEND_CALL_KIND_EX(*call_info) == ZEND_CALL_NESTED_CODE) { in fpm_php_trace_dump()
|
/php-src/ext/opcache/jit/ |
H A D | zend_jit_vm_helpers.c | 53 if (UNEXPECTED(call_info & ZEND_CALL_HAS_SYMBOL_TABLE)) { in zend_jit_leave_nested_func_helper() 57 zend_vm_stack_free_extra_args_ex(call_info, execute_data); in zend_jit_leave_nested_func_helper() 58 if (UNEXPECTED(call_info & ZEND_CALL_RELEASE_THIS)) { in zend_jit_leave_nested_func_helper() 60 } else if (UNEXPECTED(call_info & ZEND_CALL_CLOSURE)) { in zend_jit_leave_nested_func_helper() 63 if (UNEXPECTED(call_info & ZEND_CALL_HAS_EXTRA_NAMED_PARAMS)) { in zend_jit_leave_nested_func_helper() 69 zend_vm_stack_free_call_frame_ex(call_info, old_execute_data); in zend_jit_leave_nested_func_helper() 93 if (UNEXPECTED(call_info & ZEND_CALL_HAS_SYMBOL_TABLE)) { in zend_jit_leave_top_func_helper() 96 zend_vm_stack_free_extra_args_ex(call_info, execute_data); in zend_jit_leave_top_func_helper() 101 if (UNEXPECTED(call_info & ZEND_CALL_CLOSURE)) { in zend_jit_leave_top_func_helper() 114 uint32_t call_info = EX_CALL_INFO(); in zend_jit_leave_func_helper() local [all …]
|
H A D | zend_jit_ir.c | 8726 call_info = ir_PHI_2(IR_U32, call_info2, call_info); 8829 while (call_info && call_info->caller_init_opline != opline) { 8830 call_info = call_info->next_callee; 8832 if (call_info && call_info->callee_func && !call_info->is_prototype) { 8988 while (call_info && call_info->caller_init_opline != opline) { 8989 call_info = call_info->next_callee; 8991 if (call_info && call_info->callee_func && !call_info->is_prototype) { 9242 call_info = call_info->next_callee; 9244 if (call_info && call_info->callee_func && !call_info->is_prototype) { 10055 call_info = call_info->next_callee; [all …]
|
H A D | zend_jit_internal.h | 224 ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_jit_leave_nested_func_helper(uint32_t call_info EXECUTE_… 225 ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_jit_leave_top_func_helper(uint32_t call_info EXECUTE_DAT…
|
H A D | zend_jit.c | 110 …ol zend_jit_needs_arg_dtor(const zend_function *func, uint32_t arg_num, zend_call_info *call_info); 254 static int zend_jit_needs_call_chain(zend_call_info *call_info, uint32_t b, const zend_op_array *op… in zend_jit_needs_call_chain() argument 327 if (!call_info) { in zend_jit_needs_call_chain() 399 const zend_op *end = call_info->caller_call_opline; in zend_jit_needs_call_chain() 441 …skip_valid_arguments(const zend_op_array *op_array, zend_ssa *ssa, const zend_call_info *call_info) in skip_valid_arguments() argument 444 zend_function *func = call_info->callee_func; in skip_valid_arguments() 448 while (num_args < call_info->num_args) { in skip_valid_arguments() 453 zend_op *opline = call_info->arg_info[num_args].opline; in skip_valid_arguments()
|
H A D | zend_jit_trace.c | 475 …ool zend_jit_needs_arg_dtor(const zend_function *func, uint32_t arg_num, zend_call_info *call_info) in zend_jit_needs_arg_dtor() argument 498 if (call_info && arg_num < call_info->num_args && call_info->arg_info[arg_num].opline) { in zend_jit_needs_arg_dtor() 499 const zend_op *opline = call_info->arg_info[arg_num].opline; in zend_jit_needs_arg_dtor() 7058 zend_call_info *call_info = jit_extension->func_info.callee_info; in zend_jit_trace() local 7060 while (call_info) { in zend_jit_trace() 7061 if (call_info->caller_init_opline == init_opline in zend_jit_trace() 7062 && !call_info->is_prototype) { in zend_jit_trace() 7074 call_info = call_info->next_callee; in zend_jit_trace()
|