xref: /openbsd/gnu/usr.bin/gcc/gcc/config/mips/t-vr (revision c87b03e5)
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_EXTRA = $(srcdir)/config/mips/mips16.S
11EXTRA_MULTILIB_PARTS = crtbegin.o crtend.o crti.o crtn.o
12
13# Assemble startup files.
14$(T)crti.o: $(srcdir)/config/mips/crti.asm $(GCC_PASSES)
15	$(GCC_FOR_TARGET) $(GCC_CFLAGS) $(MULTILIB_CFLAGS) $(INCLUDES) \
16	-c -o $(T)crti.o -x assembler-with-cpp $(srcdir)/config/mips/crti.asm
17
18$(T)crtn.o: $(srcdir)/config/mips/crtn.asm $(GCC_PASSES)
19	$(GCC_FOR_TARGET) $(GCC_CFLAGS) $(MULTILIB_CFLAGS) $(INCLUDES) \
20	-c -o $(T)crtn.o -x assembler-with-cpp $(srcdir)/config/mips/crtn.asm
21
22# END boiler-plate
23
24# Endianness: EB or EL
25#
26# ABIs: mabi=32
27#	mabi=o64
28#	mabi=eabi
29#	meabi=eabi/mlong32
30#	mabi=eabi/mgp32
31#	mabi=eabi/mgp32/mlong64
32#
33# Architecture: march=vr5400
34#		march=vr4100
35#		march=vr4100/mips16
36#
37# Total: 2 * 6 * 3 = 36 multilibs.
38MULTILIB_OPTIONS =			\
39	EL/EB				\
40	mabi=32/mabi=o64/mabi=eabi	\
41	mgp32				\
42	mlong64				\
43	mips16				\
44	march=vr5400/march=vr4100
45
46MULTILIB_DIRNAMES =	\
47	el eb		\
48	o32 o64 eabi	\
49	gp32		\
50	long64		\
51	mips16		\
52	vr5400 vr4100
53
54MULTILIB_MATCHES = EL=mel EB=meb
55
56# Assume a 4000-series is the default: we'd need a *mips16 entry if
57# the default processor didn't support mips16.  Also assume o64,
58# which means we need to extend the o64 exceptions to combinations
59# without a -mabi flag.
60MULTILIB_EXCEPTIONS =				\
61	*mabi=32/mlong64*			\
62	*mabi=32/mgp32*				\
63	*mabi=o64/mgp32*			\
64	*mabi=o64/mlong64*			\
65	mgp32* E[LB]/mgp32*			\
66	mlong64* E[LB]/mlong64*			\
67	*mips16/march=vr5*
68