#
78c7289f |
| 28-Feb-2022 |
Dmitry Stogov |
Fixed incorrect DCE for FREE Fixes oss-fuzz #44863
|
#
7b629afe |
| 06-Dec-2021 |
Dmitry Stogov |
Fixed incorrect DCE of a constructor call Fixez oss-fuzz #42049
|
#
aff11554 |
| 29-Nov-2021 |
Dmitry Stogov |
JIT: Fix exception handling when next array element is already occupied Fixes oss-fuzz #41408
|
#
f302430c |
| 25-Nov-2021 |
Dmitry Stogov |
Fixed incorrect DCE for ADD_ARRAY_ELEMENT instruction DCE might remove INIT_ARRAY instruction but then keep the related ADD_ARRAY_ELEMENT, becuse its both operands need to be freed.
Fixed incorrect DCE for ADD_ARRAY_ELEMENT instruction DCE might remove INIT_ARRAY instruction but then keep the related ADD_ARRAY_ELEMENT, becuse its both operands need to be freed. Fixes oss-fuzz #41309
show more ...
|
#
c958adce |
| 05-Oct-2021 |
Nikita Popov |
POST_INC_OBJ/POST_DEC_OBJ don't have optional result Possibly we should be encoding this in the opcode metadata, rather than maintaining a separate list. Fixes oss-fuzz #39503.
|
#
ddf89102 |
| 27-Sep-2021 |
Nikita Popov |
Fix DCE of unreachable phi in cycle We can't remove a trivial phi of the form x = phi(x), because we don't have a replacement value. We could drop the whole block though. SCCP would
Fix DCE of unreachable phi in cycle We can't remove a trivial phi of the form x = phi(x), because we don't have a replacement value. We could drop the whole block though. SCCP would normally do this, but in this particular case we only determine non-reachability based on type information. Fixes oss-fuzz #39316.
show more ...
|
#
29fa4d20 |
| 08-Apr-2021 |
Nikita Popov |
Don't mark non-refcounted phi as live If the value is not refcounted, then it doesn't matter if the FREE gets dropped.
|
#
0826a548 |
| 08-Apr-2021 |
Nikita Popov |
Fix DCE of FREE of COALESCE When encountering the following SSA graph: BB1: #2.T1 [string] = COALESCE #1.CV0($str) [null, string] BB2 BB2: #5.T1 [st
Fix DCE of FREE of COALESCE When encountering the following SSA graph: BB1: #2.T1 [string] = COALESCE #1.CV0($str) [null, string] BB2 BB2: #5.T1 [string] = QM_ASSIGN string("") BB3: #7.X1 [string] = Phi(#2.X1 [string], #5.X1 [string]) FREE #7.T1 [string] We would currently determine that #7, #5 are dead, and eliminate the FREE and QM_ASSIGN. However, we cannot eliminate #2, as COALESCE is also responsible for control flow. Fix this my marking all non-CV phis as live to start with. This can be relaxed to check the kind of the source instruction, but I couldn't immediately come up with a case where it would be useful.
show more ...
|
Revision tags: php-8.0.0, php-7.3.25, php-7.4.13, php-8.0.0RC5, php-7.4.13RC1, php-8.0.0RC4, php-7.3.25RC1, php-7.4.12, php-8.0.0RC3, php-7.3.24, php-8.0.0RC2, php-7.4.12RC1, php-7.3.24RC1, php-7.2.34, php-8.0.0rc1, php-7.4.11, php-7.3.23 |
|
#
34bb5ba2 |
| 18-Sep-2020 |
Nikita Popov |
Remove support for EXT_NOP This is an annoying edge case that regularly gets broken. As we're not aware of significant users of this API, and there are other ways to hook this, remov
Remove support for EXT_NOP This is an annoying edge case that regularly gets broken. As we're not aware of significant users of this API, and there are other ways to hook this, remove support for EXT_NOP.
show more ...
|
Revision tags: php-8.0.0beta4, php-7.4.11RC1, php-7.3.23RC1, php-8.0.0beta3, php-7.4.10, php-7.3.22, php-8.0.0beta2, php-7.3.22RC1, php-7.4.10RC1, php-8.0.0beta1, php-7.4.9, php-7.2.33, php-7.3.21, php-8.0.0alpha3, php-7.4.9RC1, php-7.3.21RC1, php-7.4.8, php-7.2.32, php-8.0.0alpha2, php-7.3.20, php-8.0.0alpha1, php-7.4.8RC1, php-7.3.20RC1, php-7.4.7, php-7.3.19, php-7.4.7RC1, php-7.3.19RC1 |
|
#
9bf11983 |
| 24-May-2020 |
Ilija Tovilo |
Implement nullsafe ?-> operator RFC: https://wiki.php.net/rfc/nullsafe_operator Closes GH-5619. Co-authored-by: Nikita Popov <nikita.ppv@gmail.com>
|
Revision tags: php-7.4.6, php-7.2.31, php-7.4.6RC1, php-7.3.18RC1, php-7.2.30, php-7.4.5, php-7.3.17 |
|
#
9fa1d133 |
| 09-Apr-2020 |
Ilija Tovilo |
Implement match expression RFC: https://wiki.php.net/rfc/match_expression_v2 Closes GH-5371.
|
Revision tags: php-7.4.5RC1, php-7.3.17RC1, php-7.3.18, php-7.4.4, php-7.2.29 |
|
#
44b3971b |
| 16-Mar-2020 |
Nikita Popov |
Merge zend_may_throw(_ex) Explicitly pass ssa_op in the places that don't do so yet.
|
Revision tags: php-7.3.16, php-7.4.4RC1, php-7.3.16RC1 |
|
#
5a90392c |
| 27-Feb-2020 |
Nikita Popov |
Use EX_NUM_TO_VAR() in more places Not sure why I missed these before.
|
Revision tags: php-7.4.3, php-7.2.28, php-7.3.15RC1, php-7.4.3RC1, php-7.3.15, php-7.2.27, php-7.4.2, php-7.3.14, php-7.3.14RC1, php-7.4.2RC1, php-7.4.1, php-7.2.26, php-7.3.13, php-7.4.1RC1 |
|
#
9e403d65 |
| 05-Dec-2019 |
Nikita Popov |
Add DCE support for ARRAY_KEY_EXISTS
|
Revision tags: php-7.3.13RC1, php-7.2.26RC1, php-7.4.0, php-7.2.25, php-7.3.12, php-7.4.0RC6, php-7.3.12RC1, php-7.2.25RC1, php-7.4.0RC5, php-7.1.33, php-7.2.24, php-7.3.11, php-7.4.0RC4 |
|
#
833821ac |
| 10-Oct-2019 |
Dmitry Stogov |
Eliminate CHECK_VAR instructions for defined CVs
|
Revision tags: php-7.3.11RC1, php-7.2.24RC1, php-7.4.0RC3, php-7.2.23, php-7.3.10, php-7.4.0RC2, php-7.2.23RC1, php-7.3.10RC1, php-7.4.0RC1, php-7.1.32, php-7.2.22, php-7.3.9, php-7.4.0beta4, php-7.2.22RC1, php-7.3.9RC1 |
|
#
4eeb41d1 |
| 13-Aug-2019 |
Nikita Popov |
Fixed bug #77191
|
Revision tags: php-7.4.0beta2, php-7.1.31, php-7.2.21, php-7.3.8, php-7.4.0beta1, php-7.2.21RC1, php-7.3.8RC1, php-7.4.0alpha3 |
|
#
48ca5a1e |
| 05-Jul-2019 |
Dmitry Stogov |
Replace ZEND_ASSIGN_ADD (and others) by ZEND_ASSIGN_OP, ZEND_ASSIGN_DIM_OP, ZEND_ASSGIN_OBJ_OP and ZEND_ASSIGN_STATIC_PROP_OP
|
Revision tags: php-7.3.7, php-7.2.20, php-7.4.0alpha2, php-7.3.7RC3, php-7.3.7RC2, php-7.2.20RC2, php-7.4.0alpha1, php-7.3.7RC1, php-7.2.20RC1, php-7.2.19, php-7.3.6, php-7.1.30, php-7.2.19RC1, php-7.3.6RC1, php-7.1.29, php-7.2.18, php-7.3.5 |
|
#
4d0d7ce3 |
| 23-Apr-2019 |
Dmitry Stogov |
Don't eliminate BIND_STATIC if it may cause undefined constant warning
|
#
1827d784 |
| 22-Apr-2019 |
Dmitry Stogov |
Remove unused BIND_STATIC insructions
|
Revision tags: php-7.2.18RC1, php-7.3.5RC1, php-7.2.17, php-7.3.4, php-7.1.28, php-7.3.4RC1, php-7.2.17RC1, php-7.1.27, php-7.3.3, php-7.2.16, php-7.3.3RC1, php-7.2.16RC1, php-7.2.15, php-7.3.2 |
|
#
da919a8b |
| 05-Feb-2019 |
Dmitry Stogov |
Remove copyright years.
|
Revision tags: php-7.2.15RC1, php-7.3.2RC1 |
|
#
3269e884 |
| 17-Jan-2019 |
Nikita Popov |
Implement single-pass live range calculation Instead of interleaving creation of live-ranges with the main compiler code, compute them in a separate pass over the opcodes as part of
Implement single-pass live range calculation Instead of interleaving creation of live-ranges with the main compiler code, compute them in a separate pass over the opcodes as part of pass_two. Additionally, do not keep live ranges synchronized during optimization in opcache and instead use the same mechanism to recompute them after optimization.
show more ...
|
Revision tags: php-5.6.40, php-7.1.26, php-7.3.1, php-7.2.14 |
|
#
e219ec14 |
| 07-Jan-2019 |
Nikita Popov |
Implement typed properties RFC: https://wiki.php.net/rfc/typed_properties_v2 This is a squash of PR #3734, which is a squash of PR #3313. Co-authored-by: Bob Weinand <bobwe
Implement typed properties RFC: https://wiki.php.net/rfc/typed_properties_v2 This is a squash of PR #3734, which is a squash of PR #3313. Co-authored-by: Bob Weinand <bobwei9@hotmail.com> Co-authored-by: Joe Watkins <krakjoe@php.net> Co-authored-by: Dmitry Stogov <dmitry@zend.com>
show more ...
|
Revision tags: php-7.2.14RC1, php-7.3.1RC1, php-5.6.39, php-7.1.25, php-7.2.13, php-7.0.33, php-7.3.0, php-7.1.25RC1, php-7.2.13RC1, php-7.3.0RC6, php-7.1.24, php-7.2.12, php-7.3.0RC5 |
|
#
9afce019 |
| 01-Nov-2018 |
Zeev Suraski |
Future-proof email addresses
|
#
67e0138c |
| 01-Nov-2018 |
Zeev Suraski |
Future-proof email addresses...
|
Revision tags: php-7.1.24RC1, php-7.2.12RC1, php-7.3.0RC4, php-7.1.23, php-7.2.11, php-7.3.0RC3, php-7.1.23RC1, php-7.2.11RC1, php-7.3.0RC2, php-5.6.38, php-7.1.22, php-7.3.0RC1, php-7.2.10, php-7.0.32, php-7.1.22RC1, php-7.3.0beta3, php-7.2.10RC1, php-7.1.21, php-7.2.9, php-7.3.0beta2 |
|
#
84b195d9 |
| 10-Aug-2018 |
Gabriel Caruso |
Fix some misspellings
|