diff options
Diffstat (limited to 'unittests/DebugInfo/PDB/PDBApiTest.cpp')
-rw-r--r-- | unittests/DebugInfo/PDB/PDBApiTest.cpp | 79 |
1 files changed, 76 insertions, 3 deletions
diff --git a/unittests/DebugInfo/PDB/PDBApiTest.cpp b/unittests/DebugInfo/PDB/PDBApiTest.cpp index e998acf009ec..41b679825f17 100644 --- a/unittests/DebugInfo/PDB/PDBApiTest.cpp +++ b/unittests/DebugInfo/PDB/PDBApiTest.cpp @@ -11,7 +11,10 @@ #include "llvm/ADT/STLExtras.h" #include "llvm/DebugInfo/PDB/IPDBEnumChildren.h" +#include "llvm/DebugInfo/PDB/IPDBInjectedSource.h" +#include "llvm/DebugInfo/PDB/IPDBLineNumber.h" #include "llvm/DebugInfo/PDB/IPDBRawSymbol.h" +#include "llvm/DebugInfo/PDB/IPDBSectionContrib.h" #include "llvm/DebugInfo/PDB/IPDBSession.h" #include "llvm/DebugInfo/PDB/IPDBSourceFile.h" #include "llvm/DebugInfo/PDB/IPDBTable.h" @@ -63,7 +66,7 @@ namespace { class MockSession : public IPDBSession { uint64_t getLoadAddress() const override { return 0; } - void setLoadAddress(uint64_t Address) override {} + bool setLoadAddress(uint64_t Address) override { return false; } std::unique_ptr<PDBSymbolExe> getGlobalScope() override { return nullptr; } std::unique_ptr<PDBSymbol> getSymbolById(uint32_t SymbolId) const override { return nullptr; @@ -72,11 +75,27 @@ class MockSession : public IPDBSession { getSourceFileById(uint32_t SymbolId) const override { return nullptr; } - + bool addressForVA(uint64_t VA, uint32_t &Section, + uint32_t &Offset) const override { + return false; + } + bool addressForRVA(uint32_t RVA, uint32_t &Section, + uint32_t &Offset) const override { + return false; + } std::unique_ptr<PDBSymbol> findSymbolByAddress(uint64_t Address, PDB_SymType Type) const override { return nullptr; } + std::unique_ptr<PDBSymbol> findSymbolByRVA(uint32_t RVA, + PDB_SymType Type) const override { + return nullptr; + } + std::unique_ptr<PDBSymbol> + findSymbolBySectOffset(uint32_t Sect, uint32_t Offset, + PDB_SymType Type) const override { + return nullptr; + } std::unique_ptr<IPDBEnumLineNumbers> findLineNumbers(const PDBSymbolCompiland &Compiland, const IPDBSourceFile &File) const override { @@ -86,6 +105,15 @@ class MockSession : public IPDBSession { findLineNumbersByAddress(uint64_t Address, uint32_t Length) const override { return nullptr; } + std::unique_ptr<IPDBEnumLineNumbers> + findLineNumbersByRVA(uint32_t RVA, 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 { @@ -123,6 +151,14 @@ class MockSession : public IPDBSession { std::unique_ptr<IPDBEnumTables> getEnumTables() const override { return nullptr; } + + std::unique_ptr<IPDBEnumInjectedSources> getInjectedSources() const override { + return nullptr; + } + + std::unique_ptr<IPDBEnumSectionContribs> getSectionContribs() const override { + return nullptr; + } }; class MockRawSymbol : public IPDBRawSymbol { @@ -142,14 +178,48 @@ public: return nullptr; } std::unique_ptr<IPDBEnumSymbols> + findChildrenByAddr(PDB_SymType Type, StringRef Name, PDB_NameSearchFlags Flags, + uint32_t Section, uint32_t Offset) const override { + return nullptr; + } + std::unique_ptr<IPDBEnumSymbols> + findChildrenByVA(PDB_SymType Type, StringRef Name, PDB_NameSearchFlags Flags, + uint64_t VA) const override { + return nullptr; + } + std::unique_ptr<IPDBEnumSymbols> findChildrenByRVA(PDB_SymType Type, StringRef Name, PDB_NameSearchFlags Flags, uint32_t RVA) const override { return nullptr; } std::unique_ptr<IPDBEnumSymbols> + findInlineFramesByAddr(uint32_t Section, uint32_t Offset) const override { + return nullptr; + } + std::unique_ptr<IPDBEnumSymbols> findInlineFramesByRVA(uint32_t RVA) const override { return nullptr; } + std::unique_ptr<IPDBEnumSymbols> + findInlineFramesByVA(uint64_t VA) const override { + return nullptr; + } + std::unique_ptr<IPDBEnumLineNumbers> findInlineeLines() const override { + return nullptr; + } + std::unique_ptr<IPDBEnumLineNumbers> + findInlineeLinesByAddr(uint32_t Section, uint32_t Offset, + uint32_t Length) const override { + return nullptr; + } + std::unique_ptr<IPDBEnumLineNumbers> + findInlineeLinesByRVA(uint32_t RVA, uint32_t Length) const override { + return nullptr; + } + std::unique_ptr<IPDBEnumLineNumbers> + findInlineeLinesByVA(uint64_t VA, uint32_t Length) const override { + return nullptr; + } void getDataBytes(llvm::SmallVector<uint8_t, 32> &bytes) const override {} void getFrontEndVersion(VersionInfo &Version) const override {} @@ -161,6 +231,10 @@ public: return {}; } + std::unique_ptr<IPDBLineNumber> getSrcLineOnTypeDefn() const override { + return nullptr; + } + MOCK_SYMBOL_ACCESSOR(getAccess) MOCK_SYMBOL_ACCESSOR(getAddressOffset) MOCK_SYMBOL_ACCESSOR(getAddressSection) @@ -428,5 +502,4 @@ TEST_F(PDBApiTest, Dyncast) { VerifyUnknownDyncasts(); } - } // end anonymous namespace |