diff --git a/lld/ELF/Writer.cpp b/lld/ELF/Writer.cpp index 79de07611662ece8ab3ef7e45f03ef8433202692..3b176ab560207b1a5eeba6feba5749979ae0b8ff 100644 --- a/lld/ELF/Writer.cpp +++ b/lld/ELF/Writer.cpp @@ -116,6 +116,11 @@ static void removeEmptyPTLoad(SmallVector &phdrs) { for (OutputSection *sec : outputSections) if (removed.count(sec->ptLoad)) sec->ptLoad = nullptr; + + if (config->adlt) { + assert(it == phdrs.end() && "adlt: ph-index in .adlt invalid due to shift"); + } + phdrs.erase(it, phdrs.end()); }