[FFmpeg-cvslog] cheackasm/arm: remove NEON instructions from checkasm_checked_call_vfp

Janne Grunau git at videolan.org
Tue Jan 24 20:33:40 EET 2017


ffmpeg | branch: master | Janne Grunau <janne-libav at jannau.net> | Sun Jul 17 10:43:10 2016 +0200| [59aeed93e4e928b884be72b8c267ff6b2785ab66] | committer: Janne Grunau

cheackasm/arm: remove NEON instructions from checkasm_checked_call_vfp

Fixes AS error on non NEON builds introduced in 71a04721145. Also
set the fpu directly to vfp in checkasm.S to cause build errors on NEON
builds.

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=59aeed93e4e928b884be72b8c267ff6b2785ab66
---

 tests/checkasm/arm/checkasm.S | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

diff --git a/tests/checkasm/arm/checkasm.S b/tests/checkasm/arm/checkasm.S
index 5aa92c5..2768bb3 100644
--- a/tests/checkasm/arm/checkasm.S
+++ b/tests/checkasm/arm/checkasm.S
@@ -22,6 +22,12 @@
 
 #include "libavutil/arm/asm.S"
 
+/* override fpu so that NEON instructions are rejected */
+#if HAVE_VFP
+.fpu            vfp
+ELF     .eabi_attribute 10, 0           @ suppress Tag_FP_arch
+#endif
+
 const register_init, align=3
     .quad 0x21f86d66c8ca00ce
     .quad 0x75b6ba21077c48ad
@@ -85,9 +91,10 @@ function checkasm_checked_call_\variant, export=1
     movrel      r12, register_init
 .ifc \variant, vfp
 .macro check_reg_vfp, dreg, offset
-    vldr        d0,  [r12, #8 * (\offset)]
-    veor        d0,  d0,  \dreg
-    vmov        r2,  r3,  d0
+    ldrd        r2,  r3,  [r12, #8 * (\offset)]
+    vmov        r0,  lr,  \dreg
+    eor         r2,  r2,  r0
+    eor         r3,  r3,  lr
     orrs        r2,  r2,  r3
     bne         4f
 .endm



More information about the ffmpeg-cvslog mailing list