1# BEGIN boiler-plate MIPS stuff 2 3# Don't let CTOR_LIST end up in sdata section. 4CRTSTUFF_T_CFLAGS = -G 0 5 6# We must build libgcc2.a with -G 0, in case the user wants to link 7# without the $gp register. 8TARGET_LIBGCC2_CFLAGS = -G 0 9 10LIB2FUNCS_STATIC_EXTRA = $(srcdir)/config/mips/mips16.S \ 11 $(srcdir)/config/mips/vr4120-div.S 12EXTRA_MULTILIB_PARTS = crtbegin.o crtend.o crti.o crtn.o 13 14# Assemble startup files. 15$(T)crti.o: $(srcdir)/config/mips/crti.asm $(GCC_PASSES) 16 $(GCC_FOR_TARGET) $(GCC_CFLAGS) $(MULTILIB_CFLAGS) $(INCLUDES) \ 17 -c -o $(T)crti.o -x assembler-with-cpp $(srcdir)/config/mips/crti.asm 18 19$(T)crtn.o: $(srcdir)/config/mips/crtn.asm $(GCC_PASSES) 20 $(GCC_FOR_TARGET) $(GCC_CFLAGS) $(MULTILIB_CFLAGS) $(INCLUDES) \ 21 -c -o $(T)crtn.o -x assembler-with-cpp $(srcdir)/config/mips/crtn.asm 22 23# END boiler-plate 24 25# Main multilibs 26# -------------- 27# 28# Endianness: EB or EL 29# 30# ABIs: mabi=32 31# mabi=o64 32# mabi=eabi 33# mabi=eabi/mlong32 34# mabi=eabi/mgp32 35# mabi=eabi/mgp32/mlong64 36# 37# Architecture: march=vr4120 with -mfix-vr4120 38# march=vr4130 with -mfix-vr4130 (default) 39# march=vr5000 40# march=vr5400 41# march=vr5500 42# 43# Total: 2 * 6 * 5 = 60 multilibs. 44# 45# 46# Extra vr4300 multilibs 47# ---------------------- 48# 49# Endianness: EB or EL 50# 51# ABI: o64 52# 53# Architecture: vr4300. 54# 55# Total: 2 * 1 * 2 = 2 multilibs. 56# 57# 58# Extra MIPS16 multilibs 59# ---------------------- 60# 61# Endianness: EB or EL 62# 63# ABIs: mabi=o64 64# mabi=eabi/mlong32 65# mabi=eabi/mgp32 66# 67# Architecture: march=vr4120 with -mfix-vr4120 68# march=vr4130 with -mfix-vr4130 (default) 69# 70# Total: 2 * 3 * 2 = 12 multilibs. 71MULTILIB_OPTIONS = \ 72 EL/EB \ 73 mabi=32/mabi=o64/mabi=eabi \ 74 mgp32 \ 75 mlong64 \ 76 mips16 \ 77 mfix-vr4120/mfix-vr4130/march=vr4300/march=vr5000/march=vr5400/march=vr5500 78 79MULTILIB_DIRNAMES = \ 80 el eb \ 81 o32 o64 eabi \ 82 gp32 \ 83 long64 \ 84 mips16 \ 85 vr4120 vr4130 vr4300 vr5000 vr5400 vr5500 86 87MULTILIB_MATCHES = EL=mel EB=meb mfix-vr4120=march?vr4120 \ 88 mfix-vr4130=march?vr4130 89 90# Assume a 41xx-series is the default: we'd need a *mips16 entry if 91# the default processor didn't support mips16. Also assume the 92# default ABI is EABI64 -mlong32. 93MULTILIB_EXCEPTIONS = \ 94 *mabi=32/mlong64* \ 95 *mabi=32/mgp32* \ 96 *mabi=o64/mgp32* \ 97 *mabi=o64/mlong64* \ 98 *mips16/march=vr5* \ 99 *mips16/march=vr4300 \ 100 $(MIPS16_EXCEPTIONS) \ 101 $(VR4300_EXCEPTIONS) 102 103MIPS16_EXCEPTIONS = \ 104 *mabi=32*mips16* \ 105 *mlong64*mips16* 106 107VR4300_EXCEPTIONS = \ 108 *mabi=32*march=vr4300 \ 109 *mgp32*march=vr4300 \ 110 *mlong64*march=vr4300 \ 111 march=vr4300 \ 112 E[LB]/march=vr4300 113