From 1bf92aafdd3b463fa70e310522ab716744b7ce7c Mon Sep 17 00:00:00 2001 From: gson Date: Fri, 22 Jan 2016 14:57:41 +0000 Subject: Initial import of ffts. ffts is a BSD-licensed Fast Fourier Transform library based on dynamic generation of SIMD code, supporting Intel SSE and ARM Neon. --- math/ffts/patches/patch-src_codegen.c | 15 +++++++++++++++ math/ffts/patches/patch-tests_test.c | 33 +++++++++++++++++++++++++++++++++ 2 files changed, 48 insertions(+) create mode 100644 math/ffts/patches/patch-src_codegen.c create mode 100644 math/ffts/patches/patch-tests_test.c (limited to 'math/ffts/patches') diff --git a/math/ffts/patches/patch-src_codegen.c b/math/ffts/patches/patch-src_codegen.c new file mode 100644 index 00000000000..796bf6348e5 --- /dev/null +++ b/math/ffts/patches/patch-src_codegen.c @@ -0,0 +1,15 @@ +$NetBSD: patch-src_codegen.c,v 1.1 2016/01/22 14:57:41 gson Exp $ + +Provide the appropriate arguents to mmap on NetBSD. + +--- src/codegen.c.orig 2014-01-05 22:32:16.000000000 +0000 ++++ src/codegen.c +@@ -181,6 +181,8 @@ void ffts_generate_func_code(ffts_plan_t + + #ifdef __APPLE__ + p->transform_base = mmap(NULL, p->transform_size, PROT_WRITE | PROT_READ, MAP_ANON | MAP_SHARED, -1, 0); ++#elif defined(__NetBSD__) ++ p->transform_base = mmap(NULL, p->transform_size, PROT_WRITE | PROT_READ | PROT_EXEC, MAP_ANON | MAP_SHARED, -1, 0); + #else + #define MAP_ANONYMOUS 0x20 + p->transform_base = mmap(NULL, p->transform_size, PROT_WRITE | PROT_READ, MAP_ANONYMOUS | MAP_SHARED, -1, 0); diff --git a/math/ffts/patches/patch-tests_test.c b/math/ffts/patches/patch-tests_test.c new file mode 100644 index 00000000000..ed0dc09bab1 --- /dev/null +++ b/math/ffts/patches/patch-tests_test.c @@ -0,0 +1,33 @@ +$NetBSD: patch-tests_test.c,v 1.1 2016/01/22 14:57:41 gson Exp $ + +NetBSD lacks sinl(), cosl(), and sqrtl(). + +--- tests/test.c.orig 2014-01-05 22:32:16.000000000 +0000 ++++ tests/test.c +@@ -44,7 +44,7 @@ + #define PI 3.1415926535897932384626433832795028841971693993751058209 + + float impulse_error(int N, int sign, float *data) { +-#ifdef __ANDROID__ ++#if defined(__ANDROID__) || defined(__NetBSD__) + double delta_sum = 0.0f; + double sum = 0.0f; + #else +@@ -54,7 +54,7 @@ float impulse_error(int N, int sign, flo + + int i; + for(i=0;i