From ababec7b95d84e911ecda6056e8b8c90287a6e7a Mon Sep 17 00:00:00 2001 From: Mans Rullgard <mans@mansr.com> Date: Wed, 2 May 2012 15:09:54 +0100 Subject: [PATCH] arm: intreadwrite: disable inline asm for gcc 4.7 and later Starting with version 4.7, gcc properly supports unaligned memory accesses on ARM. Not using the inline asm with these compilers results in better code. Signed-off-by: Mans Rullgard <mans@mansr.com> --- libavutil/arm/intreadwrite.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libavutil/arm/intreadwrite.h b/libavutil/arm/intreadwrite.h index ec92d4d04bc..86b93c940c9 100644 --- a/libavutil/arm/intreadwrite.h +++ b/libavutil/arm/intreadwrite.h @@ -21,8 +21,9 @@ #include <stdint.h> #include "config.h" +#include "libavutil/attributes.h" -#if HAVE_FAST_UNALIGNED && HAVE_INLINE_ASM +#if HAVE_FAST_UNALIGNED && HAVE_INLINE_ASM && !AV_GCC_VERSION_AT_LEAST(4,7) #define AV_RN16 AV_RN16 static av_always_inline unsigned AV_RN16(const void *p) -- GitLab