class ValueIDNum

Declaration

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

Description

Unique identifier for a value defined by an instruction, as a value type. Casts back and forth to a uint64_t. Probably replacable with something less bit-constrained. Each value identifies the instruction and machine location where the value is defined, although there may be no corresponding machine operand for it (ex: regmasks clobbering values). The instructions are one-based, and definitions that are PHIs have instruction number zero. The obvious limits of a 1M block function or 1M instruction blocks are problematic; but by that point we should probably have bailed out of trying to analyse the function.

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

Member Variables

private union(unnamed union at / home / hdoc / tmp / llvm - project / llvm / lib / CodeGen / LiveDebugValues / InstrRefBasedImpl.h : 106 : 3) u
public static LiveDebugValues::ValueIDNum EmptyValue
public static LiveDebugValues::ValueIDNum TombstoneValue

Method Overview

  • public ValueIDNum()
  • public ValueIDNum(uint64_t Block, uint64_t Inst, uint64_t Loc)
  • public ValueIDNum(uint64_t Block, uint64_t Inst, LiveDebugValues::LocIdx Loc)
  • public std::string asString(const std::string & mlocname) const
  • public uint64_t asU64() const
  • public static LiveDebugValues::ValueIDNum fromU64(uint64_t v)
  • public uint64_t getBlock() const
  • public uint64_t getInst() const
  • public uint64_t getLoc() const
  • public bool isPHI() const

Methods

ValueIDNum()

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

ValueIDNum(uint64_t Block,
           uint64_t Inst,
           uint64_t Loc)

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

Parameters

uint64_t Block
uint64_t Inst
uint64_t Loc

ValueIDNum(uint64_t Block,
           uint64_t Inst,
           LiveDebugValues::LocIdx Loc)

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

Parameters

uint64_t Block
uint64_t Inst
LiveDebugValues::LocIdx Loc

std::string asString(
    const std::string& mlocname) const

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

Parameters

const std::string& mlocname

uint64_t asU64() const

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

static LiveDebugValues::ValueIDNum fromU64(
    uint64_t v)

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

Parameters

uint64_t v

uint64_t getBlock() const

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

uint64_t getInst() const

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

uint64_t getLoc() const

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

bool isPHI() const

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