comparison gcc/xcoffout.h @ 111:04ced10e8804

gcc 7
author kono
date Fri, 27 Oct 2017 22:46:09 +0900
parents 77e2b8dfacca
children 84e7813d76e9
comparison
equal deleted inserted replaced
68:561a7518be6b 111:04ced10e8804
1 /* XCOFF definitions. These are needed in dbxout.c, final.c, 1 /* XCOFF definitions. These are needed in dbxout.c, final.c,
2 and xcoffout.h. 2 and xcoffout.h.
3 Copyright (C) 1998, 2000, 2002, 2003, 2004, 2007, 2008 3 Copyright (C) 1998-2017 Free Software Foundation, Inc.
4 Free Software Foundation, Inc.
5 4
6 This file is part of GCC. 5 This file is part of GCC.
7 6
8 GCC is free software; you can redistribute it and/or modify it under 7 GCC is free software; you can redistribute it and/or modify it under
9 the terms of the GNU General Public License as published by the Free 8 the terms of the GNU General Public License as published by the Free
17 16
18 You should have received a copy of the GNU General Public License 17 You should have received a copy of the GNU General Public License
19 along with GCC; see the file COPYING3. If not see 18 along with GCC; see the file COPYING3. If not see
20 <http://www.gnu.org/licenses/>. */ 19 <http://www.gnu.org/licenses/>. */
21 20
21 #ifndef GCC_XCOFFOUT_H
22 #define GCC_XCOFFOUT_H
22 23
23 /* Tags and typedefs are C_DECL in XCOFF, not C_LSYM. */ 24 /* Tags and typedefs are C_DECL in XCOFF, not C_LSYM. */
24 25
25 #define DBX_TYPE_DECL_STABS_CODE N_DECL 26 #define DBX_TYPE_DECL_STABS_CODE N_DECL
26 27
124 /* Names of bss and data sections. These should be unique names for each 125 /* Names of bss and data sections. These should be unique names for each
125 compilation unit. */ 126 compilation unit. */
126 127
127 extern char *xcoff_bss_section_name; 128 extern char *xcoff_bss_section_name;
128 extern char *xcoff_private_data_section_name; 129 extern char *xcoff_private_data_section_name;
130 extern char *xcoff_tls_data_section_name;
131 extern char *xcoff_tbss_section_name;
129 extern char *xcoff_read_only_section_name; 132 extern char *xcoff_read_only_section_name;
130 133
131 /* Last source file name mentioned in a NOTE insn. */ 134 /* Last source file name mentioned in a NOTE insn. */
132 135
133 extern const char *xcoff_lastfile; 136 extern const char *xcoff_lastfile;
156 } while (0) 159 } while (0)
157 160
158 /* Do not emit any marker for XCOFF until assembler allows XFT_CV. */ 161 /* Do not emit any marker for XCOFF until assembler allows XFT_CV. */
159 #define NO_DBX_GCC_MARKER 162 #define NO_DBX_GCC_MARKER
160 163
161 /* Do not break .stabs pseudos into continuations. */ 164 /* XCOFF32 maximum length is 64K; XLC limits to 16K. */
162 #define DBX_CONTIN_LENGTH 0 165 #define DBX_CONTIN_LENGTH 16384
166
167 /* XLC uses '?' as continuation character. */
168 #define DBX_CONTIN_CHAR '?'
163 169
164 /* Don't try to use the `x' type-cross-reference character in DBX data. 170 /* Don't try to use the `x' type-cross-reference character in DBX data.
165 Also has the consequence of putting each struct, union or enum 171 Also has the consequence of putting each struct, union or enum
166 into a separate .stabs, containing only cross-refs to the others. */ 172 into a separate .stabs, containing only cross-refs to the others. */
167 #define DBX_NO_XREFS 173 #define DBX_NO_XREFS
173 #define DEBUG_SYMS_TEXT 179 #define DEBUG_SYMS_TEXT
174 180
175 /* Prototype functions in xcoffout.c. */ 181 /* Prototype functions in xcoffout.c. */
176 182
177 extern int stab_to_sclass (int); 183 extern int stab_to_sclass (int);
178 extern void xcoffout_begin_prologue (unsigned int, const char *); 184 extern void xcoffout_begin_prologue (unsigned int, unsigned int, const char *);
179 extern void xcoffout_begin_block (unsigned, unsigned); 185 extern void xcoffout_begin_block (unsigned, unsigned);
180 extern void xcoffout_end_epilogue (unsigned int, const char *); 186 extern void xcoffout_end_epilogue (unsigned int, const char *);
181 extern void xcoffout_end_function (unsigned int); 187 extern void xcoffout_end_function (unsigned int);
182 extern void xcoffout_end_block (unsigned, unsigned); 188 extern void xcoffout_end_block (unsigned, unsigned);
183 extern int xcoff_assign_fundamental_type_number (tree); 189 extern int xcoff_assign_fundamental_type_number (tree);
184 extern void xcoffout_declare_function (FILE *, tree, const char *); 190 extern void xcoffout_declare_function (FILE *, tree, const char *);
185 extern void xcoffout_source_line (unsigned int, const char *, int, bool); 191 extern void xcoffout_source_line (unsigned int, unsigned int, const char *,
192 int, bool);
193
194 #endif /* GCC_XCOFFOUT_H */