Also accept __ARM_NEON The Clang used in the Android SDK, at least, defines both __ARM_NEON__ and __ARM_NEON for ARMv7, but only the latter for AArch64. This change switches each use of __ARM_NEON__ to accept either. Change-Id: I3b5d5badc9ff0210888fd456e9329dc53a2b9b09 Reviewed-on: https://boringssl-review.googlesource.com/c/33104 Commit-Queue: Adam Langley <alangley@gmail.com> Commit-Queue: David Benjamin <davidben@google.com> Reviewed-by: David Benjamin <davidben@google.com> CQ-Verified: CQ bot account: commit-bot@chromium.org <commit-bot@chromium.org>
diff --git a/crypto/crypto.c b/crypto/crypto.c index 783d7d9..5f1a69a 100644 --- a/crypto/crypto.c +++ b/crypto/crypto.c
@@ -82,7 +82,8 @@ #if defined(OPENSSL_STATIC_ARMCAP) HIDDEN uint32_t OPENSSL_armcap_P = -#if defined(OPENSSL_STATIC_ARMCAP_NEON) || defined(__ARM_NEON__) +#if defined(OPENSSL_STATIC_ARMCAP_NEON) || \ + (defined(__ARM_NEON__) || defined(__ARM_NEON)) ARMV7_NEON | #endif #if defined(OPENSSL_STATIC_ARMCAP_AES) || defined(__ARM_FEATURE_CRYPTO)
diff --git a/include/openssl/cpu.h b/include/openssl/cpu.h index b2759fe..edac98e 100644 --- a/include/openssl/cpu.h +++ b/include/openssl/cpu.h
@@ -125,7 +125,7 @@ // hand-written NEON assembly. For now, continue to apply the workaround even // when the compiler is instructed to freely emit NEON code. See // https://crbug.com/341598 and https://crbug.com/606629. -#if defined(__ARM_NEON__) && !defined(OPENSSL_ARM) +#if (defined(__ARM_NEON__) || defined(__ARM_NEON)) && !defined(OPENSSL_ARM) return 1; #else return CRYPTO_is_NEON_capable_at_runtime(); @@ -153,7 +153,8 @@ #else OPENSSL_INLINE int CRYPTO_is_NEON_capable(void) { -#if defined(OPENSSL_STATIC_ARMCAP_NEON) || defined(__ARM_NEON__) +#if defined(OPENSSL_STATIC_ARMCAP_NEON) || \ + (defined(__ARM_NEON__) || defined(__ARM_NEON)) return 1; #else return 0;