diff options
Diffstat (limited to 'lld/ELF/Target.cpp')
-rw-r--r-- | lld/ELF/Target.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/lld/ELF/Target.cpp b/lld/ELF/Target.cpp index b8e689d4866..0c859aeec43 100644 --- a/lld/ELF/Target.cpp +++ b/lld/ELF/Target.cpp @@ -372,6 +372,8 @@ RelExpr X86TargetInfo::getRelExpr(uint32_t Type, const SymbolBody &S) const { switch (Type) { default: return R_ABS; + case R_386_TLS_LDM: + return R_TLSLD; case R_386_PLT32: case R_386_PC32: case R_386_GOTPC: @@ -673,12 +675,13 @@ RelExpr X86_64TargetInfo::getRelExpr(uint32_t Type, const SymbolBody &S) const { switch (Type) { default: return R_ABS; + case R_X86_64_TLSLD: + return R_TLSLD_PC; case R_X86_64_SIZE32: case R_X86_64_SIZE64: return R_SIZE; case R_X86_64_PLT32: case R_X86_64_PC32: - case R_X86_64_TLSLD: case R_X86_64_TLSGD: return R_PC; case R_X86_64_GOT32: |