cfg 113 ext/opcache/Optimizer/block_pass.c static int find_code_blocks(zend_op_array *op_array, zend_cfg *cfg, zend_optimizer_ctx *ctx) cfg 120 ext/opcache/Optimizer/block_pass.c memset(cfg, 0, sizeof(zend_cfg)); cfg 121 ext/opcache/Optimizer/block_pass.c blocks = cfg->blocks = zend_arena_calloc(&ctx->arena, op_array->last + 2, sizeof(zend_code_block)); cfg 187 ext/opcache/Optimizer/block_pass.c cfg->try = zend_arena_calloc(&ctx->arena, op_array->last_try_catch, sizeof(zend_code_block *)); cfg 188 ext/opcache/Optimizer/block_pass.c cfg->catch = zend_arena_calloc(&ctx->arena, op_array->last_try_catch, sizeof(zend_code_block *)); cfg 190 ext/opcache/Optimizer/block_pass.c cfg->try[i] = &blocks[op_array->try_catch_array[i].try_op]; cfg 191 ext/opcache/Optimizer/block_pass.c cfg->catch[i] = &blocks[op_array->try_catch_array[i].catch_op]; cfg 225 ext/opcache/Optimizer/block_pass.c cfg->loop_start = zend_arena_calloc(&ctx->arena, op_array->last_brk_cont, sizeof(zend_code_block *)); cfg 226 ext/opcache/Optimizer/block_pass.c cfg->loop_cont = zend_arena_calloc(&ctx->arena, op_array->last_brk_cont, sizeof(zend_code_block *)); cfg 227 ext/opcache/Optimizer/block_pass.c cfg->loop_brk = zend_arena_calloc(&ctx->arena, op_array->last_brk_cont, sizeof(zend_code_block *)); cfg 238 ext/opcache/Optimizer/block_pass.c cfg->loop_start[j] = &blocks[op_array->brk_cont_array[j].start]; cfg 239 ext/opcache/Optimizer/block_pass.c cfg->loop_cont[j] = &blocks[op_array->brk_cont_array[j].cont]; cfg 240 ext/opcache/Optimizer/block_pass.c cfg->loop_brk[j] = &blocks[op_array->brk_cont_array[j].brk]; cfg 507 ext/opcache/Optimizer/block_pass.c static void zend_rebuild_access_path(zend_cfg *cfg, zend_op_array *op_array, int find_start, zend_optimizer_ctx *ctx) cfg 509 ext/opcache/Optimizer/block_pass.c zend_code_block *blocks = cfg->blocks; cfg 531 ext/opcache/Optimizer/block_pass.c zend_access_path(cfg->loop_start[i], ctx); cfg 532 ext/opcache/Optimizer/block_pass.c zend_access_path(cfg->loop_cont[i], ctx); cfg 533 ext/opcache/Optimizer/block_pass.c zend_access_path(cfg->loop_brk[i], ctx); cfg 541 ext/opcache/Optimizer/block_pass.c if (!cfg->catch[i]->access) { cfg 542 ext/opcache/Optimizer/block_pass.c zend_access_path(cfg->catch[i], ctx); cfg 609 ext/opcache/Optimizer/block_pass.c static void zend_optimize_block(zend_code_block *block, zend_op_array *op_array, zend_bitset used_ext, zend_cfg *cfg, zend_optimizer_ctx *ctx) cfg 613 ext/opcache/Optimizer/block_pass.c zend_op **Tsource = cfg->Tsource; cfg 1139 ext/opcache/Optimizer/block_pass.c static void assemble_code_blocks(zend_cfg *cfg, zend_op_array *op_array) cfg 1141 ext/opcache/Optimizer/block_pass.c zend_code_block *blocks = cfg->blocks; cfg 1189 ext/opcache/Optimizer/block_pass.c if (cfg->try[i]->access) { cfg 1190 ext/opcache/Optimizer/block_pass.c op_array->try_catch_array[j].try_op = cfg->try[i]->start_opline - new_opcodes; cfg 1191 ext/opcache/Optimizer/block_pass.c op_array->try_catch_array[j].catch_op = cfg->catch[i]->start_opline - new_opcodes; cfg 1202 ext/opcache/Optimizer/block_pass.c op_array->brk_cont_array[i].start = cfg->loop_start[i]->start_opline - new_opcodes; cfg 1203 ext/opcache/Optimizer/block_pass.c op_array->brk_cont_array[i].cont = cfg->loop_cont[i]->start_opline - new_opcodes; cfg 1204 ext/opcache/Optimizer/block_pass.c op_array->brk_cont_array[i].brk = cfg->loop_brk[i]->start_opline - new_opcodes; cfg 1249 ext/opcache/Optimizer/block_pass.c static void zend_jmp_optimization(zend_code_block *block, zend_op_array *op_array, zend_code_block *blocks, zend_cfg *cfg, zend_optimizer_ctx *ctx) cfg 1410 ext/opcache/Optimizer/block_pass.c zend_op **Tsource = cfg->Tsource; cfg 1580 ext/opcache/Optimizer/block_pass.c same_t = cfg->same_t; cfg 1941 ext/opcache/Optimizer/block_pass.c zend_cfg cfg; cfg 1959 ext/opcache/Optimizer/block_pass.c if (!find_code_blocks(op_array, &cfg, ctx)) { cfg 1964 ext/opcache/Optimizer/block_pass.c zend_rebuild_access_path(&cfg, op_array, 0, ctx); cfg 1968 ext/opcache/Optimizer/block_pass.c cfg.Tsource = zend_arena_calloc(&ctx->arena, op_array->last_var + op_array->T, sizeof(zend_op *)); cfg 1969 ext/opcache/Optimizer/block_pass.c cfg.same_t = zend_arena_alloc(&ctx->arena, op_array->last_var + op_array->T); cfg 1973 ext/opcache/Optimizer/block_pass.c cfg.Tsource = NULL; cfg 1974 ext/opcache/Optimizer/block_pass.c cfg.same_t = NULL; cfg 1980 ext/opcache/Optimizer/block_pass.c zend_t_usage(cfg.blocks, op_array, usage, ctx); cfg 1983 ext/opcache/Optimizer/block_pass.c for (cur_block = cfg.blocks; cur_block; cur_block = cur_block->next) { cfg 1987 ext/opcache/Optimizer/block_pass.c zend_optimize_block(cur_block, op_array, usage, &cfg, ctx); cfg 1991 ext/opcache/Optimizer/block_pass.c for (cur_block = cfg.blocks; cur_block; cur_block = cur_block->next) { cfg 1995 ext/opcache/Optimizer/block_pass.c zend_jmp_optimization(cur_block, op_array, cfg.blocks, &cfg, ctx); cfg 1999 ext/opcache/Optimizer/block_pass.c zend_rebuild_access_path(&cfg, op_array, 1, ctx); cfg 2003 ext/opcache/Optimizer/block_pass.c zend_t_usage(cfg.blocks, op_array, usage, ctx); cfg 2004 ext/opcache/Optimizer/block_pass.c assemble_code_blocks(&cfg, op_array);