Re: [ZEND-ENGINE-CVS] cvs: Zend / zend.c zend_execute.c zend_execute.h zend_execute_API.c

From: Date: Mon, 02 Sep 2002 10:35:09 +0000
Subject: Re: [ZEND-ENGINE-CVS] cvs: Zend / zend.c zend_execute.c zend_execute.h zend_execute_API.c
References: 1 2  Groups: php.zend-engine.cvs 
Request: Send a blank email to php-zend-engine-cvs+get-379@lists.php.net to get a copy of this message
On Mon, 2 Sep 2002, Derick Rethans wrote: >On Sat, 24 Aug 2002, Thies C. Arntzen wrote: > >> thies Sat Aug 24 13:51:50 2002 EDT >> >> Modified files: >> /Zend zend.c zend_execute.c zend_execute.h zend_execute_API.c >> Log: >> @ - added zend_execute_internal which is called like zend_execute but for >> @ internal functions. (Thies) >> >> # read the source, luke! >> # ok as discussed with zeev on irc. >> # will port to ZE2 tomorrow! > >This change is not in the ZendEngine2 yet, can you please merge it? (And >bumb up the extensions API no. to 20020824?) Umm..didn't ZE2 have any other changes? So it's API number(s) should be different?? --Jani >regards, >Derick > > >> >> >> Index: Zend/zend.c >> diff -u Zend/zend.c:1.147 Zend/zend.c:1.148 >> --- Zend/zend.c:1.147 Wed Aug 14 20:22:37 2002 >> +++ Zend/zend.c Sat Aug 24 13:51:49 2002 >> @@ -417,6 +417,7 @@ >> >> zend_compile_file = compile_file; >> zend_execute = execute; >> + zend_execute_internal = NULL; /* saves one function hall if the zend_execute_internal is >> not used */ >> >> /* set up version */ >> zend_version_info = strdup(ZEND_CORE_VERSION_INFO); >> Index: Zend/zend_execute.c >> diff -u Zend/zend_execute.c:1.302 Zend/zend_execute.c:1.303 >> --- Zend/zend_execute.c:1.302 Sat Aug 17 16:18:55 2002 >> +++ Zend/zend_execute.c Sat Aug 24 13:51:49 2002 >> @@ -996,6 +996,11 @@ >> >> #define EX(element) execute_data.element >> >> +ZEND_API void execute_internal(zend_execute_data *execute_data_ptr, int return_value_used >> TSRMLS_DC) >> +{ >> + ((zend_internal_function *) >> execute_data_ptr->function_state.function)->handler(execute_data_ptr->opline->extended_value, >> execute_data_ptr->Ts[execute_data_ptr->opline->result.u.var].var.ptr, >> execute_data_ptr->object.ptr, return_value_used TSRMLS_CC); >> +} >> + >> ZEND_API void execute(zend_op_array *op_array TSRMLS_DC) >> { >> zend_execute_data execute_data; >> @@ -1588,7 +1593,13 @@ >> if (EX(function_state).function->type==ZEND_INTERNAL_FUNCTION) { >> ALLOC_ZVAL(EX(Ts)[EX(opline)->result.u.var].var.ptr); >> INIT_ZVAL(*(EX(Ts)[EX(opline)->result.u.var].var.ptr)); >> - ((zend_internal_function *) >> EX(function_state).function)->handler(EX(opline)->extended_value, >> EX(Ts)[EX(opline)->result.u.var].var.ptr, EX(object).ptr, return_value_used TSRMLS_CC); >> + >> + if (! zend_execute_internal) { >> + /* saves one function hall if the zend_execute_internal is not used */ >> + ((zend_internal_function *) >> EX(function_state).function)->handler(EX(opline)->extended_value, >> EX(Ts)[EX(opline)->result.u.var].var.ptr, EX(object).ptr, return_value_used TSRMLS_CC); >> + } else { >> + zend_execute_internal(&execute_data, return_value_used TSRMLS_CC); >> + } >> EG(execute_data_ptr) = &execute_data; >> if (EX(object).ptr) { >> EX(object).ptr->refcount--; >> Index: Zend/zend_execute.h >> diff -u Zend/zend_execute.h:1.44 Zend/zend_execute.h:1.45 >> --- Zend/zend_execute.h:1.44 Mon May 20 03:16:43 2002 >> +++ Zend/zend_execute.h Sat Aug 24 13:51:50 2002 >> @@ -29,10 +29,12 @@ >> >> BEGIN_EXTERN_C() >> ZEND_API extern void (*zend_execute)(zend_op_array *op_array TSRMLS_DC); >> +ZEND_API extern void (*zend_execute_internal)(zend_execute_data *execute_data_ptr, int >> return_value_used TSRMLS_DC); >> >> void init_executor(TSRMLS_D); >> void shutdown_executor(TSRMLS_D); >> ZEND_API void execute(zend_op_array *op_array TSRMLS_DC); >> +ZEND_API void execute_internal(zend_execute_data *execute_data_ptr, int return_value_used >> TSRMLS_DC); >> ZEND_API int zend_is_true(zval *op); >> static inline void safe_free_zval_ptr(zval *p) >> { >> Index: Zend/zend_execute_API.c >> diff -u Zend/zend_execute_API.c:1.143 Zend/zend_execute_API.c:1.144 >> --- Zend/zend_execute_API.c:1.143 Sat Apr 27 12:20:59 2002 >> +++ Zend/zend_execute_API.c Sat Aug 24 13:51:50 2002 >> @@ -34,6 +34,8 @@ >> >> >> ZEND_API void (*zend_execute)(zend_op_array *op_array TSRMLS_DC); >> +ZEND_API void (*zend_execute_internal)(zend_execute_data *execute_data_ptr, int >> return_value_used TSRMLS_DC); >> + >> >> #ifdef ZEND_WIN32 >> #include <process.h> >> >> >> >> -- >> Zend Engine CVS Mailing List (http://cvs.php.net/) >> To unsubscribe, visit: http://www.php.net/unsub.php >> > >Derick Rethans > >--------------------------------------------------------------------- > PHP: Scripting the Web - www.php.net - derick@php.net > SRM: Script Running Machine - www.vl-srm.net >--------------------------------------------------------------------- > JDI Media Solutions - www.jdimedia.nl - d.rethans@jdimedia.nl > Helhoek 30 - 6923 PE Groessen - The Netherlands >--------------------------------------------------------------------- > > >

« previous php.zend-engine.cvs (#379) next »