[Lldb-commits] [lldb] Make only one function that needs to be implemented when searching for types (PR #74786)

Greg Clayton via lldb-commits lldb-commits at lists.llvm.org
Wed Dec 13 10:38:21 PST 2023


clayborg wrote:

> I merged your fix and a few follow ups to get it all to compile. Now we have 2 failures on Windows: https://lab.llvm.org/buildbot/#/builders/219/builds/7554/steps/6/logs/stdio
> 
> ```
> Failed Tests (2):
>   lldb-api :: lang/cpp/unique-types4/TestUniqueTypes4.py
>   lldb-unit :: SymbolFile/PDB/./SymbolFilePDBTests.exe/SymbolFilePDBTests/TestMaxMatches
> ```
For TestUniqueTypes4.py, it is failing with a expression error, probably because a type lookup failed where it used to succeed.

TestMaxMatches will need to be debugged a bit. It used to find all of the types first, and then try to find a max of 1 through 10 types after that. Now with type queries, you get only one or all types (no one was using a max value for types other than 1 or all before). I did my best to try and code it up, but I have no ability to run the test to verify it works or debug it. Any help here would be appreciated. I do two type queries in the test where I grab all types and we expect more than one match, and then one where we try to find just one and then verify we got only one from the type map.


> 
> Which I can look into but not today.
> 
> Is it expected that results would change here? Seems like a refactor but I don't have much context.

Yeah, I don't have the ability yet to debug on windows. I am working on getting a VM based solution running now.

The new function `SymbolFilePDB::FindTypes(...)` that replaces the old one needs to be debugged. I took a guess at what would work, but not sure I got it right. Any help debugging this would be very much appreciated. This patch is a HUGE perf win, so it is worth making sure we can keep this in and making it work. If we need to expected fail the python test on window until we can look into it, I would vote to do this. And also fixing TextMaxMatches by commenting out this test for now until we can debug it would be a good option. With the supposition that we get this fixed within a week for both.

https://github.com/llvm/llvm-project/pull/74786


More information about the lldb-commits mailing list