class DWARFDebugLoc

Declaration

class DWARFDebugLoc : public DWARFLocationTable { /* full declaration omitted */ };

Description

An abstract base class for various kinds of location tables (.debug_loc, .debug_loclists, and their dwo variants).

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFDebugLoc.h:89

Inherits from: DWARFLocationTable

Member Variables

private llvm::DWARFDebugLoc::LocationLists Locations
A list of all the variables in the debug_loc section, each one describing the locations in which the variable is stored.

Inherited from DWARFLocationTable:

protected Data

Method Overview

  • public DWARFDebugLoc(llvm::DWARFDataExtractor Data)
  • public void dump(llvm::raw_ostream & OS, const llvm::MCRegisterInfo * RegInfo, const llvm::DWARFObject & Obj, llvm::DIDumpOptions DumpOpts, Optional<uint64_t> Offset) const
  • protected void dumpRawEntry(const llvm::DWARFLocationEntry & Entry, llvm::raw_ostream & OS, unsigned int Indent, llvm::DIDumpOptions DumpOpts, const llvm::DWARFObject & Obj) const
  • public llvm::Error visitLocationList(uint64_t * Offset, function_ref<bool (const llvm::DWARFLocationEntry &)> Callback) const

Inherited from DWARFLocationTable:

Methods

DWARFDebugLoc(llvm::DWARFDataExtractor Data)

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFDebugLoc.h:108

Parameters

llvm::DWARFDataExtractor Data

void dump(llvm::raw_ostream& OS,
          const llvm::MCRegisterInfo* RegInfo,
          const llvm::DWARFObject& Obj,
          llvm::DIDumpOptions DumpOpts,
          Optional<uint64_t> Offset) const

Description

Print the location lists found within the debug_loc section.

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFDebugLoc.h:112

Parameters

llvm::raw_ostream& OS
const llvm::MCRegisterInfo* RegInfo
const llvm::DWARFObject& Obj
llvm::DIDumpOptions DumpOpts
Optional<uint64_t> Offset

void dumpRawEntry(
    const llvm::DWARFLocationEntry& Entry,
    llvm::raw_ostream& OS,
    unsigned int Indent,
    llvm::DIDumpOptions DumpOpts,
    const llvm::DWARFObject& Obj) const

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFDebugLoc.h:121

Parameters

const llvm::DWARFLocationEntry& Entry
llvm::raw_ostream& OS
unsigned int Indent
llvm::DIDumpOptions DumpOpts
const llvm::DWARFObject& Obj

llvm::Error visitLocationList(
    uint64_t* Offset,
    function_ref<
        bool(const llvm::DWARFLocationEntry&)>
        Callback) const

Description

Call the user-provided callback for each entry (including the end-of-list entry) in the location list starting at \p Offset. The callback can return false to terminate the iteration early. Returns an error if it was unable to parse the entire location list correctly. Upon successful termination\p Offset will be updated point past the end of the list.

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFDebugLoc.h:116

Parameters

uint64_t* Offset
function_ref<bool( const llvm::DWARFLocationEntry&)> Callback