mirror of
https://github.com/mborgerding/kissfft.git
synced 2026-05-28 18:09:48 -04:00
loongarch: add lsx simd opt
This commit is contained in:
@@ -6,16 +6,30 @@ static void test1(void)
|
||||
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)
|
||||
|
||||
Reference in New Issue
Block a user