[PATCH] D113733: [llvm-objdump/mac] Add support for new load commands
Keith Smiley via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Nov 11 22:17:21 PST 2021
keith created this revision.
keith added a reviewer: aprantl.
Herald added a subscriber: rupprecht.
Herald added a reviewer: jhenderson.
Herald added a reviewer: MaskRay.
keith requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D113733
Files:
llvm/test/tools/obj2yaml/MachO/raw-linkedit.yaml
llvm/tools/llvm-objdump/MachODump.cpp
Index: llvm/tools/llvm-objdump/MachODump.cpp
===================================================================
--- llvm/tools/llvm-objdump/MachODump.cpp
+++ llvm/tools/llvm-objdump/MachODump.cpp
@@ -10053,6 +10053,10 @@
outs() << " cmd LC_DYLIB_CODE_SIGN_DRS\n";
else if (ld.cmd == MachO::LC_LINKER_OPTIMIZATION_HINT)
outs() << " cmd LC_LINKER_OPTIMIZATION_HINT\n";
+ else if (ld.cmd == MachO::LC_DYLD_EXPORTS_TRIE)
+ outs() << " cmd LC_DYLD_EXPORTS_TRIE\n";
+ else if (ld.cmd == MachO::LC_DYLD_CHAINED_FIXUPS)
+ outs() << " cmd LC_DYLD_CHAINED_FIXUPS\n";
else
outs() << " cmd " << ld.cmd << " (?)\n";
outs() << " cmdsize " << ld.cmdsize;
@@ -10196,7 +10200,9 @@
Command.C.cmd == MachO::LC_FUNCTION_STARTS ||
Command.C.cmd == MachO::LC_DATA_IN_CODE ||
Command.C.cmd == MachO::LC_DYLIB_CODE_SIGN_DRS ||
- Command.C.cmd == MachO::LC_LINKER_OPTIMIZATION_HINT) {
+ Command.C.cmd == MachO::LC_LINKER_OPTIMIZATION_HINT ||
+ Command.C.cmd == MachO::LC_DYLD_EXPORTS_TRIE ||
+ Command.C.cmd == MachO::LC_DYLD_CHAINED_FIXUPS) {
MachO::linkedit_data_command Ld =
Obj->getLinkeditDataLoadCommand(Command);
PrintLinkEditDataCommand(Ld, Buf.size());
Index: llvm/test/tools/obj2yaml/MachO/raw-linkedit.yaml
===================================================================
--- llvm/test/tools/obj2yaml/MachO/raw-linkedit.yaml
+++ llvm/test/tools/obj2yaml/MachO/raw-linkedit.yaml
@@ -2,6 +2,9 @@
# raw __LINKEDIT segments.
#
# RUN: yaml2obj %s | obj2yaml --raw-segment=data --raw-segment=linkedit | FileCheck %s
+# RUN: yaml2obj %s > %t
+# RUN: llvm-objdump -p %t | FileCheck %s --check-prefix=CHECK-OBJDUMP
+# RUN: llvm-otool -l %t | FileCheck %s --check-prefix=CHECK-OBJDUMP
#
# This file was produced using:
# echo "int ext;" > a.c
@@ -17,6 +20,9 @@
# CHECK: segname: __DATA
# CHECK: content: '0000001000000080'
# CHECK: __LINKEDIT: 0000000020000000480000004C000000010000000100000000000000000000000300000000000000100000000000000018000000004006000040000000000000000000000100000001020000005F6578740000000000000000015F700006040080800100000000000000000000000000020000000F02000000400000000000000500000001000001000000000000000020005F70005F65787400000000000000
+#
+# CHECK-OBJDUMP: LC_DYLD_CHAINED_FIXUPS
+# CHECK-OBJDUMP: LC_DYLD_EXPORTS_TRIE
--- !mach-o
FileHeader:
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D113733.386732.patch
Type: text/x-patch
Size: 2490 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20211112/6be89d0c/attachment.bin>
More information about the llvm-commits
mailing list