* Mainline merge as of 2006-02-16 (@111136).
[official-gcc.git] / gcc / config / pa / pa-pro-end.h
blobedb4908cea7fe29f24fc01e7f6f7a192806a440e
1 /* Definitions of target machine for GNU compiler, for PRO.
2 Copyright (C) 1996, 1997, 2002, 2003, 2004 Free Software Foundation, Inc.
4 This file is part of GCC.
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 2, or (at your option)
9 any later version.
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.
16 You should have received a copy of the GNU General Public License
17 along with GCC; see the file COPYING. If not, write to
18 the Free Software Foundation, 51 Franklin Street, Fifth Floor,
19 Boston, MA 02110-1301, USA. */
21 /* Make GCC agree with types.h. */
22 #undef SIZE_TYPE
23 #undef PTRDIFF_TYPE
25 #define SIZE_TYPE "unsigned int"
26 #define PTRDIFF_TYPE "int"
28 #undef TARGET_OS_CPP_BUILTINS
29 #define TARGET_OS_CPP_BUILTINS() \
30 do \
31 { \
32 if (!c_dialect_cxx () && !flag_iso) \
33 { \
34 builtin_define ("hppa"); \
35 builtin_define_std ("PWB"); \
36 } \
37 builtin_define ("__pro__"); \
38 builtin_assert ("system=pro"); \
39 } \
40 while (0)
42 /* Like the default, except no -lg. */
43 #undef LIB_SPEC
44 #define LIB_SPEC "%{!p:%{!pg:-lc}}%{p: -L/lib/libp/ -lc}%{pg: -L/lib/libp/ -lc}"
46 /* hpux8 and later have C++ compatible include files, so do not
47 pretend they are `extern "C"'. */
48 #define NO_IMPLICIT_EXTERN_C
50 /* We don't want a crt0.o to get linked in automatically, we want the
51 linker script to pull it in. */
52 #undef STARTFILE_SPEC
53 #define STARTFILE_SPEC ""
55 /* We need to override the following two macros defined in elfos.h since
56 the .comm directive has a different syntax and it can't be used for
57 local common symbols. */
58 #undef ASM_OUTPUT_ALIGNED_COMMON
59 #define ASM_OUTPUT_ALIGNED_COMMON(FILE, NAME, SIZE, ALIGN) \
60 pa_asm_output_aligned_common (FILE, NAME, SIZE, ALIGN)
62 #undef ASM_OUTPUT_ALIGNED_LOCAL
63 #define ASM_OUTPUT_ALIGNED_LOCAL(FILE, NAME, SIZE, ALIGN) \
64 pa_asm_output_aligned_local (FILE, NAME, SIZE, ALIGN)