Lines Matching refs:sccp

2411 static void sccp_context_init(zend_optimizer_ctx *ctx, sccp_ctx *sccp,  in sccp_context_init()  argument
2414 sccp->call_map = call_map; in sccp_context_init()
2415 sccp->values = zend_arena_alloc(&ctx->arena, sizeof(zval) * ssa->vars_count); in sccp_context_init()
2417 MAKE_TOP(&sccp->top); in sccp_context_init()
2418 MAKE_BOT(&sccp->bot); in sccp_context_init()
2424 MAKE_BOT(&sccp->values[i]); in sccp_context_init()
2428 MAKE_BOT(&sccp->values[i]); in sccp_context_init()
2430 MAKE_TOP(&sccp->values[i]); in sccp_context_init()
2435 static void sccp_context_free(sccp_ctx *sccp) { in sccp_context_free() argument
2437 for (i = sccp->scdf.op_array->last_var; i < sccp->scdf.ssa->vars_count; ++i) { in sccp_context_free()
2438 zval_ptr_dtor_nogc(&sccp->values[i]); in sccp_context_free()
2444 sccp_ctx sccp; in sccp_optimize_op_array() local
2448 sccp_context_init(ctx, &sccp, ssa, op_array, call_map); in sccp_optimize_op_array()
2450 sccp.scdf.handlers.visit_instr = sccp_visit_instr; in sccp_optimize_op_array()
2451 sccp.scdf.handlers.visit_phi = sccp_visit_phi; in sccp_optimize_op_array()
2452 sccp.scdf.handlers.mark_feasible_successors = sccp_mark_feasible_successors; in sccp_optimize_op_array()
2454 scdf_init(ctx, &sccp.scdf, op_array, ssa); in sccp_optimize_op_array()
2455 scdf_solve(&sccp.scdf, "SCCP"); in sccp_optimize_op_array()
2461 zval *zv = &sccp.values[i]; in sccp_optimize_op_array()
2480 removed_ops += scdf_remove_unreachable_blocks(&sccp.scdf); in sccp_optimize_op_array()
2481 removed_ops += replace_constant_operands(&sccp); in sccp_optimize_op_array()
2483 sccp_context_free(&sccp); in sccp_optimize_op_array()