diff options
author | Aaron Smith <aaron.smith@microsoft.com> | 2018-03-15 06:04:51 +0000 |
---|---|---|
committer | Aaron Smith <aaron.smith@microsoft.com> | 2018-03-15 06:04:51 +0000 |
commit | 40198f59053d7131ef0f7b4deb8725ab5fc19e29 (patch) | |
tree | 955e63933212692ff4d737d4f42789f5b1be1a20 /llvm/unittests/DebugInfo/PDB/PDBApiTest.cpp | |
parent | 9cc222c80de913d62b8a8d16c1c1dcc9665febb0 (diff) | |
download | bcm5719-llvm-40198f59053d7131ef0f7b4deb8725ab5fc19e29.tar.gz bcm5719-llvm-40198f59053d7131ef0f7b4deb8725ab5fc19e29.zip |
[DebugInfo] Add a new method IPDBSession::findLineNumbersBySectOffset
Summary:
Some PDB symbols do not have a valid VA or RVA but have Addr by Section and Offset. For example, a variable in thread-local storage has the following properties:
get_addressOffset: 0
get_addressSection: 5
get_lexicalParentId: 2
get_name: g_tls
get_symIndexId: 12
get_typeId: 4
get_dataKind: 6
get_symTag: 7
get_locationType: 2
This change provides a new method to locate line numbers by Section and Offset from those symbols.
Reviewers: zturner, rnk, llvm-commits
Subscribers: asmith, JDevlieghere
Differential Revision: https://reviews.llvm.org/D44407
llvm-svn: 327601
Diffstat (limited to 'llvm/unittests/DebugInfo/PDB/PDBApiTest.cpp')
-rw-r--r-- | llvm/unittests/DebugInfo/PDB/PDBApiTest.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/llvm/unittests/DebugInfo/PDB/PDBApiTest.cpp b/llvm/unittests/DebugInfo/PDB/PDBApiTest.cpp index 4cc47aa4540..2b8050a50f3 100644 --- a/llvm/unittests/DebugInfo/PDB/PDBApiTest.cpp +++ b/llvm/unittests/DebugInfo/PDB/PDBApiTest.cpp @@ -88,6 +88,11 @@ class MockSession : public IPDBSession { findLineNumbersByAddress(uint64_t Address, uint32_t Length) const override { return nullptr; } + std::unique_ptr<IPDBEnumLineNumbers> + findLineNumbersBySectOffset(uint32_t Section, uint32_t Offset, + uint32_t Length) const override { + return nullptr; + } std::unique_ptr<IPDBEnumSourceFiles> findSourceFiles(const PDBSymbolCompiland *Compiland, llvm::StringRef Pattern, PDB_NameSearchFlags Flags) const override { |