comparison gcc/collect2-aix.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 /* AIX cross support for collect2. 1 /* AIX cross support for collect2.
2 Copyright (C) 2009 Free Software Foundation, Inc. 2 Copyright (C) 2009-2017 Free Software Foundation, Inc.
3 3
4 This file is part of GCC. 4 This file is part of GCC.
5 5
6 GCC is free software; you can redistribute it and/or modify it under 6 GCC is free software; you can redistribute it and/or modify it under
7 the terms of the GNU General Public License as published by the Free 7 the terms of the GNU General Public License as published by the Free
15 15
16 You should have received a copy of the GNU General Public License 16 You should have received a copy of the GNU General Public License
17 along with GCC; see the file COPYING3. If not see 17 along with GCC; see the file COPYING3. If not see
18 <http://www.gnu.org/licenses/>. */ 18 <http://www.gnu.org/licenses/>. */
19 19
20 #ifndef GCC_COLLECT2_AIX_H
21 #define GCC_COLLECT2_AIX_H
20 /* collect2-aix.c requires mmap support. It should otherwise be 22 /* collect2-aix.c requires mmap support. It should otherwise be
21 fairly portable. */ 23 fairly portable. */
22 #if defined(CROSS_DIRECTORY_STRUCTURE) \ 24 #if defined(CROSS_DIRECTORY_STRUCTURE) \
23 && defined(TARGET_AIX_VERSION) \ 25 && defined(TARGET_AIX_VERSION) \
24 && HAVE_MMAP 26 && HAVE_MMAP
27 29
28 /* ------------------------------------------------------------------------- 30 /* -------------------------------------------------------------------------
29 Definitions adapted from bfd. (Fairly heavily adapted in some cases.) 31 Definitions adapted from bfd. (Fairly heavily adapted in some cases.)
30 ------------------------------------------------------------------------- */ 32 ------------------------------------------------------------------------- */
31 33
32 /* Compatiblity types for bfd. */ 34 /* Compatibility types for bfd. */
33 typedef unsigned HOST_WIDE_INT bfd_vma; 35 typedef unsigned HOST_WIDE_INT bfd_vma;
34 36
35 /* The size of an archive's fl_magic field. */ 37 /* The size of an archive's fl_magic field. */
36 #define FL_MAGIC_SIZE 8 38 #define FL_MAGIC_SIZE 8
37 39
133 char f_symptr[4]; 135 char f_symptr[4];
134 136
135 /* The number of entries in the symbol table. */ 137 /* The number of entries in the symbol table. */
136 char f_nsyms[4]; 138 char f_nsyms[4];
137 139
138 /* The size of the auxillary header. */ 140 /* The size of the auxiliary header. */
139 char f_opthdr[2]; 141 char f_opthdr[2];
140 142
141 /* Flags. */ 143 /* Flags. */
142 char f_flags[2]; 144 char f_flags[2];
143 }; 145 };
155 char f_timdat[4]; 157 char f_timdat[4];
156 158
157 /* The offset of the symbol table from the start of the file. */ 159 /* The offset of the symbol table from the start of the file. */
158 char f_symptr[8]; 160 char f_symptr[8];
159 161
160 /* The size of the auxillary header. */ 162 /* The size of the auxiliary header. */
161 char f_opthdr[2]; 163 char f_opthdr[2];
162 164
163 /* Flags. */ 165 /* Flags. */
164 char f_flags[2]; 166 char f_flags[2];
165 167
220 char n_type[2]; 222 char n_type[2];
221 223
222 /* The class of symbol (a C_* value). */ 224 /* The class of symbol (a C_* value). */
223 char n_sclass[1]; 225 char n_sclass[1];
224 226
225 /* The number of auxillary symbols attached to this entry. */ 227 /* The number of auxiliary symbols attached to this entry. */
226 char n_numaux[1]; 228 char n_numaux[1];
227 }; 229 };
228 230
229 /* Definitions required by collect2. */ 231 /* Definitions required by collect2. */
230 #define C_EXT 2 232 #define C_EXT 2
231 233
232 #define F_SHROBJ 0x2000 234 #define F_SHROBJ 0x2000
235 #define F_LOADONLY 0x4000
233 236
234 #define N_UNDEF ((short) 0) 237 #define N_UNDEF ((short) 0)
235 #define N_TMASK 060 238 #define N_TMASK 060
236 #define N_BTSHFT 4 239 #define N_BTSHFT 4
237 240
297 extern char *ldgetname (LDFILE *, SYMENT *); 300 extern char *ldgetname (LDFILE *, SYMENT *);
298 extern int ldtbread (LDFILE *, long, SYMENT *); 301 extern int ldtbread (LDFILE *, long, SYMENT *);
299 extern int ldclose (LDFILE *); 302 extern int ldclose (LDFILE *);
300 303
301 #endif 304 #endif
305
306 #endif /* GCC_COLLECT2_AIX_H */