[FFmpeg-cvslog] Move emms_c() from libavcodec to libavutil.

Ronald S. Bultje git at videolan.org
Wed May 25 06:37:12 CEST 2011


ffmpeg | branch: master | Ronald S. Bultje <rsbultje at gmail.com> | Tue May 24 13:04:38 2011 -0400| [e9735572113ab903b92cc0a7931eb894e7177f6e] | committer: Ronald S. Bultje

Move emms_c() from libavcodec to libavutil.

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

 libavcodec/dsputil.h |   20 +-------------------
 libavutil/internal.h |   14 ++++++++++++++
 2 files changed, 15 insertions(+), 19 deletions(-)

diff --git a/libavcodec/dsputil.h b/libavcodec/dsputil.h
index 78d2152..74230ca 100644
--- a/libavcodec/dsputil.h
+++ b/libavcodec/dsputil.h
@@ -630,13 +630,6 @@ static inline int get_penalty_factor(int lambda, int lambda2, int type){
     }
 }
 
-/**
- * Empty mmx state.
- * this must be called between any dsp function and float/double code.
- * for example sin(); dsp->idct_put(); emms_c(); cos()
- */
-#define emms_c()
-
 void dsputil_init_alpha(DSPContext* c, AVCodecContext *avctx);
 void dsputil_init_arm(DSPContext* c, AVCodecContext *avctx);
 void dsputil_init_bfin(DSPContext* c, AVCodecContext *avctx);
@@ -654,18 +647,7 @@ void ff_intrax8dsp_init(DSPContext* c, AVCodecContext *avctx);
 void ff_mlp_init(DSPContext* c, AVCodecContext *avctx);
 void ff_mlp_init_x86(DSPContext* c, AVCodecContext *avctx);
 
-#if HAVE_MMX
-
-#undef emms_c
-
-static inline void emms(void)
-{
-    __asm__ volatile ("emms;":::"memory");
-}
-
-#define emms_c() emms()
-
-#elif ARCH_ARM
+#if ARCH_ARM
 
 #if HAVE_NEON
 #   define STRIDE_ALIGN 16
diff --git a/libavutil/internal.h b/libavutil/internal.h
index e890ae7..51e449d 100644
--- a/libavutil/internal.h
+++ b/libavutil/internal.h
@@ -223,4 +223,18 @@
 #   define ONLY_IF_THREADS_ENABLED(x) NULL
 #endif
 
+#if HAVE_MMX
+/**
+ * Empty mmx state.
+ * this must be called between any dsp function and float/double code.
+ * for example sin(); dsp->idct_put(); emms_c(); cos()
+ */
+static av_always_inline void emms_c(void)
+{
+    __asm__ volatile ("emms" ::: "memory");
+}
+#else /* HAVE_MMX */
+#define emms_c()
+#endif /* HAVE_MMX */
+
 #endif /* AVUTIL_INTERNAL_H */



More information about the ffmpeg-cvslog mailing list