Can you post your patch to https://reviews.llvm.org/ ?
On Thu, May 31, 2018 at 10:36 AM, Leonard Mosescu via lldb-commits < lldb-commits@lists.llvm.org> wrote: > If anyone's working on this I'd suggest adding a test case for the "split > code" case as well (where even a single function is split into multiple > ranges). MSVC with PGO should help produce hot/cold cold split repros. > > On Thu, May 31, 2018 at 10:24 AM, Greg Clayton via lldb-commits < > lldb-commits@lists.llvm.org> wrote: > >> >> >> On May 31, 2018, at 2:31 AM, Aleksandr Urakov via lldb-commits < >> lldb-commits@lists.llvm.org> wrote: >> >> Hello! >> >> I'm Aleksandr from JetBrains. We are working on improving support of >> MSVC-compiled binaries in lldb. We have made several fixes and would like >> to upstream them. >> >> The first patch adds support of function-level linking feature. The >> SymbolFilePDB::ParseCompileUnitLineTable function relies on the fact >> that ranges of compiled source files in the binary are continuous and don't >> intersect with each other. ParseCompileUnitLineTable creates LineSequence >> for each file and inserts it into LineTable, and the implementation of >> LineTable relies on continuity of the sequence. But it's not always true >> when function-level linking is enabled, e.g. in the attached input test >> file test-pdb-function-level-linking.exe there is xstring's >> std__basic_string_char_std__char_traits_char__std__allocator_char_____max_size >> (.00454820) between test-pdb-function-level-linking.cpp's foo >> (.00454770) and main (.004548F0). The source is compiled with Microsoft >> C/C++ compiler version 19.14.26429.4 for x86. >> >> To fix the problem we propose to renew the sequence on each address gap. >> >> >> That is what DWARF does as well. A line table can have many sequences >> where each sequence is a vector of rows whose addresses must always >> increase or stay the same. The line tables we have in LLDB mimic the DWARF >> line tables in many ways. >> >> >> >> The link to the patch and related files is: https://drive.google.com/o >> pen?id=1ozp06jyqugjLGT-6wuJKS1UhRuXFsixf >> >> Thanks! >> >> -- >> Aleksandr Urakov >> Software Developer >> JetBrains >> http://www.jetbrains.com >> The Drive to Develop >> _______________________________________________ >> lldb-commits mailing list >> lldb-commits@lists.llvm.org >> http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits >> >> >> >> _______________________________________________ >> lldb-commits mailing list >> lldb-commits@lists.llvm.org >> http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits >> >> > > _______________________________________________ > lldb-commits mailing list > lldb-commits@lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits > >
_______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits