Module: libav
Branch: master
Commit: 6308729e6885947e04291d5eca7e740fff50fff1

Author:    Mans Rullgard <[email protected]>
Committer: Mans Rullgard <[email protected]>
Date:      Sun Oct  2 23:38:32 2011 +0100

ARM: check for inline asm 'y' operand modifier support

The inline asm added in bf5d46d uses the 'y' modifier which
is only supported from gcc 4.5.  This check allows building
with older compilers.

Signed-off-by: Mans Rullgard <[email protected]>

---

 configure            |    3 +++
 libavcodec/arm/dca.h |    2 +-
 2 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/configure b/configure
index 32f1a26..22735e7 100755
--- a/configure
+++ b/configure
@@ -1042,6 +1042,7 @@ HAVE_LIST="
     alsa_asoundlib_h
     altivec_h
     arpa_inet_h
+    asm_mod_y
     attribute_may_alias
     attribute_packed
     bswap
@@ -2644,6 +2645,8 @@ EOF
     enabled neon    && check_asm neon    '"vadd.i16 q0, q0, q0"'
     enabled vfpv3   && check_asm vfpv3   '"vmov.f32 s0, #1.0"'
 
+    check_asm asm_mod_y '"vmul.i32 d0, d0, %y0" :: "x"(0)'
+
     enabled_all armv6t2 shared !pic && enable_pic
 
 elif enabled mips; then
diff --git a/libavcodec/arm/dca.h b/libavcodec/arm/dca.h
index c4c024a..38c8d1f 100644
--- a/libavcodec/arm/dca.h
+++ b/libavcodec/arm/dca.h
@@ -24,7 +24,7 @@
 #include <stdint.h>
 #include "config.h"
 
-#if HAVE_NEON && HAVE_INLINE_ASM
+#if HAVE_NEON && HAVE_INLINE_ASM && HAVE_ASM_MOD_Y
 
 #define int8x8_fmul_int32 int8x8_fmul_int32
 static inline void int8x8_fmul_int32(float *dst, const int8_t *src, int scale)

_______________________________________________
libav-commits mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-commits

Reply via email to