Gina Peter Banyard
89eaa1fe5f
ext/gmp: Refactor gmp_cmp() test
2024-11-27 15:10:49 +00:00
Gina Peter Banyard
601f6cd54d
ext/gmp: Use new parsing mechanism in comparison operator overloading
...
This removes the last usages of the old GMP_FETCH API
2024-11-27 15:10:49 +00:00
Gina Peter Banyard
92ff44da12
ext/gmp: Use new parsing API in shift helper
2024-11-27 15:10:49 +00:00
Gina Peter Banyard
0831608c8b
ext/gmp: Add weak mode support for parsing
2024-11-27 15:10:49 +00:00
Gina Peter Banyard
27044108d3
ext/gmp: Convert GMP operator overloading to new parsing mechanism
2024-11-27 15:10:49 +00:00
Gina Peter Banyard
8b2cd8fd2d
ext/gmp: Start refactoring operator overloading to use new parsing mechanism
2024-11-27 15:10:49 +00:00
Gina Peter Banyard
2681da4531
ext/gmp: Refactor gmp_fact() to use new ZPP specifier
...
Not sure it is the best approach to do this one however
2024-11-27 15:10:49 +00:00
Gina Peter Banyard
5199904c57
ext/gmp: Remove now unused FETCH_GMP_ZVAL_DEP_DEP macro
2024-11-27 15:10:49 +00:00
Gina Peter Banyard
fabfb6fe00
ext/gmp: Refactor gmp_divexact() and gmp_mod() to use custom ZPP specifier
2024-11-27 15:10:49 +00:00
Gina Peter Banyard
8e9b944a83
ext/gmp: Refactor gmp_div_(q|r)() to use new ZPP specifier
2024-11-27 15:10:49 +00:00
Gina Peter Banyard
1f5ba59b61
ext/gmp: Refactor gmp_div_qr() to use new ZPP specifier
2024-11-27 15:10:49 +00:00
Gina Peter Banyard
376c148fb8
ext/gmp: Refactor gmp_random_range() to use new ZPP specifier
2024-11-27 15:10:49 +00:00
Gina Peter Banyard
3964efd729
ext/gmp: Use new specifier for gmp_cmp()
...
It seems that this also now normalizes the return value
2024-11-27 15:10:49 +00:00
Gina Peter Banyard
1e3876039f
ext/gmp: Refactor generation of some binary GMP functions
2024-11-27 15:10:49 +00:00
Gina Peter Banyard
a9e2a96e69
ext/gmp: Refactor generation of unary GMP functions
2024-11-27 15:10:49 +00:00
Gina Peter Banyard
10003a3f5d
ext/gmp: Use new custom ZPP specifier
2024-11-27 15:10:49 +00:00
Gina Peter Banyard
290f69662a
ext/gmp: Create custom Fast ZPP specifier to parse into mpz_ptr
...
We define module globals to be used with ZPP, which also avoids excessive initializing and clearing of variables,
something recommended by the GMP documentation.
2024-11-27 15:10:49 +00:00
Gina Peter Banyard
2313a465b6
Inline gmp_unary_opl() as it was only used once
...
That use being gmp_popcount()
2024-11-27 15:10:49 +00:00
Gina Peter Banyard
9ee1265e0c
ext/gmp: Use Fast ZPP for GMP functions
2024-11-27 15:10:49 +00:00
Gina Peter Banyard
57ae2c9530
ext/gmp: Split out non-existent inverse modulo cases
2024-11-27 15:10:49 +00:00
Máté Kocsis
17187c4646
Merge branch 'PHP-8.4'
...
* PHP-8.4:
Fix the 1st parameter type casing of pg_set_chunked_rows_size()
2024-11-26 22:49:29 +01:00
Máté Kocsis
56fb910d9c
Fix the 1st parameter type casing of pg_set_chunked_rows_size()
2024-11-26 22:48:33 +01:00
Dmitry Stogov
2de0d8ebbe
Merge branch 'PHP-8.4'
...
* PHP-8.4:
Fix GH-16821: runtime error: member access within misaligned address when running phpseclib tests (#16951 )
2024-11-27 00:44:03 +03:00
Dmitry Stogov
b89d7ff92a
Fix GH-16821: runtime error: member access within misaligned address when running phpseclib tests ( #16951 )
2024-11-27 00:43:45 +03:00
Niels Dossche
c2a6a7da7b
Merge branch 'PHP-8.4'
...
* PHP-8.4:
Fix GH-15208: Segfault with breakpoint map and phpdbg_clear()
2024-11-26 22:27:40 +01:00
Niels Dossche
5ff67f8720
Merge branch 'PHP-8.3' into PHP-8.4
...
* PHP-8.3:
Fix GH-15208: Segfault with breakpoint map and phpdbg_clear()
2024-11-26 22:27:35 +01:00
Niels Dossche
3c3ec0e61a
Merge branch 'PHP-8.2' into PHP-8.3
...
* PHP-8.2:
Fix GH-15208: Segfault with breakpoint map and phpdbg_clear()
2024-11-26 22:27:06 +01:00
Niels Dossche
97b03186c4
Fix GH-15208: Segfault with breakpoint map and phpdbg_clear()
...
It crashes because it's gonna try accessing the breakpoint which was cleared
by user code in `phpdbg_clear();`. Not all breakpoint data was properly
cleaned.
Closes GH-16953.
2024-11-26 22:26:37 +01:00
Niels Dossche
408f5f835c
Merge branch 'PHP-8.4'
...
* PHP-8.4:
Backport GH-14962 to stable versions
2024-11-26 21:25:25 +01:00
Niels Dossche
0d8c5ade72
Merge branch 'PHP-8.3' into PHP-8.4
...
* PHP-8.3:
Backport GH-14962 to stable versions
2024-11-26 21:25:13 +01:00
Niels Dossche
21df4a97a3
Merge branch 'PHP-8.2' into PHP-8.3
...
* PHP-8.2:
Backport GH-14962 to stable versions
2024-11-26 21:25:05 +01:00
Michael Orlitzky
ae84b81bfa
Backport GH-14962 to stable versions
...
Alpine CI regularly fails because of the sorting order of these tests.
See https://github.com/php/php-src/pull/14962#issuecomment-2498799881
Closes GH-16950.
2024-11-26 21:24:48 +01:00
Niels Dossche
30ec2de83f
Merge branch 'PHP-8.4'
...
* PHP-8.4:
Extract call_level conditions out to separate functions (#16949 )
2024-11-26 21:23:59 +01:00
Niels Dossche
ed556939df
Extract call_level conditions out to separate functions ( #16949 )
...
These are repeated a couple of times, so centralise it in 2 functions to
reduce repetition and make updating this less error-prone.
2024-11-26 21:22:12 +01:00
Niels Dossche
4591f0427f
Merge branch 'PHP-8.4'
...
* PHP-8.4:
Fix various memory leaks in curl mime handling
2024-11-26 20:40:16 +01:00
Niels Dossche
8206de62f7
Merge branch 'PHP-8.3' into PHP-8.4
...
* PHP-8.3:
Fix various memory leaks in curl mime handling
2024-11-26 20:40:09 +01:00
Niels Dossche
89060216a3
Merge branch 'PHP-8.2' into PHP-8.3
...
* PHP-8.2:
Fix various memory leaks in curl mime handling
2024-11-26 20:37:51 +01:00
Niels Dossche
a80f0b515a
Fix various memory leaks in curl mime handling
...
Closes GH-16745.
2024-11-26 20:37:22 +01:00
Dmitry Stogov
be27cbdc4a
Merge branch 'PHP-8.4'
...
* PHP-8.4:
Avoid possible spill conflict (one of the problem that caused GH-16821) (#16947 )
2024-11-26 21:44:32 +03:00
Dmitry Stogov
d31de85f5f
Avoid possible spill conflict (one of the problem that caused GH-16821) ( #16947 )
2024-11-26 21:44:15 +03:00
Niels Dossche
b3db7f7a9c
Merge branch 'PHP-8.4'
...
* PHP-8.4:
Fix GH-16879: JIT dead code skipping does not update call_level
2024-11-26 19:27:29 +01:00
Niels Dossche
de30ba5042
Fix GH-16879: JIT dead code skipping does not update call_level
...
We intend to execute `MATCH_ERROR` in the VM and return to trace a hot
function in BB1. We generate a tail handler and skip all remaining
oplines of BB0. That means the `INIT_FCALL` in BB0 is missed and
`call_level` is not increased to 1. This leads to the assertion
failure.
This patch fixes the issue by updating the `call_level` for the skipped
oplines.
Closes GH-16939.
2024-11-26 19:27:17 +01:00
Niels Dossche
cef23c4853
Merge branch 'PHP-8.4'
...
* PHP-8.4:
Fix is_zend_ptr() huge block comparison
2024-11-26 19:24:54 +01:00
Niels Dossche
8fdcd9f051
Merge branch 'PHP-8.3' into PHP-8.4
...
* PHP-8.3:
Fix is_zend_ptr() huge block comparison
2024-11-26 19:24:47 +01:00
Niels Dossche
02b1056714
Merge branch 'PHP-8.2' into PHP-8.3
...
* PHP-8.2:
Fix is_zend_ptr() huge block comparison
2024-11-26 19:24:31 +01:00
Niels Dossche
18674e39ad
Fix is_zend_ptr() huge block comparison
...
We should compare the block memory, not the block metadata (See
zend_mm_add_huge_block).
This caused random test failure for ext/ffi/tests/gh14626.phpt when the
malloc() performed by the FFI code lies close to the block metadata, and
the size of the block is large enough.
This was reported by https://github.com/php/php-src/issues/16902#issuecomment-2498310452
Closes GH-16938.
2024-11-26 19:24:05 +01:00
Christophe Coevoet
d411fdf615
Fix rST markup in the documentation about stubs (GH-16888)
2024-11-26 17:02:14 +01:00
Derick Rethans
a16ee2f1c3
Merge branch 'PHP-8.4'
2024-11-26 15:41:10 +00:00
Derick Rethans
118ed09ab2
Merge branch 'PHP-8.3' into PHP-8.4
2024-11-26 15:41:04 +00:00
Derick Rethans
e43a398149
Merge branch 'PHP-8.2' into PHP-8.3
2024-11-26 15:40:56 +00:00