LLVM  8.0.1
Classes | Public Member Functions | List of all members
llvm::DWARFDebugLoc Class Reference

#include "llvm/DebugInfo/DWARF/DWARFDebugLoc.h"

Classes

struct  Entry
 A single location within a location list. More...
 
struct  LocationList
 A list of locations that contain one variable. More...
 

Public Member Functions

void dump (raw_ostream &OS, const MCRegisterInfo *RegInfo, Optional< uint64_t > Offset) const
 Print the location lists found within the debug_loc section. More...
 
void parse (const DWARFDataExtractor &data)
 Parse the debug_loc section accessible via the 'data' parameter using the address size also given in 'data' to interpret the address ranges. More...
 
LocationList constgetLocationListAtOffset (uint64_t Offset) const
 Return the location list at the given offset or nullptr. More...
 
Optional< LocationListparseOneLocationList (DWARFDataExtractor Data, uint32_t *Offset)
 

Detailed Description

Definition at line 24 of file DWARFDebugLoc.h.

Member Function Documentation

◆ dump()

void DWARFDebugLoc::dump ( raw_ostream OS,
const MCRegisterInfo RegInfo,
Optional< uint64_t >  Offset 
) const

Print the location lists found within the debug_loc section.

Definition at line 68 of file DWARFDebugLoc.cpp.

References llvm::format(), and getLocationListAtOffset().

Referenced by llvm::DWARFContext::dump().

◆ getLocationListAtOffset()

DWARFDebugLoc::LocationList const * DWARFDebugLoc::getLocationListAtOffset ( uint64_t  Offset) const

Return the location list at the given offset or nullptr.

Definition at line 59 of file DWARFDebugLoc.cpp.

References llvm::lower_bound(), and llvm::DWARFDebugLoc::LocationList::Offset.

Referenced by dump(), and llvm::DWARFDebugLoclists::dump().

◆ parse()

void DWARFDebugLoc::parse ( const DWARFDataExtractor data)

Parse the debug_loc section accessible via the 'data' parameter using the address size also given in 'data' to interpret the address ranges.

Definition at line 132 of file DWARFDebugLoc.cpp.

References llvm::WithColor::error(), llvm::DataExtractor::getAddressSize(), llvm::DataExtractor::isLittleEndian(), llvm::DataExtractor::isValidOffset(), llvm::DWARFDebugLoc::LocationList::Offset, and parseOneLocationList().

◆ parseOneLocationList()

Optional< DWARFDebugLoc::LocationList > DWARFDebugLoc::parseOneLocationList ( DWARFDataExtractor  Data,
uint32_t Offset 
)

The documentation for this class was generated from the following files: