summaryrefslogtreecommitdiff
path: root/ldso/ldso/xtensa/dl-sysdep.h
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2014-09-20 22:36:23 +0200
committerWaldemar Brodkorb <wbx@openadk.org>2014-09-22 20:35:40 +0200
commit4c3023bc803012656cf45749960282351efc8020 (patch)
tree979feef511fde3dbe564e5362e89a2e8b793909e /ldso/ldso/xtensa/dl-sysdep.h
parent51f9b66d2fee1c7c1088b548751ac64131220b6e (diff)
xtensa: add support for NPTL
Changes from: https://github.com/foss-xtensa/uClibc/commits/xtensa_nptl Author: Chris Zankel <chris@zankel.net> Author: Baruch Siach <baruch@tkos.co.il>
Diffstat (limited to 'ldso/ldso/xtensa/dl-sysdep.h')
-rw-r--r--ldso/ldso/xtensa/dl-sysdep.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/ldso/ldso/xtensa/dl-sysdep.h b/ldso/ldso/xtensa/dl-sysdep.h
index a0ed4e5f2..148de5b95 100644
--- a/ldso/ldso/xtensa/dl-sysdep.h
+++ b/ldso/ldso/xtensa/dl-sysdep.h
@@ -78,10 +78,13 @@ typedef struct xtensa_got_location_struct {
struct elf_resolve;
extern unsigned long _dl_linux_resolver (struct elf_resolve *, int);
-/* ELF_RTYPE_CLASS_PLT iff TYPE describes relocation of a PLT entry, so
- undefined references should not be allowed to define the value. */
+/* ELF_RTYPE_CLASS_PLT iff TYPE describes relocation of a PLT entry or
+ TLS variable, so undefined references should not be allowed to define
+ the value. */
#define elf_machine_type_class(type) \
- (((type) == R_XTENSA_JMP_SLOT) * ELF_RTYPE_CLASS_PLT)
+ (((type) == R_XTENSA_JMP_SLOT || (type) == R_XTENSA_TLS_TPOFF \
+ || (type) == R_XTENSA_TLSDESC_FN || (type) == R_XTENSA_TLSDESC_ARG) \
+ * ELF_RTYPE_CLASS_PLT)
/* Return the link-time address of _DYNAMIC. */
static __always_inline Elf32_Addr