[PowerPC][PCRelative] Thread Local Storage Support for General Dynamic
authorKamau Bridgeman <kamau.bridgeman@ibm.com>
Mon, 22 Jun 2020 16:43:03 +0000 (11:43 -0500)
committerKamau Bridgeman <kamau.bridgeman@ibm.com>
Thu, 20 Aug 2020 20:08:13 +0000 (15:08 -0500)
commitb74b80bb2d31dfb09559fcb71a1c474a421c633d
tree4d171cc0e5410765db4f4dacf81f2c66eab94217
parentd9b062ad8777c283f9a1099a3ce29248348e5f40
[PowerPC][PCRelative] Thread Local Storage Support for General Dynamic

This patch is the initial support for the General Dynamic Thread Local
Local Storage model to produce code sequence and relocations correct
to the ABI for the model when using PC relative memory operations.

Patch by: NeHuang

Reviewed By: stefanp

Differential Revision: https://reviews.llvm.org/D82315
19 files changed:
llvm/include/llvm/BinaryFormat/ELFRelocs/PowerPC64.def
llvm/include/llvm/MC/MCExpr.h
llvm/lib/MC/MCExpr.cpp
llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp
llvm/lib/Target/PowerPC/MCTargetDesc/PPCInstPrinter.cpp
llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCCodeEmitter.cpp
llvm/lib/Target/PowerPC/PPC.h
llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
llvm/lib/Target/PowerPC/PPCISelLowering.cpp
llvm/lib/Target/PowerPC/PPCISelLowering.h
llvm/lib/Target/PowerPC/PPCInstr64Bit.td
llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
llvm/lib/Target/PowerPC/PPCInstrInfo.td
llvm/lib/Target/PowerPC/PPCInstrPrefix.td
llvm/lib/Target/PowerPC/PPCMCInstLower.cpp
llvm/lib/Target/PowerPC/PPCTLSDynamicCall.cpp
llvm/test/CodeGen/PowerPC/pcrel-tls-general-dynamic.ll [new file with mode: 0644]
llvm/test/MC/PowerPC/pcrel-tls-general-dynamic-address-load-reloc.s [new file with mode: 0644]
llvm/test/MC/PowerPC/pcrel-tls-general-dynamic-value-load-reloc.s [new file with mode: 0644]