|
@@ -0,0 +1,38 @@
|
|
|
|
+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
|
|
|
|
+
|