PR tree-optimize/23817
[official-gcc.git] / gcc / config / mips / t-vr
blob9c046b0eb04bb130188a6e079db01e664452a0a9
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_STATIC_EXTRA = $(srcdir)/config/mips/mips16.S \
11                          $(srcdir)/config/mips/vr4120-div.S
12 EXTRA_MULTILIB_PARTS = crtbegin.o crtend.o crti.o crtn.o
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
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
23 # END boiler-plate
25 # Main multilibs
26 # --------------
28 # Endianness: EB or EL
30 # ABIs: mabi=32
31 #       mabi=o64
32 #       mabi=eabi
33 #       mabi=eabi/mlong32
34 #       mabi=eabi/mgp32
35 #       mabi=eabi/mgp32/mlong64
37 # Architecture: march=vr4120 with -mfix-vr4120
38 #               march=vr4130 with -mfix-vr4130 (default)
39 #               march=vr5000
40 #               march=vr5400
41 #               march=vr5500
43 # Total: 2 * 6 * 5 = 60 multilibs.
46 # Extra vr4300 multilibs
47 # ----------------------
49 # Endianness: EB or EL
51 # ABI: o64
53 # Architecture: vr4300.
55 # Total: 2 * 1 * 2 = 2 multilibs.
58 # Extra MIPS16 multilibs
59 # ----------------------
61 # Endianness: EB or EL
63 # ABIs: mabi=o64
64 #       mabi=eabi/mlong32
65 #       mabi=eabi/mgp32
67 # Architecture: march=vr4120 with -mfix-vr4120
68 #               march=vr4130 with -mfix-vr4130 (default)
70 # Total: 2 * 3 * 2 = 12 multilibs.
71 MULTILIB_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
79 MULTILIB_DIRNAMES =     \
80         el eb           \
81         o32 o64 eabi    \
82         gp32            \
83         long64          \
84         mips16          \
85         vr4120 vr4130 vr4300 vr5000 vr5400 vr5500
87 MULTILIB_MATCHES = EL=mel EB=meb mfix-vr4120=march?vr4120 \
88                    mfix-vr4130=march?vr4130
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.
93 MULTILIB_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)
103 MIPS16_EXCEPTIONS =                             \
104         *mabi=32*mips16*                        \
105         *mlong64*mips16*
107 VR4300_EXCEPTIONS =                             \
108         *mabi=32*march=vr4300                   \
109         *mgp32*march=vr4300                     \
110         *mlong64*march=vr4300                   \
111         march=vr4300                            \
112         E[LB]/march=vr4300