1 CONFIG2_H = $(srcdir)/config/mips/ecoff.h
3 # We have a premade insn-attrtab.c to save the hour it takes to run genattrtab.
4 # PREMADE_ATTRTAB = $(srcdir)/config/mips/mips-at.c
5 # PREMADE_ATTRTAB_MD = $(srcdir)/config/mips/mips-at.md
7 # Suppress building libgcc1.a, since the MIPS compiler port is complete
8 # and does not need anything from libgcc1.a.
11 # When building a cross compiler, put the mips16 support functions in
13 CROSS_LIBGCC1 = libgcc1-asm.a
14 LIB1ASMSRC = mips/mips16.S
15 LIB1ASMFUNCS = _m16addsf3 _m16subsf3 _m16mulsf3 _m16divsf3 \
16 _m16eqsf2 _m16nesf2 _m16gtsf2 _m16gesf2 _m16lesf2 _m16ltsf2 \
17 _m16fltsisf _m16fixsfsi \
18 _m16adddf3 _m16subdf3 _m16muldf3 _m16divdf3 \
19 _m16extsfdf2 _m16trdfsf2 \
20 _m16eqdf2 _m16nedf2 _m16gtdf2 _m16gedf2 _m16ledf2 _m16ltdf2 \
21 _m16fltsidf _m16fixdfsi \
23 _m16stub1 _m16stub2 _m16stub5 _m16stub6 _m16stub9 _m16stub10 \
24 _m16stubsf0 _m16stubsf1 _m16stubsf2 _m16stubsf5 _m16stubsf6 \
25 _m16stubsf9 _m16stubsf10 \
26 _m16stubdf0 _m16stubdf1 _m16stubdf2 _m16stubdf5 _m16stubdf6 \
27 _m16stubdf9 _m16stubdf10
29 # We must build libgcc2.a with -G 0, in case the user wants to link
30 # without the $gp register.
31 TARGET_LIBGCC2_CFLAGS = -G 0
33 # fp-bit and dp-bit are really part of libgcc1, but this will cause
34 # them to be built correctly, so... [taken from t-sparclite]
35 LIB2FUNCS_EXTRA = fp-bit.c dp-bit.c
37 dp-bit.c: $(srcdir)/config/fp-bit.c
38 echo '#ifdef __MIPSEL__' > dp-bit.c
39 echo '#define FLOAT_BIT_ORDER_MISMATCH' >> dp-bit.c
40 echo '#endif' >> dp-bit.c
41 echo '#define US_SOFTWARE_GOFAST' >> dp-bit.c
42 cat $(srcdir)/config/fp-bit.c >> dp-bit.c
44 fp-bit.c: $(srcdir)/config/fp-bit.c
45 echo '#define FLOAT' > fp-bit.c
46 echo '#ifdef __MIPSEL__' >> fp-bit.c
47 echo '#define FLOAT_BIT_ORDER_MISMATCH' >> fp-bit.c
48 echo '#endif' >> fp-bit.c
49 echo '#define US_SOFTWARE_GOFAST' >> fp-bit.c
50 cat $(srcdir)/config/fp-bit.c >> fp-bit.c
52 # Build the libraries for both hard and soft floating point
54 MULTILIB_OPTIONS = msoft-float/msingle-float EL/EB mips1/mips3
55 MULTILIB_DIRNAMES = soft-float single el eb mips1 mips3
56 MULTILIB_MATCHES = msingle-float=m4650
58 LIBGCC = stmp-multilib
59 INSTALL_LIBGCC = install-multilib
61 # Add additional dependencies to recompile selected modules whenever the
62 # tm.h file changes. The files compiled are:
64 # gcc.c (*_SPEC changes)
65 # toplev.c (new switches + assembly output changes)
66 # sdbout.c (debug format changes)
67 # dbxout.c (debug format changes)
68 # dwarfout.c (debug format changes)
69 # final.c (assembly output changes)
70 # varasm.c (assembly output changes)
71 # cse.c (cost functions)
72 # insn-output.c (possible ifdef changes in tm.h)
73 # regclass.c (fixed/call used register changes)
74 # cccp.c (new preprocessor macros, -v version #)
75 # explow.c (GO_IF_LEGITIMATE_ADDRESS)
76 # recog.c (GO_IF_LEGITIMATE_ADDRESS)
77 # reload.c (GO_IF_LEGITIMATE_ADDRESS)
80 toplev.o: $(CONFIG2_H)
81 sdbout.o: $(CONFIG2_H)
82 dbxout.o: $(CONFIG2_H)
83 dwarfout.o: $(CONFIG2_H)
85 varasm.o: $(CONFIG2_H)
87 insn-output.o: $(CONFIG2_H)
88 regclass.o: $(CONFIG2_H)
90 explow.o: $(CONFIG2_H)
92 reload.o: $(CONFIG2_H)