summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/X86/X86TargetObjectFile.h
diff options
context:
space:
mode:
authorPaul Robinson <paul_robinson@playstation.sony.com>2015-03-03 21:01:27 +0000
committerPaul Robinson <paul_robinson@playstation.sony.com>2015-03-03 21:01:27 +0000
commit06a8eb8343676632fc6e1563c39835b1a91da53b (patch)
tree0830cc3e16e460cc9d6f2dbc31087f55e72e7721 /llvm/lib/Target/X86/X86TargetObjectFile.h
parent36a2dc895fd4021df857039a9d0373e28f46e0d6 (diff)
downloadbcm5719-llvm-06a8eb8343676632fc6e1563c39835b1a91da53b.tar.gz
bcm5719-llvm-06a8eb8343676632fc6e1563c39835b1a91da53b.zip
[X86][ELF] Correct relocation for DWARF TLS references
Previously we had only Linux using DTPOFF for these; all X86 ELF targets should. Fixes a side issue mentioned in PR21077. Differential Revision: http://reviews.llvm.org/D8011 llvm-svn: 231130
Diffstat (limited to 'llvm/lib/Target/X86/X86TargetObjectFile.h')
-rw-r--r--llvm/lib/Target/X86/X86TargetObjectFile.h12
1 files changed, 8 insertions, 4 deletions
diff --git a/llvm/lib/Target/X86/X86TargetObjectFile.h b/llvm/lib/Target/X86/X86TargetObjectFile.h
index f7455382098..a92c122838e 100644
--- a/llvm/lib/Target/X86/X86TargetObjectFile.h
+++ b/llvm/lib/Target/X86/X86TargetObjectFile.h
@@ -38,13 +38,17 @@ namespace llvm {
int64_t Offset) const override;
};
+ /// \brief This implemenatation is used for X86 ELF targets that don't
+ /// have a further specialization.
+ class X86ELFTargetObjectFile : public TargetLoweringObjectFileELF {
+ /// \brief Describe a TLS variable address within debug info.
+ const MCExpr *getDebugThreadLocalSymbol(const MCSymbol *Sym) const override;
+ };
+
/// X86LinuxTargetObjectFile - This implementation is used for linux x86
/// and x86-64.
- class X86LinuxTargetObjectFile : public TargetLoweringObjectFileELF {
+ class X86LinuxTargetObjectFile : public X86ELFTargetObjectFile {
void Initialize(MCContext &Ctx, const TargetMachine &TM) override;
-
- /// \brief Describe a TLS variable address within debug info.
- const MCExpr *getDebugThreadLocalSymbol(const MCSymbol *Sym) const override;
};
/// \brief This implementation is used for Windows targets on x86 and x86-64.
OpenPOWER on IntegriCloud