Add x prefix to v850e case for handling --with-cpu=v850e.
[official-gcc.git] / gcc / config / mips / t-vr
blob7af78ab21f79dfedbbeea8be2875bfeca355e488
1 # BEGIN boiler-plate MIPS stuff
3 # Don't let CTOR_LIST end up in sdata section.
4 CRTSTUFF_T_CFLAGS = -G 0
6 # We must build libgcc2.a with -G 0, in case the user wants to link
7 # without the $gp register.
8 TARGET_LIBGCC2_CFLAGS = -G 0
10 LIB2FUNCS_EXTRA = $(srcdir)/config/mips/mips16.S
11 EXTRA_MULTILIB_PARTS = crtbegin.o crtend.o crti.o crtn.o
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
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
22 # END boiler-plate
24 # Endianness: EB or EL
26 # ABIs: mabi=32
27 #       mabi=o64
28 #       mabi=eabi
29 #       meabi=eabi/mlong32
30 #       mabi=eabi/mgp32
31 #       mabi=eabi/mgp32/mlong64
33 # Architecture: march=vr5400
34 #               march=vr4100
35 #               march=vr4100/mips16
37 # Total: 2 * 6 * 3 = 36 multilibs.
38 MULTILIB_OPTIONS =                      \
39         EL/EB                           \
40         mabi=32/mabi=o64/mabi=eabi      \
41         mgp32                           \
42         mlong32/mlong64                 \
43         mips16                          \
44         march=vr5400/march=vr4100
46 MULTILIB_DIRNAMES =     \
47         el eb           \
48         o32 o64 eabi    \
49         gp32            \
50         long32 long64   \
51         mips16          \
52         vr5400 vr4100
54 MULTILIB_MATCHES = EL=mel EB=meb
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.
60 MULTILIB_EXCEPTIONS =                           \
61         *mabi=32/mlong64*                       \
62         *mabi=32/mgp32/mlong64*                 \
63         *mabi=o64/mgp32*                        \
64         *mabi=o64/mlong64*                      \
65         mgp32* E[LB]/mgp32*                     \
66         mlong64* E[LB]/mlong64*                 \
67         *mips16/march=vr5*
69 # The real value of this macro is very long, so generate it using a
70 # shell fragment.  The idea is to tell the GCC driver how -mabi,
71 # -mgp32, -mlong32 and -mlong64 interact, so that it choses the right
72 # library when some options are specified redundantly (for example,
73 # -mabi=32 -mgp32).
75 # The core equalities are listed after "for changes in ".  The first
76 # entry assumes o64 is the default ABI.
77 MULTILIB_REDUNDANT_DIRS=` \
78         for endian in '' 'el' 'eb'; do                                  \
79           for arch in '' 'vr5400' 'vr4100'                              \
80                       'mips16' 'mips16/vr100'; do                       \
81             for changes in long32=                                      \
82                            o32/gp32=o32                                 \
83                            o32/gp32/long32=o32                          \
84                            o32/long32=o32                               \
85                            o64/long32=o64                               \
86                            eabi/gp32/long32=eabi/gp32                   \
87                            eabi/long64=eabi; do                         \
88               from=\`echo \$${changes} | sed 's/=.*//'\`;               \
89               to=\`echo \$${changes} | sed 's/.*=//'\`;                 \
90               echo \$$endian \$$from \$$arch=\$$endian \$$to \$$arch    \
91                 | sed -e 's: *= *:=:'                                   \
92                       -e 's:  *:/:g'                                    \
93                       -e 's:=$$:=.:';                                   \
94             done;                                                       \
95           done;                                                         \
96         done`