zequanwu added inline comments.

================
Comment at: lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.cpp:1413-1414
   if (context.isTranslationUnit()) {
-    ParseAllNamespacesPlusChildrenOf(llvm::None);
+    ParseAllTypes();
+    ParseAllFunctionsAndNonLocalVars();
     return;
----------------
labath wrote:
> I have a feeling this is still doing more work than it would be necessary. I 
> haven't checked, but I'd expect that here it should be sufficient to parse 
> only the top level namespace names (not their contents), and create forward 
> declarations for the classes in the global namespace. I suspect this is doing 
> much more than that.
> (Of course, if PDB makes it hard to parse just this information, then it 
> might actually be better to parse everything -- I just don't know)
Yeah, we can do that. 
Update to don't try to complete types at all in 
`PdbAstBuilder::ParseDeclsForContext`. For a chrome crash report I'm looking 
at, the time for evaluating a unknown identifier(which will have search scope 
being a TU) drops from 287s -> 160s.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D136006/new/

https://reviews.llvm.org/D136006

_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to