aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xconfigure.py4
-rw-r--r--src/lib/utils/cpuid.cpp7
2 files changed, 10 insertions, 1 deletions
diff --git a/configure.py b/configure.py
index 83fe6b053..29fea93b9 100755
--- a/configure.py
+++ b/configure.py
@@ -1356,6 +1356,10 @@ def gen_makefile_lists(var, build_config, options, modules, cc, arch, osinfo):
# default scalar
return []
+ if os.path.basename(src) == 'test_simd.cpp':
+ isas = list(simd_dependencies())
+ return get_isa_specific_flags(cc, isas)
+
for mod in modules:
if src in mod.sources():
isas = mod.need_isa
diff --git a/src/lib/utils/cpuid.cpp b/src/lib/utils/cpuid.cpp
index 451e04d54..0a0a63a3b 100644
--- a/src/lib/utils/cpuid.cpp
+++ b/src/lib/utils/cpuid.cpp
@@ -195,10 +195,13 @@ uint64_t arm_detect_cpu_features(size_t* cache_line_size)
*cache_line_size = static_cast<size_t>(dcache_line);
#endif
-#endif
+#else
+ // No getauxval API available, fall back on probe functions
// TODO: probe functions
+#endif
+
return detected_features;
}
@@ -351,6 +354,8 @@ bool CPUID::has_simd_32()
return CPUID::has_sse2();
#elif defined(BOTAN_TARGET_SUPPORTS_ALTIVEC)
return CPUID::has_altivec();
+#elif defined(BOTAN_TARGET_SUPPORTS_NEON)
+ return CPUID::has_neon();
#else
return true;
#endif