[PATCH] D93045: [ELF] AArch64: Handle DT_AARCH64_VARIANT_PCS

Adhemerval Zanella via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Dec 11 10:53:51 PST 2020


zatrazz added inline comments.


================
Comment at: lld/ELF/SyntheticSections.cpp:1441
+      if (in.relaPlt->aarch64VariantPcs)
+        addInt(DT_AARCH64_VARIANT_PCS, 0);
+      LLVM_FALLTHROUGH;
----------------
zatrazz wrote:
> psmith wrote:
> > Does this change depend on another one adding DT_AARCH64_VARIANT_PCS? I think these are defined in /llvm/include/BinaryFormat/DynamicTags.def
> Yes, I forgot to add on patch description that https://reviews.llvm.org/D93044 is a prerequisite. It adds both the DT_AARCH64 fields and the llvm-readelf VARIANT_PCS symbol tag.
In fact the in.relaIplt is tricky because the ABI does not really state R_AARCH64_IRELATIVE should also add the dynamic tag. However I think it makes sense since it will act exactly as R_AARCH64_JUMP_SLOT once ifunc is resolved.


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

https://reviews.llvm.org/D93045



More information about the llvm-commits mailing list