summaryrefslogtreecommitdiff
path: root/libavcodec/fft.c
diff options
context:
space:
mode:
authorLoren Merritt <lorenm@u.washington.edu>2008-07-13 15:03:58 +0000
committerLoren Merritt <lorenm@u.washington.edu>2008-07-13 15:03:58 +0000
commitb9fa32082c71013e90eab9e9997967d2939cf4a6 (patch)
tree83edd135988c73a75b017fbd12396e156de5e0a4 /libavcodec/fft.c
parenteb2cd99c73df74cba8ce0173f9ee2b70313adaa6 (diff)
exploit mdct symmetry
2% faster vorbis on conroe, k8. 7% on celeron. Originally committed as revision 14207 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/fft.c')
-rw-r--r--libavcodec/fft.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/libavcodec/fft.c b/libavcodec/fft.c
index 7ef5d37c73..47e9e062f4 100644
--- a/libavcodec/fft.c
+++ b/libavcodec/fft.c
@@ -59,6 +59,7 @@ int ff_fft_init(FFTContext *s, int nbits, int inverse)
}
s->fft_calc = ff_fft_calc_c;
s->imdct_calc = ff_imdct_calc;
+ s->imdct_half = ff_imdct_half;
s->exptab1 = NULL;
#ifdef HAVE_MMX
@@ -67,6 +68,7 @@ int ff_fft_init(FFTContext *s, int nbits, int inverse)
if (has_vectors & MM_3DNOWEXT) {
/* 3DNowEx for K7/K8 */
s->imdct_calc = ff_imdct_calc_3dn2;
+ s->imdct_half = ff_imdct_half_3dn2;
s->fft_calc = ff_fft_calc_3dn2;
} else if (has_vectors & MM_3DNOW) {
/* 3DNow! for K6-2/3 */
@@ -74,6 +76,7 @@ int ff_fft_init(FFTContext *s, int nbits, int inverse)
} else if (has_vectors & MM_SSE) {
/* SSE for P3/P4 */
s->imdct_calc = ff_imdct_calc_sse;
+ s->imdct_half = ff_imdct_half_sse;
s->fft_calc = ff_fft_calc_sse;
} else {
shuffle = 0;