Clean up USE_NEON to make it easier to disable NEON for benchmarking
Bug: 27242871
Change-Id: I30ba8bfe55885cde531706c760ec27e593d7f8b3
diff --git a/services/audioflinger/Android.mk b/services/audioflinger/Android.mk
index 6e3eb83..302e4dc 100644
--- a/services/audioflinger/Android.mk
+++ b/services/audioflinger/Android.mk
@@ -127,6 +127,9 @@
LOCAL_MODULE := libaudioresampler
+# uncomment to disable NEON on architectures that actually do support NEON, for benchmarking
+#LOCAL_CFLAGS += -DUSE_NEON=false
+
include $(BUILD_SHARED_LIBRARY)
include $(call all-makefiles-under,$(LOCAL_PATH))
diff --git a/services/audioflinger/AudioResamplerFirOps.h b/services/audioflinger/AudioResamplerFirOps.h
index 658285d..2a26496 100644
--- a/services/audioflinger/AudioResamplerFirOps.h
+++ b/services/audioflinger/AudioResamplerFirOps.h
@@ -26,11 +26,15 @@
#endif
#if defined(__aarch64__) || defined(__ARM_NEON__)
+#ifndef USE_NEON
#define USE_NEON (true)
-#include <arm_neon.h>
+#endif
#else
#define USE_NEON (false)
#endif
+#if USE_NEON
+#include <arm_neon.h>
+#endif
template<typename T, typename U>
struct is_same
diff --git a/services/audioflinger/AudioResamplerSinc.cpp b/services/audioflinger/AudioResamplerSinc.cpp
index e93c064..f600d6c 100644
--- a/services/audioflinger/AudioResamplerSinc.cpp
+++ b/services/audioflinger/AudioResamplerSinc.cpp
@@ -43,10 +43,14 @@
#endif
#if defined(__aarch64__) || defined(__ARM_NEON__)
-#include <arm_neon.h>
-#define USE_NEON
+#ifndef USE_NEON
+#define USE_NEON (true)
+#endif
#else
-#undef USE_NEON
+#define USE_NEON (false)
+#endif
+#if USE_NEON
+#include <arm_neon.h>
#endif
#define UNUSED(x) ((void)(x))
@@ -417,7 +421,7 @@
size_t count = offset;
-#ifndef USE_NEON
+#if !USE_NEON
int32_t l = 0;
int32_t r = 0;
for (size_t i=0 ; i<count ; i++) {