LLDB mainline
SymbolFileWasm.cpp File Reference
#include "SymbolFileWasm.h"
#include "Plugins/SymbolFile/DWARF/DWARFDebugInfo.h"
#include "Plugins/SymbolFile/DWARF/DWARFUnit.h"
#include "Plugins/SymbolFile/DWARF/LogChannelDWARF.h"
#include "Utility/WasmVirtualRegisters.h"
#include "lldb/Core/Address.h"
#include "lldb/Core/AddressRange.h"
#include "lldb/Core/Mangled.h"
#include "lldb/Core/Module.h"
#include "lldb/Expression/DWARFExpression.h"
#include "lldb/Symbol/Symbol.h"
#include "lldb/Symbol/Symtab.h"
#include "lldb/Utility/ConstString.h"
#include "lldb/Utility/LLDBLog.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/DenseSet.h"
#include <optional>
#include <utility>
#include <vector>

Go to the source code of this file.

Functions

static llvm::DenseMap< ConstString, uint32_t > BuildDemangledCodeSymbolIndex (Symtab &symtab)
 Index the code symbols that carry no mangled name by their demangled name.

Function Documentation

◆ BuildDemangledCodeSymbolIndex()

llvm::DenseMap< ConstString, uint32_t > BuildDemangledCodeSymbolIndex ( Symtab & symtab)
static

Index the code symbols that carry no mangled name by their demangled name.

The value is a symbol table index rather than a Symbol pointer because pointers do not survive symbols being appended to the table.

Definition at line 44 of file SymbolFileWasm.cpp.

References lldb::eSymbolTypeCode, lldb_private::Mangled::GetDemangledName(), lldb_private::Symbol::GetMangled(), lldb_private::Mangled::GetMangledName(), lldb_private::Symtab::GetNumSymbols(), lldb_private::Symbol::GetType(), and lldb_private::Symtab::SymbolAtIndex().

Referenced by lldb_private::plugin::dwarf::SymbolFileWasm::AddSymbols().