From f36011e0c74480c0a48768af4c68e56f8ddfbbf7 Mon Sep 17 00:00:00 2001 From: Catherine Moore Date: Fri, 30 Oct 1998 18:00:46 +0000 Subject: From Philip Blundell : * arm.h (R_ARM_COPY, et al.): New relocs, used by Linux for PIC. (EF_ALIGN8): New flag. --- include/elf/ChangeLog | 10 ++++++++++ include/elf/arm.h | 16 +++++++++++++++- 2 files changed, 25 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/elf/ChangeLog b/include/elf/ChangeLog index 96ba8c5..34adf43 100644 --- a/include/elf/ChangeLog +++ b/include/elf/ChangeLog @@ -1,3 +1,13 @@ +Fri Oct 30 11:54:15 1998 Catherine Moore + + From Philip Blundell : + * arm.h (R_ARM_COPY, et al.): New relocs, used by Linux for PIC. + (EF_ALIGN8): New flag. + +Tue Oct 20 11:19:50 1998 Ian Lance Taylor + + * common.h (NT_LWPSTATUS): Close comment accidentally left open. + Mon Oct 19 20:24:11 1998 Catherine Moore * sh.h: Add vtable relocs. diff --git a/include/elf/arm.h b/include/elf/arm.h index 963031d..1ea8bbb 100644 --- a/include/elf/arm.h +++ b/include/elf/arm.h @@ -29,6 +29,7 @@ #define EF_APCS_26 0x08 #define EF_APCS_FLOAT 0x10 #define EF_PIC 0x20 +#define EF_ALIGN8 0x40 /* 8-bit structure alignment is in use */ /* Local aliases for some flags to match names used by COFF port. */ #define F_INTERWORK EF_INTERWORK @@ -36,6 +37,9 @@ #define F_APCS_FLOAT EF_APCS_FLOAT #define F_PIC EF_PIC +/* Additional symbol types for Thumb */ +#define STT_ARM_TFUNC 0xd + /* ARM-specific values for sh_flags */ #define SHF_ENTRYSECT 0x10000000 /* Section contains an entry point */ #define SHF_COMDEF 0x80000000 /* Section may be multiply defined in the input to a link step */ @@ -58,7 +62,17 @@ START_RELOC_NUMBERS (elf_arm_reloc_type) RELOC_NUMBER (R_ARM_AMP_VCALL9, 10) RELOC_NUMBER (R_ARM_THM_PC11, 11) /* cygnus extension to abi: thumb unconditional branch */ RELOC_NUMBER (R_ARM_THM_PC9, 12) /* cygnus extension to abi: thumb conditional branch */ - FAKE_RELOC (FIRST_INVALID_RELOC, 13) + RELOC_NUMBER (R_ARM_GNU_VTINHERIT, 13) + RELOC_NUMBER (R_ARM_GNU_VTENTRY, 14) + RELOC_NUMBER (R_ARM_COPY, 20) /* copy symbol at runtime */ + RELOC_NUMBER (R_ARM_GLOB_DAT, 21) /* create GOT entry */ + RELOC_NUMBER (R_ARM_JUMP_SLOT, 22) /* create PLT entry */ + RELOC_NUMBER (R_ARM_RELATIVE, 23) /* adjust by program base */ + RELOC_NUMBER (R_ARM_GOTOFF, 24) /* 32 bit offset to GOT */ + RELOC_NUMBER (R_ARM_GOTPC, 25) /* 32 bit PC relative offset to GOT */ + RELOC_NUMBER (R_ARM_GOT32, 26) /* 32 bit GOT entry */ + RELOC_NUMBER (R_ARM_PLT32, 27) /* 32 bit PLT address */ + FAKE_RELOC (FIRST_INVALID_RELOC, 28) FAKE_RELOC (LAST_INVALID_RELOC, 249) RELOC_NUMBER (R_ARM_RSBREL32, 250) RELOC_NUMBER (R_ARM_THM_RPC22, 251) -- cgit v1.1