class ConnectedVNInfoEqClasses
Declaration
class ConnectedVNInfoEqClasses { /* full declaration omitted */ };
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); }
Declared at: llvm/include/llvm/CodeGen/LiveInterval.h:991
Method Overview
- public unsigned int Classify(const llvm::LiveRange & LR)
- public ConnectedVNInfoEqClasses(llvm::LiveIntervals & lis)
- public void Distribute(llvm::LiveInterval & LI, llvm::LiveInterval ** LIV, llvm::MachineRegisterInfo & MRI)
- public unsigned int getEqClass(const llvm::VNInfo * VNI) const
Methods
¶unsigned int Classify(const llvm::LiveRange& LR)
unsigned int Classify(const llvm::LiveRange& LR)
Description
Classify the values in \p LR into connected components. Returns the number of connected components.
Declared at: llvm/include/llvm/CodeGen/LiveInterval.h:1000
Parameters
- const llvm::LiveRange& LR
¶ConnectedVNInfoEqClasses(llvm::LiveIntervals& lis)
ConnectedVNInfoEqClasses(llvm::LiveIntervals& lis)
Declared at: llvm/include/llvm/CodeGen/LiveInterval.h:996
Parameters
- llvm::LiveIntervals& lis
¶void Distribute(llvm::LiveInterval& LI,
llvm::LiveInterval** LIV,
llvm::MachineRegisterInfo& MRI)
void Distribute(llvm::LiveInterval& LI,
llvm::LiveInterval** LIV,
llvm::MachineRegisterInfo& MRI)
Description
Distribute values in \p LI into a separate LiveIntervals for each connected component. LIV must have an empty LiveInterval for each additional connected component. The first connected component is left in \p LI.
Declared at: llvm/include/llvm/CodeGen/LiveInterval.h:1010
Parameters
- llvm::LiveInterval& LI
- llvm::LiveInterval** LIV
- llvm::MachineRegisterInfo& MRI
¶unsigned int getEqClass(
const llvm::VNInfo* VNI) const
unsigned int getEqClass(
const llvm::VNInfo* VNI) const
Description
getEqClass - Classify creates equivalence classes numbered 0..N. Return the equivalence class assigned the VNI.
Declared at: llvm/include/llvm/CodeGen/LiveInterval.h:1004
Parameters
- const llvm::VNInfo* VNI