summaryrefslogtreecommitdiff
path: root/libavcodec/x86/vorbisdsp.asm
diff options
context:
space:
mode:
authorAndreas Rheinhardt <andreas.rheinhardt@outlook.com>2022-06-11 03:31:25 +0200
committerAndreas Rheinhardt <andreas.rheinhardt@outlook.com>2022-06-22 13:37:10 +0200
commitf76477d4d78b01ae0170d3e7d8ef77ac3105a80c (patch)
tree50a7206e51e387cc46845844427114d6c0895793 /libavcodec/x86/vorbisdsp.asm
parentec735579814b6b73e17da601ff011a918c49e40f (diff)
downloadffmpeg-f76477d4d78b01ae0170d3e7d8ef77ac3105a80c.tar.gz
avcodec/x86/vorbisdsp: Remove obsolete 3dnow functions
x64 always has MMX, MMXEXT, SSE and SSE2 and this means that some functions for MMX, MMXEXT, SSE and 3dnow are always overridden by other functions (unless one e.g. explicitly disables SSE2). So given that the only systems which benefit from the 3dnow implementations are truely ancient 32bit AMD x86s they are removed. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
Diffstat (limited to 'libavcodec/x86/vorbisdsp.asm')
-rw-r--r--libavcodec/x86/vorbisdsp.asm29
1 files changed, 0 insertions, 29 deletions
diff --git a/libavcodec/x86/vorbisdsp.asm b/libavcodec/x86/vorbisdsp.asm
index d952296716..9afe2eb352 100644
--- a/libavcodec/x86/vorbisdsp.asm
+++ b/libavcodec/x86/vorbisdsp.asm
@@ -27,35 +27,6 @@ pdw_80000000: times 4 dd 0x80000000
SECTION .text
-%if ARCH_X86_32
-INIT_MMX 3dnow
-cglobal vorbis_inverse_coupling, 3, 3, 6, mag, ang, block_size
- pxor m7, m7
- lea magq, [magq+block_sizeq*4]
- lea angq, [angq+block_sizeq*4]
- neg block_sizeq
-.loop:
- mova m0, [magq+block_sizeq*4]
- mova m1, [angq+block_sizeq*4]
- mova m2, m0
- mova m3, m1
- pfcmpge m2, m7 ; m <= 0.0
- pfcmpge m3, m7 ; a <= 0.0
- pslld m2, 31 ; keep only the sign bit
- pxor m1, m2
- mova m4, m3
- pand m3, m1
- pandn m4, m1
- pfadd m3, m0 ; a = m + ((a < 0) & (a ^ sign(m)))
- pfsub m0, m4 ; m = m + ((a > 0) & (a ^ sign(m)))
- mova [angq+block_sizeq*4], m3
- mova [magq+block_sizeq*4], m0
- add block_sizeq, 2
- jl .loop
- femms
- RET
-%endif
-
INIT_XMM sse
cglobal vorbis_inverse_coupling, 3, 3, 6, mag, ang, block_size
mova m5, [pdw_80000000]