History log of /PHP-8.3/ext/opcache/jit/zend_jit_vm_helpers.c (Results 1 – 25 of 97)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# 00259952 19-Feb-2024 Dmitry Stogov

Merge branch 'PHP-8.2' into PHP-8.3

* PHP-8.2:
Prevent recording traces started from usupported VM instruction


# 728b81d9 19-Feb-2024 Dmitry Stogov

Prevent recording traces started from usupported VM instruction

# e83a5683 11-Dec-2023 Ilija Tovilo

Merge branch 'PHP-8.2' into PHP-8.3

* PHP-8.2:
Fix zend_jit_undefined_long_key overwriting dim when dim == result


# 623da038 08-Dec-2023 Ilija Tovilo

Fix zend_jit_undefined_long_key overwriting dim when dim == result

Fixes oss-fuzz #64727
Closes GH-12900

# 8b5767af 28-Nov-2023 Dmitry Stogov

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)


# 39a813d9 28-Nov-2023 Dmitry Stogov

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 undef

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

show more ...

# 1a0ef2c1 06-Jul-2023 Ilija Tovilo

Revert "Remove name field from the zend_constant struct (#10954)"

This reverts commit f42992f580343931434dff2e4b2042ff945b48a1.

Closes GH-11604

# ad1b70d6 04-Jul-2023 Ilija Tovilo

