t-vr   [plain text]


# 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*