Lines Matching refs:st

35     kiss_fftr_cfg st = NULL;  in kiss_fftr_alloc()  local
48 st = (kiss_fftr_cfg) KISS_FFT_MALLOC (memneeded); in kiss_fftr_alloc()
51 st = (kiss_fftr_cfg) mem; in kiss_fftr_alloc()
54 if (!st) in kiss_fftr_alloc()
57 st->substate = (kiss_fft_cfg) (st + 1); /*just beyond kiss_fftr_state struct */ in kiss_fftr_alloc()
58 st->tmpbuf = (kiss_fft_cpx *) (((char *) st->substate) + subsize); in kiss_fftr_alloc()
59 st->super_twiddles = st->tmpbuf + nfft; in kiss_fftr_alloc()
60 kiss_fft_alloc(nfft, inverse_fft, st->substate, &subsize); in kiss_fftr_alloc()
67 kf_cexp2(st->super_twiddles+i, DIV32(SHL32(phase,16),nfft)); in kiss_fftr_alloc()
75 kf_cexp(st->super_twiddles+i, phase ); in kiss_fftr_alloc()
78 return st; in kiss_fftr_alloc()
81 void kiss_fftr(kiss_fftr_cfg st,const kiss_fft_scalar *timedata,kiss_fft_cpx *freqdata) in kiss_fftr() argument
87 if ( st->substate->inverse) { in kiss_fftr()
91 ncfft = st->substate->nfft; in kiss_fftr()
94 kiss_fft( st->substate , (const kiss_fft_cpx*)timedata, st->tmpbuf ); in kiss_fftr()
105 tdc.r = st->tmpbuf[0].r; in kiss_fftr()
106 tdc.i = st->tmpbuf[0].i; in kiss_fftr()
119 fpk = st->tmpbuf[k]; in kiss_fftr()
120 fpnk.r = st->tmpbuf[ncfft-k].r; in kiss_fftr()
121 fpnk.i = - st->tmpbuf[ncfft-k].i; in kiss_fftr()
127 C_MUL( tw , f2k , st->super_twiddles[k]); in kiss_fftr()
136 void kiss_fftri(kiss_fftr_cfg st,const kiss_fft_cpx *freqdata, kiss_fft_scalar *timedata) in kiss_fftri() argument
141 if (st->substate->inverse == 0) { in kiss_fftri()
145 ncfft = st->substate->nfft; in kiss_fftri()
147 st->tmpbuf[0].r = freqdata[0].r + freqdata[ncfft].r; in kiss_fftri()
148 st->tmpbuf[0].i = freqdata[0].r - freqdata[ncfft].r; in kiss_fftri()
161 C_MUL (fok, tmp, st->super_twiddles[k]); in kiss_fftri()
162 C_ADD (st->tmpbuf[k], fek, fok); in kiss_fftri()
163 C_SUB (st->tmpbuf[ncfft - k], fek, fok); in kiss_fftri()
165 st->tmpbuf[ncfft - k].i *= _mm_set1_ps(-1.0); in kiss_fftri()
167 st->tmpbuf[ncfft - k].i *= -1; in kiss_fftri()
170 kiss_fft (st->substate, st->tmpbuf, (kiss_fft_cpx *) timedata); in kiss_fftri()
173 void kiss_fftr2(kiss_fftr_cfg st,const kiss_fft_scalar *timedata,kiss_fft_scalar *freqdata) in kiss_fftr2() argument
180 if ( st->substate->inverse) { in kiss_fftr2()
184 ncfft = st->substate->nfft; in kiss_fftr2()
187 kiss_fft( st->substate , (const kiss_fft_cpx*)timedata, st->tmpbuf ); in kiss_fftr2()
198 tdc.r = st->tmpbuf[0].r; in kiss_fftr2()
199 tdc.i = st->tmpbuf[0].i; in kiss_fftr2()
237 f2k.r = SHR32(SUB32(EXTEND32(st->tmpbuf[k].r), EXTEND32(st->tmpbuf[ncfft-k].r)),1); in kiss_fftr2()
238 f2k.i = PSHR32(ADD32(EXTEND32(st->tmpbuf[k].i), EXTEND32(st->tmpbuf[ncfft-k].i)),1); in kiss_fftr2()
240 f1kr = SHL32(ADD32(EXTEND32(st->tmpbuf[k].r), EXTEND32(st->tmpbuf[ncfft-k].r)),13); in kiss_fftr2()
241 f1ki = SHL32(SUB32(EXTEND32(st->tmpbuf[k].i), EXTEND32(st->tmpbuf[ncfft-k].i)),13); in kiss_fftr2()
243 …twr = SHR32(SUB32(MULT16_16(f2k.r,st->super_twiddles[k].r),MULT16_16(f2k.i,st->super_twiddles[k].i… in kiss_fftr2()
244 …twi = SHR32(ADD32(MULT16_16(f2k.i,st->super_twiddles[k].r),MULT16_16(f2k.r,st->super_twiddles[k].i… in kiss_fftr2()
261 void kiss_fftri2(kiss_fftr_cfg st,const kiss_fft_scalar *freqdata,kiss_fft_scalar *timedata) in kiss_fftri2() argument
266 if (st->substate->inverse == 0) { in kiss_fftri2()
270 ncfft = st->substate->nfft; in kiss_fftri2()
272 st->tmpbuf[0].r = freqdata[0] + freqdata[2*ncfft-1]; in kiss_fftri2()
273 st->tmpbuf[0].i = freqdata[0] - freqdata[2*ncfft-1]; in kiss_fftri2()
287 C_MUL (fok, tmp, st->super_twiddles[k]); in kiss_fftri2()
288 C_ADD (st->tmpbuf[k], fek, fok); in kiss_fftri2()
289 C_SUB (st->tmpbuf[ncfft - k], fek, fok); in kiss_fftri2()
291 st->tmpbuf[ncfft - k].i *= _mm_set1_ps(-1.0); in kiss_fftri2()
293 st->tmpbuf[ncfft - k].i *= -1; in kiss_fftri2()
296 kiss_fft (st->substate, st->tmpbuf, (kiss_fft_cpx *) timedata); in kiss_fftri2()