| # BEGIN boiler-plate MIPS stuff |
| |
| # Don't let CTOR_LIST end up in sdata section. |
| CRTSTUFF_T_CFLAGS = -G 0 |
| |
| # We must build libgcc2.a with -G 0, in case the user wants to link |
| # without the $gp register. |
| TARGET_LIBGCC2_CFLAGS = -G 0 |
| |
| LIB2FUNCS_EXTRA = $(srcdir)/config/mips/mips16.S |
| EXTRA_MULTILIB_PARTS = crtbegin.o crtend.o crti.o crtn.o |
| |
| # Assemble startup files. |
| $(T)crti.o: $(srcdir)/config/mips/crti.asm $(GCC_PASSES) |
| $(GCC_FOR_TARGET) $(GCC_CFLAGS) $(MULTILIB_CFLAGS) $(INCLUDES) \ |
| -c -o $(T)crti.o -x assembler-with-cpp $(srcdir)/config/mips/crti.asm |
| |
| $(T)crtn.o: $(srcdir)/config/mips/crtn.asm $(GCC_PASSES) |
| $(GCC_FOR_TARGET) $(GCC_CFLAGS) $(MULTILIB_CFLAGS) $(INCLUDES) \ |
| -c -o $(T)crtn.o -x assembler-with-cpp $(srcdir)/config/mips/crtn.asm |
| |
| # END boiler-plate |
| |
| # Endianness: EB or EL |
| # |
| # ABIs: mabi=32 |
| # mabi=o64 |
| # mabi=eabi |
| # meabi=eabi/mlong32 |
| # mabi=eabi/mgp32 |
| # mabi=eabi/mgp32/mlong64 |
| # |
| # Architecture: march=vr5400 |
| # march=vr4100 |
| # march=vr4100/mips16 |
| # |
| # Total: 2 * 6 * 3 = 36 multilibs. |
| MULTILIB_OPTIONS = \ |
| EL/EB \ |
| mabi=32/mabi=o64/mabi=eabi \ |
| mgp32 \ |
| mlong64 \ |
| mips16 \ |
| march=vr5400/march=vr4100 |
| |
| MULTILIB_DIRNAMES = \ |
| el eb \ |
| o32 o64 eabi \ |
| gp32 \ |
| long64 \ |
| mips16 \ |
| vr5400 vr4100 |
| |
| MULTILIB_MATCHES = EL=mel EB=meb |
| |
| # Assume a 4000-series is the default: we'd need a *mips16 entry if |
| # the default processor didn't support mips16. Also assume o64, |
| # which means we need to extend the o64 exceptions to combinations |
| # without a -mabi flag. |
| MULTILIB_EXCEPTIONS = \ |
| *mabi=32/mlong64* \ |
| *mabi=32/mgp32* \ |
| *mabi=o64/mgp32* \ |
| *mabi=o64/mlong64* \ |
| mgp32* E[LB]/mgp32* \ |
| mlong64* E[LB]/mlong64* \ |
| *mips16/march=vr5* |