diff options
-rwxr-xr-x | configure.py | 4 | ||||
-rw-r--r-- | src/lib/utils/cpuid.cpp | 7 |
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 |