aboutsummaryrefslogtreecommitdiffstats
path: root/package
diff options
context:
space:
mode:
authorNick Hainke <vincent@systemli.org>2022-11-08 12:25:06 +0100
committerHauke Mehrtens <hauke@hauke-m.de>2022-11-27 15:43:08 +0100
commitde6c3cca4d2b523937403ae2959597a1e48c7351 (patch)
tree0a40c4c4a37a6d8c7bddf84c32712762f157cef3 /package
parent302ef2137dfc541e136306528636bc53e31b9333 (diff)
downloadupstream-de6c3cca4d2b523937403ae2959597a1e48c7351.tar.gz
upstream-de6c3cca4d2b523937403ae2959597a1e48c7351.tar.bz2
upstream-de6c3cca4d2b523937403ae2959597a1e48c7351.zip
mbedtls: import patch to fix illegal instruction on mpc85xx
Import patch as workaround for gcc-11.2.0. Signed-off-by: Nick Hainke <vincent@systemli.org>
Diffstat (limited to 'package')
-rw-r--r--package/libs/mbedtls/patches/101-bn_mul.h-workaround-for-gcc-11.2.0-issues.patch30
1 files changed, 30 insertions, 0 deletions
diff --git a/package/libs/mbedtls/patches/101-bn_mul.h-workaround-for-gcc-11.2.0-issues.patch b/package/libs/mbedtls/patches/101-bn_mul.h-workaround-for-gcc-11.2.0-issues.patch
new file mode 100644
index 0000000000..bb2ef9ec43
--- /dev/null
+++ b/package/libs/mbedtls/patches/101-bn_mul.h-workaround-for-gcc-11.2.0-issues.patch
@@ -0,0 +1,30 @@
+From 0b2528145eb5e9207e45e7fc150d574afc1ff628 Mon Sep 17 00:00:00 2001
+From: Nick Hainke <vincent@systemli.org>
+Date: Thu, 24 Nov 2022 15:23:26 +0100
+Subject: [PATCH] bn_mul.h: workaround for gcc-11.2.0 issues
+
+Currently curl fails on mpc85xx with:
+ curl[7227]: illegal instruction (4) at b7c94288 nip b7c94288 lr b7c6b528 code 1 in libmbedcrypto.so.2.28.1[b7c3e000+7e000]
+ curl[7227]: code: 3d7e0000 809e8004 91490000 816b814c 7d6903a6 4e800421 80010024 83c10018
+ curl[7227]: code: 38210020 7c0803a6 4e800020 9421fff0 <7d4d42e6> 7c6c42e6 7d2d42e6 7c0a4840
+
+This is due to a bug in gcc-11.2.0. It is fixed with gcc-11.3.0.
+is planed. Instead, remove the code for mpc85xx that is the cause of the
+issue.
+
+Signed-off-by: Nick Hainke <vincent@systemli.org>
+---
+ include/mbedtls/bn_mul.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/include/mbedtls/bn_mul.h
++++ b/include/mbedtls/bn_mul.h
+@@ -406,7 +406,7 @@
+
+ #endif /* __MACH__ && __APPLE__ */
+
+-#elif defined(__powerpc__) || defined(__ppc__) /* end PPC64/begin PPC32 */
++#elif (defined(__powerpc__) || defined(__ppc__)) && GCC_VERSION != 110200 /* end PPC64/begin PPC32 */
+
+ #if defined(__MACH__) && defined(__APPLE__)
+