diff options
| author | Nick Kledzik <kledzik@apple.com> | 2014-10-18 01:21:02 +0000 |
|---|---|---|
| committer | Nick Kledzik <kledzik@apple.com> | 2014-10-18 01:21:02 +0000 |
| commit | 3b2aa057e63e70d4556199b46ea8721c7f0f5ce0 (patch) | |
| tree | e1941ac83d7f15bebf9a19ade2659dad0324cd8f /llvm/lib/Object | |
| parent | 6f9da55c0ff5c55b0bef1bc4907f9ce0915a10aa (diff) | |
| download | bcm5719-llvm-3b2aa057e63e70d4556199b46ea8721c7f0f5ce0.tar.gz bcm5719-llvm-3b2aa057e63e70d4556199b46ea8721c7f0f5ce0.zip | |
[llvm-objdump] Fix mach-o binding decompression error
llvm-svn: 220119
Diffstat (limited to 'llvm/lib/Object')
| -rw-r--r-- | llvm/lib/Object/MachOObjectFile.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/llvm/lib/Object/MachOObjectFile.cpp b/llvm/lib/Object/MachOObjectFile.cpp index 4435815b899..6e83d8182a4 100644 --- a/llvm/lib/Object/MachOObjectFile.cpp +++ b/llvm/lib/Object/MachOObjectFile.cpp @@ -1974,20 +1974,20 @@ void MachOBindEntry::moveNext() { SegmentOffset) << "\n"); return; case MachO::BIND_OPCODE_DO_BIND_ADD_ADDR_ULEB: - AdvanceAmount = readULEB128(); + AdvanceAmount = readULEB128() + PointerSize; RemainingLoopCount = 0; if (TableKind == Kind::Lazy) Malformed = true; DEBUG_WITH_TYPE( "mach-o-bind", - llvm::dbgs() << "BIND_OPCODE_DO_BIND_IMM_TIMES: " + llvm::dbgs() << "BIND_OPCODE_DO_BIND_ADD_ADDR_ULEB: " << format("SegmentOffset=0x%06X", SegmentOffset) << ", AdvanceAmount=" << AdvanceAmount << ", RemainingLoopCount=" << RemainingLoopCount << "\n"); return; case MachO::BIND_OPCODE_DO_BIND_ADD_ADDR_IMM_SCALED: - AdvanceAmount = ImmValue * PointerSize; + AdvanceAmount = ImmValue * PointerSize + PointerSize; RemainingLoopCount = 0; if (TableKind == Kind::Lazy) Malformed = true; |

