#
6c8db864 |
| 11-Jul-2014 |
Dmitry Stogov |
Implemented builtin instruction for strlen()
|
Revision tags: php-5.4.31RC1, php-5.5.15RC1 |
|
#
0a77dcd4 |
| 02-Jul-2014 |
Dmitry Stogov |
Removed EG(in_execution). If EG(currentent_execute_data) is not NULL we are executing something.
|
#
4b09dd69 |
| 02-Jul-2014 |
Dmitry Stogov |
Removed EG(active_op_array) and use corresponding value from EG(current_execute_data)
|
Revision tags: php-5.6.0RC2 |
|
#
b7715c7e |
| 30-Jun-2014 |
Dmitry Stogov |
Refactored parameter passing mechanism. In PHP-5.6 and below each argument passed to user function was copies on VM stack twice. Now we always have ZEND_INIT_FCALL (or simular) opcode th
Refactored parameter passing mechanism. In PHP-5.6 and below each argument passed to user function was copies on VM stack twice. Now we always have ZEND_INIT_FCALL (or simular) opcode that pushes "call frame" on top of VM stack. "Call frame" is actually the same zend_execute_data structure. All the following ZEND_SEND instructions push arguments on top of the stack in a way that they directly comes into corresponding CV variables of the called frame. Extra arguments are copied at the end of stack frame (after all CV and TMP variables) on function enterance. There are two minor incompatibilities: 1) It's not allowed to decalre functions redefining arguments e.g. "function foo($a,$a) {}". 2) func_get_arg() and func_get args() return the current value of argument and not the original value that was sent.
show more ...
|
Revision tags: php-5.4.30, php-5.5.14, php-5.6.0RC1 |
|
#
a4f38192 |
| 18-Jun-2014 |
Dmitry Stogov |
Use arena allocator for optimizer temporary data structures
|
Revision tags: php-5.5.14RC1, php-5.4.30RC1, php-5.6.0beta4, php-5.4.29, php-5.5.13 |
|
#
3fff53fc |
| 18-May-2014 |
Dmitry Stogov |
Optimize ZEND_POW (Rouven Weßling)
|
Revision tags: php-5.5.13RC1, php-5.6.0beta3, php-5.4.29RC1, php-5.6.0beta2 |
|
#
17d027ed |
| 30-Apr-2014 |
Dmitry Stogov |
Split IS_BOOL into IS_FALSE and IS_TRUE
|
Revision tags: php-5.5.12, php-5.4.28 |
|
#
df7ca608 |
| 24-Apr-2014 |
Dmitry Stogov |
Optimized constant lookup
|
#
afe66d89 |
| 21-Apr-2014 |
Dmitry Stogov |
Cleanup
|
#
e96073b1 |
| 17-Apr-2014 |
Dmitry Stogov |
Moved zend_literal->cache_slot right into zval. It should be accessed using Z_CACHE_SLOT() macro. zend_literal structure is removed. API functions that accepted pointer to zend_literal no
Moved zend_literal->cache_slot right into zval. It should be accessed using Z_CACHE_SLOT() macro. zend_literal structure is removed. API functions that accepted pointer to zend_literal now accept pointer to zval or cache_slot directly. Calls of such functiond that now accept cache_slot need to be changed to pass -1 instead of NULL.
show more ...
|
#
c92dd8ee |
| 17-Apr-2014 |
Dmitry Stogov |
Fixed ZEND_CAST related optimizations (now it returns IS_VAR instead of IS_TMP_VAR)
|
Revision tags: php-5.4.28RC1, php-5.5.12RC1 |
|
#
5dc52e48 |
| 14-Apr-2014 |
Dmitry Stogov |
Fixed interface constants inheritance. Now we use IS_REFERENCE for inhereted class constants. I might miss some edje cases.
|
Revision tags: php-5.6.0beta1 |
|
#
76cc99fe |
| 03-Apr-2014 |
Dmitry Stogov |
Refactored ZVAL flags usage to simplify various checks (e.g. Z_REFCOUNTED(), candidate for GC, etc)
|
#
d8099d04 |
| 02-Apr-2014 |
Dmitry Stogov |
Changed data layout to allow more efficient operations
|
Revision tags: php-5.4.27, php-5.5.11 |
|
#
2a612e91 |
| 01-Apr-2014 |
Dmitry Stogov |
Fixed optimizer
|
#
b9646212 |
| 31-Mar-2014 |
Dmitry Stogov |
Fixed optimizer (incomplete)
|
#
7465be4f |
| 31-Mar-2014 |
Dmitry Stogov |
Optimizer related fixes (incomplete)
|
#
5324f22f |
| 28-Mar-2014 |
Dmitry Stogov |
ext/opcache refactoring (incomplete)
|
Revision tags: php-5.5.11RC1, php-5.4.27RC1, php-5.5.10, php-5.4.26, php-5.6.0alpha3, php-5.4.26RC1, php-5.5.10RC1, php-5.6.0alpha2, php-5.5.9, php-5.4.25, php-5.5.9RC1, php-5.4.25RC1, php-5.6.0alpha1 |
|
#
9b74dc4a |
| 13-Jan-2014 |
Dmitry Stogov |
Fixed bug #66440 (Optimisation of conditional JMPs based on pre-evaluate constant function calls)
|
Revision tags: php-5.5.8, php-5.4.24, php-5.4.24RC1, php-5.5.8RC1 |
|
#
a00e7f22 |
| 23-Dec-2013 |
Dmitry Stogov |
Fixed bug #66338 (Optimization binding of class constants is not safely opcacheable)
|
#
ccb29a6e |
| 23-Dec-2013 |
Dmitry Stogov |
Fixed bug #66334 (Memory Leak in new pass1_5.c optimizations). (Terry)
|
#
eeb37c40 |
| 17-Dec-2013 |
Xinchen Hui |
Save one char compare
|
Revision tags: php-5.5.7, php-5.4.23, php-5.3.28 |
|
#
73f13f43 |
| 10-Dec-2013 |
Dmitry Stogov |
Fixed bug #66251 (Constants get statically bound at compile time when Optimized)
|
Revision tags: php-5.5.7RC1, php-5.4.23RC1 |
|
#
f0006248 |
| 26-Nov-2013 |
Dmitry Stogov |
Added an optimization of class constants and constant calls to some internal functions
|
#
d85ac7fb |
| 26-Nov-2013 |
Dmitry Stogov |
Fixed bug #66176 (Invalid constant substitution)
|