#
65e456f3 |
| 29-Dec-2015 |
Nikita Popov |
Introduce BIND_LEXICAL This opcodes inserts a local CV into the closure static variable table. This replaces the previous mechanism of having static variables marked as LEXICAL, whic
Introduce BIND_LEXICAL This opcodes inserts a local CV into the closure static variable table. This replaces the previous mechanism of having static variables marked as LEXICAL, which perform a symtable lookup during copying. This means a) functions which contain closures no longer have to rebuild their symtable (better performance) and b) we can now track used variables in SSA.
show more ...
|
Revision tags: php-7.0.2RC1 |
|
#
88eae43f |
| 20-Dec-2015 |
Nikita Popov |
Remove uses of VARs in extended_value The DECLARE_(ANON_)INHERITED_CLASS(_DELAYED) opcodes were referencing the parent ce VAR through extended_value. This is hacky and we can't track
Remove uses of VARs in extended_value The DECLARE_(ANON_)INHERITED_CLASS(_DELAYED) opcodes were referencing the parent ce VAR through extended_value. This is hacky and we can't track the def-use chain in SSA. To avoid this, the layout of declaration opcodes is changed as follows: op1 points to the lcname and rtd_key literals, in that order. (For anon/lambda declarations only one of lcname or rtd_key is present.) This frees up op2, which is now used to reference the parent ce VAR in inheriting declarations. The jmp offset for anon class declarations is moved frop op2 to extended_value. The changes were applied both to class and function declarations to keep everything symmetric.
show more ...
|
#
9044f491 |
| 16-Dec-2015 |
Dmitry Stogov |
Use do_alloca() instead of alloca()
|
#
c88ffa9a |
| 15-Dec-2015 |
Dmitry Stogov |
Added e-SSA based DFA optimisation framework (incomplete)
|
#
f243aaf9 |
| 11-Dec-2015 |
Dmitry Stogov |
Added e-SSA based DFA optimisation framework (incomplete)
|
Revision tags: php-5.6.17RC1 |
|
#
404e003c |
| 09-Dec-2015 |
Dmitry Stogov |
Delete empty live-ranges
|
Revision tags: php-7.0.1RC1, php-7.0.0, php-5.6.16, php-7.0.0RC8 |
|
#
4d497361 |
| 20-Nov-2015 |
Dmitry Stogov |
cleanup
|
#
02fad041 |
| 20-Nov-2015 |
Dmitry Stogov |
Fixed wrong BB.flags initialization
|
#
b3393baa |
| 20-Nov-2015 |
Dmitry Stogov |
Refactored CFG based optimization using new CFG representation. Squashed commit of the following: commit 907533390678f58eac738040ef62a40788048bef Author: Dmitry Stogov <dmitry@z
Refactored CFG based optimization using new CFG representation. Squashed commit of the following: commit 907533390678f58eac738040ef62a40788048bef Author: Dmitry Stogov <dmitry@zend.com> Date: Fri Nov 20 21:25:28 2015 +0300 cleanup commit 82f7e6f5bb434f12e9fdf45f597be351527f383c Author: Dmitry Stogov <dmitry@zend.com> Date: Fri Nov 20 21:22:01 2015 +0300 Update build system commit 8fd83d843fde3f486692de4e2c6b7d64d4192704 Author: Dmitry Stogov <dmitry@zend.com> Date: Fri Nov 20 20:50:32 2015 +0300 Reachable blocks can't be empty commit 5822a36269833930a35cb3547222357118b11310 Author: Dmitry Stogov <dmitry@zend.com> Date: Fri Nov 20 19:11:02 2015 +0300 added missing constraints commit 2d0c00b243479924de0260ae8d80d624c36994a3 Author: Dmitry Stogov <dmitry@zend.com> Date: Fri Nov 20 19:03:12 2015 +0300 optimization commit 29d1e5eb210c51b052cac4d6c232aaa2c724dbbb Author: Dmitry Stogov <dmitry@zend.com> Date: Fri Nov 20 18:34:11 2015 +0300 Added missing optimization patterns commit 38dd3b3f2459f5193c742633213f41d78326ea28 Author: Dmitry Stogov <dmitry@zend.com> Date: Fri Nov 20 17:47:06 2015 +0300 zend_optimize_block() refactoring commit 3dc97bd1f6d433dff0617338382347b6d0c08f84 Author: Dmitry Stogov <dmitry@zend.com> Date: Fri Nov 20 14:30:32 2015 +0300 We don't use CFG back-references anymore commit 2242c9e0aa741d287146ad43179650796f199f2d Author: Dmitry Stogov <dmitry@zend.com> Date: Fri Nov 20 14:16:03 2015 +0300 Consistent naming commit 64f2856716069390ed7703ac88905cebf5e04023 Author: Dmitry Stogov <dmitry@zend.com> Date: Fri Nov 20 13:29:32 2015 +0300 Optimization and separate building of direct CFG from predecessrs calculation commit 9389be4869b13ec45df5dbd443015d2ac539a347 Author: Dmitry Stogov <dmitry@zend.com> Date: Fri Nov 20 10:44:19 2015 +0300 Use CFG without back references (incomplete, but works) commit 3d3ecd4b883959cf7b86c33622183295f913924e Author: Dmitry Stogov <dmitry@zend.com> Date: Fri Nov 20 00:50:09 2015 +0300 Fixed iteration in reverse order commit 52f7fde0c3dfa4b4591519828ebdb238c2377936 Author: Dmitry Stogov <dmitry@zend.com> Date: Thu Nov 19 18:35:09 2015 +0300 Separate debugging code into zend_dump.c commit 4193a039ea96bae41baf97c6e458f419e8dbf9c5 Author: Dmitry Stogov <dmitry@zend.com> Date: Thu Nov 19 17:22:04 2015 +0300 Remove unused code commit 4228fdc57d8d120e1dad4e4d44045fa1a6f06fe0 Author: Dmitry Stogov <dmitry@zend.com> Date: Thu Nov 19 17:21:20 2015 +0300 Remove dead live-ranges only on assembling basic blocks commit 9a4a7966edf19b92678876f85565700694205598 Author: Dmitry Stogov <dmitry@zend.com> Date: Thu Nov 19 15:26:29 2015 +0300 New CFG representation (incomplete)
show more ...
|