summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkib <kib@FreeBSD.org>2011-12-12 10:10:49 +0000
committerkib <kib@FreeBSD.org>2011-12-12 10:10:49 +0000
commite4d5e370653906483ad3fd23a8e15acb12b82ab5 (patch)
tree0cf208ad65a1139b26ee39ec53e99790e8638c0a
parent7d367dba133c7d577cdbe97f7a09c2dddfbd0e5c (diff)
downloadFreeBSD-src-e4d5e370653906483ad3fd23a8e15acb12b82ab5.zip
FreeBSD-src-e4d5e370653906483ad3fd23a8e15acb12b82ab5.tar.gz
Add definitions for GNU-specific STT_GNU_IFUNC symbol type,
and R_{386,X86_64}_IRELATIVE relocations. MFC after: 3 weeks
-rw-r--r--sys/sys/elf_common.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/sys/sys/elf_common.h b/sys/sys/elf_common.h
index 42165ce..3f1b35b 100644
--- a/sys/sys/elf_common.h
+++ b/sys/sys/elf_common.h
@@ -503,6 +503,7 @@ typedef struct {
#define STT_TLS 6 /* TLS object. */
#define STT_NUM 7
#define STT_LOOS 10 /* Reserved range for operating system */
+#define STT_GNU_IFUNC 10
#define STT_HIOS 12 /* specific semantics. */
#define STT_LOPROC 13 /* reserved range for processor */
#define STT_HIPROC 15 /* specific semantics. */
@@ -612,6 +613,7 @@ typedef struct {
#define R_386_TLS_DTPMOD32 35 /* GOT entry containing TLS index */
#define R_386_TLS_DTPOFF32 36 /* GOT entry containing TLS offset */
#define R_386_TLS_TPOFF32 37 /* GOT entry of -ve static TLS offset */
+#define R_386_IRELATIVE 42 /* PLT entry resolved indirectly at runtime */
#define R_ARM_NONE 0 /* No relocation. */
#define R_ARM_PC24 1
@@ -961,6 +963,7 @@ typedef struct {
#define R_X86_64_DTPOFF32 21 /* Offset in TLS block */
#define R_X86_64_GOTTPOFF 22 /* PC relative offset to IE GOT entry */
#define R_X86_64_TPOFF32 23 /* Offset in static TLS block */
+#define R_X86_64_IRELATIVE 37
#endif /* !_SYS_ELF_COMMON_H_ */
OpenPOWER on IntegriCloud