LLVM 22.0.0git
llvm::DbgValueHistoryMap::Entry Class Reference

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

#include "llvm/CodeGen/DbgEntityHistoryCalculator.h"

Public Types

enum  EntryKind { DbgValue , Clobber }

Public Member Functions

 Entry (const MachineInstr *Instr, EntryKind Kind)
const MachineInstrgetInstr () const
EntryIndex getEndIndex () const
EntryKind getEntryKind () const
bool isClobber () const
bool isDbgValue () const
bool isClosed () const
void endEntry (EntryIndex EndIndex)

Detailed Description

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

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.

Definition at line 72 of file DbgEntityHistoryCalculator.h.

Member Enumeration Documentation

◆ EntryKind

Enumerator
DbgValue 
Clobber 

Definition at line 76 of file DbgEntityHistoryCalculator.h.

Constructor & Destructor Documentation

◆ Entry()

llvm::DbgValueHistoryMap::Entry::Entry ( const MachineInstr * Instr,
EntryKind Kind )
inline

Definition at line 78 of file DbgEntityHistoryCalculator.h.

References llvm::DbgValueHistoryMap::NoEntry.

Member Function Documentation

◆ endEntry()

void DbgValueHistoryMap::Entry::endEntry ( EntryIndex EndIndex)

Definition at line 101 of file DbgEntityHistoryCalculator.cpp.

References assert(), isClosed(), and isDbgValue().

Referenced by llvm::calculateDbgEntityHistory().

◆ getEndIndex()

EntryIndex llvm::DbgValueHistoryMap::Entry::getEndIndex ( ) const
inline

Definition at line 82 of file DbgEntityHistoryCalculator.h.

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

◆ getEntryKind()

EntryKind llvm::DbgValueHistoryMap::Entry::getEntryKind ( ) const
inline

Definition at line 83 of file DbgEntityHistoryCalculator.h.

Referenced by isClobber(), and isDbgValue().

◆ getInstr()

const MachineInstr * llvm::DbgValueHistoryMap::Entry::getInstr ( ) const
inline

◆ isClobber()

bool llvm::DbgValueHistoryMap::Entry::isClobber ( ) const
inline

Definition at line 85 of file DbgEntityHistoryCalculator.h.

References Clobber, and getEntryKind().

◆ isClosed()

bool llvm::DbgValueHistoryMap::Entry::isClosed ( ) const
inline

◆ isDbgValue()

bool llvm::DbgValueHistoryMap::Entry::isDbgValue ( ) const
inline

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