summaryrefslogtreecommitdiff
path: root/lib/builtins/floatundisf.c
diff options
context:
space:
mode:
authorSaleem Abdulrasool <compnerd@compnerd.org>2017-05-16 16:41:37 +0000
committerSaleem Abdulrasool <compnerd@compnerd.org>2017-05-16 16:41:37 +0000
commit99e2e66daf8d334858cec4f6e8e7a39d6a535a55 (patch)
treeb7f896c11740479b684921972559a2c12b3750b8 /lib/builtins/floatundisf.c
parent5c1b8654b63c99930f442de2e79b179e6150d725 (diff)
builtins: expand out the AEABI function stubs
These actually may change calling conventions. We cannot simply provide function aliases as the aliased function may have a different calling convention. Provide a forwarding function instead to permit the compiler to synthesize the calling convention adjustment thunk. Remove the `ARM_EABI_FNALIAS` macro as that is not safe to use. Resolves PR33030! git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@303188 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/builtins/floatundisf.c')
-rw-r--r--lib/builtins/floatundisf.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/lib/builtins/floatundisf.c b/lib/builtins/floatundisf.c
index 713a44abc..86841a75d 100644
--- a/lib/builtins/floatundisf.c
+++ b/lib/builtins/floatundisf.c
@@ -22,8 +22,6 @@
#include "int_lib.h"
-ARM_EABI_FNALIAS(ul2f, floatundisf)
-
COMPILER_RT_ABI float
__floatundisf(du_int a)
{
@@ -75,3 +73,10 @@ __floatundisf(du_int a)
((su_int)a & 0x007FFFFF); /* mantissa */
return fb.f;
}
+
+#if defined(__ARM_EABI__)
+AEABI_RTABI float __aeabi_ul2f(du_int a) {
+ return __floatundisf(a);
+}
+#endif
+