summaryrefslogtreecommitdiff
path: root/net/entropy/patches
diff options
context:
space:
mode:
authorjoerg <joerg@pkgsrc.org>2020-05-22 01:23:41 +0000
committerjoerg <joerg@pkgsrc.org>2020-05-22 01:23:41 +0000
commitf1ea0dd3db256aa7ed8c8ff74b3f577fbc0f7108 (patch)
treee11d5296f86ca6925ff14de474a7f6e9e5823233 /net/entropy/patches
parent82d7d88bee0c6806371ba8d1dbb697df80837876 (diff)
downloadpkgsrc-f1ea0dd3db256aa7ed8c8ff74b3f577fbc0f7108.tar.gz
Drop "optimisation" that breaks the build with clang, modern GCC and
clang versions are smart enough for this anyway.
Diffstat (limited to 'net/entropy/patches')
-rw-r--r--net/entropy/patches/patch-src_bignum.c35
1 files changed, 35 insertions, 0 deletions
diff --git a/net/entropy/patches/patch-src_bignum.c b/net/entropy/patches/patch-src_bignum.c
new file mode 100644
index 00000000000..8861db85622
--- /dev/null
+++ b/net/entropy/patches/patch-src_bignum.c
@@ -0,0 +1,35 @@
+$NetBSD: patch-src_bignum.c,v 1.1 2020/05/22 01:23:42 joerg Exp $
+
+Don't play with assembler, the compiler knows how to do it anyway.
+
+--- src/bignum.c.orig 2020-05-22 00:32:45.737382942 +0000
++++ src/bignum.c
+@@ -703,20 +703,6 @@ limb_t bn_mul_limb(limb_t w[], limb_t u[
+ */
+ limb_t sl_div(limb_t *q, limb_t *r, limb_t u[2], limb_t v)
+ {
+-#if ASM_X86
+- limb_t qq;
+- limb_t rr;
+-
+- if (0 == v)
+- /* division by zero */
+- return LIMBMASK;
+- asm volatile(
+- "divl %4"
+- : "=a"(qq), "=d"(rr)
+- : "a"(u[0]), "d"(u[1]), "g"(v));
+- *q = qq;
+- *r = rr;
+-#else
+ dlimb_t dd;
+
+ if (0 == v)
+@@ -725,7 +711,6 @@ limb_t sl_div(limb_t *q, limb_t *r, limb
+ dd = ((dlimb_t)u[1] << LIMBBITS) | u[0];
+ *q = dd / v;
+ *r = dd % v;
+-#endif
+ return 0;
+ }
+