LLVM 22.0.0git
llvm::VNInfo Class Reference

VNInfo - Value Number Information. More...

#include "llvm/CodeGen/LiveInterval.h"

Public Types

using Allocator = BumpPtrAllocator

Public Member Functions

 VNInfo (unsigned i, SlotIndex d)
 VNInfo constructor.
 VNInfo (unsigned i, const VNInfo &orig)
 VNInfo constructor, copies values from orig, except for the value number.
void copyFrom (VNInfo &src)
 Copy from the parameter into this VNInfo.
bool isPHIDef () const
 Returns true if this value is defined by a PHI instruction (or was, PHI instructions may have been eliminated).
bool isUnused () const
 Returns true if this value is unused.
void markUnused ()
 Mark this value as unused.
LLVM_ABI void print (raw_ostream &OS) const
LLVM_ABI void dump () const

Public Attributes

unsigned id
 The ID number of this value.
SlotIndex def
 The index of the defining instruction.

Detailed Description

VNInfo - Value Number Information.

This class holds information about a machine level values, including definition and use points.

Definition at line 54 of file LiveInterval.h.

Member Typedef Documentation

◆ Allocator

Definition at line 56 of file LiveInterval.h.

Constructor & Destructor Documentation

◆ VNInfo() [1/2]

llvm::VNInfo::VNInfo ( unsigned i,
SlotIndex d )
inline

VNInfo constructor.

Definition at line 65 of file LiveInterval.h.

References def, and id.

Referenced by copyFrom(), and VNInfo().

◆ VNInfo() [2/2]

llvm::VNInfo::VNInfo ( unsigned i,
const VNInfo & orig )
inline

VNInfo constructor, copies values from orig, except for the value number.

Definition at line 68 of file LiveInterval.h.

References def, id, and VNInfo().

Member Function Documentation

◆ copyFrom()

void llvm::VNInfo::copyFrom ( VNInfo & src)
inline

Copy from the parameter into this VNInfo.

Definition at line 71 of file LiveInterval.h.

References def, and VNInfo().

Referenced by llvm::LiveRange::MergeValueNumberInto().

◆ dump()

LLVM_DUMP_METHOD void VNInfo::dump ( ) const

Definition at line 1050 of file LiveInterval.cpp.

References llvm::dbgs(), and LLVM_DUMP_METHOD.

◆ isPHIDef()

bool llvm::VNInfo::isPHIDef ( ) const
inline

Returns true if this value is defined by a PHI instruction (or was, PHI instructions may have been eliminated).

PHI-defs begin at a block boundary, all other defs begin at register or EC slots.

Definition at line 79 of file LiveInterval.h.

References def.

Referenced by llvm::ConnectedVNInfoEqClasses::Classify(), llvm::ScheduleDAGMILive::computeCyclicCriticalPath(), llvm::LiveIntervalCalc::constructMainRangeFromSubranges(), isLiveThrough(), llvm::VirtRegAuxInfo::isRematerializable(), print(), llvm::LiveIntervals::shrinkToUses(), and stripValuesNotDefiningMask().

◆ isUnused()

◆ markUnused()

void llvm::VNInfo::markUnused ( )
inline

Mark this value as unused.

Definition at line 85 of file LiveInterval.h.

References def.

Referenced by llvm::LiveIntervals::shrinkToUses().

◆ print()

void VNInfo::print ( raw_ostream & OS) const

Definition at line 999 of file LiveInterval.cpp.

References def, isPHIDef(), and isUnused().

Referenced by llvm::operator<<().

Member Data Documentation

◆ def

◆ id


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