mirror of
https://github.com/mborgerding/kissfft.git
synced 2025-05-27 21:20:27 -04:00
about to make some changes -- just wanted a checkpoint
This commit is contained in:
parent
2ae7e0f1f2
commit
f609401471
49
kiss_fft.c
49
kiss_fft.c
@ -95,7 +95,7 @@ void fft4work(
|
|||||||
kiss_fft_cpx * Fout1;
|
kiss_fft_cpx * Fout1;
|
||||||
kiss_fft_cpx * Fout2;
|
kiss_fft_cpx * Fout2;
|
||||||
kiss_fft_cpx * Fout3;
|
kiss_fft_cpx * Fout3;
|
||||||
int m,q,u,k;
|
int m,q,u;
|
||||||
kiss_fft_cpx t;
|
kiss_fft_cpx t;
|
||||||
kiss_fft_cpx * scratch = st->scratch;
|
kiss_fft_cpx * scratch = st->scratch;
|
||||||
kiss_fft_cpx * twiddles = st->twiddles;
|
kiss_fft_cpx * twiddles = st->twiddles;
|
||||||
@ -127,34 +127,31 @@ void fft4work(
|
|||||||
scratch[2]= *Fout2;
|
scratch[2]= *Fout2;
|
||||||
scratch[3]= *Fout3;
|
scratch[3]= *Fout3;
|
||||||
|
|
||||||
k=u;
|
*Fout1 = scratch[0];
|
||||||
|
*Fout2 = scratch[0];
|
||||||
|
*Fout3 = scratch[0];
|
||||||
|
|
||||||
*Fout = scratch[0];
|
for (q=1;q<4;++q ) {
|
||||||
*Fout1 = scratch[0];
|
twidx = (fstride * (u+0*m) * q)%Norig;
|
||||||
*Fout2 = scratch[0];
|
C_MUL(t,scratch[q] , twiddles[twidx] );
|
||||||
*Fout3 = scratch[0];
|
C_ADDTO(*Fout,t);
|
||||||
|
|
||||||
for (q=1;q<4;++q ) {
|
twidx = (fstride * (u+1*m) * q)%Norig;
|
||||||
twidx = (fstride * (u+0*m) * q)%Norig;
|
C_MUL(t,scratch[q] , twiddles[twidx] );
|
||||||
C_MUL(t,scratch[q] , twiddles[twidx] );
|
C_ADDTO(*Fout1,t);
|
||||||
C_ADDTO(*Fout,t);
|
|
||||||
|
twidx = (fstride * (u+2*m) * q)%Norig;
|
||||||
|
C_MUL(t,scratch[q] , twiddles[twidx] );
|
||||||
|
C_ADDTO(*Fout2,t);
|
||||||
|
|
||||||
twidx = (fstride * (u+1*m) * q)%Norig;
|
twidx = (fstride * (u+3*m) * q)%Norig;
|
||||||
C_MUL(t,scratch[q] , twiddles[twidx] );
|
C_MUL(t,scratch[q] , twiddles[twidx] );
|
||||||
C_ADDTO(*Fout1,t);
|
C_ADDTO(*Fout3,t);
|
||||||
|
}
|
||||||
twidx = (fstride * (u+2*m) * q)%Norig;
|
++Fout;
|
||||||
C_MUL(t,scratch[q] , twiddles[twidx] );
|
++Fout1;
|
||||||
C_ADDTO(*Fout2,t);
|
++Fout2;
|
||||||
|
++Fout3;
|
||||||
twidx = (fstride * (u+3*m) * q)%Norig;
|
|
||||||
C_MUL(t,scratch[q] , twiddles[twidx] );
|
|
||||||
C_ADDTO(*Fout3,t);
|
|
||||||
}
|
|
||||||
++Fout;
|
|
||||||
++Fout1;
|
|
||||||
++Fout2;
|
|
||||||
++Fout3;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// the heart of the fft
|
// the heart of the fft
|
||||||
|
Loading…
Reference in New Issue
Block a user