aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/x86/ac3dsp.asm
diff options
context:
space:
mode:
authorDiego Biurrun <diego@biurrun.de>2013-04-26 16:48:39 +0200
committerDiego Biurrun <diego@biurrun.de>2013-04-26 21:06:52 +0200
commit7c00e9d8aed8511c44281d7b05562578a3fcd4c8 (patch)
tree13e5870e9c654801cb5b932154e72e71f2419ca4 /libavcodec/x86/ac3dsp.asm
parent74685f6783e77f2545d48bd2124945ad5be39982 (diff)
downloadffmpeg-7c00e9d8aed8511c44281d7b05562578a3fcd4c8.tar.gz
x86: ac3dsp: Remove 3dnow version of ff_ac3_extract_exponents
The function requires increasing the fuzz factor for the ac3/eac3 encode tests and even so makes fate fail. It only provides a slight encoding speedup for legacy CPUs that do not support SS2. Thus its benefit is not worth the trouble it creates and fixing it would be a waste of time.
Diffstat (limited to 'libavcodec/x86/ac3dsp.asm')
-rw-r--r--libavcodec/x86/ac3dsp.asm36
1 files changed, 0 insertions, 36 deletions
diff --git a/libavcodec/x86/ac3dsp.asm b/libavcodec/x86/ac3dsp.asm
index b4986ad50f..b43231855c 100644
--- a/libavcodec/x86/ac3dsp.asm
+++ b/libavcodec/x86/ac3dsp.asm
@@ -379,42 +379,6 @@ cglobal ac3_compute_mantissa_size, 1, 2, 4, mant_cnt, sum
%endif
%endmacro
-%if HAVE_AMD3DNOW_EXTERNAL
-INIT_MMX 3dnow
-cglobal ac3_extract_exponents, 3, 3, 0, exp, coef, len
- add expq, lenq
- lea coefq, [coefq+4*lenq]
- neg lenq
- movq m3, [pd_1]
- movq m4, [pd_151]
-.loop:
- movq m0, [coefq+4*lenq ]
- movq m1, [coefq+4*lenq+8]
- PABSD m0, m2
- PABSD m1, m2
- pslld m0, 1
- por m0, m3
- pi2fd m2, m0
- psrld m2, 23
- movq m0, m4
- psubd m0, m2
- pslld m1, 1
- por m1, m3
- pi2fd m2, m1
- psrld m2, 23
- movq m1, m4
- psubd m1, m2
- packssdw m0, m0
- packuswb m0, m0
- packssdw m1, m1
- packuswb m1, m1
- punpcklwd m0, m1
- movd [expq+lenq], m0
- add lenq, 4
- jl .loop
- REP_RET
-%endif
-
%macro AC3_EXTRACT_EXPONENTS 0
cglobal ac3_extract_exponents, 3, 3, 4, exp, coef, len
add expq, lenq