1
0
mirror of https://github.com/php/php-src.git synced 2026-04-14 19:41:05 +02:00

JIT: Call zend_hash_index_find() instead of _zend_hash_index_find() if we didn't check for packed array before

This commit is contained in:
Dmitry Stogov
2021-09-27 23:16:47 +03:00
parent 325865d750
commit 2e02b1f157

View File

@@ -5466,7 +5466,11 @@ static int zend_jit_fetch_dimension_address_inner(dasm_State **Dst, const zend_o
| // hval = Z_LVAL_P(dim);
| GET_ZVAL_LVAL ZREG_FCARG2a, op2_addr
}
| EXT_CALL _zend_hash_index_find, r0
if (packed_loaded) {
| EXT_CALL _zend_hash_index_find, r0
} else {
| EXT_CALL zend_hash_index_find, r0
}
| test r0, r0
if (not_found_exit_addr) {
| jz &not_found_exit_addr
@@ -5522,7 +5526,11 @@ static int zend_jit_fetch_dimension_address_inner(dasm_State **Dst, const zend_o
| // hval = Z_LVAL_P(dim);
| GET_ZVAL_LVAL ZREG_FCARG2a, op2_addr
}
| EXT_CALL _zend_hash_index_find, r0
if (packed_loaded) {
| EXT_CALL _zend_hash_index_find, r0
} else {
| EXT_CALL zend_hash_index_find, r0
}
| test r0, r0
if (JIT_G(trigger) == ZEND_JIT_ON_HOT_TRACE && type == BP_VAR_R) {
| jz &exit_addr