[FFmpeg-devel] [PATCH 3/5] swresample/x86/rematrix: Remove obsolete MMX functions

Andreas Rheinhardt andreas.rheinhardt at outlook.com
Sun Jun 12 03:29:11 EEST 2022


x64 always has MMX, MMXEXT, SSE and SSE2 and this means
that some functions for MMX, MMXEXT and 3dnow are always
overridden by other functions (unless one e.g. explicitly
disables SSE2) for x64. So given that the only systems that
benefit from these functions are truely ancient 32bit x86s
they are removed.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>
---
 libswresample/x86/rematrix.asm    | 6 ------
 libswresample/x86/rematrix_init.c | 5 -----
 2 files changed, 11 deletions(-)

diff --git a/libswresample/x86/rematrix.asm b/libswresample/x86/rematrix.asm
index 7984b9a729..968010701e 100644
--- a/libswresample/x86/rematrix.asm
+++ b/libswresample/x86/rematrix.asm
@@ -223,12 +223,6 @@ mix_2_1_int16_u_int %+ SUFFIX:
 %endmacro
 
 
-INIT_MMX mmx
-MIX1_INT16 u
-MIX1_INT16 a
-MIX2_INT16 u
-MIX2_INT16 a
-
 INIT_XMM sse
 MIX2_FLT u
 MIX2_FLT a
diff --git a/libswresample/x86/rematrix_init.c b/libswresample/x86/rematrix_init.c
index 0608c74e7f..b6ed38bf67 100644
--- a/libswresample/x86/rematrix_init.c
+++ b/libswresample/x86/rematrix_init.c
@@ -28,7 +28,6 @@ mix_2_1_func_type ff_mix_2_1_a_## type ## _ ## simd;
 
 D(float, sse)
 D(float, avx)
-D(int16, mmx)
 D(int16, sse2)
 
 av_cold int swri_rematrix_init_x86(struct SwrContext *s){
@@ -43,10 +42,6 @@ av_cold int swri_rematrix_init_x86(struct SwrContext *s){
     s->mix_2_1_simd = NULL;
 
     if (s->midbuf.fmt == AV_SAMPLE_FMT_S16P){
-        if(EXTERNAL_MMX(mm_flags)) {
-            s->mix_1_1_simd = ff_mix_1_1_a_int16_mmx;
-            s->mix_2_1_simd = ff_mix_2_1_a_int16_mmx;
-        }
         if(EXTERNAL_SSE2(mm_flags)) {
             s->mix_1_1_simd = ff_mix_1_1_a_int16_sse2;
             s->mix_2_1_simd = ff_mix_2_1_a_int16_sse2;
-- 
2.34.1



More information about the ffmpeg-devel mailing list