HomePhabricator

[ARM] ARM TLS shouldn't use relaxations

Description

[ARM] ARM TLS shouldn't use relaxations

The ARM TLS relocations are placed on literal data and not the
code-sequence, it is therefore not possible to implement the relaxTls*
functions. This change updates handleMipsTlsRelocation() to
handleNoRelaxTlsRelocation() and incorporates ARM as well as Mips.

The ARM support in handleNoRelaxTlsRelocation() currently needs to ouput
the module index dynamic relocation in all cases as it is relying on the
dynamic linker to set the module index in the got.

Should address PR30218

Differential Revision: https://reviews.llvm.org/D24827

Details

Committed
psmithSep 23 2016, 6:54 AM
Differential Revision
D24827: [ARM][LLD] ARM TLS shouldn't use relaxations
Parents
rL282249: Revert "[ARM] Promote small global constants to constant pools"
Branches
Unknown
Tags
Unknown