Skip to content

Commit dfe71ec

Browse files
committed
Merge branch 'jit-dynasm' of github.com:zendtech/php-src into jit-dynasm
* 'jit-dynasm' of github.com:zendtech/php-src: Use LVAL directly
2 parents ff5793a + 1b8583b commit dfe71ec

File tree

1 file changed

+11
-2
lines changed

1 file changed

+11
-2
lines changed

ext/opcache/jit/zend_jit_x86.dasc

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -383,10 +383,19 @@ static void* dasm_labels[zend_lb_MAX];
383383

384384
|.macro SSE_GET_ZVAL_LVAL, reg, addr
385385
|| if (Z_MODE(addr) == IS_CONST_ZVAL) {
386+
|.if X64
387+
|| if (!IS_SIGNED_32BIT(Z_LVAL_P(Z_ZV(addr)))) {
388+
| mov64 r0, Z_LVAL_P(Z_ZV(addr))
389+
|| } else {
390+
| mov r0, Z_LVAL_P(Z_ZV(addr))
391+
|| }
392+
|.else
393+
| mov r0, Z_LVAL_P(Z_ZV(addr))
394+
|.endif
386395
|| if (zend_jit_x86_flags & ZEND_JIT_CPU_AVX) {
387-
| MEM_OP3_3 vcvtsi2sd, xmm(reg-ZREG_XMM0), xmm(reg-ZREG_XMM0), aword, Z_ZV(addr), r0
396+
| vcvtsi2sd, xmm(reg-ZREG_XMM0), xmm(reg-ZREG_XMM0), r0
388397
|| } else {
389-
| MEM_OP2_2 cvtsi2sd, xmm(reg-ZREG_XMM0), aword, Z_ZV(addr), r0
398+
| cvtsi2sd, xmm(reg-ZREG_XMM0), r0
390399
|| }
391400
|| } else if (Z_MODE(addr) == IS_MEM_ZVAL) {
392401
|| if (zend_jit_x86_flags & ZEND_JIT_CPU_AVX) {

0 commit comments

Comments
 (0)