diff options
-rw-r--r-- | include/coff/ChangeLog | 9 | ||||
-rw-r--r-- | include/coff/internal.h | 25 |
2 files changed, 30 insertions, 4 deletions
diff --git a/include/coff/ChangeLog b/include/coff/ChangeLog index b800ac8..3b39ade 100644 --- a/include/coff/ChangeLog +++ b/include/coff/ChangeLog @@ -1,3 +1,12 @@ +Wed May 1 19:21:03 1996 Ian Lance Taylor <ian@cygnus.com> + + * internal.h (SCNNMLEN): Define. + (struct internal_scnhdr): Use SCNNMLEN for s_name field. + +Fri Mar 29 13:41:25 1996 Ian Lance Taylor <ian@cygnus.com> + + * pe.h: Define IMAGE_COMDAT codes. + Wed Mar 27 17:29:42 1996 Ian Lance Taylor <ian@cygnus.com> * arm.h (union external_auxent): Add x_checksum, x_associated, and diff --git a/include/coff/internal.h b/include/coff/internal.h index 40d7ea8..ff0babd 100644 --- a/include/coff/internal.h +++ b/include/coff/internal.h @@ -1,6 +1,9 @@ /* Internal format of COFF object file data structures, for GNU BFD. This file is part of BFD, the Binary File Descriptor library. */ +#ifndef GNU_COFF_INTERNAL_H +#define GNU_COFF_INTERNAL_H 1 + /* First, make "signed char" work, even on old compilers. */ #ifndef signed #ifndef __STDC__ @@ -158,6 +161,7 @@ struct internal_aouthdr short o_algntext; /* max alignment for text */ short o_algndata; /* max alignment for data */ short o_modtype; /* Module type field, 1R,RE,RO */ + short o_cputype; /* Encoded CPU type */ unsigned long o_maxstack; /* max stack size allowed. */ unsigned long o_maxdata; /* max data size allowed. */ @@ -213,6 +217,7 @@ struct internal_aouthdr /* New storage classes for WINDOWS_NT */ #define C_SECTION 104 /* section name */ +#define C_NT_WEAK 105 /* weak external */ /* New storage classes for 80960 */ @@ -254,9 +259,12 @@ struct internal_aouthdr #define C_ESTAT (0x90) /********************** SECTION HEADER **********************/ + +#define SCNNMLEN (8) + struct internal_scnhdr { - char s_name[8]; /* section name */ + char s_name[SCNNMLEN]; /* section name */ bfd_vma s_paddr; /* physical address, aliased s_nlib */ bfd_vma s_vaddr; /* virtual address */ bfd_vma s_size; /* section size */ @@ -452,6 +460,9 @@ union internal_auxent long x_scnlen; /* section length */ unsigned short x_nreloc; /* # relocation entries */ unsigned short x_nlinno; /* # line numbers */ + unsigned long x_checksum; /* section COMDAT checksum for PE */ + unsigned short x_associated; /* COMDAT associated section index for PE */ + unsigned char x_comdat; /* COMDAT selection number for PE */ } x_scn; struct @@ -502,7 +513,7 @@ union internal_auxent #define XMC_UA 4 /* Read-write unclassified */ #define XMC_RW 5 /* Read-write data */ #define XMC_GL 6 /* Read-only global linkage */ -#define XMC_XO 7 /* Read-only extended operation (simulated insn) */ +#define XMC_XO 7 /* Read-only extended operation */ #define XMC_SV 8 /* Read-only supervisor call */ #define XMC_BS 9 /* Read-write BSS */ #define XMC_DS 10 /* Read-write descriptor csect */ @@ -510,8 +521,8 @@ union internal_auxent #define XMC_TI 12 /* Read-only traceback index csect */ #define XMC_TB 13 /* Read-only traceback table csect */ /* 14 ??? */ -#define XMC_TC0 15 /* Read-write TOC anchor for TOC addressability */ - +#define XMC_TC0 15 /* Read-write TOC anchor */ +#define XMC_TD 16 /* Read-write data in TOC */ /****************************************** * I960-specific *2nd* aux. entry formats @@ -592,6 +603,11 @@ struct internal_reloc #define R_MOVLB1 0x48 /* Special h8 24bit or 8 bit reloc for mov.b */ #define R_MOVLB2 0x49 /* Special h8 opcode for 8bit which could be 24 */ +/* An h8300 memory indirect jump/call. Forces the address of the jump/call + target into the function vector (in page zero), and the address of the + vector entry to be placed in the jump/call instruction. */ +#define R_MEM_INDIRECT 0x4a + /* Z8k modes */ #define R_IMM16 0x01 /* 16 bit abs */ #define R_JR 0x02 /* jr 8 bit disp */ @@ -635,3 +651,4 @@ struct internal_reloc #define R_W65_DP 10 /* direct page 8 bits only */ +#endif /* GNU_COFF_INTERNAL_H */ |