1
0
mirror of https://github.com/php/php-src.git synced 2026-04-25 00:48:25 +02:00
Commit Graph

1212 Commits

Author SHA1 Message Date
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
Ilija Tovilo 4397811db2 Fix preloading of constants containing enums
Fixes GH-8133
2022-04-21 11:57:12 +02:00
Dmitry Stogov c3a30544ad JIT: Fixed incorrect guard
Fixes oss-fuzz #46704
2022-04-18 11:34:18 +03:00
Dmitry Stogov 8633893330 Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  JIT: Fix memory lek
2022-04-11 12:21:02 +03:00
Dmitry Stogov 3aaf2f6f89 JIT: Fix memory lek
Fixes oss-fuzz #46462
2022-04-11 12:17:05 +03:00
Dmitry Stogov 69bcd93190 Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  Tracing JIT: Fixed incorrect assumption about stack slot type
2022-04-11 11:42:56 +03:00
Dmitry Stogov 5b048dd05c Tracing JIT: Fixed incorrect assumption about stack slot type
Fixes oss-fuzz #46404
2022-04-11 11:42:01 +03:00
Nikita Popov c72e9621ce Improve type narrowing fix
We need to explicitly model the null return type for property
accesses on non-objects.
2022-04-10 11:22:36 +02:00
Dmitry Stogov 4f18dbeb97 Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  JIT: Fix array clobbering by user error handler
2022-04-04 16:37:17 +03:00
Dmitry Stogov c489e360a6 JIT: Fix array clobbering by user error handler
Fixes oss-fuzz #46336
2022-04-04 16:36:25 +03:00
Dmitry Stogov e721a42211 Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  Fixed reference counting inference
2022-04-04 15:34:46 +03:00
Dmitry Stogov c0bb238483 Fixed reference counting inference
Fixes oss-fuzz #46084
2022-04-04 15:34:02 +03:00
Dmitry Stogov 33704be5f2 Trcing JIT: remove unchecked type guards om ROPE_* instructions
Fixes oss-fuzz #46209
2022-04-04 15:06:35 +03:00
Dmitry Stogov 24bb178310 Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  JIT: Fixed incorrect code generation
2022-04-04 14:24:10 +03:00
Dmitry Stogov 0d44bbd212 JIT: Fixed incorrect code generation
Fixes oss-fuzz #46328
2022-04-04 14:20:45 +03:00
Dmitry Stogov 7aac1c11ee Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  JIT: Fixed memory leak
2022-03-25 16:55:37 +03:00
Dmitry Stogov aa352c2c54 JIT: Fixed memory leak
Fixes oss-fuzz #45981
2022-03-25 16:54:50 +03:00
Dmitry Stogov 62a1c068fe Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  JIT: Fix register clobbering
2022-03-21 16:13:04 +03:00
Dmitry Stogov cf83bdd925 JIT: Fix register clobbering
Fixes oss-fuzz #45590
2022-03-21 16:08:52 +03:00
Dmitry Stogov 21b0da8cdf Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  JIT: Fix missing type store
2022-03-21 14:07:34 +03:00
Dmitry Stogov e9fc81a2f8 JIT: Fix missing type store
Fixes oss-fuzz #45604
2022-03-21 13:34:46 +03:00
Dmitry Stogov 2198493f12 Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  JIT: Fix memory leak
2022-03-21 12:51:10 +03:00
Dmitry Stogov 7051dc3372 JIT: Fix memory leak
Fixes oss-fuzz #45658
2022-03-21 12:50:30 +03:00
Dmitry Stogov 83ab9cf871 Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  JIT: Fix missing exception handling
2022-03-18 18:56:02 +03:00