summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-readobj/llvm-readobj.cpp
diff options
context:
space:
mode:
authorDavide Italiano <davide@freebsd.org>2015-08-21 20:28:30 +0000
committerDavide Italiano <davide@freebsd.org>2015-08-21 20:28:30 +0000
commit07e7acb635e36bebbcee0e730fdb03b3fffbc99f (patch)
tree11146c3ce73d7bf1e0f1e9d78c916b0a7f514916 /llvm/tools/llvm-readobj/llvm-readobj.cpp
parent6ea895b557008212bc781841521af8694d5e47f7 (diff)
downloadbcm5719-llvm-07e7acb635e36bebbcee0e730fdb03b3fffbc99f.tar.gz
bcm5719-llvm-07e7acb635e36bebbcee0e730fdb03b3fffbc99f.zip
[llvm-readobj] Add support for MachO DataInCodeDataCommand.
Example output: File: <stdin> Format: Mach-O arm Arch: arm AddressSize: 32bit DataInCode { Data offset: 300 Data size: 32 Data Regions [ DICE { Index: 0 Offset: 0 Length: 4 Kind: 1 } DICE { Index: 1 Offset: 4 Length: 4 Kind: 4 } DICE { Index: 2 Offset: 8 Length: 2 Kind: 3 } DICE { Index: 3 Offset: 10 Length: 1 Kind: 2 } ] } Differential Revision: http://reviews.llvm.org/D12084 llvm-svn: 245732
Diffstat (limited to 'llvm/tools/llvm-readobj/llvm-readobj.cpp')
-rw-r--r--llvm/tools/llvm-readobj/llvm-readobj.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/llvm/tools/llvm-readobj/llvm-readobj.cpp b/llvm/tools/llvm-readobj/llvm-readobj.cpp
index 860211995d1..c6f303ddb0f 100644
--- a/llvm/tools/llvm-readobj/llvm-readobj.cpp
+++ b/llvm/tools/llvm-readobj/llvm-readobj.cpp
@@ -181,6 +181,11 @@ namespace opts {
COFFBaseRelocs("coff-basereloc",
cl::desc("Display the PE/COFF .reloc section"));
+ // -macho-data-in-code
+ cl::opt<bool>
+ MachODataInCode("macho-data-in-code",
+ cl::desc("Display MachO Data in Code command"));
+
// -stackmap
cl::opt<bool>
PrintStackMap("stackmap",
@@ -312,6 +317,9 @@ static void dumpObject(const ObjectFile *Obj) {
if (opts::COFFBaseRelocs)
Dumper->printCOFFBaseReloc();
}
+ if (Obj->isMachO())
+ if (opts::MachODataInCode)
+ Dumper->printMachODataInCode();
if (opts::PrintStackMap)
Dumper->printStackMap();
}
OpenPOWER on IntegriCloud