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);