source: branches/libc-0.6/src/binutils/include/coff/ia64.h

Last change on this file was 610, checked in by bird, 22 years ago

This commit was generated by cvs2svn to compensate for changes in r609,
which included commits to RCS files with non-trunk default branches.

  • Property cvs2svn:cvs-rev set to 1.1.1.2
  • Property svn:eol-style set to native
  • Property svn:executable set to *
File size: 2.8 KB
Line 
1/* coff information for HP/Intel IA-64.
2
3 Copyright 2001 Free Software Foundation, Inc.
4
5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; either version 2 of the License, or
8 (at your option) any later version.
9
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
14
15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
18
19#define DO_NOT_DEFINE_AOUTHDR
20#define L_LNNO_SIZE 2
21#define INCLUDE_COMDAT_FIELDS_IN_AUXENT
22#include "coff/external.h"
23
24#define IA64MAGIC 0x200
25
26#define IA64BADMAG(x) (((x).f_magic != IA64MAGIC))
27
28/* Bits for f_flags:
29 * F_RELFLG relocation info stripped from file
30 * F_EXEC file is executable (no unresolved external references)
31 * F_LNNO line numbers stripped from file
32 * F_LSYMS local symbols stripped from file
33 * F_AR32WR file has byte ordering of an AR32WR machine (e.g. vax)
34 */
35
36#define F_RELFLG (0x0001)
37#define F_EXEC (0x0002)
38#define F_LNNO (0x0004)
39#define F_LSYMS (0x0008)
40
41/********************** AOUT "OPTIONAL HEADER" **********************/
42typedef struct
43{
44 char magic[2]; /* type of file */
45 char vstamp[2]; /* version stamp */
46 char tsize[4]; /* text size in bytes, padded to FW bdry*/
47 char dsize[4]; /* initialized data " " */
48 char bsize[4]; /* uninitialized data " " */
49 char entry[4]; /* entry pt. */
50 char text_start[4]; /* base of text used for this file */
51#ifndef BFD64
52 char data_start[4]; /* base of data used for this file */
53#endif
54}
55AOUTHDR;
56
57#define PE32MAGIC 0x10b /* 32-bit image */
58#define PE32PMAGIC 0x20b /* 32-bit image inside 64-bit address space */
59
60#define PE32PBADMAG(x) (((x).f_magic != PE32PMAGIC))
61
62#define AOUTSZ 108
63#define AOUTHDRSZ 108
64
65#define OMAGIC 0404 /* object files, eg as output */
66#define ZMAGIC 0413 /* demand load format, eg normal ld output */
67#define STMAGIC 0401 /* target shlib */
68#define SHMAGIC 0443 /* host shlib */
69
70/* define some NT default values */
71/* #define NT_IMAGE_BASE 0x400000 moved to internal.h */
72#define NT_SECTION_ALIGNMENT 0x1000
73#define NT_FILE_ALIGNMENT 0x200
74#define NT_DEF_RESERVE 0x100000
75#define NT_DEF_COMMIT 0x1000
76
77/********************** RELOCATION DIRECTIVES **********************/
78
79struct external_reloc
80{
81 char r_vaddr[4];
82 char r_symndx[4];
83 char r_type[2];
84};
85
86#define RELOC struct external_reloc
87#define RELSZ 10
88
Note: See TracBrowser for help on using the repository browser.