[lld] [ELF] --pack-dyn-relocs=android: place IRELATIVE in .rela.dyn (PR #86751)

via llvm-commits llvm-commits at lists.llvm.org
Tue Mar 26 17:09:53 PDT 2024


================
@@ -1659,10 +1659,16 @@ static bool handleNonPreemptibleIfunc(Symbol &sym, uint16_t flags) {
   // original section/value pairs. For non-GOT non-PLT relocation case below, we
   // may alter section/value, so create a copy of the symbol to make
   // section/value fixed.
+  //
+  // Prior to Android V, there was a bug that caused RELR relocations to be
+  // applied after packed relocations. This meant that resolvers referenced
+  // IRELATIVE relocations in the packed relocation section could not read
----------------
pcc wrote:

Suggest more accurate wording: "would have been able to read globals with RELR relocations before they were relocated" (likewise below).

https://github.com/llvm/llvm-project/pull/86751


More information about the llvm-commits mailing list