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

1675 Commits

Author SHA1 Message Date
Niels Dossche
950d010cc5 Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  Fix nightly failure in test variation due to number of temp variables varying when observers are enabled
2024-07-27 16:37:09 +02:00
Niels Dossche
4df858602a Fix nightly failure in test variation due to number of temp variables varying when observers are enabled 2024-07-27 16:37:01 +02:00
Bob Weinand
61b455b59c Merge branch 'PHP-8.2' into PHP-8.3 2024-07-22 18:30:10 +02:00
Bob Weinand
a18df90a8b Fix GH-13817: Segmentation fault for enabled observers after pass 4
Instead of fixing up temporaries count in between observer steps, just apply the additional temporary in the two affected observer steps.

Closes GH-14018.
2024-07-22 18:28:03 +02:00
Ilija Tovilo
69a800151b Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  Skip JIT test if php is compiled without jit
2024-05-23 16:35:51 +02:00
Ilija Tovilo
04c9749e35 Skip JIT test if php is compiled without jit 2024-05-23 16:35:29 +02:00
Ilija Tovilo
706e79761e Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  Fix enabling of JIT at runtime
2024-05-22 14:33:25 +02:00
Ilija Tovilo
9506ca6001 Fix enabling of JIT at runtime
Fixes GH-14267
Closes GH-14294
2024-05-22 14:32:43 +02:00
Bob Weinand
5ead5c5a11 Merge branch 'PHP-8.2' into PHP-8.3 2024-04-08 20:19:46 +02:00
Bob Weinand
e48a5c14b9 Add zend_test.observer.enabled=0 to opcache tests asserting specific TMP count
Necessary to succeed when tests are run with zend_test.observer.enabled=1.
2024-04-08 20:16:35 +02:00
Bob Weinand
f52b2a9cdc Merge branch 'PHP-8.2' into PHP-8.3 2024-04-08 15:10:29 +02:00
Bob Weinand
af098acd6e Always load EX(opline) into the current frame in JIT when observers are enabled
Fixes #13772.
Closes #13776.
2024-04-08 15:09:14 +02:00
Bob Weinand
dbaeb62ab1 Merge branch 'PHP-8.2' of github.com:php/php-src into PHP-8.3 2024-04-02 18:11:55 +02:00
Bob Weinand
e7462bff19 Run one testsuite with observers enabled in CI (#13869)
Signed-off-by: Bob Weinand <bobwei9@hotmail.com>
2024-04-02 18:11:02 +02:00
Niels Dossche
55e617691a Fix GH-13433: Segmentation Fault in zend_class_init_statics when using opcache.preload
This regressed in 9a250cc9d6, which allowed static properties to get
overridden by a trait during inheritance. In particular, because of the
change to the loop in zend_update_parent_ce(), it's not guaranteed that
all indirects are after one another.

This means that during persisting the zvals of the static members table,
some static properties may be skipped. In case of the test code, this
means that the array in the trait will keep referring to the old, new
freed, stale value. To solve this, we check the type for IS_INDIRECT,
which is the same as what zend_persist_calc() is already doing anyway.

Since 2543e61aed we can check for IS_INDIRECT to see if it should be
persisted or not.

Closes GH-13794.
2024-03-26 21:29:07 +01:00
Bob Weinand
6d6cd29909 Merge branch 'PHP-8.2' of https://github.com/php/php-src into PHP-8.3 2024-03-18 19:04:12 +01:00
Bob Weinand
10d912d6e3 Fix GH-13712: Segmentation fault for enabled observers when calling trait method of internal trait when opcache is loaded (#13735)
Inherited methods regardless of source must share the original runtime cache. Traits were missed.
This adds ZEND_ACC_TRAIT_CLONE to internal functions as well to allow easy distinction of these.
2024-03-18 19:02:42 +01:00
Arnaud Le Blanc
a4d769ccb3 Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  [ci skip] NEWS
  Fix GH-13508: JITed QM_ASSIGN may be optimized out when op1 is null (#13610)
2024-03-11 15:13:56 +01:00
Arnaud Le Blanc
0ea80126ea Fix GH-13508: JITed QM_ASSIGN may be optimized out when op1 is null (#13610)
Co-authored-by: Dmitry Stogov <dmitry@zend.com>
2024-03-11 15:10:12 +01:00
Niels Dossche
31e8cea1d6 Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  Fix GH-13232: Segmentation fault will be reported when JIT is off but JIT_debug is still on
2024-01-24 17:48:57 +01:00
Niels Dossche
d417072ebe Fix GH-13232: Segmentation fault will be reported when JIT is off but JIT_debug is still on
Closes GH-13234.
2024-01-24 17:47:40 +01:00
Ilija Tovilo
ea8d143a59 Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  [skip ci] Fix 64-bit only test
2024-01-23 17:33:17 +01:00
Ilija Tovilo
1c1d785c4f [skip ci] Fix 64-bit only test 2024-01-23 17:32:59 +01:00
Dmitry Stogov
0becd4856d Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  Fix GH-12481: PHP crash with JIT enabled
2024-01-22 15:57:01 +03:00
Dmitry Stogov
f120ac93a1 Fix GH-12481: PHP crash with JIT enabled 2024-01-22 15:56:12 +03:00
Dmitry Stogov
fd58f61a22 Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  Fix assertion
2023-12-25 13:22:39 +03:00
Dmitry Stogov
5350952a37 Fix assertion
Fixes oss-fuzz #65233
2023-12-25 13:22:03 +03:00
Dmitry Stogov
555e8f82e8 Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  Fixed type inference
2023-12-18 12:28:25 +03:00
Dmitry Stogov
731734dacb Fixed type inference
Fixes oss-fuzz #65150
2023-12-18 12:27:35 +03:00
Dmitry Stogov
b46ee531bd Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  Fixed incorrect elimination of refcounted check in JIT for BIND_GLOBAL
2023-12-18 11:29:17 +03:00
Dmitry Stogov
c67f6f449c Fixed incorrect elimination of refcounted check in JIT for BIND_GLOBAL
Fixes oss-fuzz #65135
2023-12-18 11:27:55 +03:00
Ilija Tovilo
e83a5683f9 Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  Fix zend_jit_undefined_long_key overwriting dim when dim == result
2023-12-11 15:07:44 +01:00
Ilija Tovilo
623da03845 Fix zend_jit_undefined_long_key overwriting dim when dim == result
Fixes oss-fuzz #64727
Closes GH-12900
2023-12-11 15:07:09 +01:00
Dmitry Stogov
8c9b5996be Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  Fixed type inference
2023-12-01 17:09:09 +03:00
Dmitry Stogov
1e55c97601 Fixed type inference
Fixes oss-fuzz #64577, #64579, #64589
2023-12-01 17:08:16 +03:00
Dmitry Stogov
64851873da Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  Fixed GH-8251: Narrowing occurred during type inference of ZEND_FETCH_DIM_W
2023-11-28 23:33:45 +03:00
Dmitry Stogov
423a1e586e Fixed GH-8251: Narrowing occurred during type inference of ZEND_FETCH_DIM_W 2023-11-28 22:49:39 +03:00
Dmitry Stogov
8b5767af75 Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  Fixed GH-12812: Integer string in variable used as offset produces wrong undefined array key warning (#12817)
2023-11-28 21:20:35 +03:00
Dmitry Stogov
39a813d9ca Fixed GH-12812: Integer string in variable used as offset produces wrong undefined array key warning (#12817)
* Fixed GH-12812: Integer string in variable used as offset produces wrong undefined array key warning

* Fixed register names
2023-11-28 21:19:57 +03:00
Gina Peter Banyard
c70219e4aa Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  jit: fixed JIT "Attempt to assign property of non-object" warning emitted at the same time as Error is being thrown
2023-11-27 16:20:44 +00:00
Gina Peter Banyard
126a255d66 jit: fixed JIT "Attempt to assign property of non-object" warning emitted at the same time as Error is being thrown 2023-11-27 16:19:35 +00:00
Gina Peter Banyard
52463ae233 Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  jit: fixed "Uninitialized string offset" warning being emitted at the same time as invalid offset Error
2023-11-27 16:06:15 +00:00
Gina Peter Banyard
ed8b901869 jit: fixed "Uninitialized string offset" warning being emitted at the same time as invalid offset Error 2023-11-27 16:04:41 +00:00
Dmitry Stogov
6f355c6c79 Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  Fixed GH-12748: Function JIT emits "could not convert to int" warning at the same time as invalid offset Error
2023-11-22 13:26:07 +03:00
Dmitry Stogov
2d65d714a3 Fixed GH-12748: Function JIT emits "could not convert to int" warning at the same time as invalid offset Error 2023-11-22 13:19:10 +03:00
Dmitry Stogov
f48ab6a66f Fixed GH-12747: Function JIT returns invalid error message for coalesce operator on invalid offset 2023-11-22 13:01:35 +03:00
Dmitry Stogov
8349835e68 Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  Backport fix for GH-12512: JIT Assertion `info & (1 << type)' failed (#12660)
2023-11-13 13:28:48 +03:00
Dmitry Stogov
db26aee801 Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  Backport fix for GH-12512: JIT Assertion `info & (1 << type)' failed (#12660)
2023-11-13 13:27:11 +03:00
Dmitry Stogov
c60c2a0d67 Backport fix for GH-12512: JIT Assertion `info & (1 << type)' failed (#12660) 2023-11-13 13:26:17 +03:00
Dmitry Stogov
4ee72a8dda Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  Backport fix for HASH/PACKED array inference through MAY_BE_ARRAY_EMPTY flag (#12591)
2023-11-03 10:55:33 +03:00