/PHP-7.0/Zend/ |
H A D | zend_opcode.c | 61 op_array->last = 0; in init_op_array() 68 op_array->T = 0; in init_op_array() 354 if (op_array->run_time_cache && !op_array->function_name) { in destroy_op_array() 359 if (!op_array->refcount || --(*op_array->refcount) > 0) { in destroy_op_array() 363 efree_size(op_array->refcount, sizeof(*(op_array->refcount))); in destroy_op_array() 457 return &op_array->brk_cont_array[op_array->last_brk_cont-1]; in get_next_brk_cont_element() 462 zend_op *opline = op_array->opcodes, *end=opline+op_array->last; in zend_update_extended_info() 594 …op_array->vars = (zend_string**) erealloc(op_array->vars, sizeof(zend_string*)*op_array->last_var); in pass_two() 598 op_array->opcodes = (zend_op *) erealloc(op_array->opcodes, sizeof(zend_op)*op_array->last); in pass_two() 602 op_array->literals = (zval*)erealloc(op_array->literals, sizeof(zval) * op_array->last_literal); in pass_two() [all …]
|
H A D | zend_extensions.h | 50 typedef void (*op_array_handler_func_t)(zend_op_array *op_array); 52 typedef void (*statement_handler_func_t)(zend_op_array *op_array); 53 typedef void (*fcall_begin_handler_func_t)(zend_op_array *op_array); 54 typedef void (*fcall_end_handler_func_t)(zend_op_array *op_array); 56 typedef void (*op_array_ctor_func_t)(zend_op_array *op_array); 57 typedef void (*op_array_dtor_func_t)(zend_op_array *op_array); 58 typedef size_t (*op_array_persist_calc_func_t)(zend_op_array *op_array); 59 typedef size_t (*op_array_persist_func_t)(zend_op_array *op_array, void *mem); 132 ZEND_API size_t zend_extensions_op_array_persist_calc(zend_op_array *op_array); 133 ZEND_API size_t zend_extensions_op_array_persist(zend_op_array *op_array, void *mem);
|
H A D | zend_compile.h | 419 zend_op_array op_array; member 563 # define CT_CONSTANT_EX(op_array, num) \ argument 564 ((op_array)->literals + (num)) 608 # define EX_LOAD_LITERALS(op_array) do { \ argument 609 EX(literals) = (op_array)->literals; \ 615 EX(func)->op_array.literals 617 # define EX_LOAD_LITERALS(op_array) do { \ argument 623 #define RT_CONSTANT(op_array, node) \ argument 624 RT_CONSTANT_EX((op_array)->literals, node) 642 EX(func)->op_array.run_time_cache [all …]
|
H A D | zend_closures.c | 168 my_function.op_array.run_time_cache = emalloc(my_function.op_array.cache_size); in ZEND_METHOD() 169 memset(my_function.op_array.run_time_cache, 0, my_function.op_array.cache_size); in ZEND_METHOD() 181 efree(my_function.op_array.run_time_cache); in ZEND_METHOD() 235 new_closure->func.op_array.run_time_cache = emalloc(new_closure->func.op_array.cache_size); in ZEND_METHOD() 236 memset(new_closure->func.op_array.run_time_cache, 0, new_closure->func.op_array.cache_size); in ZEND_METHOD() 351 efree(closure->func.op_array.run_time_cache); in zend_closure_free_storage() 354 destroy_op_array(&closure->func.op_array); in zend_closure_free_storage() 583 …closure->func.op_array.run_time_cache = func->op_array.run_time_cache = zend_arena_alloc(&CG(arena… in zend_create_closure() 584 memset(func->op_array.run_time_cache, 0, func->op_array.cache_size); in zend_create_closure() 586 if (closure->func.op_array.refcount) { in zend_create_closure() [all …]
|
H A D | zend_extensions.c | 273 zend_op_array *op_array; member 281 data->size += extension->op_array_persist_calc(data->op_array); in zend_extension_op_array_persist_calc_handler() 288 size_t size = extension->op_array_persist(data->op_array, data->mem); in zend_extension_op_array_persist_handler() 296 ZEND_API size_t zend_extensions_op_array_persist_calc(zend_op_array *op_array) in zend_extensions_op_array_persist_calc() argument 301 data.op_array = op_array; in zend_extensions_op_array_persist_calc() 310 ZEND_API size_t zend_extensions_op_array_persist(zend_op_array *op_array, void *mem) in zend_extensions_op_array_persist() argument 315 data.op_array = op_array; in zend_extensions_op_array_persist()
|
H A D | zend_vm_execute.skl | 23 ZEND_API void zend_{%EXECUTOR_NAME%}(zend_op_array *op_array, zval *return_value) 32 …(zend_function*)op_array, 0, zend_get_called_scope(EG(current_execute_data)), zend_get_this_object… 39 i_init_execute_data(execute_data, op_array, return_value);
|
H A D | zend_execute.c | 2143 dst = src + (op_array->last_var + op_array->T - first_extra_arg); in i_init_func_execute_data() 2182 op_array->run_time_cache = zend_arena_alloc(&CG(arena), op_array->cache_size); in i_init_func_execute_data() 2183 memset(op_array->run_time_cache, 0, op_array->cache_size); in i_init_func_execute_data() 2186 EX_LOAD_LITERALS(op_array); in i_init_func_execute_data() 2211 op_array->run_time_cache = emalloc(op_array->cache_size); in i_init_code_execute_data() 2212 memset(op_array->run_time_cache, 0, op_array->cache_size); in i_init_code_execute_data() 2258 dst = src + (op_array->last_var + op_array->T - first_extra_arg); in i_init_execute_data() 2299 op_array->run_time_cache = zend_arena_alloc(&CG(arena), op_array->cache_size); in i_init_execute_data() 2301 op_array->run_time_cache = emalloc(op_array->cache_size); in i_init_execute_data() 2303 memset(op_array->run_time_cache, 0, op_array->cache_size); in i_init_execute_data() [all …]
|
H A D | zend_closures.h | 31 ZEND_API void zend_create_closure(zval *res, zend_function *op_array, zend_class_entry *scope, zend… 32 ZEND_API void zend_create_fake_closure(zval *res, zend_function *op_array, zend_class_entry *scope,…
|
H A D | zend_execute_API.c | 499 return ex->func->op_array.filename; in zend_get_executed_filename_ex() 1496 if (!ex->func->op_array.last_var) { in zend_rebuild_symbol_table() 1503 if (!ex->func->op_array.last_var) { in zend_rebuild_symbol_table() 1526 zend_op_array *op_array = &execute_data->func->op_array; in zend_attach_symbol_table() local 1531 if (EXPECTED(op_array->last_var)) { in zend_attach_symbol_table() 1532 zend_string **str = op_array->vars; in zend_attach_symbol_table() 1561 zend_op_array *op_array = &execute_data->func->op_array; in zend_detach_symbol_table() local 1565 if (EXPECTED(op_array->last_var)) { in zend_detach_symbol_table() 1566 zend_string **str = op_array->vars; in zend_detach_symbol_table() 1595 zend_op_array *op_array = &execute_data->func->op_array; in zend_set_local_var() local [all …]
|
H A D | zend_compile.c | 69 Z_CACHE_SLOT(op_array->literals[literal]) = op_array->cache_size; in zend_alloc_cache_slot() 77 Z_CACHE_SLOT(op_array->literals[literal]) = op_array->cache_size; in zend_alloc_polymorphic_cache_slot() 400 i = op_array->last_var; in lookup_cv() 401 op_array->last_var++; in lookup_cv() 933 zend_op_array *op_array = &function->op_array; in function_add_ref() local 4545 if ((op_array->scope || (op_array->fn_flags & ZEND_ACC_CLOSURE)) in zend_compile_params() 4735 op_array->scope = ce; in zend_begin_method_decl() 5814 if (op_array && op_array->function_name) { in zend_try_ct_eval_magic_const() 5821 …if ((op_array && !op_array->scope && op_array->function_name) || (op_array->fn_flags & ZEND_ACC_CL… in zend_try_ct_eval_magic_const() 5824 if (op_array && op_array->function_name) { in zend_try_ct_eval_magic_const() [all …]
|
/PHP-7.0/ext/opcache/Optimizer/ |
H A D | nop_removal.c | 44 end = op_array->opcodes + op_array->last; in zend_optimizer_nop_removal() 66 op_array->opcodes[new_count] = *opline; in zend_optimizer_nop_removal() 73 op_array->last = new_count; in zend_optimizer_nop_removal() 74 end = op_array->opcodes + op_array->last; in zend_optimizer_nop_removal() 113 op_array->brk_cont_array[j].brk -= shiftlist[op_array->brk_cont_array[j].brk]; in zend_optimizer_nop_removal() 114 op_array->brk_cont_array[j].cont -= shiftlist[op_array->brk_cont_array[j].cont]; in zend_optimizer_nop_removal() 115 op_array->brk_cont_array[j].start -= shiftlist[op_array->brk_cont_array[j].start]; in zend_optimizer_nop_removal() 120 op_array->try_catch_array[j].try_op -= shiftlist[op_array->try_catch_array[j].try_op]; in zend_optimizer_nop_removal() 121 op_array->try_catch_array[j].catch_op -= shiftlist[op_array->try_catch_array[j].catch_op]; in zend_optimizer_nop_removal() 123 op_array->try_catch_array[j].finally_op -= shiftlist[op_array->try_catch_array[j].finally_op]; in zend_optimizer_nop_removal() [all …]
|
H A D | zend_optimizer.c | 72 i = op_array->last_var; in zend_optimizer_lookup_cv() 73 op_array->last_var++; in zend_optimizer_lookup_cv() 74 op_array->vars = erealloc(op_array->vars, op_array->last_var * sizeof(zend_string*)); in zend_optimizer_lookup_cv() 106 op_array->last_literal++; in zend_optimizer_add_literal() 107 op_array->literals = (zval*)erealloc(op_array->literals, op_array->last_literal * sizeof(zval)); in zend_optimizer_add_literal() 136 Z_CACHE_SLOT(op_array->literals[opline->op1.constant]) = op_array->cache_size; in alloc_cache_slots_op1() 140 Z_CACHE_SLOT(op_array->literals[opline->op2.constant]) = op_array->cache_size; in alloc_cache_slots_op2() 368 zend_op *end = op_array->opcodes + op_array->last; in zend_optimizer_replace_by_const() 433 if (op_array->brk_cont_array[brk].start <= (opline - op_array->opcodes) && in zend_optimizer_replace_by_const() 434 op_array->brk_cont_array[brk].brk > (opline - op_array->opcodes)) { in zend_optimizer_replace_by_const() [all …]
|
H A D | compact_literals.c | 159 op_array); in zend_optimizer_compact_literals() 173 op_array); in zend_optimizer_compact_literals() 199 op_array); in zend_optimizer_compact_literals() 359 op_array->literals[j] = op_array->literals[i]; in zend_optimizer_compact_literals() 368 op_array->literals[j] = op_array->literals[i]; in zend_optimizer_compact_literals() 378 op_array->literals[j] = op_array->literals[i]; in zend_optimizer_compact_literals() 389 op_array->literals[j] = op_array->literals[i]; in zend_optimizer_compact_literals() 404 op_array->literals[j] = op_array->literals[i]; in zend_optimizer_compact_literals() 418 op_array->literals[j] = op_array->literals[i]; in zend_optimizer_compact_literals() 469 op_array->literals[j] = op_array->literals[i]; in zend_optimizer_compact_literals() [all …]
|
H A D | pass3.c | 56 void zend_optimizer_pass3(zend_op_array *op_array) in zend_optimizer_pass3() argument 59 zend_op *end = op_array->opcodes + op_array->last; in zend_optimizer_pass3() 67 opline = op_array->opcodes; in zend_optimizer_pass3() 178 while (ZEND_OP1(opline).opline_num < op_array->last in zend_optimizer_pass3() 194 if (op_array->opcodes[target].opcode == ZEND_JMP) { in zend_optimizer_pass3() 210 if (op_array->opcodes[target].opcode == ZEND_JMP) { in zend_optimizer_pass3() 272 SAME_VAR(op_array->opcodes[target].op1, T)) { in zend_optimizer_pass3() 276 COPY_NODE(T, op_array->opcodes[target].result); in zend_optimizer_pass3() 281 SAME_VAR(op_array->opcodes[target].op1, T)) { in zend_optimizer_pass3() 390 while (ZEND_OP2(opline).opline_num < op_array->last in zend_optimizer_pass3() [all …]
|
H A D | zend_optimizer_internal.h | 97 op.constant = zend_optimizer_add_literal(op_array, &_c); \ 103 op.constant = zend_optimizer_add_literal(op_array, &_c); \ 116 int zend_optimizer_add_literal(zend_op_array *op_array, zval *zv); 120 int zend_optimizer_lookup_cv(zend_op_array *op_array, zend_string* name); 121 int zend_optimizer_update_op1_const(zend_op_array *op_array, 124 int zend_optimizer_update_op2_const(zend_op_array *op_array, 127 int zend_optimizer_replace_by_const(zend_op_array *op_array, 134 void zend_optimizer_pass2(zend_op_array *op_array); 135 void zend_optimizer_pass3(zend_op_array *op_array); 137 void optimize_cfg(zend_op_array *op_array, zend_optimizer_ctx *ctx); [all …]
|
H A D | block_pass.c | 116 zend_op *end = op_array->opcodes + op_array->last; in find_code_blocks() 206 (op_array->opcodes[op_array->brk_cont_array[i].brk].opcode == ZEND_FREE || in find_code_blocks() 236 op_array->brk_cont_array[j] = op_array->brk_cont_array[i]; in find_code_blocks() 669 memset(Tsource, 0, (op_array->last_var + op_array->T) * sizeof(zend_op *)); in zend_optimize_block() 1619 int var_num = op_array->last_var + op_array->T; in zend_jmp_optimization() 1845 bitset_len = zend_bitset_len(op_array->last_var + op_array->T); in zend_t_usage() 1887 for (i = op_array->last_var; i< op_array->T; i++) { in zend_t_usage() 1997 …fprintf(stderr, "File %s func %s\n", op_array->filename, op_array->function_name? op_array->functi… in optimize_cfg() 2005 if ((uint64_t) op_array->last * (op_array->last_var + op_array->T) > 512 * 1024 * 1024) { in optimize_cfg() 2018 if (op_array->last_var || op_array->T) { in optimize_cfg() [all …]
|
H A D | optimize_func_calls.c | 34 Z_TYPE(op_array->literals[(opline)->op2.constant]) == IS_STRING) 41 void optimize_func_calls(zend_op_array *op_array, zend_optimizer_ctx *ctx) in optimize_func_calls() argument 43 zend_op *opline = op_array->opcodes; in optimize_func_calls() 44 zend_op *end = opline + op_array->last; in optimize_func_calls() 49 if (op_array->last < 2) { in optimize_func_calls() 54 call_stack = zend_arena_calloc(&ctx->arena, op_array->last / 2, sizeof(optimizer_call_info)); in optimize_func_calls() 61 zval *function_name = &op_array->literals[opline->op2.constant + 1]; in optimize_func_calls() 88 …Z_CACHE_SLOT(op_array->literals[fcall->op2.constant + 1]) = Z_CACHE_SLOT(op_array->literals[fcall-… in optimize_func_calls() 95 …Z_CACHE_SLOT(op_array->literals[fcall->op2.constant + 1]) = Z_CACHE_SLOT(op_array->literals[fcall-… in optimize_func_calls() 96 literal_dtor(&op_array->literals[fcall->op2.constant]); in optimize_func_calls() [all …]
|
H A D | pass1_5.c | 43 zend_op *opline = op_array->opcodes; in zend_optimizer_pass1() 44 zend_op *end = opline + op_array->last; in zend_optimizer_pass1() 46 (op_array == &ctx->script->main_op_array) : 0; in zend_optimizer_pass1() 256 fake_execute_data.func = (zend_function*)op_array; in zend_optimizer_pass1() 301 if (op_array->scope && in zend_optimizer_pass1() 304 ce = op_array->scope; in zend_optimizer_pass1() 311 ZEND_CE_FILENAME(ce) != op_array->filename)) { in zend_optimizer_pass1() 315 } else if (op_array->scope && in zend_optimizer_pass1() 322 ce = op_array->scope; in zend_optimizer_pass1() 655 if (opline != op_array->opcodes && in zend_optimizer_pass1() [all …]
|
H A D | optimize_temp_vars_5.c | 42 void optimize_temporary_variables(zend_op_array *op_array, zend_optimizer_ctx *ctx) in optimize_temporary_variables() argument 44 int T = op_array->T; in optimize_temporary_variables() 45 int offset = op_array->last_var; in optimize_temporary_variables() 64 end = op_array->opcodes; in optimize_temporary_variables() 65 opline = &op_array->opcodes[op_array->last - 1]; in optimize_temporary_variables() 78 end = op_array->opcodes; in optimize_temporary_variables() 79 opline = &op_array->opcodes[op_array->last - 1]; in optimize_temporary_variables() 110 if ((op_array->fn_flags & ZEND_ACC_HAS_FINALLY_BLOCK) && in optimize_temporary_variables() 229 op_array->T = max + 1; in optimize_temporary_variables()
|
/PHP-7.0/ext/opcache/ |
H A D | zend_persist_calc.c | 178 if (op_array->function_name) { in zend_persist_op_array_calc_ex() 187 if (op_array->literals) { in zend_persist_op_array_calc_ex() 188 zval *p = op_array->literals; in zend_persist_op_array_calc_ex() 190 ADD_DUP_SIZE(op_array->literals, sizeof(zval) * op_array->last_literal); in zend_persist_op_array_calc_ex() 197 ADD_DUP_SIZE(op_array->opcodes, sizeof(zend_op) * op_array->last); in zend_persist_op_array_calc_ex() 199 if (op_array->function_name) { in zend_persist_op_array_calc_ex() 211 if (op_array->filename) { in zend_persist_op_array_calc_ex() 215 if (op_array->arg_info) { in zend_persist_op_array_calc_ex() 220 num_args = op_array->num_args; in zend_persist_op_array_calc_ex() 251 if (op_array->vars) { in zend_persist_op_array_calc_ex() [all …]
|
H A D | zend_persist.c | 462 if (op_array->refcount && --(*op_array->refcount) == 0) { in zend_persist_op_array_ex() 501 if (op_array->literals) { in zend_persist_op_array_ex() 510 op_array->literals = p; in zend_persist_op_array_ex() 583 if (op_array->function_name && !IS_ACCEL_INTERNED(op_array->function_name)) { in zend_persist_op_array_ex() 594 if (op_array->filename) { in zend_persist_op_array_ex() 636 if (op_array->scope) { in zend_persist_op_array_ex() 637 op_array->scope = zend_shared_alloc_get_xlat_entry(op_array->scope); in zend_persist_op_array_ex() 660 if (op_array->vars) { in zend_persist_op_array_ex() 667 zend_accel_store(op_array->vars, sizeof(zend_string*) * op_array->last_var); in zend_persist_op_array_ex() 675 if (op_array->scope && op_array->prototype) { in zend_persist_op_array_ex() [all …]
|
H A D | zend_file_cache.c | 362 if (op_array->static_variables && !IS_SERIALIZED(op_array->static_variables)) { in zend_file_cache_serialize_op_array() 371 if (op_array->scope && !IS_SERIALIZED(op_array->opcodes)) { in zend_file_cache_serialize_op_array() 387 zend_shared_alloc_register_xlat_entry(op_array->opcodes, op_array->opcodes); in zend_file_cache_serialize_op_array() 390 if (op_array->literals && !IS_SERIALIZED(op_array->literals)) { in zend_file_cache_serialize_op_array() 394 p = op_array->literals; in zend_file_cache_serialize_op_array() 478 if (op_array->vars) { in zend_file_cache_serialize_op_array() 482 p = op_array->vars; in zend_file_cache_serialize_op_array() 511 op_array = Z_PTR_P(zv); in zend_file_cache_serialize_func() 966 if (op_array->literals && !IS_UNSERIALIZED(op_array->literals)) { in zend_file_cache_unserialize_op_array() 1048 if (op_array->vars) { in zend_file_cache_unserialize_op_array() [all …]
|
/PHP-7.0/sapi/phpdbg/ |
H A D | phpdbg_print.c | 57 zend_op_array* op_array = &(method->op_array); in phpdbg_print_function_helper() local 59 if (op_array) { in phpdbg_print_function_helper() 62 end = op_array->last-1; in phpdbg_print_function_helper() 66 op_array->line_start, in phpdbg_print_function_helper() 67 op_array->line_end, in phpdbg_print_function_helper() 70 op_array->filename ? ZSTR_VAL(op_array->filename) : "unknown", in phpdbg_print_function_helper() 72 op_array->last); in phpdbg_print_function_helper() 75 op_array->line_start, in phpdbg_print_function_helper() 76 op_array->line_end, in phpdbg_print_function_helper() 78 op_array->filename ? ZSTR_VAL(op_array->filename) : "unknown", in phpdbg_print_function_helper() [all …]
|
H A D | phpdbg_opcode.c | 181 char *decode = phpdbg_decode_opline(&execute_data->func->op_array, opline); in phpdbg_print_opline_ex() 189 …execute_data->func->op_array.filename ? ZSTR_VAL(execute_data->func->op_array.filename) : "unknown… in phpdbg_print_opline_ex() 197 …execute_data->func->op_array.filename ? ZSTR_VAL(execute_data->func->op_array.filename) : "unknown… in phpdbg_print_opline_ex() 205 zend_op_array *op_array = &execute_data->func->op_array; in phpdbg_print_opline_ex() local 207 cur->opcodes = op_array->opcodes; in phpdbg_print_opline_ex() 208 cur->filename = op_array->filename; in phpdbg_print_opline_ex() 209 cur->scope = op_array->scope; in phpdbg_print_opline_ex() 210 cur->function_name = op_array->function_name; in phpdbg_print_opline_ex()
|
H A D | phpdbg_list.c | 298 zend_op_array *op_array; in phpdbg_init_compile_file() local 318 if (op_array == NULL) { in phpdbg_init_compile_file() 325 dataptr->op_array = *op_array; in phpdbg_init_compile_file() 326 if (dataptr->op_array.refcount) { in phpdbg_init_compile_file() 327 ++*dataptr->op_array.refcount; in phpdbg_init_compile_file() 330 return op_array; in phpdbg_init_compile_file() 335 zend_op_array *op_array; in phpdbg_compile_string() local 358 if (op_array == NULL) { in phpdbg_compile_string() 371 dataptr->op_array = *op_array; in phpdbg_compile_string() 373 ++*dataptr->op_array.refcount; in phpdbg_compile_string() [all …]
|