1998-10-27  Philip Blundell  <pb@nexus.co.uk>

	* elf/elf.h: Update ARM definitions.
This commit is contained in:
Ulrich Drepper 1998-10-27 09:44:35 +00:00
parent cc3688877a
commit c1a61edb7f
2 changed files with 54 additions and 23 deletions

View file

@ -1,3 +1,7 @@
1998-10-27 Philip Blundell <pb@nexus.co.uk>
* elf/elf.h: Update ARM definitions.
1998-10-27 Ulrich Drepper <drepper@cygnus.com>
* signal/signal.h: Include bits/sigthread.h only for Unix98.

View file

@ -1476,31 +1476,58 @@ typedef Elf32_Addr Elf32_Conflict;
/* ARM specific declarations */
/* ARM relocs. */
/* Processor specific flags for the ELF header e_flags field. */
#define EF_ARM_RELEXEC 0x01
#define EF_ARM_HASENTRY 0x02
#define EF_ARM_INTERWORK 0x04
#define EF_ARM_APCS_26 0x08
#define EF_ARM_APCS_FLOAT 0x10
#define EF_ARM_PIC 0x20
#define R_ARM_NONE 0 /* No reloc */
#define R_ARM_PC24 1 /* PC relative 26 bit branch */
#define R_ARM_ABS32 2 /* Direct 32 bit */
#define R_ARM_REL32 3 /* PC relative 32 bit */
#define R_ARM_ABS8 4
#define R_ARM_ABS16 5
#define R_ARM_ABS12 6
#define R_ARM_THM_ABS5 7
#define R_ARM_THM_PC22 8
#define R_ARM_SBREL32 9
#define R_ARM_AMP_VCALL9 10
#define R_ARM_THM_PC11 11
#define R_ARM_THM_PC9 12
#define R_ARM_COPY 20 /* Copy symbol at runtime */
#define R_ARM_GLOB_DAT 21 /* Create GOT entry */
#define R_ARM_JUMP_SLOT 22 /* Create PLT entry */
#define R_ARM_RELATIVE 23 /* Adjust by program base */
#define R_ARM_GOTOFF 24 /* 32 bit offset to GOT */
#define R_ARM_GOTPC 25 /* 32 bit PC relative offset to GOT */
#define R_ARM_GOT32 26 /* 32 bit GOT entry */
#define R_ARM_PLT32 27 /* 32 bit PLT address */
/* Additional symbol types for Thumb */
#define STT_ARM_TFUNC 0xd
/* ARM-specific values for sh_flags */
#define SHF_ARM_ENTRYSECT 0x10000000 /* Section contains an entry point */
#define SHF_ARM_COMDEF 0x80000000 /* Section may be multiply defined
in the input to a link step */
/* ARM-specific program header flags */
#define PF_ARM_SB 0x10000000 /* Segment contains the location
addressed by the static base */
/* ARM relocs. */
#define R_ARM_NONE 0 /* No reloc */
#define R_ARM_PC24 1 /* PC relative 26 bit branch */
#define R_ARM_ABS32 2 /* Direct 32 bit */
#define R_ARM_REL32 3 /* PC relative 32 bit */
#define R_ARM_ABS8 4 /* Direct 8 bit */
#define R_ARM_ABS16 5 /* Direct 16 bit */
#define R_ARM_ABS12 6 /* Direct 12 bit */
#define R_ARM_THM_ABS5 7
#define R_ARM_THM_PC22 8
#define R_ARM_SBREL32 9
#define R_ARM_AMP_VCALL9 10
#define R_ARM_THM_PC11 11 /* Thumb unconditional branch */
#define R_ARM_THM_PC9 12 /* Thumb conditional branch */
#define R_ARM_GNU_VTINHERIT 13
#define R_ARM_GNU_VTENTRY 14
#define R_ARM_COPY 20 /* Copy symbol at runtime */
#define R_ARM_GLOB_DAT 21 /* Create GOT entry */
#define R_ARM_JUMP_SLOT 22 /* Create PLT entry */
#define R_ARM_RELATIVE 23 /* Adjust by program base */
#define R_ARM_GOTOFF 24 /* 32 bit offset to GOT */
#define R_ARM_GOTPC 25 /* 32 bit PC relative offset to GOT */
#define R_ARM_GOT32 26 /* 32 bit GOT entry */
#define R_ARM_PLT32 27 /* 32 bit PLT address */
#define R_ARM_RSBREL32 250
#define R_ARM_THM_RPC22 251
#define R_ARM_RREL32 252
#define R_ARM_RABS22 253
#define R_ARM_RPC24 254
#define R_ARM_RBASE 255
/* Keep this the last entry. */
#define R_ARM_NUM 28
#define R_ARM_NUM 256
__END_DECLS