[PATCH] D133003: [ELF] Parallelize relocation scanning
Igor Kudrin via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Sep 5 07:11:20 PDT 2022
ikudrin added inline comments.
================
Comment at: lld/ELF/Relocations.cpp:1238
return 1;
config->needsTlsLd = true;
c.relocations.push_back({expr, type, offset, addend, &sym});
----------------
If `GotSection::hasGotOffRel` and `GotPltSection::hasGotPltOffRel` are converted to `atomic<bool>`, the same should be done for `Configuration::needsTlsLd` because their usage pattern is similar.
================
Comment at: lld/ELF/Relocations.cpp:1293
if (expr == R_GOT && config->isPic && !target->usesOnlyLowPageBits(type))
addRelativeReloc(c, offset, sym, addend, expr, type);
else
----------------
Shouldn't `relocMutex` be locked before this call?
================
Comment at: lld/ELF/Relocations.cpp:1569
-static bool handleNonPreemptibleIfunc(Symbol &sym) {
+static bool handleNonPreemptibleIfunc(Symbol &sym, uint8_t flags) {
// Handle a reference to a non-preemptible ifunc. These are special in a
----------------
`uint8_t` -> `uint16_t`; not that it changes anything because the only flag that exceeds the range is `NEEDS_TLSIE` which is not used here, but still.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D133003/new/
https://reviews.llvm.org/D133003
More information about the llvm-commits
mailing list