llvm-project/llvm/lib/Target/SystemZ/MCTargetDesc
Ulrich Weigand 7bdd7c2346 [SystemZ] Support all TLS access models - MC part
The current SystemZ back-end only supports the local-exec TLS access model.
This patch adds all required MC support for the other TLS models, which
means in particular:

- Support additional relocation types for
  Initial-exec model: R_390_TLS_IEENT
  Local-dynamic-model: R_390_TLS_LDO32, R_390_TLS_LDO64,
                       R_390_TLS_LDM32, R_390_TLS_LDM64, R_390_TLS_LDCALL
  General-dynamic model: R_390_TLS_GD32, R_390_TLS_GD64, R_390_TLS_GDCALL

- Support assembler syntax to generate additional relocations
  for use with __tls_get_offset calls:
    :tls_gdcall:
    :tls_ldcall:

The patch also adds a new test to verify fixups and relocations,
and removes the (already unused) FK_390_PLT16DBL/FK_390_PLT32DBL
fixup kinds.

llvm-svn: 229652
2015-02-18 09:11:36 +00:00
..
CMakeLists.txt
LLVMBuild.txt LLVMBuild.txt: Reformat. 2014-04-10 11:16:17 +00:00
Makefile
SystemZMCAsmBackend.cpp [SystemZ] Support all TLS access models - MC part 2015-02-18 09:11:36 +00:00
SystemZMCAsmInfo.cpp Use the integrated assembler as default on SystemZ 2015-01-13 19:45:16 +00:00
SystemZMCAsmInfo.h Move getNonexecutableStackSection up to the base ELF class. 2014-10-15 15:44:16 +00:00
SystemZMCCodeEmitter.cpp [SystemZ] Support all TLS access models - MC part 2015-02-18 09:11:36 +00:00
SystemZMCFixups.h [SystemZ] Support all TLS access models - MC part 2015-02-18 09:11:36 +00:00
SystemZMCObjectWriter.cpp [SystemZ] Support all TLS access models - MC part 2015-02-18 09:11:36 +00:00
SystemZMCTargetDesc.cpp Simplify handling of --noexecstack by using getNonexecutableStackSection. 2014-10-15 16:12:52 +00:00
SystemZMCTargetDesc.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00