Revert "Revert "Remove name field from the zend_constant struct (#10954)""

This reverts commit 9f4bd3040d2809f209d73f696b21302f311665b7.

# 9f4bd304 03-Jul-2023 Máté Kocsis

Revert "Remove name field from the zend_constant struct (#10954)"

This reverts commit f42992f580343931434dff2e4b2042ff945b48a1.

Fix GH-11423

# 0e5ac62f 02-May-2023 Sara

Add configuration opcache.jit_max_trace_length (#11173)

Max length of a single trace. A long trace generates long JITTed
code, which influences the performance slightly.
opcache.jit_

Add configuration opcache.jit_max_trace_length (#11173)

Max length of a single trace. A long trace generates long JITTed
code, which influences the performance slightly.
opcache.jit_max_trace_length range is [4,1024], the default value
is 1024.


Reviewed-by: Su, Tao <tao.su@intel.com>

Signed-off-by: Wang, Xue <xue1.wang@intel.com>

show more ...

# f42992f5 03-Apr-2023 Máté Kocsis

Remove name field from the zend_constant struct (#10954)

As global constant names are case-sensitive now, we don't have to store them separately above the constant table.

# a11c8a30 16-Dec-2022 Arnaud Le Blanc

Limit stack size (#9104)

Revision tags: php-8.2.0RC1, php-8.1.10, php-8.0.23, php-8.0.23RC1, php-8.1.10RC1, php-8.2.0beta3, php-8.2.0beta2, php-8.1.9, php-8.0.22
# 7ff71a0a 01-Aug-2022 Dmitry Stogov

Merge branch 'PHP-8.0' into PHP-8.1

* PHP-8.0:
Tracing: Prevent recording types of variables used to pass zend_class_entry


# 2758ff2a 01-Aug-2022 Dmitry Stogov

Tracing: Prevent recording types of variables used to pass zend_class_entry

Revision tags: php-8.1.9RC1, php-8.2.0beta1, php-8.0.22RC1, php-8.0.21, php-8.1.8, php-8.2.0alpha3, php-8.1.8RC1, php-8.2.0alpha2, php-8.0.21RC1, php-8.0.20, php-8.1.7, php-8.2.0alpha1, php-7.4.30, php-8.1.7RC1, php-8.0.20RC1, php-8.1.6, php-8.0.19, php-8.1.6RC1, php-8.0.19RC1, php-8.0.18, php-8.1.5, php-7.4.29, php-8.1.5RC1, php-8.0.18RC1, php-8.1.4, php-8.0.17, php-8.1.4RC1, php-8.0.17RC1, php-8.1.3, php-8.0.16, php-7.4.28, php-8.1.3RC1, php-8.0.16RC1, php-8.1.2, php-8.0.15, php-8.1.2RC1, php-8.0.15RC1, php-8.0.14, php-8.1.1, php-7.4.27, php-8.1.1RC1, php-8.0.14RC1, php-7.4.27RC1, php-8.1.0, php-8.0.13, php-7.4.26, php-7.3.33, php-8.1.0RC6, php-7.4.26RC1, php-8.0.13RC1, php-8.1.0RC5, php-7.3.32
# 11dd5e6e 20-Oct-2021 Dmitry Stogov

Merge branch 'PHP-8.0' into PHP-8.1

* PHP-8.0:
Use right frame


# b69c6ba9 20-Oct-2021 Dmitry Stogov

Use right frame

# 7e53b08c 20-Oct-2021 Dmitry Stogov

Merge branch 'PHP-8.0' into PHP-8.1

* PHP-8.0:
JIT: Fixed megamorphic call detection


# 95c0dfc5 20-Oct-2021 Dmitry Stogov

JIT: Fixed megamorphic call detection

Revision tags: php-7.4.25, php-8.0.12, php-8.1.0RC4, php-8.0.12RC1, php-7.4.25RC1, php-8.1.0RC3
# 757c1277 23-Sep-2021 Dmitry Stogov

Merge branch 'PHP-8.0' into PHP-8.1

* PHP-8.0:
Tracing JIT: Fixed possible stack-buffer-overflow.


# 08100e81 23-Sep-2021 Dmitry Stogov

Tracing JIT: Fixed possible stack-buffer-overflow.

# f2ceb639 22-Sep-2021 Dmitry Stogov

Tracing JIT: Record information about types of defined object properties and use it to optimize code for ASSIGN_OBJ_OP, PRE/POST_INC/DEC_OBJ and FETCH_OBJ_R/IS

Revision tags: php-8.0.11, php-7.4.24, php-7.3.31
# ceaefdb0 16-Sep-2021 Dmitry Stogov

Fixed support for numeric string keys

# 12f9dad1 16-Sep-2021 Dmitry Stogov

Tracing JIT: Record information about elements of arrays and use it to improve generated code (ASSIGN_DIM).

Revision tags: php-8.1.0RC2
# 971142a1 13-Sep-2021 Dmitry Stogov

Merge branch 'PHP-8.0' into PHP-8.1

* PHP-8.0:
JIT: Fixed exit from CALL VM with GCC Global Register Variables


# cfb21e8d 13-Sep-2021 Hao Sun

JIT: Fixed exit from CALL VM with GCC Global Register Variables

PHP JIT supports three configurations: HYRBID, CALL with global register
variables feature(CALL+GRV for short), and CALL+n

JIT: Fixed exit from CALL VM with GCC Global Register Variables

PHP JIT supports three configurations: HYRBID, CALL with global register
variables feature(CALL+GRV for short), and CALL+noGRV.

CALL+GRV mode can be built with the following commands:

```
php Zend/zend_vm_gen.php --with-vm-kind=CALL
./buildconf -f; ./configure; make
```

About 230 test cases failed for tracing JIT under CALL+GRV mode on both
x86 and arm64 machines.

For CALL+GRV mode, the condition to determine whether the execution of
an oparray is finished, is "opline == NULL". See function execute_ex()
around line "if (UNEXPECTED(!OPLINE)) {".

However, such cleanup operation is missing for the JIT wrapper
zend_jit_trace_counter_helper(), and the trace_halt stub function.

Tests:
1. test cases: all .phpt test cases under "Zend/tests/ tests/
ext/opcache/tests/jit/".
2. both JIT/x86 and JIT/arm64: function JIT, tracing JIT and tracing JIT
with "--repeat 3"
3. execution modes: NTS/ZTS, HYBRID/CALL+GRV/CALL+noGRV

In my local test, these test cases passed under all JIT configrations.

show more ...

1234