1 /* Definitions for MIPS systems using GNU userspace and n32/64 abi.
2    Copyright (C) 2002-2013 Free Software Foundation, Inc.
3 
4 This file is part of GCC.
5 
6 GCC is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 3, or (at your option)
9 any later version.
10 
11 GCC is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 GNU General Public License for more details.
15 
16 You should have received a copy of the GNU General Public License
17 along with GCC; see the file COPYING3.  If not see
18 <http://www.gnu.org/licenses/>.  */
19 
20 /* Force the default endianness and ABI flags onto the command line
21    in order to make the other specs easier to write.  */
22 
23 #define LINUX64_DRIVER_SELF_SPECS \
24   LINUX_DRIVER_SELF_SPECS \
25   " %{!EB:%{!EL:%(endian_spec)}}" \
26   " %{!mabi=*: -" MULTILIB_ABI_DEFAULT "}"
27 
28 #undef DRIVER_SELF_SPECS
29 #define DRIVER_SELF_SPECS \
30   BASE_DRIVER_SELF_SPECS, \
31   LINUX64_DRIVER_SELF_SPECS
32 
33 #undef GNU_USER_TARGET_LINK_SPEC
34 #define GNU_USER_TARGET_LINK_SPEC "\
35 %{G*} %{EB} %{EL} %{mips1} %{mips2} %{mips3} %{mips4} \
36 %{shared} \
37  %(endian_spec) \
38   %{!shared: \
39     %{!static: \
40       %{rdynamic:-export-dynamic} \
41       %{mabi=n32: -dynamic-linker " GNU_USER_DYNAMIC_LINKERN32 "} \
42       %{mabi=64: -dynamic-linker " GNU_USER_DYNAMIC_LINKER64 "} \
43       %{mabi=32: -dynamic-linker " GNU_USER_DYNAMIC_LINKER32 "}} \
44     %{static:-static}} \
45 %{mabi=n32:-m" GNU_USER_LINK_EMULATIONN32 "} \
46 %{mabi=64:-m" GNU_USER_LINK_EMULATION64 "} \
47 %{mabi=32:-m" GNU_USER_LINK_EMULATION32 "}"
48 #undef LINK_SPEC
49 #define LINK_SPEC GNU_USER_TARGET_LINK_SPEC
50 
51 #undef LOCAL_LABEL_PREFIX
52 #define LOCAL_LABEL_PREFIX (TARGET_OLDABI ? "$" : ".")
53