diff options
9 files changed, 0 insertions, 107 deletions
diff --git a/lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp b/lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp index 19a0e95d206..f298749f10d 100644 --- a/lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp +++ b/lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp @@ -1571,9 +1571,6 @@ bool SymbolFilePDB::ParseCompileUnitLineTable( line_table->AppendLineEntryToSequence( sequence.get(), prev_addr + prev_length, prev_line, 0, prev_source_idx, false, false, false, false, true); - - line_table->InsertSequence(sequence.release()); - sequence.reset(line_table->CreateLineSequenceContainer()); } if (ShouldAddLine(match_line, lno, length)) { diff --git a/lldb/unittests/SymbolFile/PDB/CMakeLists.txt b/lldb/unittests/SymbolFile/PDB/CMakeLists.txt index b9dada09b91..dd7e2248aed 100644 --- a/lldb/unittests/SymbolFile/PDB/CMakeLists.txt +++ b/lldb/unittests/SymbolFile/PDB/CMakeLists.txt @@ -17,10 +17,6 @@ add_lldb_unittest(SymbolFilePDBTests set(test_inputs test-pdb.exe test-pdb.pdb - test-pdb-function-level-linking.exe - test-pdb-function-level-linking.pdb - test-pdb-splitted-function.exe - test-pdb-splitted-function.pdb test-pdb-types.exe test-pdb-types.pdb) diff --git a/lldb/unittests/SymbolFile/PDB/Inputs/test-pdb-function-level-linking.cpp b/lldb/unittests/SymbolFile/PDB/Inputs/test-pdb-function-level-linking.cpp deleted file mode 100644 index e1d5aabb357..00000000000 --- a/lldb/unittests/SymbolFile/PDB/Inputs/test-pdb-function-level-linking.cpp +++ /dev/null @@ -1,17 +0,0 @@ -// Compile with "cl /c /ZI /sdl /EHsc /MTd /permissive- -// test-pdb-function-level-linking.cpp" -// Link with "link /debug:full test-pdb-function-level-linking.obj" - -#include <memory> -#include <string> - -std::string foo() -{ - return "Hello!"; -} - -int main() -{ - auto x = foo(); - return 0; -} diff --git a/lldb/unittests/SymbolFile/PDB/Inputs/test-pdb-function-level-linking.exe b/lldb/unittests/SymbolFile/PDB/Inputs/test-pdb-function-level-linking.exe deleted file mode 100644 index e69de29bb2d..00000000000 --- a/lldb/unittests/SymbolFile/PDB/Inputs/test-pdb-function-level-linking.exe +++ /dev/null diff --git a/lldb/unittests/SymbolFile/PDB/Inputs/test-pdb-function-level-linking.pdb b/lldb/unittests/SymbolFile/PDB/Inputs/test-pdb-function-level-linking.pdb deleted file mode 100644 index e69de29bb2d..00000000000 --- a/lldb/unittests/SymbolFile/PDB/Inputs/test-pdb-function-level-linking.pdb +++ /dev/null diff --git a/lldb/unittests/SymbolFile/PDB/Inputs/test-pdb-splitted-function.cpp b/lldb/unittests/SymbolFile/PDB/Inputs/test-pdb-splitted-function.cpp deleted file mode 100644 index 5155b8cdb6c..00000000000 --- a/lldb/unittests/SymbolFile/PDB/Inputs/test-pdb-splitted-function.cpp +++ /dev/null @@ -1,27 +0,0 @@ -// Compile with "cl /c /Zi /GL /O2 /EHsc /MTd test-pdb-splitted-function.cpp" -// Link with "link /debug:full /LTCG /GENPROFILE -// test-pdb-splitted-function.obj" -// Run several times -// Link with "link /debug:full /LTCG /USEPROFILE -// test-pdb-splitted-function.obj" - -#include <cmath> -#include <iostream> - -int main() -{ - auto b = false; - for (auto i = 1; i <= 1024; i++) - { - if (b) - { - std::cout << "Unreachable code" << std::endl; - auto x = std::sin(i); - return x; - } - - b = (i % 2 + (i - 1) % 2) != 1; - } - - return 0; -} diff --git a/lldb/unittests/SymbolFile/PDB/Inputs/test-pdb-splitted-function.exe b/lldb/unittests/SymbolFile/PDB/Inputs/test-pdb-splitted-function.exe deleted file mode 100644 index e69de29bb2d..00000000000 --- a/lldb/unittests/SymbolFile/PDB/Inputs/test-pdb-splitted-function.exe +++ /dev/null diff --git a/lldb/unittests/SymbolFile/PDB/Inputs/test-pdb-splitted-function.pdb b/lldb/unittests/SymbolFile/PDB/Inputs/test-pdb-splitted-function.pdb deleted file mode 100644 index e69de29bb2d..00000000000 --- a/lldb/unittests/SymbolFile/PDB/Inputs/test-pdb-splitted-function.pdb +++ /dev/null diff --git a/lldb/unittests/SymbolFile/PDB/SymbolFilePDBTests.cpp b/lldb/unittests/SymbolFile/PDB/SymbolFilePDBTests.cpp index 9b93ab0f0c7..1e867b172ee 100644 --- a/lldb/unittests/SymbolFile/PDB/SymbolFilePDBTests.cpp +++ b/lldb/unittests/SymbolFile/PDB/SymbolFilePDBTests.cpp @@ -56,10 +56,6 @@ public: SymbolFilePDB::Initialize(); m_pdb_test_exe = GetInputFilePath("test-pdb.exe"); - m_function_level_linking_test_exe = - GetInputFilePath("test-pdb-function-level-linking.exe"); - m_splitted_function_test_exe = - GetInputFilePath("test-pdb-splitted-function.exe"); m_types_test_exe = GetInputFilePath("test-pdb-types.exe"); } @@ -77,8 +73,6 @@ public: protected: std::string m_pdb_test_exe; - std::string m_function_level_linking_test_exe; - std::string m_splitted_function_test_exe; std::string m_types_test_exe; bool FileSpecMatchesAsBaseOrFull(const FileSpec &left, @@ -360,56 +354,6 @@ TEST_F(SymbolFilePDBTests, TestLineTablesMatchSpecific) { VerifyLineEntry(module, sc, header1, *lt, 9, 0x401090); } -void TestLineTableConsistency(llvm::StringRef exe_path, llvm::StringRef source_name) -{ - // All line entries of compile unit's line table must be consistent - // even if compiled sources are not continuous in the binary file. - FileSpec fspec(exe_path, false); - ArchSpec aspec("i686-pc-windows"); - lldb::ModuleSP module = std::make_shared<Module>(fspec, aspec); - SymbolVendor *plugin = module->GetSymbolVendor(); - SymbolFile *symfile = plugin->GetSymbolFile(); - FileSpec source_file(source_name, false); - uint32_t scope = lldb::eSymbolContextCompUnit | lldb::eSymbolContextLineEntry; - SymbolContextList sc_list; - uint32_t count = - symfile->ResolveSymbolContext(source_file, 0, true, scope, sc_list); - EXPECT_EQ(1u, count); - - SymbolContext sc; - EXPECT_TRUE(sc_list.GetContextAtIndex(0, sc)); - - LineTable *lt = sc.comp_unit->GetLineTable(); - EXPECT_NE(nullptr, lt); - - count = lt->GetSize(); - EXPECT_LT(0u, count); - - LineEntry le; - EXPECT_TRUE(lt->GetLineEntryAtIndex(0, le)); - for (int i = 1; i < count; i++) - { - lldb::addr_t curr_end = - le.range.GetBaseAddress().GetFileAddress() + le.range.GetByteSize(); - - EXPECT_TRUE(lt->GetLineEntryAtIndex(i, le)); - - EXPECT_LE(curr_end, le.range.GetBaseAddress().GetFileAddress()); - } -} - -TEST_F(SymbolFilePDBTests, TestFunctionLevelLinking) { - TestLineTableConsistency( - m_function_level_linking_test_exe, - "test-pdb-function-level-linking.cpp"); -} - -TEST_F(SymbolFilePDBTests, TestSplittedFunction) { - TestLineTableConsistency( - m_splitted_function_test_exe, - "test-pdb-splitted-function.cpp"); -} - TEST_F(SymbolFilePDBTests, TestSimpleClassTypes) { FileSpec fspec(m_types_test_exe.c_str(), false); ArchSpec aspec("i686-pc-windows"); |