[AIX][TLS] Add ASM portion changes to support TLSGD relocations to XCOFF objects
authorVictor Huang <wei.huang@ibm.com>
Wed, 28 Apr 2021 18:57:16 +0000 (13:57 -0500)
committerVictor Huang <wei.huang@ibm.com>
Thu, 29 Apr 2021 18:18:59 +0000 (13:18 -0500)
commitae3377c55343e83e7768f612398dda942b83a06e
tree4ce45af68649a324b9b797153603c079bfbb33f4
parentcc63203908daa3a844d09160375c191003ab970c
[AIX][TLS] Add ASM portion changes to support TLSGD relocations to XCOFF objects

- Add new variantKinds for the symbol's variable offset and region handle
- Print the proper relocation specifier @gd in the asm streamer when emitting
  the TC Entry for the variable offset for the symbol
- Fix the switch section failure between the TC Entry of variable offset and
  region handle
- Put .__tls_get_addr symbol in the ProgramCodeSects with XTY_ER property

Reviewed by: sfertile

Differential Revision: https://reviews.llvm.org/D100956
llvm/include/llvm/MC/MCExpr.h
llvm/lib/MC/MCExpr.cpp
llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.cpp
llvm/lib/Target/PowerPC/PPC.h
llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
llvm/lib/Target/PowerPC/PPCISelLowering.cpp
llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
llvm/test/CodeGen/PowerPC/aix-tls-gd-double.ll
llvm/test/CodeGen/PowerPC/aix-tls-gd-int.ll
llvm/test/CodeGen/PowerPC/aix-tls-gd-longlong.ll