diff options
author | Fangrui Song <i@maskray.me> | 2021-05-07 09:44:26 -0700 |
---|---|---|
committer | Fangrui Song <i@maskray.me> | 2021-05-07 09:44:26 -0700 |
commit | 6a2850f3fc24cc53da6543ee98bd837007c65725 (patch) | |
tree | 10e7a6af966feeaa864b467fd0b65744d997e90e /llvm/lib/CodeGen/MachineBranchProbabilityInfo.cpp | |
parent | f09414499c4717b66baa9581c641e8a636e5dcc1 (diff) | |
download | llvm-6a2850f3fc24cc53da6543ee98bd837007c65725.zip llvm-6a2850f3fc24cc53da6543ee98bd837007c65725.tar.gz llvm-6a2850f3fc24cc53da6543ee98bd837007c65725.tar.bz2 |
[AArch64][ELF] Prefer to lower MC_GlobalAddress operands to .Lfoo$local
Similar to X86 D73230 & 46788a21f9152be3950e57dc526454655682bdd4
With this change, we can set dso_local in clang's -fpic -fno-semantic-interposition mode,
for default visibility external linkage non-ifunc-non-COMDAT definitions.
For such dso_local definitions, variable access/taking the address of a
function/calling a function will go through a local alias to avoid GOT/PLT.
Note: the 'S' inline assembly constraint refers to an absolute symbolic address
or a label reference (D46745).
Differential Revision: https://reviews.llvm.org/D101872
Diffstat (limited to 'llvm/lib/CodeGen/MachineBranchProbabilityInfo.cpp')
0 files changed, 0 insertions, 0 deletions