mirror of
https://github.com/php/php-src.git
synced 2025-08-16 05:58:45 +02:00
Check for USER_FUNCTION
This commit is contained in:
parent
26ab6edffc
commit
1133ee1167
2 changed files with 12 additions and 4 deletions
|
@ -71,7 +71,9 @@ static int zend_foreach_op_array(zend_call_graph *call_graph, zend_script *scrip
|
|||
continue;
|
||||
}
|
||||
ZEND_HASH_FOREACH_PTR(&ce->function_table, op_array) {
|
||||
if (op_array->scope == ce && !(op_array->fn_flags & ZEND_ACC_TRAIT_CLONE)) {
|
||||
if (op_array->scope == ce
|
||||
&& op_array->type == ZEND_USER_FUNCTION
|
||||
&& !(op_array->fn_flags & ZEND_ACC_TRAIT_CLONE)) {
|
||||
if (func(call_graph, op_array) != SUCCESS) {
|
||||
return FAILURE;
|
||||
}
|
||||
|
|
|
@ -1417,7 +1417,9 @@ int zend_optimize_script(zend_script *script, zend_long optimization_level, zend
|
|||
continue;
|
||||
}
|
||||
ZEND_HASH_FOREACH_STR_KEY_PTR(&ce->function_table, name, op_array) {
|
||||
if (op_array->scope == ce && !(op_array->fn_flags & ZEND_ACC_TRAIT_CLONE)) {
|
||||
if (op_array->scope == ce
|
||||
&& op_array->type == ZEND_USER_FUNCTION
|
||||
&& !(op_array->fn_flags & ZEND_ACC_TRAIT_CLONE)) {
|
||||
zend_optimize_op_array(op_array, &ctx);
|
||||
}
|
||||
} ZEND_HASH_FOREACH_END();
|
||||
|
@ -1531,7 +1533,9 @@ int zend_optimize_script(zend_script *script, zend_long optimization_level, zend
|
|||
continue;
|
||||
}
|
||||
ZEND_HASH_FOREACH_STR_KEY_PTR(&ce->function_table, name, op_array) {
|
||||
if (op_array->scope == ce && !(op_array->fn_flags & ZEND_ACC_TRAIT_CLONE)) {
|
||||
if (op_array->scope == ce
|
||||
&& op_array->type == ZEND_USER_FUNCTION
|
||||
&& !(op_array->fn_flags & ZEND_ACC_TRAIT_CLONE)) {
|
||||
zend_adjust_fcall_stack_size(op_array, &ctx);
|
||||
}
|
||||
} ZEND_HASH_FOREACH_END();
|
||||
|
@ -1574,7 +1578,9 @@ int zend_optimize_script(zend_script *script, zend_long optimization_level, zend
|
|||
|
||||
ZEND_HASH_FOREACH_PTR(&script->class_table, ce) {
|
||||
ZEND_HASH_FOREACH_STR_KEY_PTR(&ce->function_table, name, op_array) {
|
||||
if (op_array->scope == ce && !(op_array->fn_flags & ZEND_ACC_TRAIT_CLONE)) {
|
||||
if (op_array->scope == ce
|
||||
&& op_array->type == ZEND_USER_FUNCTION
|
||||
&& !(op_array->fn_flags & ZEND_ACC_TRAIT_CLONE)) {
|
||||
zend_dump_op_array(op_array,
|
||||
ZEND_DUMP_RT_CONSTANTS | ZEND_DUMP_LIVE_RANGES, "after optimizer", NULL);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue