Fangrui Song bdcabc4862
[ELF] writeTrapInstr: Don't decrease p_memsz
When the last PT_LOAD segment is executable and includes BSS sections,
its p_memsz may exceed the aligned p_filesz. This change ensures p_memsz
is not reduced in such cases (e.g. --omagic).

In addition, disable this behavior when a SECTIONS command is specified.

Refined behavior introduced in https://reviews.llvm.org/D37369 (2017).

The -z separate-loadable-segments --omagic test adds coverage for the
option combination, even if it might be practical.

Pull Request: https://github.com/llvm/llvm-project/pull/139207
2025-05-10 10:04:01 +08:00
..