Class LoopBlocking#

Inheritance Relationships#

Derived Types#

Class Documentation#

class LoopBlocking#

Subclassed by AllLoopReuseBlocking, InnerLoopReuseBlocking, LoopNoBlocking, OuterLoopReuseBlocking

Public Functions

inline virtual ~LoopBlocking()#
virtual LoopTransformOptions::OptType GetOptimizationType() = 0#
virtual const CompSlice *SetBlocking(CompSliceLocalityRegistry *anal, const CompSliceDepGraphNode::FullNestInfo &nestInfo) = 0#
LoopTreeNode *apply(const CompSliceDepGraphNode::FullNestInfo &nestInfo, LoopTreeDepComp &comp, DependenceHoisting &op, LoopTreeNode *top)#
inline const SymbolicVal &BlockSize(int index) const#
inline SymbolicVal &BlockSize(int index)#
inline int NumOfLoops() const#
inline int FirstIndex()#
inline int NextIndex(int index)#

Protected Functions

inline LoopBlocking()#
virtual LoopTreeNode *ApplyBlocking(const CompSliceDepGraphNode::FullNestInfo &nestInfo, LoopTreeDepComp &comp, DependenceHoisting &op, LoopTreeNode *&top)#

Protected Attributes

std::vector<SymbolicVal> blocksize#