History log of /PHP-8.1/ext/opcache/jit/zend_jit_arm64.dasc (Results 126 – 150 of 363)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# 608d5686 30-Aug-2021 Dmitry Stogov

JIT: Avoid reloading of EX(run_time_cache)

# 3565d02c 30-Aug-2021 Dmitry Stogov

JIT: Eliminate load of op_array->run_time_cache__ptr and use immediate value for immutable op_arrays if it's known at compile time

# 1347d90a 30-Aug-2021 Dmitry Stogov

JIT: Avoid reloading of EX(run_time_cache)

# c51b0d97 30-Aug-2021 Dmitry Stogov

JIT: Avoid redundand checks of number of passed arguments

# 66a4437c 29-Aug-2021 Dmitry Stogov

Avoid redundand argument type verification

# 67d6c2db 29-Aug-2021 Dmitry Stogov

JIT: Optimize zend_vm_stack_free_args()

Avoid code genearation for destructors of immutable parameters of internal functions that cannot be changed in place.
Keep destructors for immutab

JIT: Optimize zend_vm_stack_free_args()

Avoid code genearation for destructors of immutable parameters of internal functions that cannot be changed in place.
Keep destructors for immutable array parameters, because few function may modufy them in-pace.

show more ...

# 0424ce0c 26-Aug-2021 Dmitry Stogov

Avoid redundand repeatable VM stack overflow checks

# 1c9f8eb7 25-Aug-2021 Dmitry Stogov

JIT/x86: Merge load and test of EX_CALL_INFO() into single instruction

# c5ded136 24-Aug-2021 Dmitry Stogov

JIT: Code generation for ROPE_INIT, ROPE_ADD and ROPE_END with STRING operands

Revision tags: php-7.3.30
# 1ffbb737 13-Aug-2021 Dmitry Stogov

Better specialization for packed/hash arrays

- improved packed/hash inference.
- added hash guards for ASSIGN_DIM, ASSIGN_DIM_OP, FETCH_DIM_W* instructions
- more accurate invariant

Better specialization for packed/hash arrays

- improved packed/hash inference.
- added hash guards for ASSIGN_DIM, ASSIGN_DIM_OP, FETCH_DIM_W* instructions
- more accurate invariant type guards motion
- invariant packed/hash guards motion
- rename MAY_BE_ARRAY_HASH into MAY_BE_ARRAY_NUMERIC_HASH and add MAY_BE_ARRAY_STRING_HASH
- cleanup

show more ...

# 94b80018 12-Aug-2021 Dmitry Stogov

Fixed conditional jump on uninitialised value (Zend/tests/match/028.phpt failure with function JIT)

# c39332d7 12-Aug-2021 Dmitry Stogov

Fixed incorrect condition

# 57e2241c 12-Aug-2021 Dmitry Stogov

JIT: Use zend_hash_index_lookup() instead of zend_hash_index_add_new(EG(uninitialized_zval))

# e1f211f7 22-Jul-2021 Dmitry Stogov

Merge branch 'PHP-8.0'

* PHP-8.0:
Fixed typo


# ae8647d9 20-Jul-2021 Levi Morrison

Remove leading underscore for _zend_hash_find_known_hash (#7260)

Convert zend_hash_find_ex(..., 1) to zend_hash_find_known_hash(...)
Convert zend_hash_find_ex(..., 0) to zend_hash_find(.

Remove leading underscore for _zend_hash_find_known_hash (#7260)

Convert zend_hash_find_ex(..., 1) to zend_hash_find_known_hash(...)
Convert zend_hash_find_ex(..., 0) to zend_hash_find(...)

Also add serializable changes to UPGRADING.INTERNALS summary

show more ...

# 4cf7a258 20-Jul-2021 Dmitry Stogov

Merge branch 'PHP-8.0'

* PHP-8.0:
Fixed Bug #81255 (Memory leak in PHPUnit with functional JIT)


Revision tags: php-7.3.29
# 6780aaa5 02-Jun-2021 Nikita Popov

Implement readonly properties

Add support for readonly properties, for which only a single
initializing assignment from the declaring scope is allowed.

RFC: https://wiki.php.net

Implement readonly properties

Add support for readonly properties, for which only a single
initializing assignment from the declaring scope is allowed.

RFC: https://wiki.php.net/rfc/readonly_properties_v2

Closes GH-7089.

show more ...

# 052af90b 09-Jun-2021 Kamil Tekiela

Deprecate autovivification on false

Deprecate automatically converting "false" into an empty array
on write operands. Autovivification continues to be supported
for "null" values, as

Deprecate autovivification on false

Deprecate automatically converting "false" into an empty array
on write operands. Autovivification continues to be supported
for "null" values, as well as undefined/uninitialized values.

RFC: https://wiki.php.net/rfc/autovivification_false

Closes GH-7131.

Co-authored-by: Tyson Andre <tysonandre775@hotmail.com>
Co-authored-by: Nikita Popov <nikita.ppv@gmail.com>

show more ...

# 4743c7a1 01-Jul-2021 Dmitry Stogov

JIT/ARM64: Fixed incorrect trace linking.

# ff983131 30-Jun-2021 Dmitry Stogov

JIT/ARM64: Fixed possible incorrect exception catching in function JIT.

# 3e164dee 23-Jun-2021 Hao Sun

JIT/AArch64: Support shifted immediate (#7165)

* JIT/AArch64: Support shifted immediate

As pointed out by MikePall in [1], shifted immediate value is supported.
See [2]. For exa

JIT/AArch64: Support shifted immediate (#7165)

* JIT/AArch64: Support shifted immediate

As pointed out by MikePall in [1], shifted immediate value is supported.
See [2]. For example, `add x0, x1, #4096` would be encoded by DynASM
into `add x0, x1, #1, lsl #12` directly.

In this patch, a helper is added to check whether an immediate value is
in the two allowed ranges: (1) 0 to 4095, and (2) LSL #12 on all the
values from the first range.

Note that this helper works for add/adds/sub/subs/cmp/cmn instructions.

[1] https://github.com/LuaJIT/LuaJIT/pull/718
[2]
https://github.com/LuaJIT/LuaJIT/blob/v2.1/dynasm/dasm_arm64.lua#L342

Change-Id: I4870048b9b8e6c429b73a4803af2a3b2d5ec0fbb

* Deprecatd CMP_IMM/ADD_SUB_IMM and add test cases

Macros CMP_IMM and ADD_SUB_IMM are deprecated and instead we use
this helper to guard the immediate encoding.

Add two 64-bit only test cases, since 64-bit integers are used
and tested inside.

Change-Id: I0b42d4617b40372e2f4ce5b6ad31a4ddb7d89e49

show more ...

# d72c320f 17-Jun-2021 Dmitry Stogov

JIT/ARM64: Fixed possible incorrect register allocation

# 82bcc9b4 17-Jun-2021 Dmitry Stogov

JIT/ARM64: Fixed "may be used uninitialized" compilation warning

# 6442cbfb 17-Jun-2021 Dmitry Stogov

Merge branch 'PHP-8.0'

* PHP-8.0:
JIT: Fixed failures of tracing JIT with CALL VM


# 3a782595 16-Jun-2021 Dmitry Stogov

JIT: Avoid too aggressive loop unrolling

This fixes tests/func/010.phpt failure with tracing JIT on ARM64.

12345678910>>...15