Mercurial > hg > peckfft
comparison peck_fft.c @ 7:707be088ccc3
build
author | Peter Meerwald <p.meerwald@bct-electronic.com> |
---|---|
date | Mon, 19 Sep 2011 17:39:53 +0200 |
parents | fee54f1878f7 |
children | 8726585681f6 |
comparison
equal
deleted
inserted
replaced
6:fee54f1878f7 | 7:707be088ccc3 |
---|---|
22 peck_fft_cpx *Fout, | 22 peck_fft_cpx *Fout, |
23 const size_t fstride, | 23 const size_t fstride, |
24 const peck_fft_cfg st, | 24 const peck_fft_cfg st, |
25 int m) { | 25 int m) { |
26 | 26 |
27 //printf("kf_bfly2\n"); | 27 // printf("kf_bfly2, %d\n", fstride); |
28 | 28 |
29 peck_fft_cpx *Fout2; | 29 peck_fft_cpx *Fout2; |
30 peck_fft_cpx *tw1 = st->twiddles; | 30 peck_fft_cpx *tw1 = st->twiddles; |
31 peck_fft_cpx t; | 31 peck_fft_cpx t; |
32 Fout2 = Fout + m; | 32 Fout2 = Fout + m; |
50 peck_fft_cpx scratch[6]; | 50 peck_fft_cpx scratch[6]; |
51 size_t k=m; | 51 size_t k=m; |
52 const size_t m2=2*m; | 52 const size_t m2=2*m; |
53 const size_t m3=3*m; | 53 const size_t m3=3*m; |
54 | 54 |
55 //printf("kf_bfly4\n"); | 55 // printf("kf_bfly4, %d\n", fstride); |
56 | 56 |
57 tw3 = tw2 = tw1 = st->twiddles; | 57 tw3 = tw2 = tw1 = st->twiddles; |
58 | 58 |
59 do { | 59 do { |
60 C_MUL(scratch[0], Fout[m], *tw1); | 60 C_MUL(scratch[0], Fout[m], *tw1); |
240 peck_fft_cpx *Fout_beg = Fout; | 240 peck_fft_cpx *Fout_beg = Fout; |
241 const int p = *factors++; /* the radix */ | 241 const int p = *factors++; /* the radix */ |
242 const int m = *factors++; /* stage's FFT length / p */ | 242 const int m = *factors++; /* stage's FFT length / p */ |
243 const peck_fft_cpx *Fout_end = Fout + p*m; | 243 const peck_fft_cpx *Fout_end = Fout + p*m; |
244 | 244 |
245 // printf("kf_work\n"); | 245 // printf("kf_work, %d\n", fstride); |
246 | 246 |
247 if (m == 1) { | 247 if (m == 1) { |
248 do { | 248 do { |
249 *Fout = *f; | 249 *Fout = *f; |
250 f += fstride; | 250 f += fstride; |