Arnaud Le Blanc
bccda7eb1c
Extended map_ptr before copying class table ( #9188 )
...
Fixes GH-9164
2022-08-01 19:25:07 +02:00
Dmitry Stogov
69c10aed58
Fix incorrect guard motion out of the loop
...
Fixes oss-fuzz #49579
2022-08-01 15:32:49 +03:00
Dmitry Stogov
4b19b85eb6
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix SSA reconstruction when body of "foreach" loop is removed
2022-08-01 14:01:11 +03:00
Dmitry Stogov
af1a7b7b72
Fix SSA reconstruction when body of "foreach" loop is removed
...
Fixes oss-fuzz #49483
2022-08-01 14:00:19 +03:00
Dmitry Stogov
d50875c822
Fix type inference
...
Fixes oss-fuzz #49423 and #49474
2022-07-25 15:53:06 +03:00
Dmitry Stogov
e70d282077
JIT: Fix missing type stote
...
Fixes oss-fuzz #49402
2022-07-25 15:24:26 +03:00
Dmitry Stogov
cc465ba0bb
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix memory leak
2022-07-25 12:08:00 +03:00
Dmitry Stogov
44b86aee31
Fix memory leak
...
Fixes oss-fuzz #49272
2022-07-25 12:04:46 +03:00
Dmitry Stogov
82d3ad64df
Fix type inference
...
Fixes oss-fuzz #48908
2022-07-18 14:20:06 +03:00
Arnaud Le Blanc
f2381ae4ba
Fix JIT crash with large number of match/switch arms ( #8961 )
...
Switch statements may generate a large number of exit points. Once the max
number of exit points is reached, get_exit_addr() returns NULL. This was not
checked, and this resulted in a jump table with some 0 addresses.
2022-07-18 12:34:20 +02:00
Dmitry Stogov
b734d45626
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix type inference for FETCH_DI_UNSET
2022-07-18 13:15:03 +03:00
Dmitry Stogov
bd30eff5de
Fix type inference for FETCH_DI_UNSET
...
Fixes oss-fuzz #48507
2022-07-18 13:14:15 +03:00
Ilija Tovilo
110573726b
Disallow assigning reference to unset readonly property
...
Closes GH-7942
Closes GH-8188
2022-07-01 12:16:32 +02:00
Dmitry Stogov
b7693360cb
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fixed bug GH-8847 (PHP hanging infinitly at 100% cpu when check php syntaxe of a valid file)
2022-06-29 12:13:03 +03:00
Dmitry Stogov
7cf6f17383
Fixed bug GH-8847 (PHP hanging infinitly at 100% cpu when check php syntaxe of a valid file)
2022-06-29 12:10:46 +03:00
Dmitry Stogov
7e23c838e2
Fixed Bug GH-8863: RW operation on readonly property doesn't throw with JIT
2022-06-27 16:41:53 +03:00
Dmitry Stogov
ee17296e7b
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix memory leak
2022-06-20 11:00:32 +03:00
Dmitry Stogov
229e80c6ef
Fix memory leak
...
This fixes oss-fuzz #48051
2022-06-20 10:59:37 +03:00
Dmitry Stogov
70e0e1ada6
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
JIT: Fix missing register store
2022-06-14 13:59:47 +03:00
Dmitry Stogov
1cd8074743
JIT: Fix missing register store
...
This fixes oss-fuzz #48023
2022-06-14 13:57:44 +03:00
Dmitry Stogov
729be469ae
Fix type inference
...
This dixes oss-fuzz #47921
2022-06-14 11:59:35 +03:00
Dmitry Stogov
1b45efb6fb
Fix type inference
...
This fixes oss-fuzz #47920
2022-06-14 10:20:45 +03:00
Dmitry Stogov
b86c6245cc
Fix type inference
...
This fixes oss-fuzz #47777
2022-06-06 11:13:53 +03:00
Dmitry Stogov
7ebda198ea
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix memory leak
2022-05-30 11:39:10 +03:00
Dmitry Stogov
3a8912fb7c
Fix memory leak
...
This fixes oss-fuzz #47648
2022-05-30 11:32:17 +03:00
Arnaud Le Blanc
69d263e2a1
Add JIT guards for INIT_METHOD_CALL when the method may be modified ( #8600 )
...
Non-polymorphic methods can be modified from one request to an other due to recompilation or conditional declaration.
Fixes GH-8591
Co-authored-by: Oleg Stepanischev <Oleg.Stepanischev@tatar.ru >
2022-05-27 13:15:15 +02:00
Ilija Tovilo
7a2747ba78
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix undefined behavior in php_set_inet6_addr
Reduce the scope of XFAIL (#8592 )
2022-05-22 23:27:47 +02:00
Arnaud Le Blanc
c12141c860
Reduce the scope of XFAIL ( #8592 )
2022-05-20 19:11:00 +02:00
Arnaud Le Blanc
c88dc44a75
Revert "XFAIL tests (GH-8588)"
...
This reverts commit f2ac4f206a .
2022-05-20 13:38:44 +02:00
Arnaud Le Blanc
6465f3ed13
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
XFAIL tests (GH-8588)
Stop closing stderr and stdout streams (#8569 )
2022-05-20 13:36:22 +02:00
Arnaud Le Blanc
f2ac4f206a
XFAIL tests (GH-8588)
2022-05-20 13:27:24 +02:00
Dmitry Stogov
c430116a11
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix memory leak
2022-05-16 13:48:40 +03:00
Dmitry Stogov
84ea0aa684
Fix memory leak
...
This fixes oss-fuzz #47448
2022-05-16 13:45:31 +03:00
Dmitry Stogov
aad5fbac85
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix type inference
2022-05-16 12:42:04 +03:00
Dmitry Stogov
05375602a7
Fix type inference
...
This fixes oss-fuzz #47422
2022-05-16 12:41:25 +03:00
Arnaud Le Blanc
332bd03782
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
2022-05-13 12:35:00 +02:00
Dmitry Stogov
6c25413183
Add JIT guards for INIT_FCALL instructions and functions that may be modified
...
For methods we reuse mechanism of polymorphic calls.
For regular function we invalidate the whole root trace.
This fixes https://github.com/php/php-src/issues/8461
2022-05-12 18:44:12 +03:00
Dmitry Stogov
84c1e99ecf
Fix type inference
...
This fizes oss-fuzz #47044
2022-05-11 12:39:26 +03:00
Dmitry Stogov
f1fc58ed8d
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix type inference
2022-05-11 12:09:53 +03:00
Dmitry Stogov
3f1e1b9ddf
Fix type inference
...
This fixes oss-fuzz #47049
2022-05-11 12:09:11 +03:00
Dmitry Stogov
e9d65c8e2b
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fixed tests
2022-04-26 08:32:28 +03:00
Dmitry Stogov
3564eaff42
Fixed tests
2022-04-26 08:31:42 +03:00
Dmitry Stogov
948ef10dd0
Fix ISSET_ISEMPTY_VAR missoptimization
...
This fixes oss-fuzz #46909
2022-04-25 13:31:01 +03:00
Dmitry Stogov
1aa5e9392d
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Reorder optimization passes to avoid miss-optimization
2022-04-25 13:09:31 +03:00
Dmitry Stogov
3b735456c6
Reorder optimization passes to avoid miss-optimization
2022-04-25 13:09:05 +03:00
Dmitry Stogov
e14dc15e13
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix type inference
2022-04-25 12:17:07 +03:00
Dmitry Stogov
3e78964742
Fix type inference
...
Use MAY_BE_NULL result (insted of empty) for ASSIGN_DIM with invalid arguments
This fixes oss-fuzz #46840
2022-04-25 12:15:55 +03:00
Dmitry Stogov
2cff0e674d
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix type narrowing warning during type inference of ZEND_FETCH_DIM_W
2022-04-25 11:17:04 +03:00
Dmitry Stogov
8286de2fd3
Fix type narrowing warning during type inference of ZEND_FETCH_DIM_W
...
Fixes oss-fuzz #45820
2022-04-25 11:16:10 +03:00
Arnaud Le Blanc
f20e11cbe1
Clear recorded errors before executing shutdown functions
...
Recorded errors may be attached to the wrong cached script when a fatal error
occurs during recording. This happens because the fatal error will cause a
bailout, which may prevent the recorded errors from being freed. If an other
script is compiled after bailout, or if a class is linked after bailout, the
recorded errors will be attached to it.
This change fixes this by freeing recorded errors before executing shutdown
functions.
Fixes GH-8063
2022-04-22 18:14:08 +02:00