#
4130fe43 |
| 15-Jan-2020 |
Christoph M. Becker |
Make MSVCRT memory leak checking usable for the test suite While basic support for MSVCRT debugging has been added long ago[1], the leak checking is not usable for the test suite, becaus
Make MSVCRT memory leak checking usable for the test suite While basic support for MSVCRT debugging has been added long ago[1], the leak checking is not usable for the test suite, because we are no longer calling `xmlCleanupParser()` on RSHUTDOWN of ext/libxml[2], and therefore a few bogus leaks are reported whenever ext/libxml is unloaded. We therefore ignore memory leaks for this case. We introduce `ZEND_IGNORE_LEAKS_BEGIN()` and `ZEND_IGNORE_LEAKS_END()` to keep those ignores better readable, and also because these *might* be useful for other leak checkers as well. We also explicitly free the `zend_handlers_table` and the `p5s` to avoid spurious leak reports. [1] <http://git.php.net/?p=php-src.git;a=commit;h=d756e1db2324c1f4ab6f9b52e329959ce6a02bc3> [2] <http://git.php.net/?p=php-src.git;a=commit;h=8742276eb3905eb97a585417000c7b8df85006d4>
show more ...
|
#
c9908ee5 |
| 27-Dec-2019 |
Christoph M. Becker |
Disable optimizations for ASan instrumented builds ASan instrumentation does not support the MSVC debug runtime, but still it does not make sense to enable optimizations for such builds,
Disable optimizations for ASan instrumented builds ASan instrumentation does not support the MSVC debug runtime, but still it does not make sense to enable optimizations for such builds, since they are not meant for production usage anyway, and although memory corruption issues are still found in optimized builds, the generated diagnostics are close to being useless, and apparently sometimes even outright wrong. Therefore, we disable all optimizations for ASan instrumented builds. We also introduce and use `ZEND_WIN32_NEVER_INLINE` for ASan enabled builds to avoid inlining of functions, so we get even better diagnostics.
show more ...
|
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 |
|
#
dacadf5a |
| 07-Nov-2019 |
Nikita Popov |
Disable ifunc resolvers under thread sanitizer as well
|
Revision tags: php-7.3.12RC1, php-7.2.25RC1 |
|
#
45131411 |
| 04-Nov-2019 |
Nikita Popov |
Revert "Remove configure checks for supported instruction sets" This reverts commit edccf32f7f36a8bc759b9482737e0c3efcb3a005. This was reported to cause issues for as yet unknown re
Revert "Remove configure checks for supported instruction sets" This reverts commit edccf32f7f36a8bc759b9482737e0c3efcb3a005. This was reported to cause issues for as yet unknown reasons in bug #78769. As this was intended as code cleanup, revert this from 7.4 at least. May reapply it to master later.
show more ...
|
#
edccf32f |
| 31-Oct-2019 |
Nikita Popov |
Remove configure checks for supported instruction sets These were checking whether the instruction set is supported by the host CPU, however they were only used to condition on whether
Remove configure checks for supported instruction sets These were checking whether the instruction set is supported by the host CPU, however they were only used to condition on whether this instruction set is targeted at all. It would still use dynamic dispatch (e.g. based on ifunc resolvers) to select the actual implementation. Whether the target is guaranteed to support the instruction set without dispatch is determined based on pre-defined macros like __SSE2__. This removes the configure-time builtin cpu checks to remove confusion. Additionally this allows targeting an architecture that is newer than the host architecture.
show more ...
|
Revision tags: php-7.4.0RC5, php-7.1.33, php-7.2.24, php-7.3.11, php-7.4.0RC4, php-7.3.11RC1, php-7.2.24RC1, php-7.4.0RC3, php-7.2.23, php-7.3.10, php-7.4.0RC2 |
|
#
ec30a3b1 |
| 13-Sep-2019 |
Nikita Popov |
Include stddef.h in zend_portability.h for offsetof() macro This makes sure that we use compiler builtins when they are available and thus avoid ubsan warnings in clang. And als
Include stddef.h in zend_portability.h for offsetof() macro This makes sure that we use compiler builtins when they are available and thus avoid ubsan warnings in clang. And also reindent the fallback implementation.
show more ...
|
Revision tags: php-7.2.23RC1, php-7.3.10RC1, php-7.4.0RC1 |
|
#
77a0fa10 |
| 30-Aug-2019 |
Nikita Popov |
Reenable alloca support on ZTS This got disabled due to an incorrect change in a preprocessor condition in 2104bea5d756dfa40b605a4a2765a3bc4637a76c. It was not supposed to be disable
Reenable alloca support on ZTS This got disabled due to an incorrect change in a preprocessor condition in 2104bea5d756dfa40b605a4a2765a3bc4637a76c. It was not supposed to be disabled.
show more ...
|
Revision tags: php-7.1.32, php-7.2.22, php-7.3.9, php-7.4.0beta4, php-7.2.22RC1, php-7.3.9RC1, 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, php-7.3.7, php-7.2.20 |
|
#
736172d2 |
| 28-Jun-2019 |
Nikita Popov |
Disable RTLD_DEEPBIND under memory sanitizer This was already done for address sanitizer.
|
#
2c8819b8 |
| 28-Jun-2019 |
Nikita Popov |
Disable ifunc resolvers if memory sanitizer is used Just marking them as no_sanitize("memory") is unforunately not sufficient, as the function still gets instrumented -- the attribute
Disable ifunc resolvers if memory sanitizer is used Just marking them as no_sanitize("memory") is unforunately not sufficient, as the function still gets instrumented -- the attribute only disables reporting.
show more ...
|
Revision tags: php-7.4.0alpha2, php-7.3.7RC3, php-7.3.7RC2, php-7.2.20RC2 |
|
#
8f63e7e3 |
| 12-Jun-2019 |
Nikita Popov |
Make ATTRIBUTE_UNUSED more portable
|
Revision tags: php-7.4.0alpha1, php-7.3.7RC1, php-7.2.20RC1 |
|
#
cf388033 |
| 30-May-2019 |
Dmitry Stogov |
Reduce register pressure by reloading values on CPUs with few general purpose registers
|
Revision tags: 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, php-7.2.18RC1, php-7.3.5RC1 |
|
#
c51eafe9 |
| 11-Apr-2019 |
Nikita Popov |
Remove restrict zend_portability define We're not using this anywhere, and it causes warnings, so I'm dropping it. If we do end up needing this, it should be reintroduced with a ZEND
Remove restrict zend_portability define We're not using this anywhere, and it causes warnings, so I'm dropping it. If we do end up needing this, it should be reintroduced with a ZEND_ prefix.
show more ...
|
#
fd1ad1e2 |
| 07-Apr-2019 |
Peter Kokot |
Remove HAVE_LIMITS_H The `<limits.h>` header file is part of the standard C89 headers [1] and on current systems can be included unconditionally. Since PHP requires at least C89
Remove HAVE_LIMITS_H The `<limits.h>` header file is part of the standard C89 headers [1] and on current systems can be included unconditionally. Since PHP requires at least C89 or greater, the `HAVE_LIMITS_H` symbol defined by Autoconf in configure.ac [2] can be ommitted and simplifed however due to bundled file library (libmagic) and timelib still using it, the removal there was omitted and done only in Zend.m4 file. Current bundled libraries libtime, oniguruma, and libmagic still include partial `HAVE_LIMITS_H` usage and will be more refactored when this is possible. Refs: [1] https://port70.net/~nsz/c/c89/c89-draft.html#4.1.2 [2] https://git.savannah.gnu.org/cgit/autoconf.git/tree/lib/autoconf/headers.m4
show more ...
|
Revision tags: php-7.2.17, php-7.3.4, php-7.1.28, php-7.3.4RC1, php-7.2.17RC1 |
|
#
c4464526 |
| 18-Mar-2019 |
Nikita Popov |
Remove x86 bit test optimization This is undefined behavior and we cannot rely on it. Additionally it breaks builds using undefined behavior sanitizers.
|
#
d633cbac |
| 11-Mar-2019 |
Remi Collet |
add --enable-rtld-now build option to change dlopen behavior
|
Revision tags: php-7.1.27, php-7.3.3, php-7.2.16, php-7.3.3RC1, php-7.2.16RC1 |
|
#
dab54624 |
| 14-Feb-2019 |
Nikita Popov |
Use #ifdef instead of #if
|
#
96daef04 |
| 14-Feb-2019 |
Nikita Popov |
Make ABI of SIMD optimized functions independent of compiler flags Always export these as normal functions and only use function pointers internally if necessary.
|
#
7bc162f9 |
| 13-Feb-2019 |
Nikita Popov |
Work around compiler flag dependent ABI
|
Revision tags: php-7.2.15, php-7.3.2, php-7.2.15RC1 |
|
#
92ac598a |
| 22-Jan-2019 |
Peter Kokot |
Remove local variables This patch removes the so called local variables defined per file basis for certain editors to properly show tab width, and similar settings. These are mainly
Remove local variables This patch removes the so called local variables defined per file basis for certain editors to properly show tab width, and similar settings. These are mainly used by Vim and Emacs editors yet with recent changes the once working definitions don't work anymore in Vim without custom plugins or additional configuration. Neither are these settings synced across the PHP code base. A simpler and better approach is EditorConfig and fixing code using some code style fixing tools in the future instead. This patch also removes the so called modelines for Vim. Modelines allow Vim editor specifically to set some editor configuration such as syntax highlighting, indentation style and tab width to be set in the first line or the last 5 lines per file basis. Since the php test files have syntax highlighting already set in most editors properly and EditorConfig takes care of the indentation settings, this patch removes these as well for the Vim 6.0 and newer versions. With the removal of local variables for certain editors such as Emacs and Vim, the footer is also probably not needed anymore when creating extensions using ext_skel.php script. Additionally, Vim modelines for setting php syntax and some editor settings has been removed from some *.phpt files. All these are mostly not relevant for phpt files neither work properly in the middle of the file.
show more ...
|
#
a81202ac |
| 30-Jan-2019 |
Zeev Suraski |
Adios, yearly copyright ranges
|
Revision tags: php-7.3.2RC1, php-5.6.40, php-7.1.26, php-7.3.1, php-7.2.14, 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
|
#
54dc07f3 |
| 01-Nov-2018 |
Zeev Suraski |
Update email addresses. We're still @Zend, but future proofing it...
|
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 |
|
#
b189c243 |
| 17-Sep-2018 |
Peter Kokot |
Remove HAVE_STDARG_H The C89 standard and later defines the `<stdarg.h>` header as part of the standard headers [1]. On current systems it is always present and can be included uncon
Remove HAVE_STDARG_H The C89 standard and later defines the `<stdarg.h>` header as part of the standard headers [1]. On current systems it is always present and can be included unconditionally. Checking for presence and functionality of the `<stdarg.h>` header and variadic function is not relevant anymore on current systems since this is always available. Also Autoconf suggests relying on at least C89 or above [2] and [3]. The following files were regenerated with re2c 1.0.3: - Zend/zend_language_scanner.c - Zend/zend_language_scanner_defs.h Refs: [1] https://port70.net/~nsz/c/c89/c89-draft.html#4.1.2 [2] http://git.savannah.gnu.org/cgit/autoconf.git/tree/lib/autoconf/headers.m4 [3] https://www.gnu.org/software/autoconf/manual/autoconf-2.69/autoconf.html
show more ...
|
Revision tags: 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 |
|
#
36857ab5 |
| 01-Aug-2018 |
Anatol Belski |
Fix clang compilation By usage of -fmodules, all the intrinsic items are loaded automatically. The headers included come however from Visual Studio, thus bringing some conflicting de
Fix clang compilation By usage of -fmodules, all the intrinsic items are loaded automatically. The headers included come however from Visual Studio, thus bringing some conflicting declarations. On the other hand, -fmodules is needed to mitigate linking issues with clang in VS compatibility mode.
show more ...
|
Revision tags: php-7.1.21RC1, php-7.3.0beta1, php-7.2.9RC1, php-5.6.37, php-7.1.20, php-7.3.0alpha4, php-7.0.31, php-7.2.8, php-7.1.20RC1, php-7.2.8RC1, php-7.3.0alpha3 |
|
#
8d3f8ca1 |
| 03-Jul-2018 |
Peter Kokot |
Remove unused Git attributes ident The $Id$ keywords were used in Subversion where they can be substituted with filename, last revision number change, last changed date, and last use
Remove unused Git attributes ident The $Id$ keywords were used in Subversion where they can be substituted with filename, last revision number change, last changed date, and last user who changed it. In Git this functionality is different and can be done with Git attribute ident. These need to be defined manually for each file in the .gitattributes file and are afterwards replaced with 40-character hexadecimal blob object name which is based only on the particular file contents. This patch simplifies handling of $Id$ keywords by removing them since they are not used anymore.
show more ...
|