summaryrefslogtreecommitdiff
path: root/ldso/ldso/x86_64/dl-sysdep.h
diff options
context:
space:
mode:
authorAustin Foxley <austinf@cetoncorp.com>2010-02-19 01:41:19 -0800
committerAustin Foxley <austinf@cetoncorp.com>2010-02-19 01:41:19 -0800
commit536a9d8a04dc75246d7ad70c9372064c41a43467 (patch)
tree703ffaae8b49e8acfb5c4c4da49793efd019bd7a /ldso/ldso/x86_64/dl-sysdep.h
parent323bc3be3b3144932bbb5ee2a586e9ab4074239e (diff)
x86_64: finish up tls reloc support in ldso
Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Diffstat (limited to 'ldso/ldso/x86_64/dl-sysdep.h')
-rw-r--r--ldso/ldso/x86_64/dl-sysdep.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/ldso/ldso/x86_64/dl-sysdep.h b/ldso/ldso/x86_64/dl-sysdep.h
index 0eed657e8..ae3542aed 100644
--- a/ldso/ldso/x86_64/dl-sysdep.h
+++ b/ldso/ldso/x86_64/dl-sysdep.h
@@ -46,8 +46,12 @@ extern unsigned long _dl_linux_resolver(struct elf_resolve * tpnt, int reloc_ent
define the value.
ELF_RTYPE_CLASS_NOCOPY iff TYPE should not be allowed to resolve to one
of the main executable's symbols, as for a COPY reloc. */
-#define elf_machine_type_class(type) \
- ((((type) == R_X86_64_JUMP_SLOT) * ELF_RTYPE_CLASS_PLT) \
+#define elf_machine_type_class(type) \
+ ((((type) == R_X86_64_JUMP_SLOT \
+ || (type) == R_X86_64_DTPMOD64 \
+ || (type) == R_X86_64_DTPOFF64 \
+ || (type) == R_X86_64_TPOFF64) \
+ * ELF_RTYPE_CLASS_PLT) \
| (((type) == R_X86_64_COPY) * ELF_RTYPE_CLASS_COPY))
/* Return the link-time address of _DYNAMIC. Conveniently, this is the