diff options
| author | Sean Callanan <scallanan@apple.com> | 2012-03-22 20:04:23 +0000 |
|---|---|---|
| committer | Sean Callanan <scallanan@apple.com> | 2012-03-22 20:04:23 +0000 |
| commit | 745af46e2f869a1bd48b94864eec3935958cf48a (patch) | |
| tree | 5cfa46e51a70bb1b535d6864652c1b861086e182 /lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp | |
| parent | d45a9c32c2ad1311c0131d8754bccf8b11c14e0a (diff) | |
| download | bcm5719-llvm-745af46e2f869a1bd48b94864eec3935958cf48a.tar.gz bcm5719-llvm-745af46e2f869a1bd48b94864eec3935958cf48a.zip | |
Resolved two problems in the disassembler:
- Addresses with no description were given
comments, leading to useless comments like
"; , "
- Addresses weren't resolved with respect
to the correct module.
llvm-svn: 153274
Diffstat (limited to 'lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp')
| -rw-r--r-- | lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp b/lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp index 2666475adcb..87b81535ce2 100644 --- a/lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp +++ b/lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp @@ -620,10 +620,11 @@ const char *DisassemblerLLVMC::SymbolLookup (uint64_t ReferenceValue, if (target) { - if (!target->GetSectionLoadList().IsEmpty()) - target->GetSectionLoadList().ResolveLoadAddress(ReferenceValue, reference_address); - else - target->GetImages().ResolveFileAddress(ReferenceValue, reference_address); + if (!target->GetSectionLoadList().ResolveLoadAddress(ReferenceValue, reference_address)) + { + if (ModuleSP module_sp = m_inst->GetAddress().GetModule()) + module_sp->ResolveFileAddress(ReferenceValue, reference_address); + } if (reference_address.IsValid() && reference_address.GetSection()) { @@ -634,7 +635,8 @@ const char *DisassemblerLLVMC::SymbolLookup (uint64_t ReferenceValue, Address::DumpStyleResolvedDescriptionNoModule, Address::DumpStyleSectionNameOffset); - m_inst->AddReferencedAddress(ss.GetString()); + if (!ss.GetString().empty()) + m_inst->AddReferencedAddress(ss.GetString()); } } } |

