aboutsummaryrefslogtreecommitdiff
path: root/libavutil
diff options
context:
space:
mode:
authorDiego Biurrun2013-02-14 19:07:21 +0100
committerDiego Biurrun2013-02-14 19:29:04 +0100
commit4db96649ca700db563d9da4ebe70bf9fc4c7a6ba (patch)
tree0fb16a818c09b2800d24fe546b0b8588b6fae41b /libavutil
parent759a3a2177830f102a37099456ded6905adb55ce (diff)
avutil: Ensure that emms_c is always defined, even on non-x86
Diffstat (limited to 'libavutil')
-rw-r--r--libavutil/internal.h4
-rw-r--r--libavutil/x86/emms.h5
2 files changed, 6 insertions, 3 deletions
diff --git a/libavutil/internal.h b/libavutil/internal.h
index 4bb6b05d52..3cf55f6398 100644
--- a/libavutil/internal.h
+++ b/libavutil/internal.h
@@ -43,6 +43,10 @@
# include "x86/emms.h"
#endif
+#ifndef emms_c
+# define emms_c()
+#endif
+
#ifndef attribute_align_arg
#if ARCH_X86_32 && AV_GCC_VERSION_AT_LEAST(4,2)
# define attribute_align_arg __attribute__((force_align_arg_pointer))
diff --git a/libavutil/x86/emms.h b/libavutil/x86/emms.h
index 56068e581f..2ed9e5d09d 100644
--- a/libavutil/x86/emms.h
+++ b/libavutil/x86/emms.h
@@ -25,6 +25,7 @@
void avpriv_emms_yasm(void);
#if HAVE_MMX_INLINE
+# define emms_c emms_c
/**
* Empty mmx state.
* this must be called between any dsp function and float/double code.
@@ -37,10 +38,8 @@ static av_always_inline void emms_c(void)
#elif HAVE_MMX && HAVE_MM_EMPTY
# include <mmintrin.h>
# define emms_c _mm_empty
-#elif HAVE_MMX && HAVE_YASM
+#elif HAVE_MMX_EXTERNAL
# define emms_c avpriv_emms_yasm
-#else
-# define emms_c()
#endif /* HAVE_MMX_INLINE */
#endif /* AVUTIL_X86_EMMS_H */