#
91b84571 |
| 11-Apr-2024 |
Arnaud Le Blanc |
Fix TLS access in JIT with Musl (#13927) ABI specifies that each DTV element is 8 bytes in size on x86-64. The factor 16 was defined in 71cccc0bcc5f083ae6022face1c2514b5240b96a, but it's
Fix TLS access in JIT with Musl (#13927) ABI specifies that each DTV element is 8 bytes in size on x86-64. The factor 16 was defined in 71cccc0bcc5f083ae6022face1c2514b5240b96a, but it's probably a merge error of 94ba883e195613d5a01be07b6ca9a73024b5575b, which used the right value.
show more ...
|
#
13c8d931 |
| 08-Apr-2024 |
Bob Weinand |
Merge branch 'PHP-8.3'
|
#
00c6d538 |
| 01-Apr-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix GH-13834: Applying non-zero offset 36 to null pointer in zend_jit.c (#13846) * Fix GH-13834: Applying non-zero offset 36 to null pointer in zend_jit.c ssa_op can be NULL in func
Fix GH-13834: Applying non-zero offset 36 to null pointer in zend_jit.c (#13846) * Fix GH-13834: Applying non-zero offset 36 to null pointer in zend_jit.c ssa_op can be NULL in function JIT. Doing pointer arithmetic on a NULL pointer is undefined behaviour. Undefined behaviour can be dangerous because the optimizer may assume then that the variable is not actually NULL. To solve this: 1. Add ADVANCE_SSA_OP() to safely add an offset to ssa_op in zend_jit.c 2. For inference, add an extra offset argument to the helper functions. To reproduce this, use Clang (not GCC) on a test like sapi/cli/tests/gh12363.phpt (or other tests also work). * Remove -fno-sanitize=pointer-overflow flag from CI * Fix NULL pointer offsets added to the stack_map * Fix an offset add on a potentially NULL ssa->ops * Fix NULL pointer arithmetic in zend_range_info() * Address review comments
show more ...
|
#
2d6bd164 |
| 28-Mar-2024 |
Paul Ripke |
Fixed GH-13581: threaded mod_php fails on NetBSD with No space available for Thread Local Storage. Close GH-13832 |
#
fa512dc4 |
| 20-Mar-2024 |
Dmitry Stogov |
Use new abilities or ir_save() |
#
71cccc0b |
| 12-Feb-2024 |
Dmitry Stogov |
Merge branch 'PHP-8.3' * PHP-8.3: Fix TLS access in JIT with MUSL (#13329)
|
#
631bc816 |
| 06-Feb-2024 |
Ilija Tovilo |
Implement stackless internal function calls Co-authored-by: Dmitry Stogov <dmitry@zend.com> Closes GH-12461 |
#
2bf9f7eb |
| 01-Feb-2024 |
Dmitry Stogov |
Fix compilation warning |
#
fe064d7f |
| 19-Jan-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix GH-13142: Undefined variable name is shortened when contains \0 Uses the new %S formatter and introduces the necessary changes and helpers. |
#
b6a0e3d4 |
| 19-Dec-2023 |
Dmitry Stogov |
Manually optimize DIV to SHR |
#
45119549 |
| 18-Dec-2023 |
Dmitry Stogov |
Merge branch 'PHP-8.3' * PHP-8.3: Fixed incorrect elimination of refcounted check in JIT for BIND_GLOBAL
|
#
a8eecec9 |
| 11-Dec-2023 |
Dmitry Stogov |
Fixed AAech64 build |
#
7714f1fc |
| 11-Dec-2023 |
Dmitry Stogov |
Support for IR API changes |
#
b2483a18 |
| 07-Dec-2023 |
Dmitry Stogov |
Fix GH-12879: Function name is missing in error message on MacOS with function JIT |
#
c779bdc9 |
| 01-Dec-2023 |
Dmitry Stogov |
Fix Windoes build |
#
bf6b66fe |
| 01-Dec-2023 |
Dmitry Stogov |
Restored support for CPU cache demotion |
#
4d51d588 |
| 30-Nov-2023 |
Dmitry Stogov |
JIT: Specify fastcall calling convenrion through dummy function prototype |
#
fc1b467d |
| 28-Nov-2023 |
Dmitry Stogov |
Merge branch 'PHP-8.3' * PHP-8.3: Fixed GH-12812: Integer string in variable used as offset produces wrong undefined array key warning (#12817)
|
#
d41ee53a |
| 28-Nov-2023 |
Dmitry Stogov |
Fixed GH-12809: Segmentation fault in exception handler with CALL VM on AArch64 |
#
fde41bc7 |
| 16-Nov-2023 |
Daniil Gentili |
Report fatal error if JIT cannot be enabled Closes GH-12403 |
#
d20c8496 |
| 22-Nov-2023 |
Dmitry Stogov |
Update according to IR changes |
#
f2706a8f |
| 16-Nov-2023 |
Pengfei Li <45187772+pfustc@users.noreply.github.com> |
JIT/AArch64: Fix an undefined symbol issue (#12687) In AArch64 function `zend_jit_set_veneer()`, some debug code calls two other functions `ir_disasm_find_symbol()` and `ir_disasm_add_sy
JIT/AArch64: Fix an undefined symbol issue (#12687) In AArch64 function `zend_jit_set_veneer()`, some debug code calls two other functions `ir_disasm_find_symbol()` and `ir_disasm_add_symbol()` defined in `ir_disasm.c`. However, `ir_disasm.c` is compiled under the condition that capstone is available. This causes an undefined symbol issue while loading `opcache.so` when JIT is triggered if PHP is built without `--with-capstone`. We find this issue on MacOS 12.5 if we build PHP with Clang 14. It does not appear immediately when using other versions of toolchains because of lazy binding. To reproduce this with Linux/GCC, we can disable lazy binding by `export LD_BIND_NOW=1` before building PHP. This fixes the issue by making the debug code conditionally compile.
show more ...
|
#
94f32df8 |
| 14-Nov-2023 |
Dmitry Stogov |
Fixed compilation warning |
#
cc2bf119 |
| 13-Nov-2023 |
David CARLIER |
zend: introducing ZEND_ELEMENT_COUNT for struct's dynamic arrays. (#12650) zend: introducing ZEND_ELEMENT_COUNT for struct's dynamic and flexible arrays. It is mostly for ubsan and
zend: introducing ZEND_ELEMENT_COUNT for struct's dynamic arrays. (#12650) zend: introducing ZEND_ELEMENT_COUNT for struct's dynamic and flexible arrays. It is mostly for ubsan and helping array bound checking.
show more ...
|
#
524b1346 |
| 08-Nov-2023 |
Dmitry Stogov |
Fixed failure in generator related tests on Mac introduced by 8ef695795c2489070558a3c8ed7024ac038728e5 |