[Lldb-commits] [lldb] r351131 - [SymbolFile] Rename ParseFunctionBlocks to ParseBlocksRecursive.

Zachary Turner via lldb-commits lldb-commits at lists.llvm.org
Mon Jan 14 14:40:42 PST 2019


Author: zturner
Date: Mon Jan 14 14:40:41 2019
New Revision: 351131

URL: http://llvm.org/viewvc/llvm-project?rev=351131&view=rev
Log:
[SymbolFile] Rename ParseFunctionBlocks to ParseBlocksRecursive.

This method took a SymbolContext but only actually cared about the
case where the m_function member was set.  Furthermore, it was
intended to be implemented to parse blocks recursively despite not
documenting this in its name.  So we change the name to indicate
that it should be recursive, while also limiting the function
parameter to be a Function&.  This lets the caller know what is
required to use it, as well as letting new implementers know what
kind of inputs they need to be prepared to handle.

Modified:
    lldb/trunk/include/lldb/Symbol/SymbolFile.h
    lldb/trunk/include/lldb/Symbol/SymbolVendor.h
    lldb/trunk/source/Core/Module.cpp
    lldb/trunk/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.h
    lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
    lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h
    lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp
    lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.h
    lldb/trunk/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
    lldb/trunk/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.h
    lldb/trunk/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp
    lldb/trunk/source/Plugins/SymbolFile/PDB/SymbolFilePDB.h
    lldb/trunk/source/Plugins/SymbolFile/Symtab/SymbolFileSymtab.cpp
    lldb/trunk/source/Plugins/SymbolFile/Symtab/SymbolFileSymtab.h
    lldb/trunk/source/Symbol/Function.cpp
    lldb/trunk/source/Symbol/SymbolVendor.cpp

Modified: lldb/trunk/include/lldb/Symbol/SymbolFile.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Symbol/SymbolFile.h?rev=351131&r1=351130&r2=351131&view=diff
==============================================================================
--- lldb/trunk/include/lldb/Symbol/SymbolFile.h (original)
+++ lldb/trunk/include/lldb/Symbol/SymbolFile.h Mon Jan 14 14:40:41 2019
@@ -137,7 +137,7 @@ public:
   virtual bool
   ParseImportedModules(const SymbolContext &sc,
                        std::vector<ConstString> &imported_modules) = 0;
-  virtual size_t ParseFunctionBlocks(const SymbolContext &sc) = 0;
+  virtual size_t ParseBlocksRecursive(Function &func) = 0;
   virtual size_t ParseVariablesForContext(const SymbolContext &sc) = 0;
   virtual Type *ResolveTypeUID(lldb::user_id_t type_uid) = 0;
 

Modified: lldb/trunk/include/lldb/Symbol/SymbolVendor.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Symbol/SymbolVendor.h?rev=351131&r1=351130&r2=351131&view=diff
==============================================================================
--- lldb/trunk/include/lldb/Symbol/SymbolVendor.h (original)
+++ lldb/trunk/include/lldb/Symbol/SymbolVendor.h Mon Jan 14 14:40:41 2019
@@ -64,7 +64,7 @@ public:
   virtual bool ParseImportedModules(const SymbolContext &sc,
                                     std::vector<ConstString> &imported_modules);
 
-  virtual size_t ParseFunctionBlocks(const SymbolContext &sc);
+  virtual size_t ParseBlocksRecursive(Function &func);
 
   virtual size_t ParseVariablesForContext(const SymbolContext &sc);
 

Modified: lldb/trunk/source/Core/Module.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Core/Module.cpp?rev=351131&r1=351130&r2=351131&view=diff
==============================================================================
--- lldb/trunk/source/Core/Module.cpp (original)
+++ lldb/trunk/source/Core/Module.cpp Mon Jan 14 14:40:41 2019
@@ -373,9 +373,10 @@ void Module::ParseAllDebugSymbols() {
     symbols->ParseFunctions(*sc.comp_unit);
 
     sc.comp_unit->ForeachFunction([&sc, &symbols](const FunctionSP &f) {
-      sc.function = f.get();
-      symbols->ParseFunctionBlocks(sc);
+      symbols->ParseBlocksRecursive(*f);
+
       // Parse the variables for this function and all its blocks
+      sc.function = f.get();
       symbols->ParseVariablesForContext(sc);
       return false;
     });

Modified: lldb/trunk/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.h?rev=351131&r1=351130&r2=351131&view=diff
==============================================================================
--- lldb/trunk/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.h (original)
+++ lldb/trunk/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.h Mon Jan 14 14:40:41 2019
@@ -75,7 +75,7 @@ public:
     return false;
   }
 
