This flag tells the linker that no global symbols contain code that fall through to other global symbols (e.g. an implementation of multiple entry points). If this doesn't occur, the linker can safely perform dead code stripping. Since LLVM never generates code that does this, it is always safe to set.
It means every assemble file has '.subsections_via_symbols' at the end.
But when Prelink a static library with MH_SUBSECTIONS_VIA_SYMBOLS , it's not always has the MH_SUBSECTIONS_VIA_SYMBOLS at the MachO header.
Here's my questions:
1. Why Prelink a static library with MH_SUBSECTIONS_VIA_SYMBOLS will miss MH_SUBSECTIONS_VIA_SYMBOLS. (Prelink means GENERATE_MASTER_OBJECT_FILE=YES).
2. Where's the source code of Prelink.
3. When '.subsections_via_symbols' will be missed.