avutil: Ensure that emms_c is always defined, even on non-x86
authorDiego Biurrun <diego@biurrun.de>
Thu, 14 Feb 2013 18:07:21 +0000 (19:07 +0100)
committerDiego Biurrun <diego@biurrun.de>
Thu, 14 Feb 2013 18:29:04 +0000 (19:29 +0100)
libavutil/internal.h
libavutil/x86/emms.h

index 4bb6b05..3cf55f6 100644 (file)
 #   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))
index 56068e5..2ed9e5d 100644 (file)
@@ -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 */