]> granicus.if.org Git - php/commitdiff
Fix helper call on 32-bit
authorNikita Popov <nikita.ppv@gmail.com>
Thu, 13 Jun 2019 10:11:23 +0000 (12:11 +0200)
committerNikita Popov <nikita.ppv@gmail.com>
Thu, 13 Jun 2019 10:11:23 +0000 (12:11 +0200)
This is using the fast-call calling convention. Use FCARG1a and
same code for 32-bit and 64-bit.

ext/opcache/jit/zend_jit_x86.dasc

index 1d57ea30bb2f38a429effebcbf4515d4386e5b27..a400288c1114d1ad0a677d7dbb806b6dfb03a64b 100644 (file)
@@ -8022,15 +8022,8 @@ static int zend_jit_send_var(dasm_State **Dst, const zend_op *opline, zend_op_ar
                        |       test dword [r0 + offsetof(zend_function, quick_arg_flags)], mask
                        |       jnz >7
                        |       SAVE_VALID_OPLINE opline
-                       |.if X64
-                               |       LOAD_ZVAL_ADDR CARG1, arg_addr
-                               |       EXT_CALL zend_jit_only_vars_by_reference, r0
-                       |.else
-                               |       sub r4, 8
-                               |       PUSH_ZVAL_ADDR arg_addr, r0
-                               |       EXT_CALL zend_jit_only_vars_by_reference, r0
-                               |       add r4, 16
-                       |.endif
+                       |       LOAD_ZVAL_ADDR FCARG1a, arg_addr
+                       |       EXT_CALL zend_jit_only_vars_by_reference, r0
                        if (!zend_jit_check_exception(Dst)) {
                                return 0;
                        }
@@ -8067,15 +8060,8 @@ static int zend_jit_send_var(dasm_State **Dst, const zend_op *opline, zend_op_ar
                        |       je >7
                }
                |       SAVE_VALID_OPLINE opline
-               |.if X64
-                       |       LOAD_ZVAL_ADDR CARG1, arg_addr
-                       |       EXT_CALL zend_jit_only_vars_by_reference, r0
-               |.else
-                       |       sub r4, 8
-                       |       PUSH_ZVAL_ADDR arg_addr, r0
-                       |       EXT_CALL zend_jit_only_vars_by_reference, r0
-                       |       add r4, 16
-               |.endif
+               |       LOAD_ZVAL_ADDR FCARG1a, arg_addr
+               |       EXT_CALL zend_jit_only_vars_by_reference, r0
                if (!zend_jit_check_exception(Dst)) {
                        return 0;
                }