aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/arm/t-semi
diff options
context:
space:
mode:
authorRichard Earnshaw <erich@gnu.org>1997-05-13 18:45:05 +0000
committerRichard Earnshaw <erich@gnu.org>1997-05-13 18:45:05 +0000
commitb92b0cc977fea12d95d81b1d4f9f040f75286ec7 (patch)
tree2044e7fc46187b1d683199206acd6217f13b4f46 /gcc/config/arm/t-semi
parent5bc85b0a3de66b5ec88fe000111f41e87f038a43 (diff)
downloadgcc-b92b0cc977fea12d95d81b1d4f9f040f75286ec7.zip
gcc-b92b0cc977fea12d95d81b1d4f9f040f75286ec7.tar.gz
gcc-b92b0cc977fea12d95d81b1d4f9f040f75286ec7.tar.bz2
Build fp-bit.c when compiling with -msoft-float.
From-SVN: r14064
Diffstat (limited to 'gcc/config/arm/t-semi')
-rw-r--r--gcc/config/arm/t-semi23
1 files changed, 23 insertions, 0 deletions
diff --git a/gcc/config/arm/t-semi b/gcc/config/arm/t-semi
index 9f19b2e..9e4ddba 100644
--- a/gcc/config/arm/t-semi
+++ b/gcc/config/arm/t-semi
@@ -13,6 +13,29 @@ CROSS_LIBGCC1 = libgcc1-asm.a
LIB1ASMSRC = arm/lib1funcs.asm
LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_tls
+# These are really part of libgcc1, but this will cause them to be
+# built correctly, so...
+
+LIB2FUNCS_EXTRA = fp-bit.c dp-bit.c
+
+fp-bit.c: $(srcdir)/config/fp-bit.c
+ echo '#ifdef __SOFTFP__' > fp-bit.c
+ echo '#define FLOAT' >> fp-bit.c
+ echo '#ifndef __ARMEB__' >> fp-bit.c
+ echo '#define FLOAT_BIT_ORDER_MISMATCH' >> fp-bit.c
+ echo '#endif' >> fp-bit.c
+ cat $(srcdir)/config/fp-bit.c >> fp-bit.c
+ echo '#endif' >> fp-bit.c
+
+dp-bit.c: $(srcdir)/config/fp-bit.c
+ echo '#ifdef __SOFTFP__' > dp-bit.c
+ echo '#ifndef __ARMEB__' >> dp-bit.c
+ echo '#define FLOAT_BIT_ORDER_MISMATCH' >> dp-bit.c
+ echo '#define FLOAT_WORD_ORDER_MISMATCH' >> dp-bit.c
+ echo '#endif' >> dp-bit.c
+ cat $(srcdir)/config/fp-bit.c >> dp-bit.c
+ echo '#endif' >> dp-bit.c
+
MULTILIB_OPTIONS = msoft-float mapcs-26 mbig-endian mwords-little-endian
MULTILIB_DIRNAMES = soft apcs26 big wlittle
MULTILIB_EXCEPTIONS = *mapcs-26/*mbig-endian* mwords-little-endian *mapcs-26/mwords-little-endian msoft-float/mwords-little-endian