|  a6db64ef4a GNU ld allows sections after a non-SHF_ALLOC section to be covered by PT_LOAD (PR37607) and assigns addresses to non-SHF_ALLOC output sections (similar to SHF_ALLOC NOBITS sections. The location counter is not advanced). This patch tries to fix PR37607 (remove a special case in `Writer<ELFT>::createPhdrs`). To make the created PT_LOAD meaningful, we cannot reset dot to 0 for a middle non-SHF_ALLOC output section. This results in removal of two special cases in LinkerScript::assignOffsets. Non-SHF_ALLOC non-orphan sections can have non-zero addresses like in GNU ld. The zero address rule for non-SHF_ALLOC sections is weakened to apply to orphan only. This results in a special case in createSection and findOrphanPos, respectively. Reviewed By: jhenderson Differential Revision: https://reviews.llvm.org/D85100 | ||
|---|---|---|
| .. | ||
| ModuleOwnership | ||
| debug-line-basic.script | ||
| debug-types-basic.cpp | ||
| debug-types-expressions.cpp | ||
| debug_loc-aslr.yaml | ||
| dir-separator-no-comp-dir-relative-name.lldbinit | ||
| dir-separator-posix.lldbinit | ||
| dir-separator-windows.lldbinit | ||
| find-variable-file-2.cpp | ||