summaryrefslogtreecommitdiffstats
path: root/src/ffts.c
diff options
context:
space:
mode:
authorAnthony Blake <anthonix@me.com>2013-04-03 15:21:12 +1300
committerAnthony Blake <anthonix@me.com>2013-04-03 15:21:12 +1300
commit7f43121489310f9c5131a9e20f5aff532b66ad6b (patch)
tree04965f9f60a3ed46f2e8557d035c78c9f4e23cda /src/ffts.c
parent17aaf9d6216cd7c608824a2b4fd0e735004e612e (diff)
downloadffts-7f43121489310f9c5131a9e20f5aff532b66ad6b.zip
ffts-7f43121489310f9c5131a9e20f5aff532b66ad6b.tar.gz
VFP support
Diffstat (limited to 'src/ffts.c')
-rw-r--r--src/ffts.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/src/ffts.c b/src/ffts.c
index 481a66e..a50360a 100644
--- a/src/ffts.c
+++ b/src/ffts.c
@@ -105,7 +105,7 @@ ffts_plan_t *ffts_init_1d(size_t N, int sign) {
if(N >= 32) {
ffts_init_offsets(p, N, leafN);
#ifdef __arm__
-#ifdef __ARM_NEON__
+#ifdef HAVE_NEON
ffts_init_is(p, N, leafN, 1);
#else
ffts_init_is(p, N, leafN, 1);
@@ -120,7 +120,7 @@ ffts_plan_t *ffts_init_1d(size_t N, int sign) {
p->i2 = N/leafN/3;
#ifdef __arm__
- #ifdef __ARM_NEON__
+ #ifdef HAVE_NEON
p->i0/=2;
p->i1/=2;
#endif
@@ -164,7 +164,7 @@ ffts_plan_t *ffts_init_1d(size_t N, int sign) {
for(i=0;i<n_luts;i++) {
if(!i || hardcoded) {
- #ifdef __ARM_NEON__
+ #ifdef HAVE_NEON
if(N <= 32) lut_size += n/4 * 2 * sizeof(cdata_t);
else lut_size += n/4 * sizeof(cdata_t);
#else
@@ -172,7 +172,7 @@ ffts_plan_t *ffts_init_1d(size_t N, int sign) {
#endif
n *= 2;
} else {
- #ifdef __ARM_NEON__
+ #ifdef HAVE_NEON
lut_size += n/8 * 3 * sizeof(cdata_t);
#else
lut_size += n/8 * 3 * 2 * sizeof(cdata_t);
@@ -196,7 +196,7 @@ ffts_plan_t *ffts_init_1d(size_t N, int sign) {
n = leafN*2;
if(hardcoded) n = 8;
- #ifdef __ARM_NEON__
+ #ifdef HAVE_NEON
V neg = (sign < 0) ? VLIT4(0.0f, 0.0f, 0.0f, 0.0f) : VLIT4(-0.0f, -0.0f, -0.0f, -0.0f);
#endif
@@ -234,7 +234,7 @@ ffts_plan_t *ffts_init_1d(size_t N, int sign) {
//w = FFTS_MALLOC(n/4 * sizeof(cdata_t), 32);
float *fw = (float *)w;
VS temp0, temp1, temp2;
- #ifdef __ARM_NEON__
+ #ifdef HAVE_NEON
for(j=0;j<n/4;j+=4) {
temp0 = VLD2(fw0 + j*2);
temp0.val[1] = VXOR(temp0.val[1], neg);
@@ -289,7 +289,7 @@ ffts_plan_t *ffts_init_1d(size_t N, int sign) {
//w = FFTS_MALLOC(n/8 * 3 * sizeof(cdata_t), 32);
float *fw = (float *)w;
VS temp0, temp1, temp2;
- #ifdef __ARM_NEON__
+ #ifdef HAVE_NEON
for(j=0;j<n/8;j+=4) {
temp0 = VLD2(fw0 + j*2);
temp0.val[1] = VXOR(temp0.val[1], neg);
OpenPOWER on IntegriCloud