[PATCH] D62609: [LLD][ELF][AArch64] Support for BTI and PAC

Fangrui Song via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Jun 7 08:00:40 PDT 2019


MaskRay added a comment.

> Handle a reference to a non-preemptible ifunc), and if a DSO also takes the address of the ifunc then the PLT address can leak to the DSO. I've put this as test/ELF/aarch64-ifunc-bti.s
> 
>   BtiEntry = BtiHeader && !Config->Shared;

This can be relaxed, but it will be a per-PLT property. `Sym.NeedsPltAddr || Sym.IsInIplt`. The problem is that `writePlt` doesn't pass the `Symbol*` argument to the target:

`Target->writePlt(Buf + Off, Got, Plt, B->PltIndex, RelOff);` // B itself is needed.


Repository:
  rL LLVM

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D62609/new/

https://reviews.llvm.org/D62609





More information about the llvm-commits mailing list