#
3a76f795 |
| 26-Apr-2023 |
Ilija Tovilo |
Fix incorrect match default branch optimization Fixes GH-11134 Closes GH-11135
|
#
4d4a53be |
| 09-Jan-2023 |
Dmitry Stogov |
Fix incorrect optimization of ASSIGN_OP may lead to incorrect result (sub assign -> pre dec conversion for null values)
|
#
f31f464c |
| 07-Nov-2022 |
Dmitry Stogov |
Fix memory leak Fixes oss-fuzz #52999
|
#
172ac0a4 |
| 29-Aug-2022 |
Dmitry Stogov |
Merge branch 'PHP-8.0' into PHP-8.1 * PHP-8.0: Fix memory leak
|
#
4b19b85e |
| 01-Aug-2022 |
Dmitry Stogov |
Merge branch 'PHP-8.0' into PHP-8.1 * PHP-8.0: Fix SSA reconstruction when body of "foreach" loop is removed
|
Revision tags: php-8.1.7RC1, php-8.1.4RC1 |
|
#
7e8257fb |
| 18-Feb-2022 |
Dmitry Stogov |
Disable ASSIGN optimization for values inferred for fatal errors. |
Revision tags: php-8.1.3, php-8.1.2RC1 |
|
#
ca3f7b0a |
| 20-Dec-2021 |
Dmitry Stogov |
Merge branch 'PHP-8.0' into PHP-8.1 * PHP-8.0: Fix incorrect optimization of ASSIGN_OP that may lead to memory leak
|
#
363434ba |
| 09-Dec-2021 |
Dmitry Stogov |
Merge branch 'PHP-8.0' into PHP-8.1 * PHP-8.0: Fix incorrect JMP optimization
|
#
51ae5c53 |
| 24-Nov-2021 |
Nikita Popov |
Merge branch 'PHP-8.0' into PHP-8.1 * PHP-8.0: Fix bug #81652
|
Revision tags: php-8.1.0, php-7.3.33 |
|
#
e5c2ad45 |
| 08-Nov-2021 |
Nikita Popov |
Merge branch 'PHP-8.0' into PHP-8.1 * PHP-8.0: Drop pi nodes for both old/new pred in replace_predecessor
|
Revision tags: php-7.3.32 |
|
#
bdebefaa |
| 18-Oct-2021 |
Dmitry Stogov |
Merge branch 'PHP-8.0' into PHP-8.1 * PHP-8.0: Fixed incorrect optimization that may cause JIT assertion
|
#
9c1d7b43 |
| 12-Oct-2021 |
Nikita Popov |
Merge branch 'PHP-8.0' into PHP-8.1 * PHP-8.0: Don't replace tmp with cv in YIELD argument
|
#
d5e80c1c |
| 27-Sep-2021 |
Nikita Popov |
Merge branch 'PHP-8.0' into PHP-8.1 * PHP-8.0: Handle pi nodes in replace_predecessor
|
Revision tags: php-7.3.31 |
|
#
f6daf83e |
| 09-Sep-2021 |
Nikita Popov |
Merge branch 'PHP-8.0' into PHP-8.1 * PHP-8.0: Check that POST_INC/DEC has use in DFA optimization
|
Revision tags: php-7.3.30 |
|
#
14c103d7 |
| 11-Aug-2021 |
Dmitry Stogov |
Optimize "$x * 2" into "$x + $x" |
#
069a9fa5 |
| 05-Jul-2021 |
George Peter Banyard |
Pure Intersection types (#6799) Implement pure intersection types RFC RFC: https://wiki.php.net/rfc/pure-intersection-types Co-authored-by: Nikita Popov <nikic@php.net>
Pure Intersection types (#6799) Implement pure intersection types RFC RFC: https://wiki.php.net/rfc/pure-intersection-types Co-authored-by: Nikita Popov <nikic@php.net> Co-authored-by: Ilija Tovilo <ilutov@php.net>
show more ...
|
Revision tags: php-7.3.29 |
|
#
a30fab57 |
| 18-Jun-2021 |
Nikita Popov |
Make can_elide_return_type_check() more robust Rather than using def_info, check against the actual arg_info type. As it is stored as a type mask nowadays, this is not much harder, b
Make can_elide_return_type_check() more robust Rather than using def_info, check against the actual arg_info type. As it is stored as a type mask nowadays, this is not much harder, but more general and more robust as we don't need to deal with inaccurate cases.
show more ...
|
#
01b3fc03 |
| 06-May-2021 |
KsaR |
Update http->https in license (#6945) 1. Update: http://www.php.net/license/3_01.txt to https, as there is anyway server header "Location:" to https. 2. Update few license 3.0 to 3.01 as
Update http->https in license (#6945) 1. Update: http://www.php.net/license/3_01.txt to https, as there is anyway server header "Location:" to https. 2. Update few license 3.0 to 3.01 as 3.0 states "php 5.1.1, 4.1.1, and earlier". 3. In some license comments is "at through the world-wide-web" while most is without "at", so deleted. 4. fixed indentation in some files before |
show more ...
|
Revision tags: php-7.3.28 |
|
#
b82242a8 |
| 20-Apr-2021 |
Nikita Popov |
Remove unnecessary php.h includes from Zend/ The Zend/ directory really shouldn't be including php headers. These particular includes are plain unnecessary. |
Revision tags: php-7.3.27, php-7.3.26, php-7.3.26RC1, php-7.3.25, php-7.3.25RC1, php-7.3.24, php-7.3.24RC1 |
|
#
5caaf40b |
| 29-Sep-2020 |
George Peter Banyard |
Introduce pseudo-keyword ZEND_FALLTHROUGH And use it instead of comments |
#
6a5d6008 |
| 22-Mar-2021 |
Nikita Popov |
Support VERIFY_RETURN_TYPE elision with unused operand This handles the degenerate case where SCCP replaced the value in the RETURN opcode with a constant, but the VERIFY_RETURN is still
Support VERIFY_RETURN_TYPE elision with unused operand This handles the degenerate case where SCCP replaced the value in the RETURN opcode with a constant, but the VERIFY_RETURN is still there. We can still apply the same optimization, just don't need to adjust the use list in this case. The result is still sub-optimal in that a dead QM_ASSIGN is left behind.
show more ...
|
#
2d0e2733 |
| 18-Mar-2021 |
Nikita Popov |
Support prototypes in call graph Even if we don't know the exact method being called, include it in the call graph with the is_prototype flag. In particular, we can still make use of
Support prototypes in call graph Even if we don't know the exact method being called, include it in the call graph with the is_prototype flag. In particular, we can still make use of return types from prototype methods, as PHP 8 makes LSP violations a hard error. Most other places are adjusted to skip calls with !is_prototype. Maybe some of them would be fine, but ignoring them is conservative.
show more ...
|
#
83be073a |
| 26-Jan-2021 |
Nikita Popov |
Move optimizer into core This only moves the files, adjusts the build system, exports APIs and does minor fixups to make sure the code builds. This does not yet try to make the
Move optimizer into core This only moves the files, adjusts the build system, exports APIs and does minor fixups to make sure the code builds. This does not yet try to make the optimizer usable independently of opcache. Closes GH-6642.
show more ...
|