ref: 4e251db1ec60f73166db2cd5e9ef582de9a46f86
parent: ca38f0f6200fdaaccdda3969794afe16328c4ca8
author: Matthieu Bouron <matthieu.bouron@gmail.com>
date: Tue May 12 09:57:31 EDT 2020
checkasm: arm64: Avoid overwriting the v0/q0/d0/s0 register If functions return a float value, this value is stored in this register.
--- a/tests/checkasm/arm/checkasm_64.S
+++ b/tests/checkasm/arm/checkasm_64.S
@@ -155,10 +155,10 @@
movi v3.8h, #0
.macro check_reg_neon reg1, reg2
- ldr q0, [x9], #16
- uzp1 v1.2d, v\reg1\().2d, v\reg2\().2d
- eor v0.16b, v0.16b, v1.16b
- orr v3.16b, v3.16b, v0.16b
+ ldr q1, [x9], #16
+ uzp1 v2.2d, v\reg1\().2d, v\reg2\().2d
+ eor v1.16b, v1.16b, v2.16b
+ orr v3.16b, v3.16b, v1.16b
.endm
check_reg_neon 8, 9
check_reg_neon 10, 11