comparison fft.c @ 3591:088be7d7c4fd libavcodec

use ff_fft_calc_3dn2 instead of sse on a K8. 1.5% faster vorbis.
author lorenm
date Sat, 19 Aug 2006 02:42:20 +0000
parents a3d97c60ea07
children 2ec498208c6a
comparison
equal deleted inserted replaced
3590:a3d97c60ea07 3591:088be7d7c4fd
66 if (has_vectors) { 66 if (has_vectors) {
67 #if defined(HAVE_MMX) 67 #if defined(HAVE_MMX)
68 if (has_vectors & MM_3DNOWEXT) 68 if (has_vectors & MM_3DNOWEXT)
69 s->imdct_calc = ff_imdct_calc_3dn2; 69 s->imdct_calc = ff_imdct_calc_3dn2;
70 if (has_vectors & MM_3DNOWEXT) 70 if (has_vectors & MM_3DNOWEXT)
71 /* 3DNowEx for Athlon(XP) */ 71 /* 3DNowEx for K7/K8 */
72 s->fft_calc = ff_fft_calc_3dn2; 72 s->fft_calc = ff_fft_calc_3dn2;
73 else if (has_vectors & MM_3DNOW) 73 else if (has_vectors & MM_3DNOW)
74 /* 3DNow! for K6-2/3 */ 74 /* 3DNow! for K6-2/3 */
75 s->fft_calc = ff_fft_calc_3dn; 75 s->fft_calc = ff_fft_calc_3dn;
76 if (has_vectors & MM_SSE2) 76 else if (has_vectors & MM_SSE)
77 /* SSE for P4/K8 */ 77 /* SSE for P3/P4 */
78 s->fft_calc = ff_fft_calc_sse;
79 else if ((has_vectors & MM_SSE) &&
80 s->fft_calc == ff_fft_calc_c)
81 /* SSE for P3 */
82 s->fft_calc = ff_fft_calc_sse; 78 s->fft_calc = ff_fft_calc_sse;
83 #else /* HAVE_MMX */ 79 #else /* HAVE_MMX */
84 if (has_vectors & MM_ALTIVEC) 80 if (has_vectors & MM_ALTIVEC)
85 s->fft_calc = ff_fft_calc_altivec; 81 s->fft_calc = ff_fft_calc_altivec;
86 #endif 82 #endif