1
0
mirror of https://github.com/php/php-src.git synced 2026-04-01 13:12:16 +02:00
Files
archived-php-src/ext
Hao Sun ac80aeb3ac JIT/AArch64: Use 'tbnz/tbz' to check the signedness (#7123)
'tbnz/tbz' instruction can be used to check whether a given W or X
register value is negative or positive.

For example,
    ```
    tst x0, x0
    blt >1
    ```
can be optimized as `tbnz x0, #63, >1`

It's important to note that the jump range of 'tbnz/tbz' is limited, and
it's better NOT to use 'tbnz/tbz' if the target of 'b.cond' is a label
in section .cold_code or a global label, such as the instruction
sequence `tst RETVALw, RETVALw; blt ->trace_halt` at function
zend_jit_trace_exit_stub(), and the instruction sequence `tst REG0,
  REG0; blt >7` at function zend_jit_incdec_obj().

Minor updates:
Use macros BW_OP_32_WITH_CONST and GC_ADDREF at function
zend_jit_push_call_frame().

Change-Id: I1597609bdabf55ea2f9d24528e7a037bc3e5c3a1
2021-06-09 16:30:25 +08:00
..
2021-06-08 15:41:09 +02:00
2021-05-29 11:33:13 +02:00
2021-05-28 23:25:29 +02:00
2021-05-26 13:21:43 +02:00
2021-05-29 11:33:13 +02:00
2021-05-29 11:33:13 +02:00
2021-06-02 12:21:45 +02:00
2021-06-03 19:02:53 +01:00
2021-05-27 16:00:03 +02:00
2021-05-29 11:33:13 +02:00
2021-05-13 23:36:33 +02:00
2021-06-03 15:14:08 +02:00
2021-05-12 13:47:57 +02:00
2021-06-03 10:34:00 +02:00
2021-05-10 17:22:41 +02:00
2021-06-09 10:15:36 +02:00
2021-06-07 12:11:13 +02:00