svr3.h (18334) | svr3.h (50397) |
---|---|
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). |
4 | 5 |
5 Written by Ron Guilmette (rfg@netcom.com). 6 | |
7This file is part of GNU CC. 8 9GNU CC is free software; you can redistribute it and/or modify 10it under the terms of the GNU General Public License as published by 11the Free Software Foundation; either version 2, or (at your option) 12any later version. 13 14GNU CC is distributed in the hope that it will be useful, --- 83 unchanged lines hidden (view full) --- 98 } while (0) 99 100#if 0 /* For now, let's leave these machine-specific. */ 101/* Use crt1.o as a startup file and crtn.o as a closing file. */ 102 103#define STARTFILE_SPEC \ 104 "%{pg:gcrt1.o%s}%{!pg:%{p:mcrt1.o%s}%{!p:crt1.o%s}}" 105 | 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 |
|
106#define LIB_SPEC "%{p:-L/usr/lib/libp}%{pg:-L/usr/lib/libp} -lc crtn.o%s" | 108#define LIB_SPEC "%{p:-L/usr/lib/libp}%{pg:-L/usr/lib/libp} -lc crtn.o%s" |
109#endif |
|
107 108/* Special flags for the linker. I don't know what they do. */ 109 110#define LINK_SPEC "%{T*} %{z:-lm}" 111#endif 112 113/* Allow #sccs in preprocessor. */ 114 --- 36 unchanged lines hidden (view full) --- 151#define WCHAR_TYPE_SIZE BITS_PER_WORD 152 153/* Assembler pseudos to introduce constants of various size. These 154 definitions should work for most svr3 systems. */ 155 156#undef ASM_BYTE_OP 157#define ASM_BYTE_OP "\t.byte" 158 | 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. |
161 162 For System V Release 3 the convention is to prepend a leading 163 underscore onto user-level symbol names. */ 164 | 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 "_" |
167 168/* This is how to output an internal numbered label where 169 PREFIX is the class of label and NUM is the number within the class. 170 171 For most svr3 systems, the convention is that any symbol which begins 172 with a period is not put into the linker symbol table by the assembler. */ 173 174#undef ASM_OUTPUT_INTERNAL_LABEL --- 67 unchanged lines hidden (view full) --- 242do { \ 243 func_ptr *p, *beg = alloca (0); \ 244 for (p = beg; *p; ) \ 245 (*p++) (); \ 246} while (0) 247 248#endif /* STACK_GROWS_DOWNWARD */ 249 | 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. */ |
251 252#undef EXTRA_SECTIONS | 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 |
254 255#undef EXTRA_SECTION_FUNCTIONS 256#define EXTRA_SECTION_FUNCTIONS \ 257 CONST_SECTION_FUNCTION \ | 256 257#undef EXTRA_SECTION_FUNCTIONS 258#define EXTRA_SECTION_FUNCTIONS \ 259 CONST_SECTION_FUNCTION \ |
258 BSS_SECTION_FUNCTION \ | |
259 INIT_SECTION_FUNCTION \ 260 FINI_SECTION_FUNCTION 261 | 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 | |
273#define INIT_SECTION_FUNCTION \ 274void \ 275init_section () \ 276{ \ 277 if (in_section != in_init) \ 278 { \ 279 fprintf (asm_out_file, "\t%s\n", INIT_SECTION_ASM_OP); \ 280 in_section = in_init; \ --- 105 unchanged lines hidden --- | 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 --- |