diff options
author | Fangrui Song <maskray@google.com> | 2019-12-14 16:19:03 -0800 |
---|---|---|
committer | Fangrui Song <maskray@google.com> | 2019-12-17 00:15:59 -0800 |
commit | 345f59667d846c4b77258e72c902f4aaf8add166 (patch) | |
tree | 4d8a7e1aef2801b85dcf0f88b2baaa52ff391253 /llvm/lib/Transforms/Utils/InlineFunction.cpp | |
parent | ba6f25d7d3671f8ff1d072a43a292950dbbf899e (diff) | |
download | llvm-345f59667d846c4b77258e72c902f4aaf8add166.zip llvm-345f59667d846c4b77258e72c902f4aaf8add166.tar.gz llvm-345f59667d846c4b77258e72c902f4aaf8add166.tar.bz2 |
[ELF] Rename .plt to .iplt and decrease EM_PPC{,64} alignment of .glink to 4
GNU ld creates the synthetic section .iplt, and has a built-in linker
script that assigns .iplt to the output section .plt . There is no
output section named .iplt .
Making .iplt an output section actually has a benefit that makes the
tricky toolchain feature stand out. Symbolizers don't have to deal with
mixed PLT entries (e.g. llvm-objdump -d incorrectly annotates such jump
targets).
On EM_PPC{,64}, .glink contains a PLT resolver and a series of jump
instructions. The 4-byte entry size makes it unnecessary to have an
alignment of 16.
Mark ppc32-gnu-ifunc.s and ppc32-gnu-ifunc-nonpreemptable.s as `XFAIL: *`.
They test IPLT on EM_PPC, which never works.
Reviewed By: peter.smith
Differential Revision: https://reviews.llvm.org/D71520
Diffstat (limited to 'llvm/lib/Transforms/Utils/InlineFunction.cpp')
0 files changed, 0 insertions, 0 deletions