LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Member Functions | Public Attributes | List of all members
llvm::VNInfo Class Reference

#include <LiveInterval.h>

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

Public Types

typedef BumpPtrAllocator Allocator
 

Public Member Functions

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

Public Attributes

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

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::ScheduleDAGMI::computeCyclicCriticalPath(), 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

SlotIndex llvm::VNInfo::def
unsigned llvm::VNInfo::id

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