mirror of
https://github.com/llvm/llvm-project.git
synced 2025-04-17 13:46:38 +00:00

In `OutputSegment.cpp`, we need to ensure a specific order for certain sections. The current sorting logic incorrectly prioritizes code sections over explicitly defined section orders. This is problematic because the `__objc_stubs` section is both a code section *and* has a specific ordering requirement. The current logic would incorrectly prioritize its code section status, causing it to be sorted *before* the `__stubs` section. This incorrect ordering breaks the branch extension algorithm, ultimately leading to linker failures due to relocation errors. We also modify the `lld/test/MachO/arm64-objc-stubs.s` test to ensure correct section ordering.