LLVM: llvm::DbgValueHistoryMap Class Reference (original) (raw)

For each user variable, keep a list of instruction ranges where this variable is accessible. More...

#include "[llvm/CodeGen/DbgEntityHistoryCalculator.h](DbgEntityHistoryCalculator%5F8h%5Fsource.html)"

Classes
class Entry
Specifies a change in a variable's debug value history. More...
Public Types
typedef size_t EntryIndex
Index in the entry vector.
using Entries = SmallVector<Entry, 4>
using InlinedEntity = std::pair<const DINode *, const DILocation *>
using EntriesMap = MapVector<InlinedEntity, Entries>
Public Member Functions
bool startDbgValue (InlinedEntity Var, const MachineInstr &MI, EntryIndex &NewIndex)
EntryIndex startClobber (InlinedEntity Var, const MachineInstr &MI)
Entry & getEntry (InlinedEntity Var, EntryIndex Index)
bool hasNonEmptyLocation (const Entries &Entries) const
Test whether a vector of entries features any non-empty locations.
void trimLocationRanges (const MachineFunction &MF, LexicalScopes &LScopes, const InstructionOrdering &Ordering)
Drop location ranges which exist entirely outside each variable's scope.
bool empty () const
void clear ()
EntriesMap::const_iterator begin () const
EntriesMap::const_iterator end () const
LLVM_DUMP_METHOD void dump (StringRef FuncName) const
Static Public Attributes
static const EntryIndex NoEntry = std::numeric_limits<EntryIndex>::max()
Special value to indicate that an entry is valid until the end of the function.

For each user variable, keep a list of instruction ranges where this variable is accessible.

The variables are listed in order of appearance.

Definition at line 46 of file DbgEntityHistoryCalculator.h.

Entries

EntriesMap

EntryIndex

InlinedEntity

begin()

clear()

void llvm::DbgValueHistoryMap::clear ( ) inline

dump()

empty()

bool llvm::DbgValueHistoryMap::empty ( ) const inline

end()

getEntry()

Entry & llvm::DbgValueHistoryMap::getEntry ( InlinedEntity Var, EntryIndex Index ) inline

hasNonEmptyLocation()

bool DbgValueHistoryMap::hasNonEmptyLocation ( const Entries & Entries ) const

startClobber()

startDbgValue()

trimLocationRanges()

Drop location ranges which exist entirely outside each variable's scope.

Definition at line 127 of file DbgEntityHistoryCalculator.cpp.

References llvm::ArrayRef(), llvm::SmallVectorImpl< T >::assign(), llvm::cast(), llvm::dbgs(), llvm::ArrayRef< T >::end(), llvm::LexicalScopes::findInlinedScope(), llvm::LexicalScopes::findLexicalScope(), llvm::MachineFunction::getName(), intersects(), llvm::DbgValueHistoryMap::Entry::isClosed(), LLVM_DEBUG, NoEntry, llvm::MachineInstr::print(), llvm::reverse(), llvm::sort(), and ToRemove.

NoEntry

const EntryIndex llvm::DbgValueHistoryMap::NoEntry = std::numeric_limits<EntryIndex>::max() static

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