summaryrefslogtreecommitdiff
path: root/libavcodec/x86/fft.c
diff options
context:
space:
mode:
authorLoren Merritt <lorenm@u.washington.edu>2011-02-12 11:48:16 +0000
committerJanne Grunau <janne-ffmpeg@jannau.net>2011-02-13 15:36:39 +0100
commite6b1ed693ae4098e6b9eabf938fc31ec0b09b120 (patch)
tree8afa645b29c35cde5a286b29cbab58fbbed4c1ed /libavcodec/x86/fft.c
parent3c33c0e26325f189dbf7f212f8e9042feb83bfb0 (diff)
FFT: factor a shuffle out of the inner loop and merge it into fft_permute.
6% faster SSE FFT on Conroe, 2.5% on Penryn. Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
Diffstat (limited to 'libavcodec/x86/fft.c')
-rw-r--r--libavcodec/x86/fft.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/libavcodec/x86/fft.c b/libavcodec/x86/fft.c
index 771b1e6649..5ca341d5e4 100644
--- a/libavcodec/x86/fft.c
+++ b/libavcodec/x86/fft.c
@@ -30,6 +30,7 @@ av_cold void ff_fft_init_mmx(FFTContext *s)
s->imdct_half = ff_imdct_half_sse;
s->fft_permute = ff_fft_permute_sse;
s->fft_calc = ff_fft_calc_sse;
+ s->fft_permutation = FF_FFT_PERM_SWAP_LSBS;
} else if (has_vectors & AV_CPU_FLAG_3DNOWEXT && HAVE_AMD3DNOWEXT) {
/* 3DNowEx for K7 */
s->imdct_calc = ff_imdct_calc_3dn2;