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; |
