Revision tags: php-5.6.29, php-7.0.14 |
|
#
9c1920d9 |
| 02-Dec-2016 |
Dmitry Stogov |
Revert "Fix memory leaks with FE_RESET upon empty iterator" This reverts commit 00e516e57549f29387ef858de7847e7e4ca0c1c0.
|
Revision tags: php-7.1.0 |
|
#
00e516e5 |
| 28-Nov-2016 |
Bob Weinand |
Fix memory leaks with FE_RESET upon empty iterator Solved by manually freeing and jumping to the opcode *after* FE_FREE
|
Revision tags: php-5.6.29RC1, php-7.0.14RC1, php-7.1.0RC6, php-5.6.28, php-7.0.13, php-5.6.28RC1, php-7.1.0RC5, php-7.0.13RC1, php-7.1.0RC4, php-5.6.27, php-7.0.12, php-7.1.0RC3, php-5.6.27RC1, php-7.0.12RC1, php-5.6.26, php-7.1.0RC2, php-7.0.11, php-5.6.26RC1, php-7.1.0RC1, php-7.0.11RC1 |
|
#
94fbcbe1 |
| 29-Aug-2016 |
Dmitry Stogov |
Allow optional splitting of basic blocks at RECV/RECV_INIT opcodes.
|
#
caf890b2 |
| 22-Aug-2016 |
Dmitry Stogov |
Fixed CFG construction for stackless execution (split basic blocks after calls)
|
Revision tags: php-7.1.0beta3, php-5.6.25, php-7.0.10, php-7.1.0beta2, php-5.6.25RC1, php-7.0.10RC1, php-7.1.0beta1, php-5.6.24, php-7.0.9, php-5.5.38, php-5.6.24RC1, php-7.1.0alpha3, php-7.0.9RC1, php-7.1.0alpha2, php-7.0.8 |
|
#
14331620 |
| 21-Jun-2016 |
Dmitry Stogov |
Fixed compilation warnings
|
Revision tags: php-5.6.23, php-5.5.37, php-5.6.23RC1, php-7.0.8RC1, php-7.1.0alpha1 |
|
#
70f05468 |
| 05-Jun-2016 |
Nikita Popov |
Don't optimize special dynamic calls to non-dynamic As it drops the warning. This is more problematic with constant propagation, as tests would fail. Extract a zend_optimizer_cl
Don't optimize special dynamic calls to non-dynamic As it drops the warning. This is more problematic with constant propagation, as tests would fail. Extract a zend_optimizer_classify_function() function, as its now needed by zend_cfg and update_opN.
show more ...
|
#
4935c032 |
| 27-May-2016 |
Xinchen Hui |
Revert "assert won't cause indrect var access if it's disabled" in the other hand, it should not be there if it's disabled... This reverts commit 27f40676e6f506f353ad8d679dd9b21aa87
Revert "assert won't cause indrect var access if it's disabled" in the other hand, it should not be there if it's disabled... This reverts commit 27f40676e6f506f353ad8d679dd9b21aa87b828e.
show more ...
|
#
27f40676 |
| 27-May-2016 |
Xinchen Hui |
assert won't cause indrect var access if it's disabled
|
Revision tags: php-5.6.22, php-5.5.36, php-7.0.7 |
|
#
a19eb8e3 |
| 18-May-2016 |
Nikita Popov |
Ensure no entry predecessors for SSA construction
|
#
e745b4ca |
| 18-May-2016 |
Nikita Popov |
Replace BB end with BB len And support empty blocks everywhere.
|
#
0d62dfdf |
| 21-May-2016 |
Nikita Popov |
Improve previous fix Do not mark loop var free blocks as reachable after all -- as we can't construct SSA for unreachable blocks, this would cause issues down the line. Inst
Improve previous fix Do not mark loop var free blocks as reachable after all -- as we can't construct SSA for unreachable blocks, this would cause issues down the line. Instead add an extra UNREACHABLE_FREE flag and retain only the FREE instruction during NOP removal. (If we retain all instructions in the BB we might leave a jump instruction that goes into the nowhere.)
show more ...
|
#
fa956662 |
| 21-May-2016 |
Nikita Popov |
Fix reachability detection if live ranges aren't split Even if we don't split, we still want to keep the same logic for reachibility detection.
|
#
b65b15c6 |
| 17-May-2016 |
Nikita Popov |
Mark assert() as INDIRECT_VAR_ACCESS I don't like this... we may want to detect "obviously not string" operands by checking for the result of a comparison instruction.
|
#
ccf18da4 |
| 12-May-2016 |
Dmitry Stogov |
Eliminated checks for (func->op_array.fn_flags & ZEND_ACC_GENERATOR) in fast path of DO_FCALL* handlers. This slightly improves calls to regular function and method calls in cost of a bit slower
Eliminated checks for (func->op_array.fn_flags & ZEND_ACC_GENERATOR) in fast path of DO_FCALL* handlers. This slightly improves calls to regular function and method calls in cost of a bit slower generator initialization. Separate call frame for generators, allocated on heap, now created by ZEND_GENERATOR_CREATE instruction.
show more ...
|
Revision tags: php-5.6.22RC1, php-7.0.7RC1, php-7.0.6, php-5.6.21, php-5.5.35, php-5.6.21RC1, php-7.0.6RC1, php-5.6.20, php-5.5.34, php-7.0.5, php-5.6.20RC1, php-7.0.5RC1 |
|
#
8e5b1397 |
| 12-Mar-2016 |
Nikita Popov |
Evaluate arguments of new for classes without ctor ML: http://markmail.org/message/4b3mk7jid64zvz34
|
#
fc49f1c4 |
| 17-Mar-2016 |
Kalle Sommer Nielsen |
Fix build
|
Revision tags: php-5.6.19, php-5.5.33, php-7.0.4 |
|
#
8d758e7b |
| 27-Feb-2016 |
Nikita Popov |
Fix dominator tree construction The used dominator intersection algorithm assumes a postorder numbering of the CFG. The reversal of our natural numbering is quite similar to postorde
Fix dominator tree construction The used dominator intersection algorithm assumes a postorder numbering of the CFG. The reversal of our natural numbering is quite similar to postorder, but not the same. In the future we should precompute both preorder/postorder numberings and orderings, as these are useful in many places.
show more ...
|
Revision tags: php-5.6.19RC1, php-7.0.4RC1 |
|
#
7174af40 |
| 09-Feb-2016 |
Nikita Popov |
Support CFG construction without live range splitting We must not split at live range boundaries for SSA constructions, otherwise an OP_DATA instruction may be separated into new block
Support CFG construction without live range splitting We must not split at live range boundaries for SSA constructions, otherwise an OP_DATA instruction may be separated into new block and not picked up during renaming. It's also unnecessary for this use case and only blows up the CFG.
show more ...
|
Revision tags: php-5.6.18, php-7.0.3, php-5.5.32 |
|
#
949aaea6 |
| 23-Jan-2016 |
Nikita Popov |
Don't insert duplicate predecessors Otherwise we'll get corrupt phis
|
#
9b854eba |
| 22-Jan-2016 |
Dmitry Stogov |
More accurate handling of isset() and unset()
|
Revision tags: php-5.6.18RC1, php-7.0.3RC1 |
|
#
dcf3db6a |
| 19-Jan-2016 |
Nikita Popov |
Mark isset($$var) as INDIRECT_VAR_ACCESS
|
#
a8900b56 |
| 19-Jan-2016 |
Dmitry Stogov |
Typo (ASSESS->ACCESS)
|
#
a2ff3a46 |
| 19-Jan-2016 |
Dmitry Stogov |
Use ZEND_FUNC_INDIRECT_VAR_ASSESS instead of ZEND_FUNC_TOO_DYNAMIC. Handle function with exceptions handlers and generators separately.
|
Revision tags: php-5.6.17, php-5.5.31, php-7.0.2 |
|
#
71c19800 |
| 01-Jan-2016 |
Lior Kaplan |
Happy new year (Update copyright to 2016)
|
#
83c44173 |
| 30-Dec-2015 |
Nikita Popov |
Mark uses of scope functions in namespaces as TOO_DYNAMIC Of course they are not necessarily, but it's very likely and we have to be conservative anyway. Also use zend_string_eq
Mark uses of scope functions in namespaces as TOO_DYNAMIC Of course they are not necessarily, but it's very likely and we have to be conservative anyway. Also use zend_string_equals_literal().
show more ...
|