diff --git a/lldb/source/Expression/CMakeLists.txt b/lldb/source/Expression/CMakeLists.txt --- a/lldb/source/Expression/CMakeLists.txt +++ b/lldb/source/Expression/CMakeLists.txt @@ -23,7 +23,6 @@ lldbSymbol lldbTarget lldbUtility - lldbPluginCPlusPlusLanguage lldbPluginObjectFileJIT LINK_COMPONENTS diff --git a/lldb/source/Expression/IRExecutionUnit.cpp b/lldb/source/Expression/IRExecutionUnit.cpp --- a/lldb/source/Expression/IRExecutionUnit.cpp +++ b/lldb/source/Expression/IRExecutionUnit.cpp @@ -33,7 +33,6 @@ #include "lldb/Utility/LLDBAssert.h" #include "lldb/Utility/Log.h" -#include "lldb/../../source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.h" #include "lldb/../../source/Plugins/ObjectFile/JIT/ObjectFileJIT.h" using namespace lldb_private; @@ -652,52 +651,6 @@ return return_value; } -static ConstString FindBestAlternateMangledName(ConstString demangled, - const SymbolContext &sym_ctx) { - CPlusPlusLanguage::MethodName cpp_name(demangled); - std::string scope_qualified_name = cpp_name.GetScopeQualifiedName(); - - if (!scope_qualified_name.size()) - return ConstString(); - - if (!sym_ctx.module_sp) - return ConstString(); - - lldb_private::SymbolFile *sym_file = sym_ctx.module_sp->GetSymbolFile(); - if (!sym_file) - return ConstString(); - - std::vector alternates; - sym_file->GetMangledNamesForFunction(scope_qualified_name, alternates); - - std::vector param_and_qual_matches; - std::vector param_matches; - for (size_t i = 0; i < alternates.size(); i++) { - ConstString alternate_mangled_name = alternates[i]; - Mangled mangled(alternate_mangled_name); - ConstString demangled = mangled.GetDemangledName(); - - CPlusPlusLanguage::MethodName alternate_cpp_name(demangled); - if (!cpp_name.IsValid()) - continue; - - if (alternate_cpp_name.GetArguments() == cpp_name.GetArguments()) { - if (alternate_cpp_name.GetQualifiers() == cpp_name.GetQualifiers()) - param_and_qual_matches.push_back(alternate_mangled_name); - else - param_matches.push_back(alternate_mangled_name); - } - } - - if (param_and_qual_matches.size()) - return param_and_qual_matches[0]; // It is assumed that there will be only - // one! - else if (param_matches.size()) - return param_matches[0]; // Return one of them as a best match - else - return ConstString(); -} - struct IRExecutionUnit::SearchSpec { ConstString name; lldb::FunctionNameType mask; @@ -715,32 +668,6 @@ C_specs.push_back(SearchSpec(name)); } -void IRExecutionUnit::CollectCandidateCPlusPlusNames( - std::vector &CPP_specs, - const std::vector &C_specs, const SymbolContext &sc) { - for (const SearchSpec &C_spec : C_specs) { - ConstString name = C_spec.name; - - if (CPlusPlusLanguage::IsCPPMangledName(name.GetCString())) { - Mangled mangled(name); - ConstString demangled = mangled.GetDemangledName(); - - if (demangled) { - ConstString best_alternate_mangled_name = - FindBestAlternateMangledName(demangled, sc); - - if (best_alternate_mangled_name) { - CPP_specs.push_back(best_alternate_mangled_name); - } - } - } - - std::set alternates; - CPlusPlusLanguage::FindAlternateFunctionManglings(name, alternates); - CPP_specs.insert(CPP_specs.end(), alternates.begin(), alternates.end()); - } -} - void IRExecutionUnit::CollectFallbackNames( std::vector &fallback_specs, const std::vector &C_specs) { @@ -750,9 +677,6 @@ for (const SearchSpec &C_spec : C_specs) { ConstString name = C_spec.name; - if (!CPlusPlusLanguage::IsCPPMangledName(name.GetCString())) - continue; - Mangled mangled_name(name); ConstString demangled_name = mangled_name.GetDemangledName(); if (demangled_name.IsEmpty()) @@ -939,7 +863,6 @@ lldb::addr_t IRExecutionUnit::FindSymbol(lldb_private::ConstString name, bool &missing_weak) { std::vector candidate_C_names; - std::vector candidate_CPlusPlus_names; CollectCandidateCNames(candidate_C_names, name); @@ -958,12 +881,6 @@ if (ret != LLDB_INVALID_ADDRESS) return ret; - CollectCandidateCPlusPlusNames(candidate_CPlusPlus_names, candidate_C_names, - m_sym_ctx); - ret = FindInSymbols(candidate_CPlusPlus_names, m_sym_ctx, missing_weak); - if (ret != LLDB_INVALID_ADDRESS) - return ret; - std::vector candidate_fallback_names; CollectFallbackNames(candidate_fallback_names, candidate_C_names);