[llvm] r217433 - llvm-objdump: don't crash when __compact_unwind has no relocs.
Tim Northover
tnorthover at apple.com
Tue Sep 9 03:45:07 PDT 2014
Author: tnorthover
Date: Tue Sep 9 05:45:06 2014
New Revision: 217433
URL: http://llvm.org/viewvc/llvm-project?rev=217433&view=rev
Log:
llvm-objdump: don't crash when __compact_unwind has no relocs.
Added:
llvm/trunk/test/tools/llvm-objdump/Inputs/unwind-info-no-relocs.macho-x86_64 (with props)
llvm/trunk/test/tools/llvm-objdump/macho-unwind-info-no-relocs.test
Modified:
llvm/trunk/tools/llvm-objdump/MachODump.cpp
Added: llvm/trunk/test/tools/llvm-objdump/Inputs/unwind-info-no-relocs.macho-x86_64
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-objdump/Inputs/unwind-info-no-relocs.macho-x86_64?rev=217433&view=auto
==============================================================================
Binary files llvm/trunk/test/tools/llvm-objdump/Inputs/unwind-info-no-relocs.macho-x86_64 (added) and llvm/trunk/test/tools/llvm-objdump/Inputs/unwind-info-no-relocs.macho-x86_64 Tue Sep 9 05:45:06 2014 differ
Propchange: llvm/trunk/test/tools/llvm-objdump/Inputs/unwind-info-no-relocs.macho-x86_64
------------------------------------------------------------------------------
svn:executable = *
Added: llvm/trunk/test/tools/llvm-objdump/macho-unwind-info-no-relocs.test
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-objdump/macho-unwind-info-no-relocs.test?rev=217433&view=auto
==============================================================================
--- llvm/trunk/test/tools/llvm-objdump/macho-unwind-info-no-relocs.test (added)
+++ llvm/trunk/test/tools/llvm-objdump/macho-unwind-info-no-relocs.test Tue Sep 9 05:45:06 2014
@@ -0,0 +1,8 @@
+# RUN: llvm-objdump -unwind-info %p/Inputs/unwind-info-no-relocs.macho-x86_64 2>/dev/null | FileCheck %s
+
+# Make sure we can deal with __compact_unwind sections that don't have helpful
+# relocations.
+
+# CHECK: Contents of __compact_unwind section:
+# CHECK: Entry at offset 0x0:
+# CHECK: start: 0x100000f7e
Modified: llvm/trunk/tools/llvm-objdump/MachODump.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/llvm-objdump/MachODump.cpp?rev=217433&r1=217432&r2=217433&view=diff
==============================================================================
--- llvm/trunk/tools/llvm-objdump/MachODump.cpp (original)
+++ llvm/trunk/tools/llvm-objdump/MachODump.cpp Tue Sep 9 05:45:06 2014
@@ -650,6 +650,9 @@ static void printUnwindRelocDest(const M
StringRef Name;
uint64_t Addend;
+ if (!Reloc.getObjectFile())
+ return;
+
findUnwindRelocNameAddend(Obj, Symbols, Reloc, Addr, Name, Addend);
outs() << Name;
More information about the llvm-commits
mailing list