summaryrefslogtreecommitdiff
path: root/Zend/zend_execute.h
Commit message (Collapse)AuthorAgeFilesLines
* Bump yearXinchen Hui2014-01-031-1/+1
|
* Fix intl buildNikita Popov2013-08-221-1/+1
| | | | | Turns out that you can't use implicit void pointer casts if intl is compiled.
* Fix bug #46311: Pointer aliasing issue results in miscompile on gcc4.4Nikita Popov2013-08-221-1/+1
| | | | | | | The code violated the strict aliasing restriction, because it dereferenced the same pointer as zval** once and as void** afterwards. Now both occurances dereference void** and cast to zval* in the former case.
* Happy New YearXinchen Hui2013-01-011-1/+1
|
* Removed unnecessary checksDmitry Stogov2012-12-131-4/+8
|
* Removed redundand checks from release buildDmitry Stogov2012-12-131-14/+4
|
* Optimized access to temporary and compiled VM variablesDmitry Stogov2012-12-041-3/+3
|
* . The VM stacks for passing function arguments and syntaticaly nested calls ↵Dmitry Stogov2012-11-301-60/+24
| | | | | | were merged into a single stack. The stack size needed for op_array execution is calculated at compile time and preallocated at once. As result all the stack push operatins don't require checks for stack overflow any more. . Generators implementation was improved using the new VM stack. Now it's a bit more clear and faster.
* Use zend_execute_internal always to call internal functionsStanislav Malyshev2012-10-051-6/+7
|
* Remove asterix modifier (*) for generatorsNikita Popov2012-07-201-0/+1
| | | | | | | | | | | | | | | | Generators are now automatically detected by the presence of a `yield` expression in their body. This removes the ZEND_SUSPEND_AND_RETURN_GENERATOR opcode. Instead additional checks for ZEND_ACC_GENERATOR are added to the fcall_common helper and zend_call_function. This also adds a new function zend_generator_create_zval, which handles the actual creation of the generator zval from an op array. I feel like I should deglobalize the zend_create_execute_data_from_op_array code a bit. It currently changes EG(current_execute_data) and EG(opline_ptr) which is somewhat confusing (given the name).
* Fix thread safe buildNikita Popov2012-06-201-1/+1
|
* Fix backtraces and func_get_args()Nikita Popov2012-06-091-0/+1
| | | | | | | | | | | | To make the generator function show up in backtraces one has to insert an additional execute_data into the chain, as prev_execute_data->function_state is used to determine the called function. Adding the additional stack frame is also required for func_get_args(), as the arguments are fetched from there too. The arguments have to be copied in order to keep them around. Due to the way they are saved doing so is quite ugly, so I added another function zend_copy_arguments to zend_execute.c which handles this.
* Properly free resources when generator return value not usedNikita Popov2012-05-281-0/+3
| | | | | | | To keep things clean two new functions are introduced: zend_clean_and_cache_symbol_table(HashTable *symbol_table) zend_free_compiled_variables(zval ***CVs, int num)
* Add support for executing a zend_execute_dataNikita Popov2012-05-261-0/+1
| | | | | | | | This adds another function execute_ex(), which accepts a zend_execute_data struct to run (contrary to execute(), which accepts a zend_op_array from which it initialized the execute_data). This needs a bit more cleanup.
* - Year++Felipe Pena2012-01-011-1/+1
|
* Fixed ZE specific compile warnings (Bug #55629)Dmitry Stogov2011-09-131-4/+4
|
* - Year++Felipe Pena2011-01-011-1/+1
|
* reduced size of temp_variariableDmitry Stogov2010-10-221-6/+3
|
* - Strip out the typehint *checks* only. They are still parsed, and they areDerick Rethans2010-10-191-0/+3
| | | | | still accessible through the reflection API.
* Reduced initial VM stack size to fit into zend_mm segment and eliminate ↵Dmitry Stogov2010-07-071-1/+1
| | | | extra segment allocation
* - Fixed bug #51905 (ReflectionParameter fails if default value is an array ↵Felipe Pena2010-05-261-0/+2
| | | | with an access to self::)
* Added caches to eliminate repeatable run-time bindings of functions, ↵Dmitry Stogov2010-05-241-0/+17
| | | | classes, constants, methods and properties
* Added a number of small performance tweaks and optimizationsDmitry Stogov2010-04-201-19/+40
| | | | | | | . ZEND_RECV now always has IS_CV as its result . ZEND_CATCH now has to be used only with constant class names . ZEND_FETCH_DIM_? may fetch array and dimension operans in a different order
* Changed the structure of op_array.opcodes. The constant values are moved ↵Dmitry Stogov2010-04-201-3/+4
| | | | from opcode operands into a separate literal table
* Fixed bug #50723 (Bug in garbage collector causes crash)Dmitry Stogov2010-02-021-1/+1
|
* sed -i "s#1998-2009#1998-2010#g" **/*.c **/*.h **/*.phpSebastian Bergmann2010-01-051-1/+1
|
* - Fixed warnings (Kalle)Felipe Pena2009-09-131-1/+1
|
* Fixed bug #46074 (Bus error during running PHP CLI under IRIX 6.5.30)Dmitry Stogov2009-09-031-12/+49
|
* Fixed ability to call user functions from user opcodes without recursionDmitry Stogov2009-08-181-0/+2
|
* - fix build (void alarm)Pierre Joye2009-06-091-5/+5
|
* MFH: Added zend_eval_stringl and made create_function(), etc. binary-safeMatt Wilmas2009-06-051-0/+2
|
* MFH: better fix for #48409 , #48428 , #48228Arnaud Le Blanc2009-06-051-0/+21
|
* MFH: Bump copyright year, 3 of 3.Sebastian Bergmann2008-12-311-1/+1
|
* - MFH: Constness (Added const qualifier to several function parameters)Felipe Pena2008-08-121-3/+3
|
* - Removed direct executor recursion.Dmitry Stogov2008-06-111-2/+2
| | | | | - Use fastcall calling convention in executor on x86.
* Selected better initial VM stack sizeDmitry Stogov2008-04-151-1/+1
|
* exit_on_timeout patchRasmus Lerdorf2008-03-181-1/+1
| | | | | | | | | | | | | | | | | | | | | After the sigsetjmp change, this is patch #2 in an effort to get some sanity restored to signal handling in PHP. This patch does two things. First, it makes it possible to reset the timeout without resetting the signal handlers. This is important for cases where an extension may have deferred signals in its MINIT in order to implement critical sections. It also lays the groundwork for cleaning up our signal handling and perhaps eventually implementing our own signal deferring mechanism so we can have true critical sections. The second thing this does is to make it possible to terminate the current child process (only for Apache1 at the moment) on a timeout. There are a number of extensions that are unhappy about being longjmp'ed out of and when this happens on a timeout they are left in an inconsistent state. By turning on exit_on_timeout you can now force the process to terminate on a timeout which will clean up any hanging locks and/or memory left hanging after the longjmp.
* MFH: Dropped zend.ze1_compatibility_modeFelipe Pena2008-03-181-8/+1
| | | | | [DOC]
* Fixed warningDmitry Stogov2008-03-121-3/+3
|
* Fixed typesDmitry Stogov2008-01-291-3/+3
|
* fix typeStanislav Malyshev2008-01-281-1/+1
|
* Changed EG(argument_stack) implementation.Dmitry Stogov2008-01-241-10/+138
|
* MFH: Bump copyright year, 2 of 2.Sebastian Bergmann2007-12-311-1/+1
|
* Improved memory usage by movig constants to read only memory. (Dmitry, Pierre)Dmitry Stogov2007-09-271-3/+3
|
* MFH: Fixed compiler warningsJani Taskinen2007-07-211-2/+2
|
* WIN64 supportDmitry Stogov2007-04-161-2/+2
|
* - Fixed bug #35106 (nested foreach fails when array variable has a reference).Dmitry Stogov2007-01-101-0/+6
| | | | | | | - Fixed bug #36214 (__get method works properly only when conditional operator is used). - Fixed bug #39449 (Overloaded array properties do not work correctly). - Fixed bug #39990 (Cannot "foreach" over overloaded properties).
* MFH: Bump year.Sebastian Bergmann2007-01-011-1/+1
|
* - MFH: Fix #38465 (ReflectionParameter fails if default value is an access ↵Johannes Schlüter2006-10-181-0/+1
| | | | to self::
* Restore ZE1 compatibility mode (Zend Engine part - the modules patchesZeev Suraski2006-06-051-1/+8
| | | | | will follow later today)