summaryrefslogtreecommitdiff
path: root/lib/libc/arch
diff options
context:
space:
mode:
authorMark Kettenis <kettenis@cvs.openbsd.org>2017-12-26 15:11:18 +0000
committerMark Kettenis <kettenis@cvs.openbsd.org>2017-12-26 15:11:18 +0000
commit02502df78635877ac5104906019481cca71521bd (patch)
tree17b6147ed41008f31c07b369b9311ce161f5b08f /lib/libc/arch
parent282be384923e48294ae12e586ed83fdedbd2d3b0 (diff)
Add ARM EABI runtime aliases to the GCC runtime functions that we include
in libc. ok patrick@, jsg@, guenther@
Diffstat (limited to 'lib/libc/arch')
-rw-r--r--lib/libc/arch/arm/Symbols.list26
-rw-r--r--lib/libc/arch/arm/gen/divsi3.S7
2 files changed, 32 insertions, 1 deletions
diff --git a/lib/libc/arch/arm/Symbols.list b/lib/libc/arch/arm/Symbols.list
index 2c79e9b439e..bd7e8cb6c9f 100644
--- a/lib/libc/arch/arm/Symbols.list
+++ b/lib/libc/arch/arm/Symbols.list
@@ -58,6 +58,32 @@ frexpl
ldexpl
modfl
+/* EABI */
+__aeabi_idiv
+__aeabi_idivmod
+__aeabi_uidiv
+__aeabi_uidivmod
+
+/* EABI softfloat */
+__aeabi_d2f
+__aeabi_d2iz
+__aeabi_d2lz
+__aeabi_dadd
+__aeabi_ddiv
+__aeabi_dmul
+__aeabi_dsub
+__aeabi_f2d
+__aeabi_f2iz
+__aeabi_f2lz
+__aeabi_fadd
+__aeabi_fdiv
+__aeabi_fmul
+__aeabi_fsub
+__aeabi_i2d
+__aeabi_i2f
+__aeabi_l2d
+__aeabi_l2f
+
/* dlfcn */
dl_unwind_find_exidx
__gnu_Unwind_Find_exidx
diff --git a/lib/libc/arch/arm/gen/divsi3.S b/lib/libc/arch/arm/gen/divsi3.S
index ad14f803a8f..a95dbda7fe3 100644
--- a/lib/libc/arch/arm/gen/divsi3.S
+++ b/lib/libc/arch/arm/gen/divsi3.S
@@ -1,4 +1,4 @@
-/* $OpenBSD: divsi3.S,v 1.3 2016/08/06 19:16:09 guenther Exp $ */
+/* $OpenBSD: divsi3.S,v 1.4 2017/12/26 15:11:17 kettenis Exp $ */
/* $NetBSD: divsi3.S,v 1.5 2003/04/05 23:08:51 bjh21 Exp $ */
/*
@@ -385,3 +385,8 @@ ENTRY(__divsi3)
addhs r3, r3, r2
mov r0, r3
mov pc, lr
+
+STRONG_ALIAS(__aeabi_idiv, __divsi3)
+STRONG_ALIAS(__aeabi_idivmod, __divsi3)
+STRONG_ALIAS(__aeabi_uidiv, __udivsi3)
+STRONG_ALIAS(__aeabi_uidivmod, __udivsi3)