llvm-project/llvm/tools/llvm-objdump
Daniel Bertalan 11443ef85d [llvm-objdump] Support dumping segment information with -chained_fixups
This commit adds the definitions for `dyld_chained_starts_in_image`,
`dyld_chained_starts_in_segment`, and related enums. Dumping their
contents is possible with the -chained_fixups flag of llvm-otool.

The chained-fixups.yaml test was changed to cover bindings/rebases, as
well as weak imports, weak symbols and flat namespace symbols. Now that
we have actual fixup entries, the __DATA segment contains data that
would need to be hexdumped in YAML. We also test empty pages (to look
for the "DYLD_CHAINED_PTR_START_NONE" annotation), so the YAML would end
up quite large. So instead, this commit includes a binary file.

When Apple's effort to upstream their chained fixups code continues,
we'll replace this code with the then-upstreamed code. But we need
something in the meantime for testing ld64.lld's chained fixups code.

Differential Revision: https://reviews.llvm.org/D131961
2022-08-18 09:29:27 +02:00
..
CMakeLists.txt [llvm-objdump] Add support for dumping embedded offloading data 2022-07-01 21:13:28 -04:00
COFFDump.cpp [llvm-objdump] Change some nonnull pointers to references. NFC 2022-07-07 12:14:59 -07:00
COFFDump.h [llvm-objdump] Change some nonnull pointers to references. NFC 2022-07-07 12:14:59 -07:00
ELFDump.cpp [llvm-objdump] --private-headers: change errors to warnings for dynamic section dumping 2022-03-28 01:00:43 -07:00
ELFDump.h
MachODump.cpp [llvm-objdump] Support dumping segment information with -chained_fixups 2022-08-18 09:29:27 +02:00
MachODump.h [llvm-objdump] Start on -chained_fixups for llvm-otool 2022-08-15 10:58:52 -04:00
ObjdumpOptID.h [llvm-objdump] Add an llvm-otool tool 2021-04-20 08:24:58 -04:00
ObjdumpOpts.td [llvm-objdump --macho] Rename --dyld_info to --dyld-info 2022-08-17 12:58:29 -04:00
OffloadDump.cpp [llvm-objdump] Fix alignment issues when dumping offloading sections 2022-07-08 14:30:06 -04:00
OffloadDump.h [llvm-objdump] Add support for dumping embedded offloading data 2022-07-01 21:13:28 -04:00
OtoolOpts.td [llvm-objdump --macho] Rename --dyld_info to --dyld-info 2022-08-17 12:58:29 -04:00
SourcePrinter.cpp Cleanup include: DebugInfo/Symbolize 2022-02-24 13:25:11 +01:00
SourcePrinter.h Cleanup LLVMObject headers 2022-02-10 21:13:44 +01:00
WasmDump.cpp [llvm-objdump] Use cast<> instead of dyn_cast<> to avoid dereference of nullptr 2022-01-23 12:50:12 +00:00
WasmDump.h
XCOFFDump.cpp [llvm] Use value instead of getValue (NFC) 2022-07-13 23:11:56 -07:00
XCOFFDump.h [llvm-objdump] Change some nonnull pointers to references. NFC 2022-07-07 12:14:59 -07:00
llvm-objdump.cpp [llvm-objdump --macho] Rename --dyld_info to --dyld-info 2022-08-17 12:58:29 -04:00
llvm-objdump.h [llvm-objdump] Create fake sections for a ELF core file 2022-07-14 13:39:59 +01:00