OSDN Git Service

* config/alpha/osf5.h (TARGET_LD_BUGGY_LDGP): New.
[pf3gnuchains/gcc-fork.git] / gcc / config / nextstep21.h
1 /* nextstep.h -- operating system specific defines to be used when
2    targeting GCC for NeXTSTEP.
3    Copyright (C) 1989, 1990, 1991, 1992, 1993 Free Software Foundation, Inc.
4
5 This file is part of GNU CC.
6
7 GNU CC 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 GNU CC 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 GNU CC; see the file COPYING.  If not, write to
19 the Free Software Foundation, 59 Temple Place - Suite 330,
20 Boston, MA 02111-1307, USA.  */
21
22
23 /* changed for NeXTStep 2.1, Ch. Kranz, 2/94, 3/94 */
24 #include "nextstep.h"
25
26 /* set flag_gnu_linker=0, use collect2 for linking */
27 #undef USE_COLLECT2
28 #define USE_COLLECT2
29
30 /* use this until a newer gdb for NeXTStep21 is available */
31 #define DEFAULT_GDB_EXTENSIONS 0
32
33 /* we need the call to __main to start all global destructors and constructors
34    correctly, so undef INIT_SECTION_ASM_OP, (see libgcc2.c line 1965) 
35    and define INVOKE_main */
36 #undef  INIT_SECTION_ASM_OP
37 #define INVOKE__main
38
39 /* We call the global destructors, constructors from __main */
40 #undef  ASM_OUTPUT_CONSTRUCTOR
41 #undef  ASM_OUTPUT_DESTRUCTOR
42
43 #undef ASM_FILE_END
44 #define ASM_FILE_END(FILE)                                      \
45   do {                                                          \
46       if (strcmp (language_string, "GNU C++") == 0)             \
47       {                                                         \
48         ASM_OUTPUT_ALIGN (FILE, 1);                             \
49       }                                                         \
50   } while (0) 
51 /* deleted: destructor_section ();                              \ */
52 /* deleted: constructor_section ();                             \ */
53
54 /* Ensure correct alignment of bss data.  */
55 /* ASM_OUTPUT_ALIGNED_LOCAL not needed */
56 /* need ASM_OUTPUT_LOCAL instead for old NeXT-as */
57 /* look in varasm.c, line 1062 and 1476 */
58 #undef  ASM_OUTPUT_ALIGNED_LOCAL
59 #undef ASM_OUTPUT_LOCAL
60 #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)  \
61 ( fputs (".lcomm ", (FILE)),                    \
62   assemble_name ((FILE), (NAME)),               \
63   fprintf ((FILE), ",%u\n", (ROUNDED)))
64