summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Clausecker <fuz@FreeBSD.org>2024-12-17 18:48:07 +0000
committerRobert Clausecker <fuz@FreeBSD.org>2024-12-19 15:40:06 +0100
commit224996190d4c247b5776835b42e58cdcb00bff76 (patch)
tree492bfb28a6c2e8285e8b2ef649c1702f7569b4ae
parent1c02b518bfdaa90d51d1c786dd0d4f1f46a98cda (diff)
math/sprng: fix build on armv7
Fix inline assembly that doesn't work with clang or recent C++ standards. Approved by: portmgr (build fix blanket) MFH: 2024Q4 (cherry picked from commit 002e304768c869ba9af890b6d32f4b194296ce71)
-rw-r--r--math/sprng/files/patch-SRC_pmlcg_longlong.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/math/sprng/files/patch-SRC_pmlcg_longlong.h b/math/sprng/files/patch-SRC_pmlcg_longlong.h
new file mode 100644
index 000000000000..a153cbb31087
--- /dev/null
+++ b/math/sprng/files/patch-SRC_pmlcg_longlong.h
@@ -0,0 +1,15 @@
+--- SRC/pmlcg/longlong.h.orig 2024-12-17 18:25:17 UTC
++++ SRC/pmlcg/longlong.h
+@@ -211,9 +211,8 @@ UDItype __umulsidi3 (USItype, USItype);
+ "r" ((USItype) (al)), \
+ "rI" ((USItype) (bl)))
+ #define umul_ppmm(xh, xl, a, b) \
+-{register USItype __t0, __t1, __t2; \
+- __asm__ ("%@ Inlined umul_ppmm\n" \
+- " mov %2, %5, lsr #16\n" \
++{USItype __t0, __t1, __t2; \
++ __asm__ (" mov %2, %5, lsr #16\n" \
+ " mov %0, %6, lsr #16\n" \
+ " bic %3, %5, %2, lsl #16\n" \
+ " bic %4, %6, %0, lsl #16\n" \
+