When specifying --disable-neon-support during configure, NEON support for ARM is
still built if the system is detected as being able to build NEON. The files
listed below check for HAVE_GCC_INLINE_ASM_NEON==1, defined by the configure
check to see if NEON is supported, but do not check if ENABLE_NEON_SUPPORT is
disabled, which is set by --disable-neon-support:
cipher/serpent.c:53
cipher/salsa20-armv7-neon.S:25
cipher/salsa20.c:54
cipher/sha512.c:62
cipher/sha512-armv7-neon.S:25
A possible solution, shown for serpent.c, would be to add a check for
defined(ENABLE_NEON_SUPPORT):
/* USE_NEON indicates whether to enable ARM NEON assembly code. */
#undef USE_NEON
#if defined(HAVE_ARM_ARCH_V6) && defined(ARMEL) &&
defined(ENABLE_NEON_SUPPORT)
- if defined(HAVE_COMPATIBLE_GCC_ARM_PLATFORM_AS) && \ defined(HAVE_GCC_INLINE_ASM_NEON)
- define USE_NEON 1
- endif
#endif