diff options
author | Jonas Devlieghere <jonas@devlieghere.com> | 2017-09-18 14:15:57 +0000 |
---|---|---|
committer | Jonas Devlieghere <jonas@devlieghere.com> | 2017-09-18 14:15:57 +0000 |
commit | c0a758d8abcafa9f696b29bcf5eea44df9b96973 (patch) | |
tree | 4bd04806495c5787fc69b63ea0a4003900aaceff /llvm/tools/llvm-objdump/llvm-objdump.cpp | |
parent | 360629d170778f08eb03d67907f25ff81cfde03b (diff) | |
download | llvm-c0a758d8abcafa9f696b29bcf5eea44df9b96973.zip llvm-c0a758d8abcafa9f696b29bcf5eea44df9b96973.tar.gz llvm-c0a758d8abcafa9f696b29bcf5eea44df9b96973.tar.bz2 |
[dwarfdump] Make .eh_frame an alias for .debug_frame
This patch makes the `.eh_frame` extension an alias for `.debug_frame`.
Up till now it was only possible to dump the section using objdump, but
not with dwarfdump. Since the two are essentially interchangeable, we
dump whichever of the two is present.
As a workaround, this patch also adds parsing for 3 currently
unimplemented CFA instructions: `DW_CFA_def_cfa_expression`,
`DW_CFA_expression`, and `DW_CFA_val_expression`. Because I lack the
required knowledge, I just parse the fields without actually creating
the instructions.
Finally, this also fixes the typo in the `.debug_frame` section name
which incorrectly contained a trailing `s`.
Differential revision: https://reviews.llvm.org/D37852
llvm-svn: 313530
Diffstat (limited to 'llvm/tools/llvm-objdump/llvm-objdump.cpp')
-rw-r--r-- | llvm/tools/llvm-objdump/llvm-objdump.cpp | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/llvm/tools/llvm-objdump/llvm-objdump.cpp b/llvm/tools/llvm-objdump/llvm-objdump.cpp index 266b5563..5b16abf 100644 --- a/llvm/tools/llvm-objdump/llvm-objdump.cpp +++ b/llvm/tools/llvm-objdump/llvm-objdump.cpp @@ -191,7 +191,7 @@ cl::opt<bool> PrintFaultMaps("fault-map-section", cl::opt<DIDumpType> llvm::DwarfDumpType( "dwarf", cl::init(DIDT_Null), cl::desc("Dump of dwarf debug sections:"), - cl::values(clEnumValN(DIDT_DebugFrames, "frames", ".debug_frame"))); + cl::values(clEnumValN(DIDT_DebugFrame, "frames", ".debug_frame"))); cl::opt<bool> PrintSource( "source", @@ -2085,7 +2085,6 @@ static void DumpObject(ObjectFile *o, const Archive *a = nullptr) { // Dump the complete DWARF structure. DIDumpOptions DumpOpts; DumpOpts.DumpType = DwarfDumpType; - DumpOpts.DumpEH = true; DICtx->dump(outs(), DumpOpts); } } |