@@ -3696,17 +3696,16 @@ ZEND_VM_HOT_HANDLER(59, ZEND_INIT_FCALL_BY_NAME, ANY, CONST, NUM|CACHE_SLOT)
36963696{
36973697 USE_OPLINE
36983698 zend_function * fbc ;
3699- zval * function_name , * func ;
37003699 zend_execute_data * call ;
37013700
37023701 fbc = CACHED_PTR (opline -> result .num );
37033702 if (UNEXPECTED (fbc == NULL )) {
3704- function_name = (zval * )RT_CONSTANT (opline , opline -> op2 );
3705- func = zend_hash_find_known_hash (EG (function_table ), Z_STR_P (function_name + 1 ));
3706- if (UNEXPECTED (func == NULL )) {
3703+ zval * function_name = (zval * )RT_CONSTANT (opline , opline -> op2 );
3704+ fbc = zend_lookup_function (Z_STR_P (function_name + 1 ));
3705+ //fbc = zend_lookup_function(Z_STR_P(function_name));
3706+ if (UNEXPECTED (fbc == NULL )) {
37073707 ZEND_VM_DISPATCH_TO_HELPER (zend_undefined_function_helper );
37083708 }
3709- fbc = Z_FUNC_P (func );
37103709 if (EXPECTED (fbc -> type == ZEND_USER_FUNCTION ) && UNEXPECTED (!RUN_TIME_CACHE (& fbc -> op_array ))) {
37113710 init_func_run_time_cache (& fbc -> op_array );
37123711 }
@@ -3838,22 +3837,19 @@ ZEND_VM_HANDLER(118, ZEND_INIT_USER_CALL, CONST, CONST|TMPVAR|CV, NUM)
38383837ZEND_VM_HOT_HANDLER (69 , ZEND_INIT_NS_FCALL_BY_NAME , ANY , CONST , NUM |CACHE_SLOT )
38393838{
38403839 USE_OPLINE
3841- zval * func_name ;
3842- zval * func ;
38433840 zend_function * fbc ;
38443841 zend_execute_data * call ;
38453842
38463843 fbc = CACHED_PTR (opline -> result .num );
38473844 if (UNEXPECTED (fbc == NULL )) {
3848- func_name = (zval * )RT_CONSTANT (opline , opline -> op2 );
3849- func = zend_hash_find_known_hash ( EG ( function_table ), Z_STR_P (func_name + 1 ));
3850- if (func == NULL ) {
3851- func = zend_hash_find_known_hash ( EG ( function_table ), Z_STR_P (func_name + 2 ));
3852- if (UNEXPECTED ( func == NULL ) ) {
3845+ zval * function_name = (zval * )RT_CONSTANT (opline , opline -> op2 );
3846+ fbc = zend_lookup_function ( Z_STR_P (function_name + 1 ));
3847+ if (fbc == NULL ) {
3848+ fbc = zend_lookup_function ( Z_STR_P (function_name + 2 ));
3849+ if (fbc == NULL ) {
38533850 ZEND_VM_DISPATCH_TO_HELPER (zend_undefined_function_helper );
38543851 }
38553852 }
3856- fbc = Z_FUNC_P (func );
38573853 if (EXPECTED (fbc -> type == ZEND_USER_FUNCTION ) && UNEXPECTED (!RUN_TIME_CACHE (& fbc -> op_array ))) {
38583854 init_func_run_time_cache (& fbc -> op_array );
38593855 }
@@ -3871,15 +3867,13 @@ ZEND_VM_HOT_HANDLER(69, ZEND_INIT_NS_FCALL_BY_NAME, ANY, CONST, NUM|CACHE_SLOT)
38713867ZEND_VM_HOT_HANDLER (61 , ZEND_INIT_FCALL , NUM , CONST , NUM |CACHE_SLOT )
38723868{
38733869 USE_OPLINE
3874- zval * fname ;
3875- zval * func ;
38763870 zend_function * fbc ;
38773871 zend_execute_data * call ;
38783872
38793873 fbc = CACHED_PTR (opline -> result .num );
38803874 if (UNEXPECTED (fbc == NULL )) {
3881- fname = (zval * )RT_CONSTANT (opline , opline -> op2 );
3882- func = zend_hash_find_known_hash (EG (function_table ), Z_STR_P (fname ));
3875+ zval * fname = (zval * )RT_CONSTANT (opline , opline -> op2 );
3876+ zval * func = zend_hash_find_known_hash (EG (function_table ), Z_STR_P (fname ));
38833877 ZEND_ASSERT (func != NULL && "Function existence must be checked at compile time" );
38843878 fbc = Z_FUNC_P (func );
38853879 if (EXPECTED (fbc -> type == ZEND_USER_FUNCTION ) && UNEXPECTED (!RUN_TIME_CACHE (& fbc -> op_array ))) {
0 commit comments