mirror of
https://github.com/php/php-src.git
synced 2025-08-16 05:58:45 +02:00
Voidify zend_build_call_graph()
It always returned SUCCESS
This commit is contained in:
parent
fea9b5cf1d
commit
278efe3b64
4 changed files with 8 additions and 11 deletions
|
@ -222,7 +222,7 @@ static void zend_sort_op_arrays(zend_call_graph *call_graph)
|
||||||
// TODO: perform topological sort of cyclic call graph
|
// TODO: perform topological sort of cyclic call graph
|
||||||
}
|
}
|
||||||
|
|
||||||
ZEND_API int zend_build_call_graph(zend_arena **arena, zend_script *script, zend_call_graph *call_graph) /* {{{ */
|
ZEND_API void zend_build_call_graph(zend_arena **arena, zend_script *script, zend_call_graph *call_graph) /* {{{ */
|
||||||
{
|
{
|
||||||
call_graph->op_arrays_count = 0;
|
call_graph->op_arrays_count = 0;
|
||||||
zend_foreach_op_array(script, zend_op_array_calc, call_graph);
|
zend_foreach_op_array(script, zend_op_array_calc, call_graph);
|
||||||
|
@ -231,8 +231,6 @@ ZEND_API int zend_build_call_graph(zend_arena **arena, zend_script *script, zend
|
||||||
call_graph->func_infos = (zend_func_info*)zend_arena_calloc(arena, call_graph->op_arrays_count, sizeof(zend_func_info));
|
call_graph->func_infos = (zend_func_info*)zend_arena_calloc(arena, call_graph->op_arrays_count, sizeof(zend_func_info));
|
||||||
call_graph->op_arrays_count = 0;
|
call_graph->op_arrays_count = 0;
|
||||||
zend_foreach_op_array(script, zend_op_array_collect, call_graph);
|
zend_foreach_op_array(script, zend_op_array_collect, call_graph);
|
||||||
|
|
||||||
return SUCCESS;
|
|
||||||
}
|
}
|
||||||
/* }}} */
|
/* }}} */
|
||||||
|
|
||||||
|
|
|
@ -60,7 +60,7 @@ typedef struct _zend_call_graph {
|
||||||
|
|
||||||
BEGIN_EXTERN_C()
|
BEGIN_EXTERN_C()
|
||||||
|
|
||||||
ZEND_API int zend_build_call_graph(zend_arena **arena, zend_script *script, zend_call_graph *call_graph);
|
ZEND_API void zend_build_call_graph(zend_arena **arena, zend_script *script, zend_call_graph *call_graph);
|
||||||
ZEND_API void zend_analyze_call_graph(zend_arena **arena, zend_script *script, zend_call_graph *call_graph);
|
ZEND_API void zend_analyze_call_graph(zend_arena **arena, zend_script *script, zend_call_graph *call_graph);
|
||||||
ZEND_API zend_call_info **zend_build_call_map(zend_arena **arena, zend_func_info *info, const zend_op_array *op_array);
|
ZEND_API zend_call_info **zend_build_call_map(zend_arena **arena, zend_func_info *info, const zend_op_array *op_array);
|
||||||
ZEND_API int zend_analyze_calls(zend_arena **arena, zend_script *script, uint32_t build_flags, zend_op_array *op_array, zend_func_info *func_info);
|
ZEND_API int zend_analyze_calls(zend_arena **arena, zend_script *script, uint32_t build_flags, zend_op_array *op_array, zend_func_info *func_info);
|
||||||
|
|
|
@ -1431,7 +1431,6 @@ ZEND_API int zend_optimize_script(zend_script *script, zend_long optimization_le
|
||||||
zend_op_array *op_array;
|
zend_op_array *op_array;
|
||||||
zend_string *name;
|
zend_string *name;
|
||||||
zend_optimizer_ctx ctx;
|
zend_optimizer_ctx ctx;
|
||||||
zend_call_graph call_graph;
|
|
||||||
|
|
||||||
ctx.arena = zend_arena_create(64 * 1024);
|
ctx.arena = zend_arena_create(64 * 1024);
|
||||||
ctx.script = script;
|
ctx.script = script;
|
||||||
|
@ -1440,9 +1439,11 @@ ZEND_API int zend_optimize_script(zend_script *script, zend_long optimization_le
|
||||||
ctx.debug_level = debug_level;
|
ctx.debug_level = debug_level;
|
||||||
|
|
||||||
if ((ZEND_OPTIMIZER_PASS_6 & optimization_level) &&
|
if ((ZEND_OPTIMIZER_PASS_6 & optimization_level) &&
|
||||||
(ZEND_OPTIMIZER_PASS_7 & optimization_level) &&
|
(ZEND_OPTIMIZER_PASS_7 & optimization_level)) {
|
||||||
zend_build_call_graph(&ctx.arena, script, &call_graph) == SUCCESS) {
|
|
||||||
/* Optimize using call-graph */
|
/* Optimize using call-graph */
|
||||||
|
zend_call_graph call_graph;
|
||||||
|
zend_build_call_graph(&ctx.arena, script, &call_graph);
|
||||||
|
|
||||||
int i;
|
int i;
|
||||||
zend_func_info *func_info;
|
zend_func_info *func_info;
|
||||||
|
|
||||||
|
|
|
@ -4492,9 +4492,7 @@ ZEND_EXT_API int zend_jit_script(zend_script *script)
|
||||||
checkpoint = zend_arena_checkpoint(CG(arena));
|
checkpoint = zend_arena_checkpoint(CG(arena));
|
||||||
|
|
||||||
call_graph.op_arrays_count = 0;
|
call_graph.op_arrays_count = 0;
|
||||||
if (zend_build_call_graph(&CG(arena), script, &call_graph) != SUCCESS) {
|
zend_build_call_graph(&CG(arena), script, &call_graph);
|
||||||
goto jit_failure;
|
|
||||||
}
|
|
||||||
|
|
||||||
zend_analyze_call_graph(&CG(arena), script, &call_graph);
|
zend_analyze_call_graph(&CG(arena), script, &call_graph);
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue