Thorin 1.9.0
The Higher ORder INtermediate representation
|
Calculates a loop nesting forest rooted at LoopTree::root_. More...
#include <thorin/analyses/looptree.h>
Classes | |
class | Base |
Represents a node of a loop nesting forest. More... | |
class | Head |
A Head owns further nodes as children. More... | |
class | Leaf |
A Leaf only holds a single CFNode and does not have any children. More... | |
Public Member Functions | |
LoopTree (const LoopTree &)=delete | |
LoopTree & | operator= (LoopTree)=delete |
LoopTree (const CFG< forward > &cfg) | |
const CFG< forward > & | cfg () const |
const Head * | root () const |
const Leaf * | operator[] (const CFNode *n) const |
Calculates a loop nesting forest rooted at LoopTree::root_.
The implementation uses Steensgard's algorithm. Check out G. Ramalingam, "On Loops, Dominators, and Dominance Frontiers", 1999, for more information.
Definition at line 16 of file looptree.h.
|
delete |
|
explicit |
Definition at line 199 of file looptree.cpp.
References thorin::LoopTree< forward >::LoopTreeBuilder< forward >.
|
inline |
Definition at line 84 of file looptree.h.
Referenced by thorin::LoopTreeBuilder< forward >::LoopTreeBuilder().
|
delete |
|
inline |
Definition at line 86 of file looptree.h.
References thorin::find().
|
inline |
Definition at line 85 of file looptree.h.