Deleted Added
full compact
1/* svr3.h -- operating system specific defines to be used when
2 targeting GCC for some generic System V Release 3 system.
3 Copyright (C) 1991 Free Software Foundation, Inc.
1/* Operating system specific defines to be used when targeting GCC for
2 generic System V Release 3 system.
3 Copyright (C) 1991, 1996 Free Software Foundation, Inc.
4 Contributed by Ron Guilmette (rfg@monkeys.com).
5
5 Written by Ron Guilmette (rfg@netcom.com).
6
6This file is part of GNU CC.
7
8GNU CC is free software; you can redistribute it and/or modify
9it under the terms of the GNU General Public License as published by
10the Free Software Foundation; either version 2, or (at your option)
11any later version.
12
13GNU CC is distributed in the hope that it will be useful,

--- 83 unchanged lines hidden (view full) ---

97 } while (0)
98
99#if 0 /* For now, let's leave these machine-specific. */
100/* Use crt1.o as a startup file and crtn.o as a closing file. */
101
102#define STARTFILE_SPEC \
103 "%{pg:gcrt1.o%s}%{!pg:%{p:mcrt1.o%s}%{!p:crt1.o%s}}"
104
105#ifdef CROSS_COMPILE
106#define LIB_SPEC "-lc crtn.o%s"
107#else
108#define LIB_SPEC "%{p:-L/usr/lib/libp}%{pg:-L/usr/lib/libp} -lc crtn.o%s"
109#endif
110
111/* Special flags for the linker. I don't know what they do. */
112
113#define LINK_SPEC "%{T*} %{z:-lm}"
114#endif
115
116/* Allow #sccs in preprocessor. */
117

--- 36 unchanged lines hidden (view full) ---

154#define WCHAR_TYPE_SIZE BITS_PER_WORD
155
156/* Assembler pseudos to introduce constants of various size. These
157 definitions should work for most svr3 systems. */
158
159#undef ASM_BYTE_OP
160#define ASM_BYTE_OP "\t.byte"
161
159/* This is how to output a reference to a user-level label named NAME.
160 `assemble_name' uses this.
162/* The prefix to add to user-visible assembler symbols.
163
164 For System V Release 3 the convention is to prepend a leading
165 underscore onto user-level symbol names. */
166
165#undef ASM_OUTPUT_LABELREF
166#define ASM_OUTPUT_LABELREF(FILE,NAME) fprintf (FILE, "_%s", NAME)
167#undef USER_LABEL_PREFIX
168#define USER_LABEL_PREFIX "_"
169
170/* This is how to output an internal numbered label where
171 PREFIX is the class of label and NUM is the number within the class.
172
173 For most svr3 systems, the convention is that any symbol which begins
174 with a period is not put into the linker symbol table by the assembler. */
175
176#undef ASM_OUTPUT_INTERNAL_LABEL

--- 67 unchanged lines hidden (view full) ---

244do { \
245 func_ptr *p, *beg = alloca (0); \
246 for (p = beg; *p; ) \
247 (*p++) (); \
248} while (0)
249
250#endif /* STACK_GROWS_DOWNWARD */
251
250/* Add extra sections .init and .fini, in addition to .bss from att386.h. */
252/* Add extra sections .rodata, .init and .fini. */
253
254#undef EXTRA_SECTIONS
253#define EXTRA_SECTIONS in_const, in_bss, in_init, in_fini
255#define EXTRA_SECTIONS in_const, in_init, in_fini
256
257#undef EXTRA_SECTION_FUNCTIONS
258#define EXTRA_SECTION_FUNCTIONS \
259 CONST_SECTION_FUNCTION \
258 BSS_SECTION_FUNCTION \
260 INIT_SECTION_FUNCTION \
261 FINI_SECTION_FUNCTION
262
262#define BSS_SECTION_FUNCTION \
263void \
264bss_section () \
265{ \
266 if (in_section != in_bss) \
267 { \
268 fprintf (asm_out_file, "\t%s\n", BSS_SECTION_ASM_OP); \
269 in_section = in_bss; \
270 } \
271}
272
263#define INIT_SECTION_FUNCTION \
264void \
265init_section () \
266{ \
267 if (in_section != in_init) \
268 { \
269 fprintf (asm_out_file, "\t%s\n", INIT_SECTION_ASM_OP); \
270 in_section = in_init; \

--- 105 unchanged lines hidden ---