Class CompSlice

Contents

Class CompSlice#

Nested Relationships#

Nested Types#

Inheritance Relationships#

Derived Type#

Class Documentation#

class CompSlice#

Subclassed by DynamicCompSlice

Public Functions

CompSlice(int level)#
CompSlice(const CompSlice &that)#
virtual ~CompSlice()#
inline virtual void Dump() const#
std::string toString() const#
int QuerySliceLevel() const#
SliceStmtInfo QuerySliceStmtInfo(const LoopTreeNode *s) const#
SliceLoopInfo QuerySliceLoopInfo(const LoopTreeNode *l) const#
bool QuerySliceStmt(const LoopTreeNode *s) const#
bool QuerySliceLoop(const LoopTreeNode *l) const#
ConstLoopIterator GetConstLoopIterator() const#
ConstStmtIterator GetConstStmtIterator() const#
UpdateLoopIterator GetUpdateLoopIterator() const#
UpdateStmtIterator GetUpdateStmtIterator() const#
void AttachObserver(CompSliceObserver &o) const#
void DetachObserver(CompSliceObserver &o) const#
bool SliceCommonLoop(const CompSlice *slice2) const#
bool SliceCommonStmt(const CompSlice *slice2) const#
bool SliceCodeSegment(LoopTreeNode *root) const#
bool SliceLoopReversible() const#
void Append(const CompSlice &that)#
void IncreaseAlign(int align) const#

Protected Functions

CompSlice(CompSliceImpl *_impl)#
inline CompSliceImpl *GetImpl() const#

Friends

friend class DependenceHoisting
class ConstLoopIterator : public LoopTreeTraverseSelectLoop#

Subclassed by CompSlice::UpdateLoopIterator

Public Functions

ConstLoopIterator(LoopTreeNode *root)#
inline ConstLoopIterator(const CompSlice::ConstLoopIterator &that)#
virtual LoopTreeNode *Current() const#
SliceLoopInfo CurrentInfo() const#
bool CurrentLoopReversible() const#
ConstStmtIterator GetConstStmtIterator() const#
class ConstStmtIterator : public LoopTreeTraverseSelectStmt#

Subclassed by CompSlice::UpdateStmtIterator

Public Functions

inline ConstStmtIterator(LoopTreeNode *r)#
inline ConstStmtIterator(const ConstStmtIterator &that)#
virtual LoopTreeNode *Current() const#
SliceStmtInfo CurrentInfo() const#

Friends

friend class CompSlice
struct SliceLoopInfo#

Public Functions

inline SliceLoopInfo()#
inline SliceLoopInfo(bool r, unsigned c, int mina, int maxa)#
inline operator bool()#

Public Members

bool reversible#
unsigned stmtcount#
int minalign#
int maxalign#
struct SliceStmtInfo#

Public Functions

inline SliceStmtInfo()#
inline SliceStmtInfo(LoopTreeNode *l, bool r, int a)#
inline operator bool()#

Public Members

LoopTreeNode *loop#
bool reversible#
int align#
class UpdateLoopIterator : public LoopTreeObserver, public CompSlice::ConstLoopIterator#

Public Functions

inline UpdateLoopIterator(LoopTreeNode *root)#
inline UpdateLoopIterator(const CompSlice::UpdateLoopIterator &that)#
inline ~UpdateLoopIterator()#
inline virtual void Reset()#
inline virtual void Advance()#
inline void operator++()#
inline void operator++(int)#
UpdateStmtIterator GetUpdateStmtIterator() const#
class UpdateStmtIterator : public CompSlice::ConstStmtIterator, public LoopTreeObserver#

Public Functions

inline UpdateStmtIterator(LoopTreeNode *root)#
inline UpdateStmtIterator(const UpdateStmtIterator &that)#
inline ~UpdateStmtIterator()#
inline virtual void Reset()#
inline virtual void Advance()#
inline void operator++()#
inline void operator++(int)#