shithub: dav1d

Download patch

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