LLDB mainline
|
#include "DWARFDebugInfoEntry.h"
#include <cassert>
#include <algorithm>
#include <limits>
#include <optional>
#include "LogChannelDWARF.h"
#include "lldb/Core/Module.h"
#include "lldb/Expression/DWARFExpression.h"
#include "lldb/Symbol/ObjectFile.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/DebugInfo/DWARF/DWARFAddressRange.h"
#include "llvm/Support/Error.h"
#include "llvm/Support/FormatAdapters.h"
#include "llvm/Support/LEB128.h"
#include "DWARFCompileUnit.h"
#include "DWARFDebugAranges.h"
#include "DWARFDebugInfo.h"
#include "DWARFDeclContext.h"
#include "DWARFFormValue.h"
#include "DWARFUnit.h"
#include "SymbolFileDWARF.h"
#include "SymbolFileDWARFDwo.h"
Go to the source code of this file.
Functions | |
static llvm::Expected< llvm::DWARFAddressRangesVector > | GetRanges (DWARFUnit &unit, const DWARFFormValue &value) |
static void | ExtractAttrAndFormValue (const llvm::DWARFAbbreviationDeclaration::AttributeSpec &attr_spec, dw_attr_t &attr, DWARFFormValue &form_value) |
static bool | GetAttributes (llvm::SmallVectorImpl< DWARFDIE > &worklist, llvm::SmallPtrSet< DWARFDebugInfoEntry const *, 3 > &seen, DWARFAttributes &attributes) |
Helper for the public DWARFDebugInfoEntry::GetAttributes API. |
Variables | |
int | g_verbose |
|
static |
Definition at line 92 of file DWARFDebugInfoEntry.cpp.
References lldb_private::plugin::dwarf::DWARFFormValue::FormRef(), and lldb_private::plugin::dwarf::DWARFFormValue::SetSigned().
Referenced by GetAttributes(), and lldb_private::plugin::dwarf::DWARFDebugInfoEntry::GetDIENamesAndRanges().
|
static |
Helper for the public DWARFDebugInfoEntry::GetAttributes API.
Adds all attributes of the DIE at the top of the worklist
to the attributes
list. Specifcations and abstract origins are added to the worklist
if the referenced DIE has not been seen before.
Definition at line 288 of file DWARFDebugInfoEntry.cpp.
References lldb_private::plugin::dwarf::DWARFAttributes::Append(), ExtractAttrAndFormValue(), lldb_private::plugin::dwarf::DWARFFormValue::ExtractValue(), lldb_private::plugin::dwarf::DWARFFormValue::Form(), lldb_private::plugin::dwarf::DWARFBaseDIE::GetCU(), lldb_private::DataExtractor::GetData(), lldb_private::plugin::dwarf::DWARFDIE::GetDIE(), lldb_private::plugin::dwarf::DWARFFormValue::GetFixedSize(), lldb_private::plugin::dwarf::DWARFFormValue::Reference(), and lldb_private::plugin::dwarf::DWARFFormValue::SkipValue().
|
static |
Definition at line 86 of file DWARFDebugInfoEntry.cpp.
References lldb_private::plugin::dwarf::DWARFUnit::FindRnglistFromIndex(), lldb_private::plugin::dwarf::DWARFUnit::FindRnglistFromOffset(), lldb_private::plugin::dwarf::DWARFFormValue::Form(), and lldb_private::plugin::dwarf::DWARFFormValue::Unsigned().
Referenced by lldb_private::plugin::dwarf::DWARFDebugInfoEntry::GetAttributeAddressRanges(), and lldb_private::plugin::dwarf::DWARFDebugInfoEntry::GetDIENamesAndRanges().
|
extern |