-  size_t ParseFunctionBlocks(const SymbolContext &sc) override { return 0; }
+  size_t ParseBlocksRecursive(Function &func) override { return 0; }
 
   uint32_t FindGlobalVariables(const ConstString &name,
                                const CompilerDeclContext *parent_decl_ctx,

Modified: lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp?rev=351131&r1=351130&r2=351131&view=diff
==============================================================================
--- lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp (original)
+++ lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp Mon Jan 14 14:40:41 2019
@@ -1159,11 +1159,9 @@ bool SymbolFileDWARF::ParseDebugMacros(C
   return true;
 }
 
-size_t SymbolFileDWARF::ParseFunctionBlocks(const SymbolContext &sc,
-                                            Block *parent_block,
-                                            const DWARFDIE &orig_die,
-                                            addr_t subprogram_low_pc,
-                                            uint32_t depth) {
+size_t SymbolFileDWARF::ParseBlocksRecursive(
+    lldb_private::CompileUnit &comp_unit, Block *parent_block,
+    const DWARFDIE &orig_die, addr_t subprogram_low_pc, uint32_t depth) {
   size_t blocks_added = 0;
   DWARFDIE die = orig_die;
   while (die) {
@@ -1242,13 +1240,13 @@ size_t SymbolFileDWARF::ParseFunctionBlo
           std::unique_ptr<Declaration> decl_ap;
           if (decl_file != 0 || decl_line != 0 || decl_column != 0)
             decl_ap.reset(new Declaration(
-                sc.comp_unit->GetSupportFiles().GetFileSpecAtIndex(decl_file),
+                comp_unit.GetSupportFiles().GetFileSpecAtIndex(decl_file),
                 decl_line, decl_column));
 
           std::unique_ptr<Declaration> call_ap;
           if (call_file != 0 || call_line != 0 || call_column != 0)
             call_ap.reset(new Declaration(
-                sc.comp_unit->GetSupportFiles().GetFileSpecAtIndex(call_file),
+                comp_unit.GetSupportFiles().GetFileSpecAtIndex(call_file),
                 call_line, call_column));
 
           block->SetInlinedFunctionInfo(name, mangled_name, decl_ap.get(),
@@ -1258,8 +1256,9 @@ size_t SymbolFileDWARF::ParseFunctionBlo
         ++blocks_added;
 
         if (die.HasChildren()) {
-          blocks_added += ParseFunctionBlocks(sc, block, die.GetFirstChild(),
-                                              subprogram_low_pc, depth + 1);
+          blocks_added +=
+              ParseBlocksRecursive(comp_unit, block, die.GetFirstChild(),
+                                   subprogram_low_pc, depth + 1);
         }
       }
     } break;
@@ -3125,18 +3124,21 @@ size_t SymbolFileDWARF::ParseTypes(const
   return types_added;
 }
 
-size_t SymbolFileDWARF::ParseFunctionBlocks(const SymbolContext &sc) {
+size_t SymbolFileDWARF::ParseBlocksRecursive(Function &func) {
   ASSERT_MODULE_LOCK(this);
-  assert(sc.comp_unit && sc.function);
+  CompileUnit *comp_unit = func.GetCompileUnit();
+  lldbassert(comp_unit);
+
+  DWARFUnit *dwarf_cu = GetDWARFCompileUnit(comp_unit);
+  if (!dwarf_cu)
+    return 0;
+
   size_t functions_added = 0;
-  DWARFUnit *dwarf_cu = GetDWARFCompileUnit(sc.comp_unit);
-  if (dwarf_cu) {
-    const dw_offset_t function_die_offset = sc.function->GetID();
-    DWARFDIE function_die = dwarf_cu->GetDIE(function_die_offset);
-    if (function_die) {
-      ParseFunctionBlocks(sc, &sc.function->GetBlock(false), function_die,
-                          LLDB_INVALID_ADDRESS, 0);
-    }
+  const dw_offset_t function_die_offset = func.GetID();
+  DWARFDIE function_die = dwarf_cu->GetDIE(function_die_offset);
+  if (function_die) {
+    ParseBlocksRecursive(*comp_unit, &func.GetBlock(false), function_die,
+                         LLDB_INVALID_ADDRESS, 0);
   }
 
   return functions_added;

Modified: lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h?rev=351131&r1=351130&r2=351131&view=diff
==============================================================================
--- lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h (original)
+++ lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h Mon Jan 14 14:40:41 2019
@@ -126,7 +126,7 @@ public:
       const lldb_private::SymbolContext &sc,
       std::vector<lldb_private::ConstString> &imported_modules) override;
 
-  size_t ParseFunctionBlocks(const lldb_private::SymbolContext &sc) override;
+  size_t ParseBlocksRecursive(lldb_private::Function &func) override;
 
   size_t
   ParseVariablesForContext(const lldb_private::SymbolContext &sc) override;
@@ -359,10 +359,10 @@ protected:
   lldb_private::Function *ParseFunction(lldb_private::CompileUnit &comp_unit,
                                         const DWARFDIE &die);
 
-  size_t ParseFunctionBlocks(const lldb_private::SymbolContext &sc,
-                             lldb_private::Block *parent_block,
-                             const DWARFDIE &die,
-                             lldb::addr_t subprogram_low_pc, uint32_t depth);
+  size_t ParseBlocksRecursive(lldb_private::CompileUnit &comp_unit,
+                              lldb_private::Block *parent_block,
+                              const DWARFDIE &die,
+                              lldb::addr_t subprogram_low_pc, uint32_t depth);
 
   size_t ParseTypes(const lldb_private::SymbolContext &sc, const DWARFDIE &die,
                     bool parse_siblings, bool parse_children);

Modified: lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp?rev=351131&r1=351130&r2=351131&view=diff
==============================================================================
--- lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp (original)
+++ lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp Mon Jan 14 14:40:41 2019
@@ -677,10 +677,14 @@ bool SymbolFileDWARFDebugMap::ParseImpor
   return false;
 }
 
-size_t SymbolFileDWARFDebugMap::ParseFunctionBlocks(const SymbolContext &sc) {
-  SymbolFileDWARF *oso_dwarf = GetSymbolFile(sc);
+size_t SymbolFileDWARFDebugMap::ParseBlocksRecursive(Function &func) {
+  CompileUnit *comp_unit = func.GetCompileUnit();
+  if (!comp_unit)
+    return 0;
+
+  SymbolFileDWARF *oso_dwarf = GetSymbolFile(*comp_unit);
   if (oso_dwarf)
-    return oso_dwarf->ParseFunctionBlocks(sc);
+    return oso_dwarf->ParseBlocksRecursive(func);
   return 0;
 }
 

Modified: lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.h?rev=351131&r1=351130&r2=351131&view=diff
==============================================================================
--- lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.h (original)
+++ lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.h Mon Jan 14 14:40:41 2019
@@ -74,7 +74,7 @@ public:
   bool ParseImportedModules(
       const lldb_private::SymbolContext &sc,
       std::vector<lldb_private::ConstString> &imported_modules) override;
-  size_t ParseFunctionBlocks(const lldb_private::SymbolContext &sc) override;
+  size_t ParseBlocksRecursive(lldb_private::Function &func) override;
   size_t
   ParseVariablesForContext(const lldb_private::SymbolContext &sc) override;
 

Modified: lldb/trunk/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp?rev=351131&r1=351130&r2=351131&view=diff
==============================================================================
--- lldb/trunk/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp (original)
+++ lldb/trunk/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp Mon Jan 14 14:40:41 2019
@@ -1142,9 +1142,8 @@ bool SymbolFileNativePDB::ParseImportedM
   return false;
 }
 
-size_t SymbolFileNativePDB::ParseFunctionBlocks(const SymbolContext &sc) {
-  lldbassert(sc.comp_unit && sc.function);
-  GetOrCreateBlock(PdbSymUid(sc.function->GetID()).asCompilandSym());
+size_t SymbolFileNativePDB::ParseBlocksRecursive(Function &func) {
+  GetOrCreateBlock(PdbSymUid(func.GetID()).asCompilandSym());
   // FIXME: Parse child blocks
   return 1;
 }

Modified: lldb/trunk/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.h?rev=351131&r1=351130&r2=351131&view=diff
==============================================================================
--- lldb/trunk/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.h (original)
+++ lldb/trunk/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.h Mon Jan 14 14:40:41 2019
@@ -99,7 +99,7 @@ public:
   ParseImportedModules(const SymbolContext &sc,
                        std::vector<ConstString> &imported_modules) override;
 
-  size_t ParseFunctionBlocks(const SymbolContext &sc) override;
+  size_t ParseBlocksRecursive(Function &func) override;
 
   uint32_t FindGlobalVariables(const ConstString &name,
                                const CompilerDeclContext *parent_decl_ctx,

Modified: lldb/trunk/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp?rev=351131&r1=351130&r2=351131&view=diff
==============================================================================
--- lldb/trunk/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp (original)
+++ lldb/trunk/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp Mon Jan 14 14:40:41 2019
@@ -384,9 +384,8 @@ bool SymbolFilePDB::ParseImportedModules
 }
 
 static size_t ParseFunctionBlocksForPDBSymbol(
-    const lldb_private::SymbolContext &sc, uint64_t func_file_vm_addr,
-    const llvm::pdb::PDBSymbol *pdb_symbol, lldb_private::Block *parent_block,
-    bool is_top_parent) {
+    uint64_t func_file_vm_addr, const llvm::pdb::PDBSymbol *pdb_symbol,
+    lldb_private::Block *parent_block, bool is_top_parent) {
   assert(pdb_symbol && parent_block);
 
   size_t num_added = 0;
@@ -425,7 +424,7 @@ static size_t ParseFunctionBlocksForPDBS
       break;
     while (auto symbol_up = results_up->getNext()) {
       num_added += ParseFunctionBlocksForPDBSymbol(
-          sc, func_file_vm_addr, symbol_up.get(), block, false);
+          func_file_vm_addr, symbol_up.get(), block, false);
     }
   } break;
   default:
@@ -434,18 +433,15 @@ static size_t ParseFunctionBlocksForPDBS
   return num_added;
 }
 
-size_t
-SymbolFilePDB::ParseFunctionBlocks(const lldb_private::SymbolContext &sc) {
-  lldbassert(sc.comp_unit && sc.function);
+size_t SymbolFilePDB::ParseBlocksRecursive(Function &func) {
   size_t num_added = 0;
-  auto uid = sc.function->GetID();
+  auto uid = func.GetID();
   auto pdb_func_up = m_session_up->getConcreteSymbolById<PDBSymbolFunc>(uid);
   if (!pdb_func_up)
     return 0;
-  Block &parent_block = sc.function->GetBlock(false);
-  num_added =
-      ParseFunctionBlocksForPDBSymbol(sc, pdb_func_up->getVirtualAddress(),
-                                      pdb_func_up.get(), &parent_block, true);
+  Block &parent_block = func.GetBlock(false);
+  num_added = ParseFunctionBlocksForPDBSymbol(
+      pdb_func_up->getVirtualAddress(), pdb_func_up.get(), &parent_block, true);
   return num_added;
 }
 

Modified: lldb/trunk/source/Plugins/SymbolFile/PDB/SymbolFilePDB.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/SymbolFile/PDB/SymbolFilePDB.h?rev=351131&r1=351130&r2=351131&view=diff
==============================================================================
--- lldb/trunk/source/Plugins/SymbolFile/PDB/SymbolFilePDB.h (original)
+++ lldb/trunk/source/Plugins/SymbolFile/PDB/SymbolFilePDB.h Mon Jan 14 14:40:41 2019
@@ -77,7 +77,7 @@ public:
       const lldb_private::SymbolContext &sc,
       std::vector<lldb_private::ConstString> &imported_modules) override;
 
-  size_t ParseFunctionBlocks(const lldb_private::SymbolContext &sc) override;
+  size_t ParseBlocksRecursive(lldb_private::Function &func) override;
 
   size_t
   ParseVariablesForContext(const lldb_private::SymbolContext &sc) override;

Modified: lldb/trunk/source/Plugins/SymbolFile/Symtab/SymbolFileSymtab.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/SymbolFile/Symtab/SymbolFileSymtab.cpp?rev=351131&r1=351130&r2=351131&view=diff
==============================================================================
--- lldb/trunk/source/Plugins/SymbolFile/Symtab/SymbolFileSymtab.cpp (original)
+++ lldb/trunk/source/Plugins/SymbolFile/Symtab/SymbolFileSymtab.cpp Mon Jan 14 14:40:41 2019
@@ -223,9 +223,7 @@ bool SymbolFileSymtab::ParseImportedModu
   return false;
 }
 
-size_t SymbolFileSymtab::ParseFunctionBlocks(const SymbolContext &sc) {
-  return 0;
-}
+size_t SymbolFileSymtab::ParseBlocksRecursive(Function &func) { return 0; }
 
 size_t SymbolFileSymtab::ParseVariablesForContext(const SymbolContext &sc) {
   return 0;

Modified: lldb/trunk/source/Plugins/SymbolFile/Symtab/SymbolFileSymtab.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/SymbolFile/Symtab/SymbolFileSymtab.h?rev=351131&r1=351130&r2=351131&view=diff
==============================================================================
--- lldb/trunk/source/Plugins/SymbolFile/Symtab/SymbolFileSymtab.h (original)
+++ lldb/trunk/source/Plugins/SymbolFile/Symtab/SymbolFileSymtab.h Mon Jan 14 14:40:41 2019
@@ -66,7 +66,7 @@ public:
       const lldb_private::SymbolContext &sc,
       std::vector<lldb_private::ConstString> &imported_modules) override;
 
-  size_t ParseFunctionBlocks(const lldb_private::SymbolContext &sc) override;
+  size_t ParseBlocksRecursive(lldb_private::Function &func) override;
 
   size_t
   ParseVariablesForContext(const lldb_private::SymbolContext &sc) override;

Modified: lldb/trunk/source/Symbol/Function.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Symbol/Function.cpp?rev=351131&r1=351130&r2=351131&view=diff
==============================================================================
--- lldb/trunk/source/Symbol/Function.cpp (original)
+++ lldb/trunk/source/Symbol/Function.cpp Mon Jan 14 14:40:41 2019
@@ -286,14 +286,14 @@ llvm::MutableArrayRef<CallEdge> Function
 
 Block &Function::GetBlock(bool can_create) {
   if (!m_block.BlockInfoHasBeenParsed() && can_create) {
-    SymbolContext sc;
-    CalculateSymbolContext(&sc);
-    if (sc.module_sp) {
-      sc.module_sp->GetSymbolVendor()->ParseFunctionBlocks(sc);
+    ModuleSP module_sp = CalculateSymbolContextModule();
+    if (module_sp) {
+      module_sp->GetSymbolVendor()->ParseBlocksRecursive(*this);
     } else {
-      Host::SystemLog(Host::eSystemLogError, "error: unable to find module "
-                                             "shared pointer for function '%s' "
-                                             "in %s\n",
+      Host::SystemLog(Host::eSystemLogError,
+                      "error: unable to find module "
+                      "shared pointer for function '%s' "
+                      "in %s\n",
                       GetName().GetCString(), m_comp_unit->GetPath().c_str());
     }
     m_block.SetBlockInfoHasBeenParsed(true, true);

Modified: lldb/trunk/source/Symbol/SymbolVendor.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Symbol/SymbolVendor.cpp?rev=351131&r1=351130&r2=351131&view=diff
==============================================================================
--- lldb/trunk/source/Symbol/SymbolVendor.cpp (original)
+++ lldb/trunk/source/Symbol/SymbolVendor.cpp Mon Jan 14 14:40:41 2019
@@ -189,12 +189,12 @@ bool SymbolVendor::ParseImportedModules(
   return false;
 }
 
-size_t SymbolVendor::ParseFunctionBlocks(const SymbolContext &sc) {
+size_t SymbolVendor::ParseBlocksRecursive(Function &func) {
   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->ParseFunctionBlocks(sc);
+      return m_sym_file_ap->ParseBlocksRecursive(func);
   }
   return 0;
 }




More information about the lldb-commits mailing list