summaryrefslogtreecommitdiff
path: root/gcc/config/ip2k/t-ip2k
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/config/ip2k/t-ip2k')
-rw-r--r--gcc/config/ip2k/t-ip2k54
1 files changed, 54 insertions, 0 deletions
diff --git a/gcc/config/ip2k/t-ip2k b/gcc/config/ip2k/t-ip2k
new file mode 100644
index 00000000000..3c8d2f9dab5
--- /dev/null
+++ b/gcc/config/ip2k/t-ip2k
@@ -0,0 +1,54 @@
+CROSS_LIBGCC1 = libgcc1-asm.a
+LIB1ASMSRC = ip2k/libgcc.S
+
+LIB1ASMFUNCS = \
+ _indcall \
+ _mulhi3 \
+ _mulsi3 \
+ _muldi3 \
+ _udivmodhi4 \
+ _divmodhi4 \
+ _udivmodsi4 \
+ _divmodsi4 \
+ _udivmoddi4 \
+ _divmoddi4 \
+ _cmpqi2 \
+ _cmphi2 \
+ _cmpsi2 \
+ _cmpdi2 \
+ _cmpdi2_dp \
+ _fp_pop_args_ret \
+ _leaf_fp_pop_args_ret \
+ _fp_pop2_args_ret \
+ _leaf_fp_pop2_args_ret \
+ _movstrhi_countqi \
+ _movstrhi_counthi \
+ abort \
+ _exit
+
+# libgcc...
+LIBGCC1_TEST =
+
+# libgcc2.h thinks that nobody would have SI mode when
+# MIN_UNITS_PER_WORD == 1, so lie to keep from major compiler errors.
+
+TARGET_LIBGCC2_CFLAGS = -Dinhibit_libc -DDF=SF -g -DMIN_UNITS_PER_WORD=2
+
+fp-bit.c: $(srcdir)/config/fp-bit.c $(srcdir)/config/ip2k/t-ip2k crt0.o
+ echo '#define FLOAT' > fp-bit.c
+ echo '#define FLOAT_ONLY' >> fp-bit.c
+ echo '#define DF SF' >> fp-bit.c
+ echo '#define DI SI' >> fp-bit.c
+ echo '#define CMPtype QItype' >> fp-bit.c
+ echo '#define SMALL_MACHINE' >> fp-bit.c
+ echo 'typedef int QItype __attribute__ ((mode (QI)));' >> fp-bit.c
+ cat $(srcdir)/config/fp-bit.c >> fp-bit.c
+
+
+FPBIT = fp-bit.c
+
+# Our crt0 is written in assembler and we don't really support profiling.
+
+CRT0_S = $(srcdir)/config/ip2k/crt0.S
+MCRT0_S = $(CRT0_S)
+