[FFmpeg-devel] [PATCH] vp9/x86: rename ff_avg[48]_sse to ff_avg[48]_mmxext

James Almer jamrial at gmail.com
Sat Jan 18 06:29:22 CET 2014


pavgb is an sse integer instruction, so the mmxext flag is enough

Signed-off-by: James Almer <jamrial at gmail.com>
---
 libavcodec/x86/vp9dsp_init.c | 11 +++++++----
 libavcodec/x86/vp9mc.asm     |  2 +-
 2 files changed, 8 insertions(+), 5 deletions(-)

diff --git a/libavcodec/x86/vp9dsp_init.c b/libavcodec/x86/vp9dsp_init.c
index ab3396e..f6a2135 100644
--- a/libavcodec/x86/vp9dsp_init.c
+++ b/libavcodec/x86/vp9dsp_init.c
@@ -38,8 +38,8 @@ fpel_func(put,  8, mmx);
 fpel_func(put, 16, sse);
 fpel_func(put, 32, sse);
 fpel_func(put, 64, sse);
-fpel_func(avg,  4, sse);
-fpel_func(avg,  8, sse);
+fpel_func(avg,  4, mmxext);
+fpel_func(avg,  8, mmxext);
 fpel_func(avg, 16, sse2);
 fpel_func(avg, 32, sse2);
 fpel_func(avg, 64, sse2);
@@ -225,12 +225,15 @@ av_cold void ff_vp9dsp_init_x86(VP9DSPContext *dsp)
         init_fpel(3, 0,  8, put, mmx);
     }
 
+    if (EXTERNAL_MMXEXT(cpu_flags)) {
+        init_fpel(4, 1,  4, avg, mmxext);
+        init_fpel(3, 1,  8, avg, mmxext);
+    }
+
     if (EXTERNAL_SSE(cpu_flags)) {
         init_fpel(2, 0, 16, put, sse);
         init_fpel(1, 0, 32, put, sse);
         init_fpel(0, 0, 64, put, sse);
-        init_fpel(4, 1,  4, avg, sse);
-        init_fpel(3, 1,  8, avg, sse);
     }
 
     if (EXTERNAL_SSE2(cpu_flags)) {
diff --git a/libavcodec/x86/vp9mc.asm b/libavcodec/x86/vp9mc.asm
index 488ad70..154ab2b 100644
--- a/libavcodec/x86/vp9mc.asm
+++ b/libavcodec/x86/vp9mc.asm
@@ -381,7 +381,7 @@ cglobal %1%2, 5, 5, 4, dst, dstride, src, sstride, h
 INIT_MMX mmx
 fpel_fn put, 4,  strideq, strideq*2, stride3q, 4
 fpel_fn put, 8,  strideq, strideq*2, stride3q, 4
-INIT_MMX sse
+INIT_MMX mmxext
 fpel_fn avg, 4,  strideq, strideq*2, stride3q, 4
 fpel_fn avg, 8,  strideq, strideq*2, stride3q, 4
 INIT_XMM sse
-- 
1.8.3.2



More information about the ffmpeg-devel mailing list