HomePhabricator

[AArch64] Cortex-a53-843419 erratum should not apply to relaxed TLS.

Description

[AArch64] Cortex-a53-843419 erratum should not apply to relaxed TLS.

The changes to the instructions performed by TLS relaxation and the errata
patching are performed with relocations. As these are applied so late the
errata scanning won't see the changes in the section data made by the TLS
relaxation. This can lead to a TLS relaxed sequence being patched when it
doesn't need to be.

The fix checks to see if there is a R_RELAX_TLS_IE_TO_LE instruction at the
same address as the ADRP as this indicates the presence of a relaxation
of a sequence that might get recognised as a patch.

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

Details

Committed
psmithNov 27 2018, 2:17 AM
Differential Revision
D54854: [LLD][AArch64] Cortex-a53-843419 erratum should not apply to relaxed TLS.
Branches
Unknown
Tags
Unknown