Nikita Popov
5d05f810d0
Reduce max input size in parser fuzzer
...
Still seeing stack overflows for $$$$$x style input, let's reduce
the input size limit further...
2021-10-06 19:14:20 +02:00
Dmitry Stogov
25e2cfc27b
Merge branch 'PHP-8.1'
...
* PHP-8.1:
XFAIL: Return types cannot be inferred through prototypes
2021-10-06 17:21:34 +03:00
Dmitry Stogov
fd8dfc4248
XFAIL: Return types cannot be inferred through prototypes
2021-10-06 17:21:02 +03:00
Dmitry Stogov
33335f1f77
Merge branch 'PHP-8.1'
...
* PHP-8.1:
JIT ARM64: Fixed NaN handling
2021-10-06 16:50:52 +03:00
Dmitry Stogov
5557d15311
JIT ARM64: Fixed NaN handling
2021-10-06 16:50:25 +03:00
Dmitry Stogov
90b59094f4
Merge branch 'PHP-8.1'
...
* PHP-8.1:
JIT: Fixed NaN handling
2021-10-06 16:37:27 +03:00
Dmitry Stogov
6e086681f5
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
JIT: Fixed NaN handling
2021-10-06 16:36:38 +03:00
Dmitry Stogov
8a0873020a
JIT: Fixed NaN handling
2021-10-06 16:35:33 +03:00
Dmitry Stogov
c84c07e2db
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Fixed type inference that may cause JIT failure
2021-10-06 14:58:47 +03:00
Dmitry Stogov
0b5d62e39c
Fixed type inference that may cause JIT failure
...
PHP allows to override a method that returns non-reference with a method
that returns a reference. This mean that we cannot use prototypes to
predict return types of a child functions.
2021-10-06 14:55:34 +03:00
Dmitry Stogov
34ae752599
Merge branch 'PHP-8.1'
...
* PHP-8.1:
JIT: Fixed register clobbering
2021-10-06 12:22:14 +03:00
Dmitry Stogov
5ed654ee95
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
JIT: Fixed register clobbering
2021-10-06 12:22:06 +03:00
Dmitry Stogov
f681f9075c
JIT: Fixed register clobbering
2021-10-06 12:10:39 +03:00
Nikita Popov
aa2f8311c6
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Fix array cast type inference wrt packed arrays
2021-10-06 10:51:30 +02:00
Nikita Popov
3661c1932c
Fix array cast type inference wrt packed arrays
...
Use KEY_LONG instead of PACKED if it's possible for the array to
be empty. It won't be packed in that case.
Fixes oss-fuzz #39650 .
2021-10-06 10:50:44 +02:00
Nikita Popov
43b3cf110f
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Don't start new block after loop free
2021-10-06 10:13:24 +02:00
Nikita Popov
f455894bb6
Don't start new block after loop free
...
This reverts the change from 493c91c742 .
Starting a new block means that in the common case where the loop var
free is not unreachable, we'll always merge back the block.
Instead fix the original problem by explicitly removing instructions
apart from the loop var free in block pass.
2021-10-06 10:13:15 +02:00
Dmitry Stogov
e1a56ef6bf
Merge branch 'PHP-8.1'
...
* PHP-8.1:
JIT: Fixed incorrect overflow detection introduced in a5e502ef4d
2021-10-06 10:19:05 +03:00
Dmitry Stogov
831a1717f6
JIT: Fixed incorrect overflow detection introduced in a5e502ef4d
2021-10-06 10:18:18 +03:00
Dmitry Stogov
084c9faf4d
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Fixed assign coalesce. "$a[0] ??= $a" should evaluate the right $a first.
2021-10-05 20:34:57 +03:00
Dmitry Stogov
80205cd39a
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fixed assign coalesce. "$a[0] ??= $a" should evaluate the right $a first.
2021-10-05 20:34:43 +03:00
Dmitry Stogov
80aaeb9696
Fixed assign coalesce. "$a[0] ??= $a" should evaluate the right $a first.
2021-10-05 20:34:09 +03:00
Derick Rethans
8b55a84d00
Merge branch 'PHP-8.1'
2021-10-05 18:28:40 +01:00
Derick Rethans
6166ac51b7
Force UTC
2021-10-05 18:28:30 +01:00
Dmitry Stogov
69fb20f106
Fixed assign coalesce. "$a[0] ??= $a" should evaluate the right $a first.
2021-10-05 20:23:56 +03:00
Derick Rethans
fef250ec85
Merge branch 'PHP-8.1'
2021-10-05 17:26:10 +01:00
Derick Rethans
5161bfb4b5
Merge branch 'PHP-8.0' into PHP-8.1
2021-10-05 17:26:05 +01:00
Derick Rethans
0eb7a1576d
Merge branch 'PHP-7.4' into PHP-8.0
2021-10-05 17:25:57 +01:00
Derick Rethans
e5d35a3252
Prepare branch for 7.4.26-dev
2021-10-05 17:25:43 +01:00
Matteo Beccati
a476cc109d
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Fix #81509 pg_end_copy still expects a resource
Add test for pg_put_line() and pg_end_copy()
2021-10-05 18:14:06 +02:00
Matteo Beccati
958daa6529
Fix #81509 pg_end_copy still expects a resource
2021-10-05 18:13:50 +02:00
Matteo Beccati
202a099aee
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Add test for pg_put_line() and pg_end_copy()
2021-10-05 18:13:20 +02:00
Matteo Beccati
9af6882d28
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Add test for pg_put_line() and pg_end_copy()
2021-10-05 17:44:19 +02:00
Matteo Beccati
be36bf5aca
Add test for pg_put_line() and pg_end_copy()
2021-10-05 17:43:48 +02:00
Nikita Popov
f313854c98
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Require libavif version >= 0.8.2
2021-10-05 17:01:46 +02:00
Ben Morss
b4c200f9fe
Require libavif version >= 0.8.2
...
Closes GH-7554.
2021-10-05 17:01:07 +02:00
Nikita Popov
b14076a845
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Fix build without global registers
2021-10-05 16:46:10 +02:00
Nikita Popov
dab6527352
Fix build without global registers
2021-10-05 16:45:44 +02:00
Nikita Popov
fef61a8e11
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Reuse wrong string offset logic in jit
2021-10-05 16:33:39 +02:00
Nikita Popov
a4fa00ead3
Reuse wrong string offset logic in jit
...
JIT contains a copy of this function that effectively only differs
by fetching current_execute_data from EG. We can do that in the VM
version as well, as this is just used to throw an error.
Export the VM function and reuse it in JIT.
2021-10-05 16:33:31 +02:00
Derick Rethans
0d6b8bbfcd
Merge branch 'PHP-8.1'
2021-10-05 15:23:05 +01:00
Derick Rethans
68b874d10d
Fixed bug #81504 : Incorrect timezone transition details for POSIX data
2021-10-05 15:22:55 +01:00
Nikita Popov
d032b85762
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Use ephemeral port in test
2021-10-05 16:01:00 +02:00
Nikita Popov
e91a751e3d
Use ephemeral port in test
2021-10-05 16:00:50 +02:00
Nikita Popov
be323b89cd
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Fix duplicate undef warning in assign_dim_op
2021-10-05 15:51:35 +02:00
Nikita Popov
02c5f7f927
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix duplicate undef warning in assign_dim_op
2021-10-05 15:51:30 +02:00
Nikita Popov
11a9b036a8
Fix duplicate undef warning in assign_dim_op
...
In case of auto-vivification we were fetching dim twice and as
such also emitting the undef var warning twice.
2021-10-05 15:51:11 +02:00
Nikita Popov
f8ae4624c4
Merge branch 'PHP-8.1'
...
* PHP-8.1:
Fix return type verification with undef var
2021-10-05 15:34:48 +02:00
Nikita Popov
c5e96daa41
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix return type verification with undef var
2021-10-05 15:34:37 +02:00
Nikita Popov
f890c9c5e3
Fix return type verification with undef var
...
This was loading EG(uninitialized_value) into r0 rather than
FCARG1a.
However, if we fix this issue an existing test fails because
the undef var warning promoted to exception is not caught early
enough, so we need to explicitly check for the exception before
performing the type check.
2021-10-05 15:30:55 +02:00