Mercurial > libavcodec.hg
comparison ppc/fft_altivec.c @ 1879:dd63cb7e5080 libavcodec
fft_*() renamed into ff_fft_*() patch by (Gildas Bazin <gbazin at altern dot org>)
author | michael |
---|---|
date | Sat, 13 Mar 2004 21:43:24 +0000 |
parents | e8ff4783f188 |
children | ef2149182f1c |
comparison
equal
deleted
inserted
replaced
1878:838c18d1e7fc | 1879:dd63cb7e5080 |
---|---|
48 pim = (MUL16(are, bim) + MUL16(bre, aim));\ | 48 pim = (MUL16(are, bim) + MUL16(bre, aim));\ |
49 } | 49 } |
50 | 50 |
51 | 51 |
52 /** | 52 /** |
53 * Do a complex FFT with the parameters defined in fft_init(). The | 53 * Do a complex FFT with the parameters defined in ff_fft_init(). The |
54 * input data must be permuted before with s->revtab table. No | 54 * input data must be permuted before with s->revtab table. No |
55 * 1.0/sqrt(n) normalization is done. | 55 * 1.0/sqrt(n) normalization is done. |
56 * AltiVec-enabled | 56 * AltiVec-enabled |
57 * This code assumes that the 'z' pointer is 16 bytes-aligned | 57 * This code assumes that the 'z' pointer is 16 bytes-aligned |
58 * It also assumes all FFTComplex are 8 bytes-aligned pair of float | 58 * It also assumes all FFTComplex are 8 bytes-aligned pair of float |
59 * The code is exactly the same as the SSE version, except | 59 * The code is exactly the same as the SSE version, except |
60 * that successive MUL + ADD/SUB have been merged into | 60 * that successive MUL + ADD/SUB have been merged into |
61 * fused multiply-add ('vec_madd' in altivec) | 61 * fused multiply-add ('vec_madd' in altivec) |
62 */ | 62 */ |
63 void fft_calc_altivec(FFTContext *s, FFTComplex *z) | 63 void ff_fft_calc_altivec(FFTContext *s, FFTComplex *z) |
64 { | 64 { |
65 POWERPC_PERF_DECLARE(altivec_fft_num, s->nbits >= 6); | 65 POWERPC_PERF_DECLARE(altivec_fft_num, s->nbits >= 6); |
66 #ifdef ALTIVEC_USE_REFERENCE_C_CODE | 66 #ifdef ALTIVEC_USE_REFERENCE_C_CODE |
67 int ln = s->nbits; | 67 int ln = s->nbits; |
68 int j, np, np2; | 68 int j, np, np2; |