diff options
| author | Adrian McCarthy <amccarth@google.com> | 2016-01-26 00:58:09 +0000 |
|---|---|---|
| committer | Adrian McCarthy <amccarth@google.com> | 2016-01-26 00:58:09 +0000 |
| commit | c35b91cee23079e32f421dbea5e2697ae492ef6b (patch) | |
| tree | 77d3717f5d965f8742cb4ac16ae70eedf84b0d61 /lldb/source/Symbol/Symtab.cpp | |
| parent | 86ff2689a5e6050e24a9bc11aea1364169d7299f (diff) | |
| download | bcm5719-llvm-c35b91cee23079e32f421dbea5e2697ae492ef6b.tar.gz bcm5719-llvm-c35b91cee23079e32f421dbea5e2697ae492ef6b.zip | |
Set symbol types for function symbols loaded from PE/COFF
This fixes the regression of several tests on Windows after rL258621.
The root problem is that ObjectFilePECOFF was not setting type information for the symbols, and the new CL rejects symbols without type information, breaking functionality like thread step-over.
The fix sets the type information for functions (and creates a TODO for other types).
Along the way, I fixed some typos and formatting that made the code I was debugging harder to understand.
In the long run, we should consider replacing most of ObjectFilePECOFF with the COFF parsing code from LLVM.
Differential Revision: http://reviews.llvm.org/D16563
llvm-svn: 258758
Diffstat (limited to 'lldb/source/Symbol/Symtab.cpp')
| -rw-r--r-- | lldb/source/Symbol/Symtab.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/lldb/source/Symbol/Symtab.cpp b/lldb/source/Symbol/Symtab.cpp index 61b8317fde1..de92094a498 100644 --- a/lldb/source/Symbol/Symtab.cpp +++ b/lldb/source/Symbol/Symtab.cpp @@ -1074,7 +1074,7 @@ Symtab::FindSymbolContainingFileAddress (addr_t file_addr) } void -Symtab::ForEachSymbolContainingFileAddresss (addr_t file_addr, std::function <bool(Symbol *)> const &callback) +Symtab::ForEachSymbolContainingFileAddress(addr_t file_addr, std::function<bool(Symbol *)> const &callback) { Mutex::Locker locker (m_mutex); @@ -1084,9 +1084,9 @@ Symtab::ForEachSymbolContainingFileAddresss (addr_t file_addr, std::function <bo std::vector<uint32_t> all_addr_indexes; // Get all symbols with file_addr - const size_t addr_match_count = m_file_addr_to_index.FindEntryIndexesThatContains(file_addr, all_addr_indexes); + const size_t addr_match_count = m_file_addr_to_index.FindEntryIndexesThatContain(file_addr, all_addr_indexes); - for (size_t i=0; i<addr_match_count; ++i) + for (size_t i = 0; i < addr_match_count; ++i) { if (!callback(SymbolAtIndex(all_addr_indexes[i]))) break; |

