Enable ARM64 intrinsics.
This also moves ARM intrinsic ifdefs behing ARCH_ARM_USE_INTRINSICS instead of ARCH_ARM_HAVE_VFP.
Change-Id: I48d3d55c77feb931e22288828247e281db43d32b
diff --git a/cpu_ref/rsCpuCore.cpp b/cpu_ref/rsCpuCore.cpp
index 0a3a872..9755b9a 100644
--- a/cpu_ref/rsCpuCore.cpp
+++ b/cpu_ref/rsCpuCore.cpp
@@ -204,7 +204,6 @@
pthread_mutex_unlock(&gInitMutex);
}
-#if defined(ARCH_ARM_HAVE_VFP) || defined(ARCH_X86_HAVE_SSSE3)
static int
read_file(const char* pathname, char* buffer, size_t buffsize)
{
@@ -232,13 +231,13 @@
return;
}
-#if defined(ARCH_ARM_HAVE_VFP)
- gArchUseSIMD = !!strstr(cpuinfo, " neon");
+#if defined(ARCH_ARM_HAVE_VFP) || defined(ARCH_ARM_USE_INTRINSICS)
+ gArchUseSIMD = (!!strstr(cpuinfo, " neon")) ||
+ (!!strstr(cpuinfo, " asimd"));
#elif defined(ARCH_X86_HAVE_SSSE3)
gArchUseSIMD = !!strstr(cpuinfo, " ssse3");
#endif
}
-#endif // ARCH_ARM_HAVE_VFP || ARCH_X86_HAVE_SSSE3
bool RsdCpuReferenceImpl::init(uint32_t version_major, uint32_t version_minor,
sym_lookup_t lfn, script_lookup_t slfn) {
@@ -265,9 +264,7 @@
ALOGE("pthread_setspecific %i", status);
}
-#if defined(ARCH_ARM_HAVE_VFP) || defined(ARCH_X86_HAVE_SSSE3)
GetCpuInfo();
-#endif
int cpu = sysconf(_SC_NPROCESSORS_ONLN);
if(mRSC->props.mDebugMaxThreads) {