jarin marked an inline comment as done. jarin added inline comments.
================ Comment at: lldb/source/Plugins/SymbolFile/DWARF/DWARFIndex.cpp:45 if (name_type_mask & eFunctionNameTypeFull) { - dies.push_back(die); - return; + if (!die.IsMethod() || die.GetMangledName(false) == name) { + dies.push_back(die); ---------------- labath wrote: > I don't believe the `IsMethod` check is really needed here -- the mangled > name check should handle everything. > > In fact, looking at the implementation of > `DWARFDebugInfoEntry::GetMangledName`, I don't think you even need the extra > `substitute_name_allowed=false` part. The default value should do exactly > what we need. If the DIE has a linkage (mangled) name it will return it and > we will use that for comparison. For an `extern "C"` function it will return > the regular name, and we will compare that instead (this check is somewhat > redundant because if the name doesn't match, the function should not be in > the index in the first place, but I don't think it hurts to check either). > > Am I missing something? I want to avoid returning methods to [[ https://github.com/llvm/llvm-project/blob/808142876c10b52e7ee57cdc6dcf0acc5c97c1b7/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp#L1258 | ClangExpressionDeclMap::LookupFunction ]], so that ClangExpressionDeclMap::LookupFunction does not do the expensive [[ https://github.com/llvm/llvm-project/blob/808142876c10b52e7ee57cdc6dcf0acc5c97c1b7/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp#L1298 | DeclContext parsing ]] just to find out the function [[ https://github.com/llvm/llvm-project/blob/808142876c10b52e7ee57cdc6dcf0acc5c97c1b7/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp#L1304 | is a method ]] and must be thrown away. The motivation is pretty much the same as for https://reviews.llvm.org/D70846. Does it make sense? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D73191/new/ https://reviews.llvm.org/D73191 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits