[FFmpeg-cvslog] avutil/x86util: Fix broken pre-SSE4.1 PMINSD emulation
Henrik Gramner
git at videolan.org
Sun Mar 17 15:22:13 EET 2024
ffmpeg | branch: master | Henrik Gramner <henrik at gramner.com> | Sun Mar 17 11:52:57 2024 +0100| [c3d3f0e697f27a14898e74db4fcffa5b35bcaf94] | committer: Henrik Gramner
avutil/x86util: Fix broken pre-SSE4.1 PMINSD emulation
Fixes yadif-16 which allows FATE to pass.
Broken since 2904db90458a1253e4aea6844ba9a59ac11923b6 (2017).
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=c3d3f0e697f27a14898e74db4fcffa5b35bcaf94
---
libavutil/x86/x86util.asm | 4 ----
libswscale/x86/scale.asm | 5 -----
2 files changed, 9 deletions(-)
diff --git a/libavutil/x86/x86util.asm b/libavutil/x86/x86util.asm
index d7cd996842..836f6afcb8 100644
--- a/libavutil/x86/x86util.asm
+++ b/libavutil/x86/x86util.asm
@@ -802,10 +802,6 @@
%macro PMINSD 3 ; dst, src, tmp/unused
%if cpuflag(sse4)
pminsd %1, %2
-%elif cpuflag(sse2)
- cvtdq2ps %1, %1
- minps %1, %2
- cvtps2dq %1, %1
%else
mova %3, %2
pcmpgtd %3, %1
diff --git a/libswscale/x86/scale.asm b/libswscale/x86/scale.asm
index 2e14c8c023..baf03d52fa 100644
--- a/libswscale/x86/scale.asm
+++ b/libswscale/x86/scale.asm
@@ -24,7 +24,6 @@
SECTION_RODATA
max_19bit_int: times 4 dd 0x7ffff
-max_19bit_flt: times 4 dd 524287.0
minshort: times 8 dw 0x8000
unicoeff: times 4 dd 0x20000000
@@ -61,11 +60,7 @@ cglobal hscale%1to%2_%4, %5, 10, %6, pos0, dst, w, srcmem, filter, fltpos, fltsi
%define mov32 mov
%endif ; x86-64
%if %2 == 19
-%if cpuflag(sse4)
mova m2, [max_19bit_int]
-%else ; ssse3/sse2
- mova m2, [max_19bit_flt]
-%endif ; sse2/ssse3/sse4
%endif ; %2 == 19
%if %1 == 16
mova m6, [minshort]
More information about the ffmpeg-cvslog
mailing list