summaryrefslogtreecommitdiff
path: root/libavcodec/x86
diff options
context:
space:
mode:
Diffstat (limited to 'libavcodec/x86')
-rw-r--r--libavcodec/x86/fft_init.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/libavcodec/x86/fft_init.c b/libavcodec/x86/fft_init.c
index 5c0273de9d..2234d76f9d 100644
--- a/libavcodec/x86/fft_init.c
+++ b/libavcodec/x86/fft_init.c
@@ -17,9 +17,11 @@
*/
#include "config.h"
+
#include "libavutil/attributes.h"
#include "libavutil/cpu.h"
#include "libavutil/x86/cpu.h"
+
#include "fft.h"
av_cold void ff_fft_init_x86(FFTContext *s)
@@ -28,28 +30,27 @@ av_cold void ff_fft_init_x86(FFTContext *s)
#if ARCH_X86_32
if (EXTERNAL_AMD3DNOW(cpu_flags)) {
- /* 3DNow! for K6-2/3 */
s->imdct_calc = ff_imdct_calc_3dnow;
s->imdct_half = ff_imdct_half_3dnow;
s->fft_calc = ff_fft_calc_3dnow;
}
+
if (EXTERNAL_AMD3DNOWEXT(cpu_flags)) {
- /* 3DNowEx for K7 */
s->imdct_calc = ff_imdct_calc_3dnowext;
s->imdct_half = ff_imdct_half_3dnowext;
s->fft_calc = ff_fft_calc_3dnowext;
}
-#endif
+#endif /* ARCH_X86_32 */
+
if (EXTERNAL_SSE(cpu_flags)) {
- /* SSE for P3/P4/K8 */
s->imdct_calc = ff_imdct_calc_sse;
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;
}
+
if (EXTERNAL_AVX_FAST(cpu_flags) && s->nbits >= 5) {
- /* AVX for SB */
s->imdct_half = ff_imdct_half_avx;
s->fft_calc = ff_fft_calc_avx;
s->fft_permutation = FF_FFT_PERM_AVX;