summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorjsg <jsg@openbsd.org>2020-08-03 03:32:04 +0000
committerjsg <jsg@openbsd.org>2020-08-03 03:32:04 +0000
commit7c39eed1e661644fe7eab894601cc0753a39bcc7 (patch)
treeda0f02083b64d8eb11962869dec84e43e410e6e4 /sys
parentadd support for handling loads from BPF_RND. (diff)
downloadwireguard-openbsd-7c39eed1e661644fe7eab894601cc0753a39bcc7.tar.xz
wireguard-openbsd-7c39eed1e661644fe7eab894601cc0753a39bcc7.zip
add aliases for arm eabi long long shift functions
clang 10 on armv7 references these when building RAMDISK (-Oz) but not GENERIC (-O2). feedback and ok guenther@
Diffstat (limited to 'sys')
-rw-r--r--sys/lib/libkern/ashrdi3.c4
-rw-r--r--sys/lib/libkern/lshldi3.c4
-rw-r--r--sys/lib/libkern/lshrdi3.c4
3 files changed, 12 insertions, 0 deletions
diff --git a/sys/lib/libkern/ashrdi3.c b/sys/lib/libkern/ashrdi3.c
index f55e7813c3f..8c8e1670c6d 100644
--- a/sys/lib/libkern/ashrdi3.c
+++ b/sys/lib/libkern/ashrdi3.c
@@ -64,3 +64,7 @@ __ashrdi3(quad_t a, qshift_t shift)
}
return (aa.q);
}
+
+#ifdef __ARM_EABI__
+__strong_alias(__aeabi_lasr, __ashrdi3);
+#endif
diff --git a/sys/lib/libkern/lshldi3.c b/sys/lib/libkern/lshldi3.c
index 7d38b506696..debbcc2c156 100644
--- a/sys/lib/libkern/lshldi3.c
+++ b/sys/lib/libkern/lshldi3.c
@@ -55,3 +55,7 @@ __lshldi3(quad_t a, qshift_t shift)
}
return (aa.q);
}
+
+#ifdef __ARM_EABI__
+__strong_alias(__aeabi_llsl, __lshldi3);
+#endif
diff --git a/sys/lib/libkern/lshrdi3.c b/sys/lib/libkern/lshrdi3.c
index dafb446ef70..6aee85e1be4 100644
--- a/sys/lib/libkern/lshrdi3.c
+++ b/sys/lib/libkern/lshrdi3.c
@@ -54,3 +54,7 @@ __lshrdi3(quad_t a, qshift_t shift)
}
return (aa.q);
}
+
+#ifdef __ARM_EABI__
+__strong_alias(__aeabi_llsr, __lshrdi3);
+#endif