Peter Kokot
94421e5724
Remove conditional calls of always available macros
...
These checks were once relevant for these extensions in PECL and PHP
versions without availability of the checked macros.
Closes GH-4405
2019-07-14 22:24:21 +02:00
Peter Kokot
e39296d10b
Remove unsed zts check for sqlite3
...
This check was relevant with bundled sqlite library. Removed via
6083a387a8
Closes GH-4403
2019-07-14 21:06:15 +02:00
Peter Kokot
66c02cc0a1
Remove duplicate PTHREADS template define
...
The undef PTHREADS converts to define if thread safety is configured.
This step is already done by pthreads m4 macros from TSRM so this now
removes duplicated PTHREADS defines from php_config.h.
2019-07-14 14:45:27 +02:00
Peter Kokot
c72d6da461
Remove timelib outdated defines
...
- TIMELIB_OMIT_STDINT is not used anymore since
a171f99cf0
- HAVE_GETTIMEOFDAY was defined multiple times in Windows headers
- ext/date/lib/timelib_config.h.win32 does not seem to be used
Closes GH-4400
2019-07-14 13:50:05 +02:00
Peter Kokot
7a6d737de7
Remove PHP_MYSQL variable
...
PHP_MYSQL variable was once defined by the ext/mysql (--with-mysql).
Closes GH-4399
2019-07-14 13:48:44 +02:00
Peter Kokot
f573ba1948
Update changelogs
...
- PHP-7.4 alpha, beta, RC versions already include bugs logged in the
NEWS
- some links to RFCs
- php_error_docref0
2019-07-13 15:37:36 +02:00
Peter Kokot
4e0af6d862
Remove php_multiple_shlib_versions_ok
...
Variable usage was removed via
913cec6551
2019-07-13 15:06:35 +02:00
Peter Kokot
f3cf8966be
Remove unused recode extension artefacts
...
Closes GH-4395
2019-07-13 14:52:36 +02:00
Peter Kokot
f5e4771824
Remove checks for always enabled spl and pcre
...
Closes GH-4397
2019-07-13 14:47:37 +02:00
Peter Kokot
499f2ac132
Remove WARNING_LEVEL fix for QNX
...
Fix is no longer relevant since the environment variable WARNING_LEVEL
is no longer used to define the value of the -w option for cc.
Closes GH-4398
2019-07-13 14:39:29 +02:00
Christoph M. Becker
8c76d898a9
Fix #78283 : no output for explicit environment
...
This test does not work on Windows, if the child process has OPcache
enabled via php.ini, since TEMP is not set in the environment, so
OPcache can't find the base address file, and terminates the childs.
To avoid this (and potentially some other issues regarding missing
environment variables, such as PATH), we force the child process to
ignore any ini files.
2019-07-13 12:03:03 +02:00
Christoph M. Becker
bf242d58e7
Fix #78282 : atime and mtime mismatch
...
The fix for bug #78241 assumed that `time_t` would always be 64bit, but
actually is 32bit for x86. We therefore enforce 64bit arithmetic to
avoid wrapping.
2019-07-13 09:44:46 +02:00
George Peter Banyard
1c1de0c41a
Convert all php_error_docref0 to php_error_docref
...
Closes GH-4394
2019-07-13 02:05:17 +02:00
Peter Kokot
33994ebd95
Remove tsrm_config_common.h
...
- Checks and defines are not relevant for files that include it anymore
- Some code is not used anymore
- Defines are a bit duplicated in zend_portability.h and TSRM.h file
- MAXPATHLEN defs moved to zend_virtual_cwd.h
2019-07-13 01:58:01 +02:00
Christoph M. Becker
a6fa097ceb
No more need to cater to pre-PHP-5.3 or PHP-6 versions
2019-07-12 18:55:34 +02:00
Nikita Popov
0d568b9fd5
Don't split T_INLINE_HTML at partial PHP tag
...
If <?php occurs without required trailing whitespace, we should keep
it as part of a single T_INLINE_HTML region.
2019-07-12 17:22:11 +02:00
Nikita Popov
79b5b1a97f
Merge branch 'PHP-7.3' into PHP-7.4
2019-07-12 16:51:52 +02:00
Nikita Popov
3f73916f10
Merge branch 'PHP-7.2' into PHP-7.3
2019-07-12 16:51:47 +02:00
Nikita Popov
a7de2af46c
Use TRY_ADDREF/TRY_DELREF in soap
...
The DELREF part is a possible fix for bug #78278 , the ADDREF part
is a drive-by fix.
2019-07-12 16:50:43 +02:00
Nikita Popov
608f2112e9
Merge branch 'PHP-7.3' into PHP-7.4
2019-07-12 16:30:47 +02:00
Nikita Popov
9d141f9889
Merge branch 'PHP-7.2' into PHP-7.3
2019-07-12 16:30:33 +02:00
Nikita Popov
4a91f66b8f
Fixed bug #78279
...
Even if we don't initialize the callback on every request, we
should still reset our globals to default values...
2019-07-12 16:29:18 +02:00
Christoph M. Becker
76783a9bcc
Update NEWS and UPGRADING wrt. ext/recode unbundling
2019-07-12 14:35:44 +02:00
Christoph M. Becker
58b607c9ea
Removed ext/recode
...
Cf. <https://wiki.php.net/rfc/unbundle_recode >.
2019-07-12 13:58:17 +02:00
Christoph M. Becker
8aa7865997
Swap implode() argument order in the test helper
2019-07-12 13:26:54 +02:00
Nikita Popov
e2c3bc80e3
Remove duplicate XtOffsetOf() definitions in php.h
...
These are already defined in zend_portability.h.
2019-07-12 13:18:18 +02:00
Nikita Popov
709897c2a5
Remove unused tsrm_strtok_r() function
...
There is also a php_strtok_r() function, which is actually used,
but nothing uses the tsrm_strtok_r() variant...
2019-07-12 13:14:24 +02:00
Nikita Popov
94d37a5dd7
Remove unnecessary uses of allow_url_include in tests
2019-07-12 12:54:34 +02:00
Nikita Popov
9345c191db
Remove unnecessary uses of restore_include_path() in tests
2019-07-12 12:54:26 +02:00
Nikita Popov
2e56e14e39
Swap implode() argument order in some tests
2019-07-12 12:54:10 +02:00
Nikita Popov
9a274de4f4
Improve bless_tests
...
If a string var_dump contains a wildcard, also make the length a
wildcard.
2019-07-12 12:54:01 +02:00
Dmitry Stogov
0793af0673
Use common code for double math
2019-07-12 11:40:56 +03:00
Christoph M. Becker
d0d02ecc4e
Revert "Temporarily skip test"
...
This reverts commit 4e5a717866
.
As of commit 17f7fb7605
the test should
no longer hang.
2019-07-11 23:33:34 +02:00
Dmitry Stogov
350f2212ff
Allow GOTO style helpers in HYBRID VM
2019-07-12 00:00:55 +03:00
Dmitry Stogov
ef1a1a0698
Separate "cold" parts of comparison instructions
2019-07-11 20:44:39 +03:00
Dmitry Stogov
be94c0c3c6
Separate "cold" parts of binary op instructions
2019-07-11 18:23:08 +03:00
Nikita Popov
59852c0321
Remove redundant 64-bit ezmlm_hash() test
...
This test is the same as the as ezmlm_hash_basic.phpt. This function
does not behave differently on 32-bit and 64-bit.
2019-07-11 17:09:18 +02:00
Nikita Popov
cbda1b1c6a
Add ZEND_DEP_ME macro
2019-07-11 17:09:03 +02:00
George Peter Banyard
e6c2b28865
Convert short tag to standard tag in Zend test file
...
Closes GH-4389.
2019-07-11 16:20:05 +02:00
Nikita Popov
17f7fb7605
Switch to using shell-less proc_open() in various server tests
2019-07-11 15:48:10 +02:00
Nikita Popov
6285bb52fa
Support redirect+null descriptors in proc_open
...
This adds support for doing something like:
[1 => ['pipe', 'w'], 2 => ['redirect', 1]]
This will make descriptor 2 on the child end a dup'd descriptor 1.
This is mainly useful in conjunction with shell-less mode, because
we don't have an easy way to do "2>&1" there.
Additionally we support:
[1 => ['pipe', 'w'], 2 => ['null']]
Which would be the same as a >/dev/null or >nul redirect, depending
on platform.
2019-07-11 15:48:10 +02:00
Nikita Popov
42cac9d7d7
Don't call Reflection::export() internally
...
export() methods were implemented in a roundabout way, where they
would call Reflection::export(), which would then call __toString().
Cut out the middleman by directly calling __toString().
2019-07-11 14:14:55 +02:00
Christoph M. Becker
17997a908d
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fix #78212 : Segfault in built-in webserver
2019-07-11 13:11:08 +02:00
Christoph M. Becker
fa65f5ecf5
Fix #78212 : Segfault in built-in webserver
...
Since syslog's ident and facility parameters have been added to
config[1], vsyslog() segfaults on Windows, if openlog() has not been
called before. We bring back the removed lines to fix this.
[1] <http://git.php.net/?p=php-src.git;a=commit;h=2475337bd8a0fad0dac03db3f5e7e9d331d53653 >
2019-07-11 13:09:54 +02:00
Nikita Popov
c02dfddda3
Include test name in JUnit testcase name
...
Azure does not show the classname attribute in any convenient way,
and the file name is the part we usually care about.
2019-07-11 12:46:56 +02:00
Nikita Popov
d20fc5a192
Make proc_open_bug64438.phpt more robust
...
The test currently assumes that we'll first read the data of
stdout and stderr and then see eof on stdout and stderr. However
we could also read stdout, see eof on stdout, read stderr and see
eof on stderr, depending on timing.
Avoid output ordering issues by collecting events into a per-pipe
array, so interleaving is not visible.
2019-07-11 12:46:56 +02:00
Sebastian Pop
3b73c9fb86
neon vectorization for base64
...
A similar algorithm is used to vectorize on x86_64, with a good description in
https://arxiv.org/abs/1704.00605 . On AArch64 the implementation differs in that
instead of using multiplies to shift bits around, it uses the vld3+vst4 and
vld4+vst3 combinations to load and store interleaved data. This patch is based
on the NEON implementation of Wojciech Mula:
https://github.com/WojciechMula/base64simd/blob/master/encode/encode.neon.cpp
https://github.com/WojciechMula/base64simd/blob/master/encode/lookup.neon.cpp
and
https://github.com/WojciechMula/base64simd/blob/master/encode/encode.neon.cpp
https://github.com/WojciechMula/base64simd/blob/master/encode/encode.neon.cpp
adapted to php/ext/standard/base64.c and vectorized with factor 16 instead of 8.
On a Graviton A1 instance and on the synthetic benchmarks in
https://github.com/lemire/fastbase64 I see 175% speedup on base64 encoding and
60% speedup on base64 decode compared to the scalar implementation.
The patch passes `make test` regression testing on aarch64-linux.
2019-07-11 12:04:29 +03:00
Sebastian Pop
2a535a9707
[AArch64] Use crc32 instructions when available
...
The time goes from 0.838s down to 0.029s (a 28x speedup) on a Graviton A1
instance and the following benchmark:
function simple_crc32() {
$a = "foo";
for ($i = 0; $i < 10000; $i++) {
crc32($a);
$a .= "o".$i;
}
}
2019-07-11 10:29:45 +02:00
Nikita Popov
ba8c4894d8
Add server conflict to soap custom content type test
2019-07-11 10:26:53 +02:00
Peter Kokot
a6daded1a4
Refactor undefining PACKAGE_* symbols
...
Instead of patching configuration headers template generated by
the given tools - autoheader, this moves patching these symbols to
the configure step before creating and invoking the config.status
and before the configuration header file is generated from the
patched template.
Closes GH-4374
2019-07-11 02:00:51 +02:00