llvm-project/lld/MachO
Nico Weber 9d43c000e1 [lld/mac] Move handling of special undefineds later
treatUndefinedSymbol() was previously called before gatherInputSections()
and markLive() for these special symbols, but after them for normal
undefineds.

For PR50760, treatUndefinedSymbol() will have to potentially create
sections, so it's good to move treatUndefinedSymbol() for special
undefineds later, so that it can assume that gatherInputSections()
and markLive() has already been called always.

No intended behavior change, but part of PR50760 (and covered in
tests in the patch for the full feature).

Differential Revision: https://reviews.llvm.org/D106552
2021-07-22 11:43:49 -04:00
..
Arch [lld-macho] Implement branch-range-extension thunks 2021-05-12 09:44:58 -07:00
CMakeLists.txt [lld-macho] Implement ICF 2021-06-17 10:07:44 -07:00
ConcatOutputSection.cpp [lld-macho] Have ICF operate on all sections at once 2021-07-17 13:42:51 -04:00
ConcatOutputSection.h [lld-macho] Have ICF operate on all sections at once 2021-07-17 13:42:51 -04:00
Config.h [lld-macho] Optimize bind opcodes with multiple passes 2021-07-15 20:52:46 -07:00
Driver.cpp [lld/mac] Move handling of special undefineds later 2021-07-22 11:43:49 -04:00
Driver.h [lld-macho][nfc] Avoid using std::map for PlatformKinds 2021-07-11 18:24:53 -04:00
DriverUtils.cpp [lld-macho][nfc] Remove unnecessary llvm:: namespace prefixes 2021-07-11 18:36:53 -04:00
Dwarf.cpp [lld-macho] Factor out common InputSection members 2021-07-01 21:22:39 -04:00
Dwarf.h [lld-macho] Emit STABS symbols for debugging, and drop debug sections 2020-12-01 15:05:20 -08:00
ExportTrie.cpp [lld-macho][NFC] add const to pointer/reference induction variables of range-based for loops 2021-03-10 12:07:31 -08:00
ExportTrie.h [lld-macho] Export trie addresses should be relative to the image base 2020-09-20 20:43:15 -07:00
ICF.cpp [lld-macho] Have ICF operate on all sections at once 2021-07-17 13:42:51 -04:00
ICF.h [lld-macho] Move ICF earlier to avoid emitting redundant binds 2021-07-01 21:22:38 -04:00
InputFiles.cpp [lld/mac] Resolve defined symbols before undefined symbols 2021-07-19 16:37:41 -04:00
InputFiles.h [lld/mac] Implement -application_extension 2021-07-12 13:42:16 -04:00
InputSection.cpp [lld-macho] Have ICF operate on all sections at once 2021-07-17 13:42:51 -04:00
InputSection.h [lld-macho] Factor out common InputSection members 2021-07-01 21:22:39 -04:00
LTO.cpp [lld-macho] Add LTO cache support 2021-07-15 12:56:13 -04:00
LTO.h [lld-macho] Add LTO cache support 2021-07-15 12:56:13 -04:00
MachOStructs.h [lld-macho] Add support for arm64_32 2021-04-15 21:16:33 -04:00
MapFile.cpp [lld][MachO] Sort symbols in parallel in -map 2021-06-17 10:19:59 +08:00
MapFile.h [lld-macho] implement options -map 2021-03-18 10:39:19 -04:00
MarkLive.cpp [lld/mac] Partially implement -export_dynamic 2021-07-06 11:22:18 -04:00
MarkLive.h [lld/mac] Implement -dead_strip 2021-06-02 11:09:26 -04:00
ObjC.cpp [lld-macho] De-templatize mach_header operations 2021-05-03 18:31:23 -04:00
ObjC.h [lld-macho] Implement -ObjC 2020-08-26 19:20:55 -07:00
Options.td [lld-macho] Optimize bind opcodes with multiple passes 2021-07-15 20:52:46 -07:00
OutputSection.cpp [lld-macho] Refactor segment/section creation, sorting, and merging 2020-06-21 17:13:59 -07:00
OutputSection.h [lld-macho] Have inputOrder default to less than INT_MAX 2021-06-20 19:49:27 -04:00
OutputSegment.cpp [lld/mac] Fix nondeterminism in output section ordering 2021-06-28 18:41:33 -04:00
OutputSegment.h [lld-macho] Have inputOrder default to less than INT_MAX 2021-06-20 19:49:27 -04:00
Relocations.cpp [lld-macho][nfc] Remove DYSYM8 reloc attribute 2021-04-09 19:48:08 -04:00
Relocations.h [lld-macho] Add 32-bit compact unwind support 2021-04-15 21:16:33 -04:00
SymbolTable.cpp [lld/mac] Implement -arch_multiple 2021-07-06 00:25:18 -04:00
SymbolTable.h [lld/mac] Implement -dead_strip 2021-06-02 11:09:26 -04:00
Symbols.cpp [lld-macho] Implement ICF 2021-06-17 10:07:44 -07:00
Symbols.h [lld-macho] Factor out common InputSection members 2021-07-01 21:22:39 -04:00
SyntheticSections.cpp Recommit "[lld-macho] Use DO_BIND_ADD_ADDR_IMM_SCALED for bind opcodes" 2021-07-20 13:45:24 -07:00
SyntheticSections.h [lld-macho] Have ICF operate on all sections at once 2021-07-17 13:42:51 -04:00
Target.cpp [lld-macho][nfc] Create Relocations.{h,cpp} for relocation-specific code 2021-03-11 13:28:09 -05:00
Target.h [lld-macho] Implement branch-range-extension thunks 2021-05-12 09:44:58 -07:00
UnwindInfoSection.cpp [lld-macho] Have ICF operate on all sections at once 2021-07-17 13:42:51 -04:00
UnwindInfoSection.h [lld/mac] Don't crash when dead-stripping removes all unwind info 2021-07-07 13:05:40 -04:00
Writer.cpp [lld/mac] Move handling of special undefineds later 2021-07-22 11:43:49 -04:00
Writer.h [lld-macho] Have ICF operate on all sections at once 2021-07-17 13:42:51 -04:00