LLVM API Documentation

Public Types | Public Member Functions | Public Attributes
llvm::VNInfo Class Reference

#include <LiveInterval.h>

Collaboration diagram for llvm::VNInfo:
Collaboration graph
[legend]

List of all members.

Public Types

typedef BumpPtrAllocator Allocator

Public Member Functions

 VNInfo (unsigned i, SlotIndex d)
 VNInfo constructor.
 VNInfo (unsigned i, const VNInfo &orig)
 VNInfo construtor, copies values from orig, except for the value number.
void copyFrom (VNInfo &src)
 Copy from the parameter into this VNInfo.
bool isPHIDef () const
bool isUnused () const
 Returns true if this value is unused.
void markUnused ()
 Mark this value as unused.

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 44 of file LiveInterval.h.


Member Typedef Documentation

Definition at line 46 of file LiveInterval.h.


Constructor & Destructor Documentation

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

VNInfo constructor.

Definition at line 55 of file LiveInterval.h.

llvm::VNInfo::VNInfo ( unsigned  i,
const VNInfo orig 
) [inline]

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

Definition at line 60 of file LiveInterval.h.


Member Function Documentation

void llvm::VNInfo::copyFrom ( VNInfo src) [inline]

Copy from the parameter into this VNInfo.

Definition at line 65 of file LiveInterval.h.

References def.

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

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 73 of file LiveInterval.h.

References def, and llvm::SlotIndex::isBlock().

Referenced by llvm::ConnectedVNInfoEqClasses::Classify(), llvm::ScheduleDAGMILive::computeCyclicCriticalPath(), extendSegmentsToUses(), llvm::LiveIntervals::hasPHIKill(), isRematerializable(), llvm::LiveRange::print(), and llvm::LiveIntervals::shrinkToUses().

bool llvm::VNInfo::isUnused ( ) const [inline]
void llvm::VNInfo::markUnused ( ) [inline]

Mark this value as unused.

Definition at line 79 of file LiveInterval.h.

References def.

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


Member Data Documentation


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