class DbgValueHistoryMap

Declaration

class DbgValueHistoryMap { /* full declaration omitted */ };

Description

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

Declared at: llvm/include/llvm/CodeGen/DbgEntityHistoryCalculator.h:46

Member Variables

private llvm::DbgValueHistoryMap::EntriesMap VarEntries
public static const llvm::DbgValueHistoryMap::EntryIndex NoEntry = std::numeric_limits<unsigned long>::max()
Special value to indicate that an entry is valid until the end of the function.

Method Overview

  • public EntriesMap::const_iterator begin() const
  • public void clear()
  • public void dump() const
  • public bool empty() const
  • public EntriesMap::const_iterator end() const
  • public llvm::DbgValueHistoryMap::Entry & getEntry(llvm::DbgValueHistoryMap::InlinedEntity Var, llvm::DbgValueHistoryMap::EntryIndex Index)
  • public bool hasNonEmptyLocation(const llvm::DbgValueHistoryMap::Entries & Entries) const
  • public llvm::DbgValueHistoryMap::EntryIndex startClobber(llvm::DbgValueHistoryMap::InlinedEntity Var, const llvm::MachineInstr & MI)
  • public bool startDbgValue(llvm::DbgValueHistoryMap::InlinedEntity Var, const llvm::MachineInstr & MI, llvm::DbgValueHistoryMap::EntryIndex & NewIndex)
  • public void trimLocationRanges(const llvm::MachineFunction & MF, llvm::LexicalScopes & LScopes, const llvm::InstructionOrdering & Ordering)

Methods

EntriesMap::const_iterator begin() const

Declared at: llvm/include/llvm/CodeGen/DbgEntityHistoryCalculator.h:121

void clear()

Declared at: llvm/include/llvm/CodeGen/DbgEntityHistoryCalculator.h:120

void dump() const

Declared at: llvm/include/llvm/CodeGen/DbgEntityHistoryCalculator.h:125

bool empty() const

Declared at: llvm/include/llvm/CodeGen/DbgEntityHistoryCalculator.h:119

EntriesMap::const_iterator end() const

Declared at: llvm/include/llvm/CodeGen/DbgEntityHistoryCalculator.h:122

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

Declared at: llvm/include/llvm/CodeGen/DbgEntityHistoryCalculator.h:107

Parameters

llvm::DbgValueHistoryMap::InlinedEntity Var
llvm::DbgValueHistoryMap::EntryIndex Index

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

Description

Test whether a vector of entries features any non-empty locations. It could have no entries, or only DBG_VALUE $noreg entries.

Declared at: llvm/include/llvm/CodeGen/DbgEntityHistoryCalculator.h:114

Parameters

const llvm::DbgValueHistoryMap::Entries& Entries

llvm::DbgValueHistoryMap::EntryIndex startClobber(
    llvm::DbgValueHistoryMap::InlinedEntity Var,
    const llvm::MachineInstr& MI)

Declared at: llvm/include/llvm/CodeGen/DbgEntityHistoryCalculator.h:105

Parameters

llvm::DbgValueHistoryMap::InlinedEntity Var
const llvm::MachineInstr& MI

bool startDbgValue(
    llvm::DbgValueHistoryMap::InlinedEntity Var,
    const llvm::MachineInstr& MI,
    llvm::DbgValueHistoryMap::EntryIndex&
        NewIndex)

Declared at: llvm/include/llvm/CodeGen/DbgEntityHistoryCalculator.h:103

Parameters

llvm::DbgValueHistoryMap::InlinedEntity Var
const llvm::MachineInstr& MI
llvm::DbgValueHistoryMap::EntryIndex& NewIndex

void trimLocationRanges(
    const llvm::MachineFunction& MF,
    llvm::LexicalScopes& LScopes,
    const llvm::InstructionOrdering& Ordering)

Description

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

Declared at: llvm/include/llvm/CodeGen/DbgEntityHistoryCalculator.h:117

Parameters

const llvm::MachineFunction& MF
llvm::LexicalScopes& LScopes
const llvm::InstructionOrdering& Ordering