diff options
24 files changed, 88 insertions, 144 deletions
diff --git a/lldb/include/lldb/Core/Module.h b/lldb/include/lldb/Core/Module.h index 9f1875ba68c..5212d690ea3 100644 --- a/lldb/include/lldb/Core/Module.h +++ b/lldb/include/lldb/Core/Module.h @@ -447,26 +447,19 @@ public: /// @param[in] parent_decl_ctx /// If valid, a decl context that results must exist within /// - /// @param[in] append - /// If \b true, any matches will be appended to \a - /// variable_list, else matches replace the contents of - /// \a variable_list. - /// /// @param[in] max_matches /// Allow the number of matches to be limited to \a /// max_matches. Specify UINT32_MAX to get all possible matches. /// /// @param[in] variable_list - /// A list of variables that gets the matches appended to (if - /// \a append it \b true), or replace (if \a append is \b false). + /// A list of variables that gets the matches appended to. /// /// @return /// The number of matches added to \a variable_list. //------------------------------------------------------------------ size_t FindGlobalVariables(const ConstString &name, const CompilerDeclContext *parent_decl_ctx, - bool append, size_t max_matches, - VariableList &variable_list); + size_t max_matches, VariableList &variable_list); //------------------------------------------------------------------ /// Find global and static variables by regular expression. @@ -474,24 +467,18 @@ public: /// @param[in] regex /// A regular expression to use when matching the name. /// - /// @param[in] append - /// If \b true, any matches will be appended to \a - /// variable_list, else matches replace the contents of - /// \a variable_list. - /// /// @param[in] max_matches /// Allow the number of matches to be limited to \a /// max_matches. Specify UINT32_MAX to get all possible matches. /// /// @param[in] variable_list - /// A list of variables that gets the matches appended to (if - /// \a append it \b true), or replace (if \a append is \b false). + /// A list of variables that gets the matches appended to. /// /// @return /// The number of matches added to \a variable_list. //------------------------------------------------------------------ - size_t FindGlobalVariables(const RegularExpression ®ex, bool append, - size_t max_matches, VariableList &variable_list); + size_t FindGlobalVariables(const RegularExpression ®ex, size_t max_matches, + VariableList &variable_list); //------------------------------------------------------------------ /// Find types by name. diff --git a/lldb/include/lldb/Core/ModuleList.h b/lldb/include/lldb/Core/ModuleList.h index a3a4aab7c65..e1d8a9a7fb8 100644 --- a/lldb/include/lldb/Core/ModuleList.h +++ b/lldb/include/lldb/Core/ModuleList.h @@ -324,24 +324,17 @@ public: /// The name of the global or static variable we are looking /// for. /// - /// @param[in] append - /// If \b true, any matches will be appended to \a - /// variable_list, else matches replace the contents of - /// \a variable_list. - /// /// @param[in] max_matches /// Allow the number of matches to be limited to \a /// max_matches. Specify UINT32_MAX to get all possible matches. /// /// @param[in] variable_list - /// A list of variables that gets the matches appended to (if - /// \a append it \b true), or replace (if \a append is \b false). + /// A list of variables that gets the matches appended to. /// /// @return /// The number of matches added to \a variable_list. //------------------------------------------------------------------ - size_t FindGlobalVariables(const ConstString &name, bool append, - size_t max_matches, + size_t FindGlobalVariables(const ConstString &name, size_t max_matches, VariableList &variable_list) const; //------------------------------------------------------------------ @@ -350,24 +343,17 @@ public: /// @param[in] regex /// A regular expression to use when matching the name. /// - /// @param[in] append - /// If \b true, any matches will be appended to \a - /// variable_list, else matches replace the contents of - /// \a variable_list. - /// /// @param[in] max_matches /// Allow the number of matches to be limited to \a /// max_matches. Specify UINT32_MAX to get all possible matches. /// /// @param[in] variable_list - /// A list of variables that gets the matches appended to (if - /// \a append it \b true), or replace (if \a append is \b false). + /// A list of variables that gets the matches appended to. /// /// @return /// The number of matches added to \a variable_list. //------------------------------------------------------------------ - size_t FindGlobalVariables(const RegularExpression ®ex, bool append, - size_t max_matches, + size_t FindGlobalVariables(const RegularExpression ®ex, size_t max_matches, VariableList &variable_list) const; //------------------------------------------------------------------ diff --git a/lldb/include/lldb/Symbol/SymbolFile.h b/lldb/include/lldb/Symbol/SymbolFile.h index b26be31b359..13818833279 100644 --- a/lldb/include/lldb/Symbol/SymbolFile.h +++ b/lldb/include/lldb/Symbol/SymbolFile.h @@ -148,10 +148,10 @@ public: SymbolContextList &sc_list); virtual uint32_t FindGlobalVariables(const ConstString &name, - const CompilerDeclContext *parent_decl_ctx, bool append, + const CompilerDeclContext *parent_decl_ctx, uint32_t max_matches, VariableList &variables); virtual uint32_t FindGlobalVariables(const RegularExpression ®ex, - bool append, uint32_t max_matches, + uint32_t max_matches, VariableList &variables); virtual uint32_t FindFunctions(const ConstString &name, const CompilerDeclContext *parent_decl_ctx, diff --git a/lldb/include/lldb/Symbol/SymbolVendor.h b/lldb/include/lldb/Symbol/SymbolVendor.h index 51fdc2718cc..312b146f297 100644 --- a/lldb/include/lldb/Symbol/SymbolVendor.h +++ b/lldb/include/lldb/Symbol/SymbolVendor.h @@ -81,11 +81,11 @@ public: virtual size_t FindGlobalVariables(const ConstString &name, const CompilerDeclContext *parent_decl_ctx, - bool append, size_t max_matches, + size_t max_matches, VariableList &variables); virtual size_t FindGlobalVariables(const RegularExpression ®ex, - bool append, size_t max_matches, + size_t max_matches, VariableList &variables); virtual size_t FindFunctions(const ConstString &name, diff --git a/lldb/source/API/SBModule.cpp b/lldb/source/API/SBModule.cpp index bf2f8789452..1de1e547e50 100644 --- a/lldb/source/API/SBModule.cpp +++ b/lldb/source/API/SBModule.cpp @@ -367,7 +367,7 @@ SBValueList SBModule::FindGlobalVariables(SBTarget &target, const char *name, if (name && module_sp) { VariableList variable_list; const uint32_t match_count = module_sp->FindGlobalVariables( - ConstString(name), NULL, false, max_matches, variable_list); + ConstString(name), NULL, max_matches, variable_list); if (match_count > 0) { for (uint32_t i = 0; i < match_count; ++i) { diff --git a/lldb/source/API/SBTarget.cpp b/lldb/source/API/SBTarget.cpp index 4f168168368..8ff8b33b083 100644 --- a/lldb/source/API/SBTarget.cpp +++ b/lldb/source/API/SBTarget.cpp @@ -1804,9 +1804,8 @@ SBValueList SBTarget::FindGlobalVariables(const char *name, TargetSP target_sp(GetSP()); if (name && target_sp) { VariableList variable_list; - const bool append = true; const uint32_t match_count = target_sp->GetImages().FindGlobalVariables( - ConstString(name), append, max_matches, variable_list); + ConstString(name), max_matches, variable_list); if (match_count > 0) { ExecutionContextScope *exe_scope = target_sp->GetProcessSP().get(); @@ -1833,23 +1832,22 @@ SBValueList SBTarget::FindGlobalVariables(const char *name, if (name && target_sp) { llvm::StringRef name_ref(name); VariableList variable_list; - const bool append = true; std::string regexstr; uint32_t match_count; switch (matchtype) { case eMatchTypeNormal: match_count = target_sp->GetImages().FindGlobalVariables( - ConstString(name), append, max_matches, variable_list); + ConstString(name), max_matches, variable_list); break; case eMatchTypeRegex: match_count = target_sp->GetImages().FindGlobalVariables( - RegularExpression(name_ref), append, max_matches, variable_list); + RegularExpression(name_ref), max_matches, variable_list); break; case eMatchTypeStartsWith: regexstr = llvm::Regex::escape(name) + ".*"; match_count = target_sp->GetImages().FindGlobalVariables( - RegularExpression(regexstr), append, max_matches, variable_list); + RegularExpression(regexstr), max_matches, variable_list); break; } diff --git a/lldb/source/Commands/CommandObjectTarget.cpp b/lldb/source/Commands/CommandObjectTarget.cpp index ee7e0e914a2..b383b55c1fa 100644 --- a/lldb/source/Commands/CommandObjectTarget.cpp +++ b/lldb/source/Commands/CommandObjectTarget.cpp @@ -752,7 +752,7 @@ public: VariableList &variable_list) { Target *target = static_cast<Target *>(baton); if (target) { - return target->GetImages().FindGlobalVariables(ConstString(name), true, + return target->GetImages().FindGlobalVariables(ConstString(name), UINT32_MAX, variable_list); } return 0; @@ -818,8 +818,8 @@ protected: return false; } use_var_name = true; - matches = target->GetImages().FindGlobalVariables( - regex, true, UINT32_MAX, variable_list); + matches = target->GetImages().FindGlobalVariables(regex, UINT32_MAX, + variable_list); } else { Status error(Variable::GetValuesForVariableExpressionPath( arg, m_exe_ctx.GetBestExecutionContextScope(), @@ -947,8 +947,8 @@ protected: llvm::StringRef( ".")); // Any global with at least one character VariableList variable_list; - sc.module_sp->FindGlobalVariables(all_globals_regex, append, - UINT32_MAX, variable_list); + sc.module_sp->FindGlobalVariables(all_globals_regex, UINT32_MAX, + variable_list); DumpGlobalVariableList(m_exe_ctx, sc, variable_list, s); } } diff --git a/lldb/source/Commands/CommandObjectWatchpoint.cpp b/lldb/source/Commands/CommandObjectWatchpoint.cpp index f0653be3f09..7217c440cbc 100644 --- a/lldb/source/Commands/CommandObjectWatchpoint.cpp +++ b/lldb/source/Commands/CommandObjectWatchpoint.cpp @@ -838,7 +838,7 @@ protected: VariableList &variable_list) { Target *target = static_cast<Target *>(baton); if (target) { - return target->GetImages().FindGlobalVariables(ConstString(name), true, + return target->GetImages().FindGlobalVariables(ConstString(name), UINT32_MAX, variable_list); } return 0; diff --git a/lldb/source/Core/Module.cpp b/lldb/source/Core/Module.cpp index b6b89078491..e586a628321 100644 --- a/lldb/source/Core/Module.cpp +++ b/lldb/source/Core/Module.cpp @@ -599,21 +599,21 @@ uint32_t Module::ResolveSymbolContextsForFileSpec(const FileSpec &file_spec, size_t Module::FindGlobalVariables(const ConstString &name, const CompilerDeclContext *parent_decl_ctx, - bool append, size_t max_matches, + size_t max_matches, VariableList &variables) { SymbolVendor *symbols = GetSymbolVendor(); if (symbols) - return symbols->FindGlobalVariables(name, parent_decl_ctx, append, - max_matches, variables); + return symbols->FindGlobalVariables(name, parent_decl_ctx, max_matches, + variables); return 0; } -size_t Module::FindGlobalVariables(const RegularExpression ®ex, bool append, +size_t Module::FindGlobalVariables(const RegularExpression ®ex, size_t max_matches, VariableList &variables) { SymbolVendor *symbols = GetSymbolVendor(); if (symbols) - return symbols->FindGlobalVariables(regex, append, max_matches, variables); + return symbols->FindGlobalVariables(regex, max_matches, variables); return 0; } diff --git a/lldb/source/Core/ModuleList.cpp b/lldb/source/Core/ModuleList.cpp index 337c8d2784e..d2896da1adc 100644 --- a/lldb/source/Core/ModuleList.cpp +++ b/lldb/source/Core/ModuleList.cpp @@ -432,27 +432,26 @@ size_t ModuleList::FindCompileUnits(const FileSpec &path, bool append, return sc_list.GetSize(); } -size_t ModuleList::FindGlobalVariables(const ConstString &name, bool append, +size_t ModuleList::FindGlobalVariables(const ConstString &name, size_t max_matches, VariableList &variable_list) const { size_t initial_size = variable_list.GetSize(); std::lock_guard<std::recursive_mutex> guard(m_modules_mutex); collection::const_iterator pos, end = m_modules.end(); for (pos = m_modules.begin(); pos != end; ++pos) { - (*pos)->FindGlobalVariables(name, nullptr, append, max_matches, - variable_list); + (*pos)->FindGlobalVariables(name, nullptr, max_matches, variable_list); } return variable_list.GetSize() - initial_size; } size_t ModuleList::FindGlobalVariables(const RegularExpression ®ex, - bool append, size_t max_matches, + size_t max_matches, VariableList &variable_list) const { size_t initial_size = variable_list.GetSize(); std::lock_guard<std::recursive_mutex> guard(m_modules_mutex); collection::const_iterator pos, end = m_modules.end(); for (pos = m_modules.begin(); pos != end; ++pos) { - (*pos)->FindGlobalVariables(regex, append, max_matches, variable_list); + (*pos)->FindGlobalVariables(regex, max_matches, variable_list); } return variable_list.GetSize() - initial_size; } diff --git a/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp b/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp index 5a970aadd4f..0811a799992 100644 --- a/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp +++ b/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp @@ -720,9 +720,9 @@ lldb::VariableSP ClangExpressionDeclMap::FindGlobalVariable( VariableList vars; if (module && namespace_decl) - module->FindGlobalVariables(name, namespace_decl, true, -1, vars); + module->FindGlobalVariables(name, namespace_decl, -1, vars); else - target.GetImages().FindGlobalVariables(name, true, -1, vars); + target.GetImages().FindGlobalVariables(name, -1, vars); if (vars.GetSize()) { if (type) { diff --git a/lldb/source/Plugins/ExpressionParser/Go/GoUserExpression.cpp b/lldb/source/Plugins/ExpressionParser/Go/GoUserExpression.cpp index 9212e18bd84..3a10a1dc767 100644 --- a/lldb/source/Plugins/ExpressionParser/Go/GoUserExpression.cpp +++ b/lldb/source/Plugins/ExpressionParser/Go/GoUserExpression.cpp @@ -171,12 +171,11 @@ private: VariableSP FindGlobalVariable(TargetSP target, llvm::Twine name) { ConstString fullname(name.str()); VariableList variable_list; - const bool append = true; if (!target) { return nullptr; } - const uint32_t match_count = target->GetImages().FindGlobalVariables( - fullname, append, 1, variable_list); + const uint32_t match_count = + target->GetImages().FindGlobalVariables(fullname, 1, variable_list); if (match_count == 1) { return variable_list.GetVariableAtIndex(0); } diff --git a/lldb/source/Plugins/InstrumentationRuntime/TSan/TSanRuntime.cpp b/lldb/source/Plugins/InstrumentationRuntime/TSan/TSanRuntime.cpp index 7c4b7be5003..6ce50f5c683 100644 --- a/lldb/source/Plugins/InstrumentationRuntime/TSan/TSanRuntime.cpp +++ b/lldb/source/Plugins/InstrumentationRuntime/TSan/TSanRuntime.cpp @@ -573,7 +573,7 @@ static void GetSymbolDeclarationFromAddress(ProcessSP process_sp, addr_t addr, return; VariableList var_list; - module->FindGlobalVariables(sym_name, nullptr, true, 1U, var_list); + module->FindGlobalVariables(sym_name, nullptr, 1U, var_list); if (var_list.GetSize() < 1) return; diff --git a/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.cpp b/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.cpp index 6cb665c8cbc..62e08830b35 100644 --- a/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.cpp +++ b/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.cpp @@ -2328,7 +2328,7 @@ void RenderScriptRuntime::FindStructTypeName(Element &elem, VariableList var_list; for (auto module_sp : m_rsmodules) module_sp->m_module->FindGlobalVariables( - RegularExpression(llvm::StringRef(".")), true, UINT32_MAX, var_list); + RegularExpression(llvm::StringRef(".")), UINT32_MAX, var_list); // Iterate over all the global variables looking for one with a matching type // to the Element. We make the assumption a match exists since there needs to @@ -4065,7 +4065,7 @@ void RSModuleDescriptor::Dump(Stream &strm) const { void RSGlobalDescriptor::Dump(Stream &strm) const { strm.Indent(m_name.AsCString()); VariableList var_list; - m_module->m_module->FindGlobalVariables(m_name, nullptr, true, 1U, var_list); + m_module->m_module->FindGlobalVariables(m_name, nullptr, 1U, var_list); if (var_list.GetSize() == 1) { auto var = var_list.GetVariableAtIndex(0); auto type = var->GetType(); diff --git a/lldb/source/Plugins/OperatingSystem/Go/OperatingSystemGo.cpp b/lldb/source/Plugins/OperatingSystem/Go/OperatingSystemGo.cpp index 5c74939c9c0..3f608393151 100644 --- a/lldb/source/Plugins/OperatingSystem/Go/OperatingSystemGo.cpp +++ b/lldb/source/Plugins/OperatingSystem/Go/OperatingSystemGo.cpp @@ -402,7 +402,6 @@ lldb::ThreadSP OperatingSystemGo::CreateThread(lldb::tid_t tid, ValueObjectSP OperatingSystemGo::FindGlobal(TargetSP target, const char *name) { VariableList variable_list; - const bool append = true; Log *log(lldb_private::GetLogIfAllCategoriesSet(LIBLLDB_LOG_OS)); @@ -414,7 +413,7 @@ ValueObjectSP OperatingSystemGo::FindGlobal(TargetSP target, const char *name) { } uint32_t match_count = target->GetImages().FindGlobalVariables( - ConstString(name), append, 1, variable_list); + ConstString(name), 1, variable_list); if (match_count > 0) { ExecutionContextScope *exe_scope = target->GetProcessSP().get(); if (exe_scope == NULL) diff --git a/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp b/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp index b8f5e60b17b..f6abfdc0c25 100644 --- a/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp +++ b/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp @@ -1968,14 +1968,15 @@ bool SymbolFileDWARF::DeclContextMatchesThisSymbolFile( uint32_t SymbolFileDWARF::FindGlobalVariables( const ConstString &name, const CompilerDeclContext *parent_decl_ctx, - bool append, uint32_t max_matches, VariableList &variables) { + uint32_t max_matches, VariableList &variables) { Log *log(LogChannelDWARF::GetLogIfAll(DWARF_LOG_LOOKUPS)); if (log) GetObjectFile()->GetModule()->LogMessage( - log, "SymbolFileDWARF::FindGlobalVariables (name=\"%s\", " - "parent_decl_ctx=%p, append=%u, max_matches=%u, variables)", - name.GetCString(), static_cast<const void *>(parent_decl_ctx), append, + log, + "SymbolFileDWARF::FindGlobalVariables (name=\"%s\", " + "parent_decl_ctx=%p, max_matches=%u, variables)", + name.GetCString(), static_cast<const void *>(parent_decl_ctx), max_matches); if (!DeclContextMatchesThisSymbolFile(parent_decl_ctx)) @@ -1985,12 +1986,7 @@ uint32_t SymbolFileDWARF::FindGlobalVariables( if (info == NULL) return 0; - // If we aren't appending the results to this list, then clear the list - if (!append) - variables.Clear(); - - // Remember how many variables are in the list before we search in case we - // are appending the results to a variable list. + // Remember how many variables are in the list before we search. const uint32_t original_size = variables.GetSize(); DIEArray die_offsets; @@ -2047,36 +2043,33 @@ uint32_t SymbolFileDWARF::FindGlobalVariables( const uint32_t num_matches = variables.GetSize() - original_size; if (log && num_matches > 0) { GetObjectFile()->GetModule()->LogMessage( - log, "SymbolFileDWARF::FindGlobalVariables (name=\"%s\", " - "parent_decl_ctx=%p, append=%u, max_matches=%u, variables) => %u", - name.GetCString(), static_cast<const void *>(parent_decl_ctx), append, + log, + "SymbolFileDWARF::FindGlobalVariables (name=\"%s\", " + "parent_decl_ctx=%p, max_matches=%u, variables) => %u", + name.GetCString(), static_cast<const void *>(parent_decl_ctx), max_matches, num_matches); } return num_matches; } uint32_t SymbolFileDWARF::FindGlobalVariables(const RegularExpression ®ex, - bool append, uint32_t max_matches, + uint32_t max_matches, VariableList &variables) { Log *log(LogChannelDWARF::GetLogIfAll(DWARF_LOG_LOOKUPS)); if (log) { GetObjectFile()->GetModule()->LogMessage( - log, "SymbolFileDWARF::FindGlobalVariables (regex=\"%s\", append=%u, " - "max_matches=%u, variables)", - regex.GetText().str().c_str(), append, max_matches); + log, + "SymbolFileDWARF::FindGlobalVariables (regex=\"%s\", " + "max_matches=%u, variables)", + regex.GetText().str().c_str(), max_matches); } DWARFDebugInfo *info = DebugInfo(); if (info == NULL) return 0; - // If we aren't appending the results to this list, then clear the list - if (!append) - variables.Clear(); - - // Remember how many variables are in the list before we search in case we - // are appending the results to a variable list. + // Remember how many variables are in the list before we search. const uint32_t original_size = variables.GetSize(); DIEArray die_offsets; diff --git a/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h b/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h index 3eb87fc96da..1eabe983e23 100644 --- a/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h +++ b/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h @@ -179,11 +179,11 @@ public: uint32_t FindGlobalVariables(const lldb_private::ConstString &name, const lldb_private::CompilerDeclContext *parent_decl_ctx, - bool append, uint32_t max_matches, + uint32_t max_matches, lldb_private::VariableList &variables) override; uint32_t FindGlobalVariables(const lldb_private::RegularExpression ®ex, - bool append, uint32_t max_matches, + uint32_t max_matches, lldb_private::VariableList &variables) override; uint32_t diff --git a/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp b/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp index 0d7fd321ed0..e2811e895e8 100644 --- a/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp +++ b/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp @@ -801,8 +801,8 @@ uint32_t SymbolFileDWARFDebugMap::PrivateFindGlobalVariables( if (comp_unit_info) { SymbolFileDWARF *oso_dwarf = GetSymbolFileByOSOIndex(oso_idx); if (oso_dwarf) { - if (oso_dwarf->FindGlobalVariables(name, parent_decl_ctx, true, - max_matches, variables)) + if (oso_dwarf->FindGlobalVariables(name, parent_decl_ctx, max_matches, + variables)) if (variables.GetSize() > max_matches) break; } @@ -813,21 +813,16 @@ uint32_t SymbolFileDWARFDebugMap::PrivateFindGlobalVariables( uint32_t SymbolFileDWARFDebugMap::FindGlobalVariables( const ConstString &name, const CompilerDeclContext *parent_decl_ctx, - bool append, uint32_t max_matches, VariableList &variables) { + uint32_t max_matches, VariableList &variables) { - // If we aren't appending the results to this list, then clear the list - if (!append) - variables.Clear(); - - // Remember how many variables are in the list before we search in case we - // are appending the results to a variable list. + // Remember how many variables are in the list before we search. const uint32_t original_size = variables.GetSize(); uint32_t total_matches = 0; ForEachSymbolFile([&](SymbolFileDWARF *oso_dwarf) -> bool { const uint32_t oso_matches = oso_dwarf->FindGlobalVariables( - name, parent_decl_ctx, true, max_matches, variables); + name, parent_decl_ctx, max_matches, variables); if (oso_matches > 0) { total_matches += oso_matches; @@ -853,20 +848,15 @@ uint32_t SymbolFileDWARFDebugMap::FindGlobalVariables( uint32_t SymbolFileDWARFDebugMap::FindGlobalVariables(const RegularExpression ®ex, - bool append, uint32_t max_matches, + uint32_t max_matches, VariableList &variables) { - // If we aren't appending the results to this list, then clear the list - if (!append) - variables.Clear(); - - // Remember how many variables are in the list before we search in case we - // are appending the results to a variable list. + // Remember how many variables are in the list before we search. const uint32_t original_size = variables.GetSize(); uint32_t total_matches = 0; ForEachSymbolFile([&](SymbolFileDWARF *oso_dwarf) -> bool { const uint32_t oso_matches = - oso_dwarf->FindGlobalVariables(regex, true, max_matches, variables); + oso_dwarf->FindGlobalVariables(regex, max_matches, variables); if (oso_matches > 0) { total_matches += oso_matches; diff --git a/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.h b/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.h index 04599eb0c26..5042d87970b 100644 --- a/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.h +++ b/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.h @@ -95,10 +95,10 @@ public: uint32_t FindGlobalVariables(const lldb_private::ConstString &name, const lldb_private::CompilerDeclContext *parent_decl_ctx, - bool append, uint32_t max_matches, + uint32_t max_matches, lldb_private::VariableList &variables) override; uint32_t FindGlobalVariables(const lldb_private::RegularExpression ®ex, - bool append, uint32_t max_matches, + uint32_t max_matches, lldb_private::VariableList &variables) override; uint32_t FindFunctions(const lldb_private::ConstString &name, diff --git a/lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp b/lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp index e490433fac0..f298749f10d 100644 --- a/lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp +++ b/lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp @@ -949,10 +949,8 @@ SymbolFilePDB::ParseVariables(const lldb_private::SymbolContext &sc, uint32_t SymbolFilePDB::FindGlobalVariables( const lldb_private::ConstString &name, - const lldb_private::CompilerDeclContext *parent_decl_ctx, bool append, + const lldb_private::CompilerDeclContext *parent_decl_ctx, uint32_t max_matches, lldb_private::VariableList &variables) { - if (!append) - variables.Clear(); if (!DeclContextMatchesThisSymbolFile(parent_decl_ctx)) return 0; if (name.IsEmpty()) @@ -989,7 +987,7 @@ uint32_t SymbolFilePDB::FindGlobalVariables( uint32_t SymbolFilePDB::FindGlobalVariables(const lldb_private::RegularExpression ®ex, - bool append, uint32_t max_matches, + uint32_t max_matches, lldb_private::VariableList &variables) { if (!regex.IsValid()) return 0; diff --git a/lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.h b/lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.h index 177eef9d5e9..96b62d68a6c 100644 --- a/lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.h +++ b/lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.h @@ -111,11 +111,11 @@ public: uint32_t FindGlobalVariables(const lldb_private::ConstString &name, const lldb_private::CompilerDeclContext *parent_decl_ctx, - bool append, uint32_t max_matches, + uint32_t max_matches, lldb_private::VariableList &variables) override; uint32_t FindGlobalVariables(const lldb_private::RegularExpression ®ex, - bool append, uint32_t max_matches, + uint32_t max_matches, lldb_private::VariableList &variables) override; uint32_t diff --git a/lldb/source/Symbol/SymbolFile.cpp b/lldb/source/Symbol/SymbolFile.cpp index c532cadf6be..6b4da9c5300 100644 --- a/lldb/source/Symbol/SymbolFile.cpp +++ b/lldb/source/Symbol/SymbolFile.cpp @@ -96,19 +96,16 @@ uint32_t SymbolFile::ResolveSymbolContext(const FileSpec &file_spec, return 0; } -uint32_t SymbolFile::FindGlobalVariables( - const ConstString &name, const CompilerDeclContext *parent_decl_ctx, - bool append, uint32_t max_matches, VariableList &variables) { - if (!append) - variables.Clear(); +uint32_t +SymbolFile::FindGlobalVariables(const ConstString &name, + const CompilerDeclContext *parent_decl_ctx, + uint32_t max_matches, VariableList &variables) { return 0; } uint32_t SymbolFile::FindGlobalVariables(const RegularExpression ®ex, - bool append, uint32_t max_matches, + uint32_t max_matches, VariableList &variables) { - if (!append) - variables.Clear(); return 0; } diff --git a/lldb/source/Symbol/SymbolVendor.cpp b/lldb/source/Symbol/SymbolVendor.cpp index fd731888bef..d13c9b37408 100644 --- a/lldb/source/Symbol/SymbolVendor.cpp +++ b/lldb/source/Symbol/SymbolVendor.cpp @@ -260,28 +260,28 @@ uint32_t SymbolVendor::ResolveSymbolContext(const FileSpec &file_spec, return 0; } -size_t SymbolVendor::FindGlobalVariables( - const ConstString &name, const CompilerDeclContext *parent_decl_ctx, - bool append, size_t max_matches, VariableList &variables) { +size_t +SymbolVendor::FindGlobalVariables(const ConstString &name, + const CompilerDeclContext *parent_decl_ctx, + size_t max_matches, VariableList &variables) { ModuleSP module_sp(GetModule()); if (module_sp) { std::lock_guard<std::recursive_mutex> guard(module_sp->GetMutex()); if (m_sym_file_ap.get()) - return m_sym_file_ap->FindGlobalVariables(name, parent_decl_ctx, append, + return m_sym_file_ap->FindGlobalVariables(name, parent_decl_ctx, max_matches, variables); } return 0; } size_t SymbolVendor::FindGlobalVariables(const RegularExpression ®ex, - bool append, size_t max_matches, + size_t max_matches, VariableList &variables) { ModuleSP module_sp(GetModule()); if (module_sp) { std::lock_guard<std::recursive_mutex> guard(module_sp->GetMutex()); if (m_sym_file_ap.get()) - return m_sym_file_ap->FindGlobalVariables(regex, append, max_matches, - variables); + return m_sym_file_ap->FindGlobalVariables(regex, max_matches, variables); } return 0; } diff --git a/lldb/tools/lldb-test/lldb-test.cpp b/lldb/tools/lldb-test/lldb-test.cpp index 7f9cd6ba841..a7e04318fef 100644 --- a/lldb/tools/lldb-test/lldb-test.cpp +++ b/lldb/tools/lldb-test/lldb-test.cpp @@ -284,8 +284,7 @@ opts::symbols::getDeclContext(SymbolVendor &Vendor) { if (Context.empty()) return CompilerDeclContext(); VariableList List; - Vendor.FindGlobalVariables(ConstString(Context), nullptr, false, UINT32_MAX, - List); + Vendor.FindGlobalVariables(ConstString(Context), nullptr, UINT32_MAX, List); if (List.Empty()) { return make_error<StringError>("Context search didn't find a match.", inconvertibleErrorCode()); @@ -367,7 +366,7 @@ Error opts::symbols::findVariables(lldb_private::Module &Module) { if (Regex) { RegularExpression RE(Name); assert(RE.IsValid()); - Vendor.FindGlobalVariables(RE, false, UINT32_MAX, List); + Vendor.FindGlobalVariables(RE, UINT32_MAX, List); } else { Expected<CompilerDeclContext> ContextOr = getDeclContext(Vendor); if (!ContextOr) @@ -375,8 +374,7 @@ Error opts::symbols::findVariables(lldb_private::Module &Module) { CompilerDeclContext *ContextPtr = ContextOr->IsValid() ? &*ContextOr : nullptr; - Vendor.FindGlobalVariables(ConstString(Name), ContextPtr, false, UINT32_MAX, - List); + Vendor.FindGlobalVariables(ConstString(Name), ContextPtr, UINT32_MAX, List); } outs() << formatv("Found {0} variables:\n", List.GetSize()); StreamString Stream; |