Dmitry Stogov
1f5d9534ae
Fix incorrect optimization
...
Fixes oss-fuzz #57482
2023-03-27 17:57:54 +03:00
Arnaud Le Blanc
d87b670544
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
Remove xfail from tests that do not fail anymore (#10871 )
2023-03-17 18:13:31 +01:00
Arnaud Le Blanc
53763e14b7
Remove xfail from tests that do not fail anymore ( #10871 )
2023-03-17 18:12:51 +01:00
Niels Dossche
c4508422eb
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
Fix GH-10801: Named arguments in CTE functions cause a segfault
2023-03-10 19:27:17 +01:00
Niels Dossche
2c53d63197
Fix GH-10801: Named arguments in CTE functions cause a segfault
...
Fixes GH-10801
Named arguments are not supported by the constant evaluation routine, in
the sense that they are ignored. This causes two issues:
- It causes a crash because not all oplines belonging to the call are
removed, which results in SEND_VA{L,R} which should've been removed.
- It causes semantic issues (demonstrated in the test case).
This case never worked anyway, leading to crashes or incorrect behaviour,
so just prevent CTE of calls with named parameters for now.
We can choose to support it later, but introducing support for this in
a stable branch seems too dangerous.
This patch does not change the removal of SEND_* opcodes in remove_call
because the crash bug can't be triggered anymore with this patch as
there are no named parameters anymore and no variadic CTE functions
exist.
Closes GH-10811.
2023-03-10 19:22:44 +01:00
Niels Dossche
7682868dd1
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
Fix GH-8065: opcache.consistency_checks > 0 causes segfaults in PHP >= 8.1.5 in fpm context
Fix GH-8646: Memory leak PHP FPM 8.1
2023-03-07 20:26:57 +01:00
Niels Dossche
85df512a12
Fix GH-8065: opcache.consistency_checks > 0 causes segfaults in PHP >= 8.1.5 in fpm context
...
Disable opcache.consistency_checks.
This feature does not work right now and leads to memory leaks and other
problems. For analysis and discussion see GH-8065. In GH-10624 it was
decided to disable the feature to prevent problems for end users.
If end users which to get some consistency guarantees, they can rely on
opcache.protect_memory.
Closes GH-10798.
2023-03-07 20:17:55 +01:00
Ilija Tovilo
7934a0fcfb
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
Fix missing readonly modification error with inc/dec in JIT
2023-03-02 11:31:29 +01:00
Ilija Tovilo
df93146a15
Fix missing readonly modification error with inc/dec in JIT
...
Closes GH-10746
2023-03-02 11:29:53 +01:00
Ilija Tovilo
2b5aac9303
Fix unescaped {TMP} variables in tests
...
On Windows {TMP} can return ~, which will result in a parse error
2023-03-01 13:24:39 +01:00
Dmitry Stogov
240c120cbc
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
Fix GH-10635: ARM64 function JIT causes impossible assertion (#10638 )
2023-02-21 09:26:10 +03:00
Dmitry Stogov
70ff10af72
Fix GH-10635: ARM64 function JIT causes impossible assertion ( #10638 )
2023-02-21 09:25:51 +03:00
Dmitry Stogov
388d784154
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
Fix (at lease part of the) #GH-10635: ARM64 function JIT causes impossible assertion
2023-02-20 19:44:22 +03:00
Dmitry Stogov
08e7591206
Fix (at lease part of the) #GH-10635: ARM64 function JIT causes impossible assertion
2023-02-20 19:42:35 +03:00
Dmitry Stogov
55e3f73109
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
Fix type inference
2023-01-30 13:16:05 +03:00
Dmitry Stogov
81607a62ca
Fix type inference
...
Fixes oss-fuzz #55358
2023-01-30 13:15:05 +03:00
Dmitry Stogov
757e269b89
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
Fix GH-10271: Incorrect arithmetic calculations when using JIT
2023-01-16 14:51:42 +03:00
Dmitry Stogov
42eed7bb4e
Fix GH-10271: Incorrect arithmetic calculations when using JIT
2023-01-16 14:51:26 +03:00
George Peter Banyard
31fd34aa4c
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
Use absolute paths in OPCache tests when calling `opcache_compile_file()`
2023-01-12 15:48:01 +00:00
Thomas Gerbet
1f715f5658
Use absolute paths in OPCache tests when calling opcache_compile_file()
...
This make sure the tests do not fail if they are not run from the
repository root.
Closes GH-10266
Signed-off-by: George Peter Banyard <girgias@php.net >
2023-01-12 15:47:24 +00:00
Dmitry Stogov
9abc2108fa
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
Fix incorrect optimization of ASSIGN_OP may lead to incorrect result (sub assign -> pre dec conversion for null values)
2023-01-09 13:53:19 +03:00
Dmitry Stogov
4d4a53beee
Fix incorrect optimization of ASSIGN_OP may lead to incorrect result (sub assign -> pre dec conversion for null values)
2023-01-09 13:51:57 +03:00
Dmitry Stogov
0464524292
Fix memory leak because of incorrect optimization
...
Fixes oss-fuzz #54488
2022-12-26 13:20:55 +03:00
Ilija Tovilo
db48f49888
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
Add a regression test for auto_globals_jit=0 with preloading on
2022-12-22 17:42:27 +01:00
Niels Dossche
bbad29b9c1
Add a regression test for auto_globals_jit=0 with preloading on
2022-12-22 17:42:11 +01:00
Arnaud Le Blanc
5563535e97
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
[ci skip] NEWS
Do not resolve constants on non-linked class during preloading (#9975 )
2022-11-25 14:11:52 +01:00
Arnaud Le Blanc
91b3b58f71
Do not resolve constants on non-linked class during preloading ( #9975 )
...
Fixes GH-9968
2022-11-25 14:02:45 +01:00
Dmitry Stogov
45cb3f917a
Fix a memory leak in tracig JIT when the same closure is called through Closure::call() and natively.
...
Closure::call() makes a temporary copy of original closure function, modifies its
scope, resets ZEND_ACC_CLOSURE flag and call it through zend_call_function().
As result the same function may be called with and without
ZEND_ACC_CLOSURE flag, that confuses JIT and may lead to memory leak or
even worse memory errors.
The patch allocates "fake" closure object and keep ZEND_ACC_CLOSURE flag
to always behave in the same way.
2022-11-21 17:41:16 +03:00
Dmitry Stogov
6cbc91151a
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
Fix memory leak
2022-11-14 12:35:49 +03:00
Dmitry Stogov
a8bd342397
Fix memory leak
...
Fizes oss-fuzz #53143
2022-11-14 12:35:09 +03:00
Dmitry Stogov
de4b502fef
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
Fix memory leak
2022-11-07 11:08:54 +03:00
Dmitry Stogov
f31f464cec
Fix memory leak
...
Fixes oss-fuzz #52999
2022-11-07 11:07:58 +03:00
Ilija Tovilo
537a104f14
Fix user path in test
2022-10-25 13:03:55 +02:00
Dmitry Stogov
e0d9a29958
Fixed test
2022-10-24 12:10:08 +03:00
Dmitry Stogov
17706c3e88
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
JIT: Fix incorrect EX(opline) override
2022-10-24 12:03:36 +03:00
Dmitry Stogov
261a08af65
JIT: Fix incorrect EX(opline) override
...
Fixes oss-fuzz #52674
2022-10-24 12:02:28 +03:00
Dmitry Stogov
eecbb60db6
Fix memory leak
...
Fixes oss-fuzz #52479
2022-10-17 15:08:21 +03:00
Dmitry Stogov
4164d2d567
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
Fix register allocation (missing store)
2022-10-03 17:09:07 +03:00
Dmitry Stogov
5877b84056
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix register allocation (missing store)
2022-10-03 17:09:01 +03:00
Dmitry Stogov
ed652a514f
Fix register allocation (missing store)
...
This fixes oss-fuzz #52022
2022-10-03 17:08:11 +03:00
Dmitry Stogov
94b8c2da9f
Fixed type inference
...
Fixes oss-fuzz #51640
2022-09-26 12:19:12 +03:00
Dmitry Stogov
7496a400aa
Fix SSA construction and type inference
...
Fixes oss-fuzz #51476
2022-09-19 15:45:34 +03:00
Ilija Tovilo
3f1e9235e1
Fix test with POSIX_RLIMIT_FSIZE and gcov
2022-09-16 17:15:17 +02:00
Arnaud Le Blanc
ac54bfb17c
Fix test in "DEBUG_NTS_OPCACHE Without interned strings" build
2022-09-16 16:51:27 +02:00
Ilija Tovilo
e9a0d21a06
Mark gh9259_003.phpt as xfail with ASAN
...
The tests reports memory leaks.
2022-09-11 12:37:06 +02:00
Máté Kocsis
87862578cb
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
Fix inexistent skipif.inc
2022-09-05 12:38:09 +02:00
Máté Kocsis
59180b50b3
Fix inexistent skipif.inc
2022-09-05 12:37:53 +02:00
Dmitry Stogov
c151e9b75b
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
Fix type inference
2022-09-05 13:01:04 +03:00
Dmitry Stogov
c852e0fff9
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix type inference
2022-09-05 12:56:34 +03:00
Dmitry Stogov
81cb005ef7
Fix type inference
...
Fixes oss-fuzz #50792
2022-09-05 12:55:50 +03:00