class DbgValue

Declaration

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

Description

Class recording the (high level) _value_ of a variable. Identifies either the value of the variable as a ValueIDNum, or a constant MachineOperand. This class also stores meta-information about how the value is qualified. Used to reason about variable values when performing the second (DebugVariable specific) dataflow analysis.

Declared at: llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.h:229

Member Variables

public LiveDebugValues::ValueIDNum ID
If Kind is Def, the value number that this value is based on. VPHIs set this field to EmptyValue if there is no machine-value for this VPHI, or the corresponding machine-value if there is one.
public Optional<llvm::MachineOperand> MO
If Kind is Const, the MachineOperand defining this value.
public int BlockNo
For a NoVal or VPHI DbgValue, which block it was generated in.
public LiveDebugValues::DbgValueProperties Properties
Qualifiers for the ValueIDNum above.
public LiveDebugValues::DbgValue::KindT Kind
Discriminator for whether this is a constant or an in-program value.

Method Overview

  • public DbgValue(const LiveDebugValues::ValueIDNum & Val, const LiveDebugValues::DbgValueProperties & Prop, LiveDebugValues::DbgValue::KindT Kind)
  • public DbgValue(unsigned int BlockNo, const LiveDebugValues::DbgValueProperties & Prop, LiveDebugValues::DbgValue::KindT Kind)
  • public DbgValue(const llvm::MachineOperand & MO, const LiveDebugValues::DbgValueProperties & Prop, LiveDebugValues::DbgValue::KindT Kind)
  • public DbgValue(const LiveDebugValues::DbgValueProperties & Prop, LiveDebugValues::DbgValue::KindT Kind)
  • public void dump(const LiveDebugValues::MLocTracker * MTrack) const

Methods

DbgValue(
    const LiveDebugValues::ValueIDNum& Val,
    const LiveDebugValues::DbgValueProperties&
        Prop,
    LiveDebugValues::DbgValue::KindT Kind)

Declared at: llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.h:255

Parameters

const LiveDebugValues::ValueIDNum& Val
const LiveDebugValues::DbgValueProperties& Prop
LiveDebugValues::DbgValue::KindT Kind

DbgValue(
    unsigned int BlockNo,
    const LiveDebugValues::DbgValueProperties&
        Prop,
    LiveDebugValues::DbgValue::KindT Kind)

Declared at: llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.h:260

Parameters

unsigned int BlockNo
const LiveDebugValues::DbgValueProperties& Prop
LiveDebugValues::DbgValue::KindT Kind

DbgValue(
    const llvm::MachineOperand& MO,
    const LiveDebugValues::DbgValueProperties&
        Prop,
    LiveDebugValues::DbgValue::KindT Kind)

Declared at: llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.h:266

Parameters

const llvm::MachineOperand& MO
const LiveDebugValues::DbgValueProperties& Prop
LiveDebugValues::DbgValue::KindT Kind

DbgValue(
    const LiveDebugValues::DbgValueProperties&
        Prop,
    LiveDebugValues::DbgValue::KindT Kind)

Declared at: llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.h:272

Parameters

const LiveDebugValues::DbgValueProperties& Prop
LiveDebugValues::DbgValue::KindT Kind

void dump(const LiveDebugValues::MLocTracker*
              MTrack) const

Declared at: llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.h:280

Parameters

const LiveDebugValues::MLocTracker* MTrack