39 lines
1.4 KiB
Diff
39 lines
1.4 KiB
Diff
|
From 63f5b85e700677270197d176475be609187e9cdb Mon Sep 17 00:00:00 2001
|
||
|
From: Aurelien Jarno <aurelien@aurel32.net>
|
||
|
Date: Sat, 3 Nov 2018 00:46:06 +0100
|
||
|
Subject: [PATCH] bn_mul.h: require at least ARMv6 to enable the ARM DSP code
|
||
|
|
||
|
Commit 16b1bd89326e "bn_mul.h: add ARM DSP optimized MULADDC code"
|
||
|
added some ARM DSP instructions that was assumed to always be available
|
||
|
when __ARM_FEATURE_DSP is defined to 1. Unfortunately it appears that
|
||
|
the ARMv5TE architecture (GCC flag -march=armv5te) supports the DSP
|
||
|
instructions, but only in Thumb mode and not in ARM mode, despite
|
||
|
defining __ARM_FEATURE_DSP in both cases.
|
||
|
|
||
|
This patch fixes the build issue by requiring at least ARMv6 in addition
|
||
|
to the DSP feature.
|
||
|
|
||
|
[Upstream status: https://github.com/ARMmbed/mbedtls/pull/2169]
|
||
|
Signed-off-by: Pierre-Jean Texier <pjtexier@koncepto.io>
|
||
|
---
|
||
|
include/mbedtls/bn_mul.h | 3 ++-
|
||
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
||
|
|
||
|
diff --git a/include/mbedtls/bn_mul.h b/include/mbedtls/bn_mul.h
|
||
|
index 0af694c..565615f 100644
|
||
|
--- a/include/mbedtls/bn_mul.h
|
||
|
+++ b/include/mbedtls/bn_mul.h
|
||
|
@@ -636,7 +636,8 @@
|
||
|
"r6", "r7", "r8", "r9", "cc" \
|
||
|
);
|
||
|
|
||
|
-#elif defined (__ARM_FEATURE_DSP) && (__ARM_FEATURE_DSP == 1)
|
||
|
+#elif (__ARM_ARCH >= 6) && \
|
||
|
+ defined (__ARM_FEATURE_DSP) && (__ARM_FEATURE_DSP == 1)
|
||
|
|
||
|
#define MULADDC_INIT \
|
||
|
asm(
|
||
|
--
|
||
|
2.7.4
|
||
|
|