#
84ea0aa6 |
| 16-May-2022 |
Dmitry Stogov |
Fix memory leak This fixes oss-fuzz #47448
|
#
33b8ef99 |
| 13-May-2022 |
Arnaud Le Blanc |
Do not optimize out ini_get() when the entry does not exist during compilation (#8507) The entry may exist later if dl is enabled Fixes GH-8466
|
#
151d2ac5 |
| 11-Mar-2022 |
Dmitry Stogov |
Fixed memory leak Fixes oss-fuzz #45191
|
#
965dafe3 |
| 28-Jan-2022 |
Dmitry Stogov |
Fix too aggressive DCE that leads to memory leak Fixes oss-fuzz #43738
|
#
698ac237 |
| 10-Jan-2022 |
Dmitry Stogov |
Fixed NAN handling in SCCP Fixes oss-fuzz #43341
|
#
2b81156f |
| 24-Dec-2021 |
Dmitry Stogov |
Fix memory leak in SCCP Fixes oss-fuzz #42878
|
#
230de772 |
| 13-Dec-2021 |
Dmitry Stogov |
Fix incorrect optimization that leads to memory leak Fixes oss-fuzz #42221
|
#
aff11554 |
| 29-Nov-2021 |
Dmitry Stogov |
JIT: Fix exception handling when next array element is already occupied Fixes oss-fuzz #41408
|
#
d8c2ff64 |
| 28-Sep-2021 |
Nikita Popov |
Fix type inference and SCCP with typed references We can't assume that the return value will be the same as the RHS if typed references are involved.
|
#
1b33da5d |
| 20-Sep-2021 |
Nikita Popov |
Don't replace values in unreachable code in sccp While technically legal, this may cause unexpected situations (in this example, setting an FE_FREE operand to constant null) and is s
Don't replace values in unreachable code in sccp While technically legal, this may cause unexpected situations (in this example, setting an FE_FREE operand to constant null) and is suboptimal anyway. It's better to preserve the vacuous type and drop it later (though we currently don't implement this).
show more ...
|
#
4c8093a9 |
| 16-Sep-2021 |
Nikita Popov |
Don't const evaluate increment of array in SCCP
|
#
3f4bc94b |
| 10-Jun-2021 |
Nikita Popov |
Mitigation for bug #81096 This issue is properly fixed by GH-7121 on master. For older branches, disable the use of range information in SCCP, to reduce impact of potentially incorre
Mitigation for bug #81096 This issue is properly fixed by GH-7121 on master. For older branches, disable the use of range information in SCCP, to reduce impact of potentially incorrect ranges.
show more ...
|
#
7c6cf094 |
| 13-Apr-2021 |
twosee |
Fixed bug #80900 SCCP optimization marks the wrong target feasible when the constant is of the incorrect type. Closes GH-6861.
|
#
5b3809e9 |
| 27-Nov-2020 |
Nikita Popov |
Respect strict_types during sccp function call evaluation Similar to what we do with attributes, add a dummy call frame on which we can set the strict_types flag.
|
#
0ce9b5f7 |
| 27-Nov-2020 |
Nikita Popov |
Don't check for throwing calls in sccp function evaluation We only need to reject functions that could warn (or have runtime dependent behavior). If a function can throw in some cases, j
Don't check for throwing calls in sccp function evaluation We only need to reject functions that could warn (or have runtime dependent behavior). If a function can throw in some cases, just let it and discard the result.
show more ...
|
#
a505fc62 |
| 27-Nov-2020 |
Nikita Popov |
Fix handling of sccp exceptions We should clear the exception *before* we destroy the execute_data. Add a variation of the test that indirects through another file, and would crash o
Fix handling of sccp exceptions We should clear the exception *before* we destroy the execute_data. Add a variation of the test that indirects through another file, and would crash otherwise.
show more ...
|
#
e5aae358 |
| 27-Nov-2020 |
Nikita Popov |
Handle exceptions during SCCP function evaluation Easier to handle them than to ensure they can't happen in the first place.
|
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, php-8.0.0beta4, php-7.4.11RC1, php-7.3.23RC1, php-8.0.0beta3, php-7.4.10, php-7.3.22 |
|
#
fa8d9b11 |
| 28-Aug-2020 |
George Peter Banyard |
Improve type declarations for Zend APIs Voidification of Zend API which always succeeded Use bool argument types instead of int for boolean arguments Use bool return type for functio
Improve type declarations for Zend APIs Voidification of Zend API which always succeeded Use bool argument types instead of int for boolean arguments Use bool return type for functions which return true/false (1/0) Use zend_result return type for functions which return SUCCESS/FAILURE as they don't follow normal boolean semantics Closes GH-6002
show more ...
|
Revision tags: 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.
|
#
92c4b065 |
| 16-Jun-2020 |
Christoph M. Becker |
Use ZEND_UNREACHABLE() instead of ZEND_ASSERT(0) Instead of marking unreachable code with `ZEND_ASSERT(0)`, we introduce `ZEND_UNREACHABLE()`, so that MSVC which does not consider `asser
Use ZEND_UNREACHABLE() instead of ZEND_ASSERT(0) Instead of marking unreachable code with `ZEND_ASSERT(0)`, we introduce `ZEND_UNREACHABLE()`, so that MSVC which does not consider `assert(0)` to mark unreachable code does no longer trigger C4715[1] warnings in debug builds. This may be useful for other compilers as well. [1] <https://docs.microsoft.com/de-de/cpp/error-messages/compiler-warnings/compiler-warning-level-1-c4715?view=vs-2019>
show more ...
|
#
83a77015 |
| 08-Jun-2020 |
twosee |
Add helper APIs for maybe-interned string creation Add ZVAL_CHAR/RETVAL_CHAR/RETURN_CHAR as a shortcut for using ZVAL_INTERNED_STRING and ZSTR_CHAR. Add zend_string_init_fast()
Add helper APIs for maybe-interned string creation Add ZVAL_CHAR/RETVAL_CHAR/RETURN_CHAR as a shortcut for using ZVAL_INTERNED_STRING and ZSTR_CHAR. Add zend_string_init_fast() as a helper for the empty string / one char interned string / zend_string_init() pattern. Also add corresponding ZVAL_STRINGL_FAST etc macros. Closes GH-5684.
show more ...
|
#
543684e7 |
| 07-Jun-2020 |
Tyson Andre |
Optimize out no-op `yield from` statements If the array is empty, then I'd expect that the generator is never left, and that can be converted to a no-op and the return value would always
Optimize out no-op `yield from` statements If the array is empty, then I'd expect that the generator is never left, and that can be converted to a no-op and the return value would always be `null`. Make `yield from [];` as efficient as `if (false) { yield null; }` when opcache's sccp pass is enabled. Closes GH-5679
show more ...
|
#
7d6a0ba8 |
| 07-Jun-2020 |
twosee |
Fix expression warnings and break warnings Close GH-5675.
|
#
bd329a60 |
| 27-May-2020 |
Dmitry Stogov |
Keep information about SEND_UNPACK/SEND_ARRAY in call_info
|