aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Format/WhitespaceManager.cpp
diff options
context:
space:
mode:
authorFangrui Song <i@maskray.me>2024-03-24 14:07:09 -0700
committerFangrui Song <i@maskray.me>2024-03-24 14:07:09 -0700
commit18a49f03aa2b6bfeb073648b9eb75277a2386fc4 (patch)
treec6e1ced1dfc08e7af0709f62110bfd7e1f77d3c6 /clang/lib/Format/WhitespaceManager.cpp
parentf0a8738401137c32f3e1b9799244ed643feb7bf0 (diff)
downloadllvm-18a49f03aa2b6bfeb073648b9eb75277a2386fc4.zip
llvm-18a49f03aa2b6bfeb073648b9eb75277a2386fc4.tar.gz
llvm-18a49f03aa2b6bfeb073648b9eb75277a2386fc4.tar.bz2
[ELF] Merge relaIplt into relaDyn
`relaIplt` was added so that IRELATIVE relocations are placed at the end of .rela.dyn (since https://reviews.llvm.org/D65651) or .rela.plt (--pack-dyn-relocs=android[+relr]). Unfortunately, handling `relaIplt` requires special cases all over the code base. We can extend partitionRels/computeRels to partition both RELATIVE and IRELATIVE relocations, rendering `relaIplt` unneeded. The change allows IRELATIVE relocations in the DT_ANDROID_REL[A] table (untested?!), which may be processed before other types of relocations. This seems acceptable for Bionic's DEFINE_IFUNC_FOR use cases. In addition, this change simplies changing .rel[a].dyn to a compact relocation format (CREL). SHF_INFO_LINK is removed from .rel[a].dyn with IRELATIVE relocations. (See https://reviews.llvm.org/D89828).
Diffstat (limited to 'clang/lib/Format/WhitespaceManager.cpp')
0 files changed, 0 insertions, 0 deletions