]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/config/alpha/netbsd.h
netbsd.h (ENABLE_EXECUTE_STACK): Remove.
[thirdparty/gcc.git] / gcc / config / alpha / netbsd.h
CommitLineData
9d654bba
RH
1/* Definitions of target machine for GNU compiler,
2 for Alpha NetBSD systems.
eb1eb914 3 Copyright (C) 1998, 2002, 2003, 2004, 2005, 2007, 2011
2f83c7d6 4 Free Software Foundation, Inc.
9d654bba 5
7ec022b2 6This file is part of GCC.
9d654bba 7
7ec022b2 8GCC is free software; you can redistribute it and/or modify
9d654bba 9it under the terms of the GNU General Public License as published by
2f83c7d6 10the Free Software Foundation; either version 3, or (at your option)
9d654bba
RH
11any later version.
12
7ec022b2 13GCC is distributed in the hope that it will be useful,
9d654bba
RH
14but WITHOUT ANY WARRANTY; without even the implied warranty of
15MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16GNU General Public License for more details.
17
18You should have received a copy of the GNU General Public License
2f83c7d6
NC
19along with GCC; see the file COPYING3. If not see
20<http://www.gnu.org/licenses/>. */
9d654bba
RH
21
22#undef TARGET_DEFAULT
8bea7f7c 23#define TARGET_DEFAULT (MASK_FPREGS | MASK_GAS)
9d654bba 24
12a41c22
NB
25#define TARGET_OS_CPP_BUILTINS() \
26 do { \
53a428b5 27 NETBSD_OS_CPP_BUILTINS_ELF(); \
12a41c22 28 } while (0)
9d654bba 29
55f49e3d
JT
30
31/* NetBSD doesn't use the LANGUAGE* built-ins. */
32#undef SUBTARGET_LANGUAGE_CPP_BUILTINS
33#define SUBTARGET_LANGUAGE_CPP_BUILTINS() /* nothing */
34
35
9d654bba 36/* Show that we need a GP when profiling. */
4f1c5cce
RH
37#undef TARGET_PROFILING_NEEDS_GP
38#define TARGET_PROFILING_NEEDS_GP 1
f982f805
JT
39
40
f326fd7a 41/* Provide a CPP_SPEC appropriate for NetBSD/alpha. We use
53a428b5
JT
42 this to pull in CPP specs that all NetBSD configurations need. */
43
f326fd7a
RH
44#undef CPP_SPEC
45#define CPP_SPEC NETBSD_CPP_SPEC
53a428b5 46
f326fd7a
RH
47#undef EXTRA_SPECS
48#define EXTRA_SPECS \
854928a0 49 { "netbsd_link_spec", NETBSD_LINK_SPEC_ELF }, \
adde288a
JT
50 { "netbsd_entry_point", NETBSD_ENTRY_POINT }, \
51 { "netbsd_endfile_spec", NETBSD_ENDFILE_SPEC },
f982f805 52
f982f805 53
854928a0 54/* Provide a LINK_SPEC appropriate for a NetBSD/alpha ELF target. */
f982f805 55
40039424 56#undef LINK_SPEC
854928a0
JT
57#define LINK_SPEC \
58 "%{G*} %{relax:-relax} \
59 %{O*:-O3} %{!O*:-O1} \
60 %(netbsd_link_spec)"
61
62#define NETBSD_ENTRY_POINT "__start"
f982f805
JT
63
64
65/* Provide an ENDFILE_SPEC appropriate for NetBSD/alpha ELF. Here we
66 add crtend.o, which provides part of the support for getting
67 C++ file-scope static objects deconstructed after exiting "main".
68
69 We also need to handle the GCC option `-ffast-math'. */
70
71#undef ENDFILE_SPEC
72#define ENDFILE_SPEC \
0691dde9 73 "%{Ofast|ffast-math|funsafe-math-optimizations:crtfm%O%s} \
adde288a 74 %(netbsd_endfile_spec)"
f982f805 75
10e48e39 76#define HAVE_ENABLE_EXECUTE_STACK