llvm::DbgValueHistoryMap::Entry

Specifies a change in a variable's debug value history.

Synopsis

Declared in <llvm/CodeGen/DbgEntityHistoryCalculator.h>

class Entry;

Description

There exist two types of entries:

* Debug value entry:

A new debug value becomes live. If the entry's EndIndex is NoEntry, the value is valid until the end of the function. For other values, the index points to the entry in the entry vector that ends this debug value. The ending entry can either be an overlapping debug value, or an instruction that clobbers the value.

* Clobbering entry:

This entry's instruction clobbers one or more preceding register-described debug values that have their end index set to this entry's position in the entry vector.

Enums

NameDescription
EntryKind Kind of history entry: a new debug value or a register clobber.

Member Functions

NameDescription
Entry [constructor]Create a history entry for Instr of the given Kind.
endEntry Mark this debug value as ending at entry EndIndex.
getEndIndex Return the index of the entry that ends this debug value, or NoEntry.
getEntryKind Return whether this entry is a debug value or a clobber.
getInstr Return the instruction associated with this entry.
isClobber Return true if this entry is a clobbering instruction.
isClosed Return true if this debug value has been closed by an end index.
isDbgValue Return true if this entry is a debug value.

Friends

NameDescription
llvm::DbgValueHistoryMapFor each user variable, keep a list of instruction ranges where this variable is accessible. The variables are listed in order of appearance.