xref: /netbsd-src/external/gpl3/gcc.old/dist/gcc/config/mips/netbsd64.h (revision 413d532bcc3f62d122e56d92e13ac64825a40baf)
1 /* Definitions of target machine for GNU compiler, for MIPS NetBSD systems.
2    Copyright (C) 1993, 1995, 1996, 1997, 1999, 2000, 2001, 2002, 2003, 2004
3    Free Software Foundation, Inc.
4 
5 This file is part of GCC.
6 
7 GCC is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 2, or (at your option)
10 any later version.
11 
12 GCC is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 GNU General Public License for more details.
16 
17 You should have received a copy of the GNU General Public License
18 along with GCC; see the file COPYING.  If not, write to
19 the Free Software Foundation, 51 Franklin Street, Fifth Floor,
20 Boston, MA 02110-1301, USA.  */
21 
22 /* Force the default endianness and ABI flags onto the command line
23    in order to make the other specs easier to write.  */
24 
25 #undef DRIVER_SELF_SPECS
26 #define DRIVER_SELF_SPECS \
27   BASE_DRIVER_SELF_SPECS \
28   "%{!EB:%{!EL:%(endian_spec)}}", \
29   "%{!mabi=*: -mabi=n32}"
30 
31 /* Define default target values.  */
32 
33 #undef MACHINE_TYPE
34 #if TARGET_ENDIAN_DEFAULT != 0
35 #define MACHINE_TYPE "NetBSD/mips64eb ELF"
36 #else
37 #define MACHINE_TYPE "NetBSD/mips64el ELF"
38 #endif
39 
40 /* Provide a LINK_SPEC appropriate for a NetBSD/mips target.
41    This is a copy of LINK_SPEC from <netbsd-elf.h> tweaked for
42    the MIPS target.  */
43 
44 #undef LINK_SPEC
45 #define LINK_SPEC \
46   "%{mabi=64:-m elf64%{EB:b}%{EL:l}tsmip} \
47    %{mabi=32:-m elf32%{EB:b}%{EL:l}tsmip} \
48    %{mabi=o64:-m elf64%{EB:b}%{EL:l}tsmip} \
49    %{mabi=n32:-m elf32%{EB:b}%{EL:l}tsmipn32} \
50    %(endian_spec) \
51    %{G*} %{mips1} %{mips2} %{mips3} %{mips4} \
52    %{mips32} %{mips32r2} %{mips64} %{mips64r2} \
53    %{bestGnum} %{call_shared} %{no_archive} %{exact_version} \
54    %(netbsd_link_spec)"
55