mirror of
https://github.com/mborgerding/kissfft.git
synced 2026-05-25 13:08:42 -04:00
40 lines
808 B
C
40 lines
808 B
C
#include <kiss_fftnd.h>
|
|
|
|
static void test1(void)
|
|
{
|
|
int is_inverse = 1;
|
|
int n[2] = {256,256};
|
|
size_t nbytes = sizeof(kiss_fft_cpx)*n[0]*n[1];
|
|
|
|
#ifdef HAVE_LSX
|
|
kiss_fft_cpx * inbuf = NULL;
|
|
kiss_fft_cpx * outbuf = NULL;
|
|
if (posix_memalign((void**)&inbuf, 16, nbytes) ||
|
|
posix_memalign((void**)&outbuf, 16, nbytes))
|
|
return;
|
|
#else
|
|
kiss_fft_cpx * inbuf = _mm_malloc(nbytes,16);
|
|
kiss_fft_cpx * outbuf = _mm_malloc(nbytes,16);
|
|
#endif
|
|
memset(inbuf,0,nbytes);
|
|
memset(outbuf,0,nbytes);
|
|
|
|
kiss_fftnd_cfg cfg = kiss_fftnd_alloc(n,2,is_inverse,0,0);
|
|
kiss_fftnd(cfg,inbuf,outbuf);
|
|
kiss_fft_free(cfg);
|
|
|
|
#ifdef HAVE_LSX
|
|
free(inbuf);
|
|
free(outbuf);
|
|
#else
|
|
_mm_free(inbuf);
|
|
_mm_free(outbuf);
|
|
#endif
|
|
}
|
|
|
|
int main(void)
|
|
{
|
|
test1();
|
|
return 0;
|
|
}
|