LLVM API Documentation

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

#include <LiveInterval.h>

Public Member Functions

 ConnectedVNInfoEqClasses (LiveIntervals &lis)
 
unsigned Classify (const LiveInterval *LI)
 
unsigned getEqClass (const VNInfo *VNI) const
 
void Distribute (LiveInterval *LIV[], MachineRegisterInfo &MRI)
 

Detailed Description

ConnectedVNInfoEqClasses - Helper class that can divide VNInfos in a LiveInterval into equivalence clases of connected components. A LiveInterval that has multiple connected components can be broken into multiple LiveIntervals.

Given a LiveInterval that may have multiple connected components, run:

unsigned numComps = ConEQ.Classify(LI); if (numComps > 1) { // allocate numComps-1 new LiveIntervals into LIS[1..] ConEQ.Distribute(LIS); }

Definition at line 654 of file LiveInterval.h.

Constructor & Destructor Documentation

llvm::ConnectedVNInfoEqClasses::ConnectedVNInfoEqClasses ( LiveIntervals lis)
inlineexplicit

Definition at line 664 of file LiveInterval.h.

Member Function Documentation

unsigned ConnectedVNInfoEqClasses::Classify ( const LiveInterval LI)
void ConnectedVNInfoEqClasses::Distribute ( LiveInterval LIV[],
MachineRegisterInfo MRI 
)
unsigned llvm::ConnectedVNInfoEqClasses::getEqClass ( const VNInfo VNI) const
inline

getEqClass - Classify creates equivalence classes numbered 0..N. Return the equivalence class assigned the VNI.

Definition at line 672 of file LiveInterval.h.

References llvm::VNInfo::id.


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