#include <loops.h>
Public Types | |
enum | LoopKind { SingleEntry, MultipleEntry, Top } |
Types of loops. More... | |
Public Methods | |
loopTreeNode (LoopKind kind, basicblockNode *header) | |
Create a new loop. More... | |
void | addBlock (basicblockNode *block) |
Add a block to the loop. More... | |
void | addNestedLoop (loopTreeNode *nest) |
Add a nested loop to the loop. More... | |
LoopKind | kind () const |
Accessors. More... | |
int | depth () const |
void | depth (int d) |
basicblockNode * | header () const |
basicblockNode * | preheader () const |
loopTreeNode * | parentLoop () const |
void | parentLoop (loopTreeNode *parent) |
loop_set & | nestedLoops () |
basicblock_set & | blocks () |
void | report () |
Report. More... | |
Private Attributes | |
LoopKind | _kind |
Kind of loop. More... | |
int | _depth |
Loop depth (zero is the top). More... | |
basicblockNode * | _header |
The loop header. More... | |
basicblockNode * | _preheader |
The loop preheader. More... | |
loopTreeNode * | _parentLoop |
The containing loop. More... | |
loop_set | _nestedLoops |
The set of nested loops. More... | |
basicblock_set | _blocks |
The set of basic blocks. More... |
|
Types of loops.
|
|
Create a new loop.
|
|
Add a block to the loop.
|
|
Add a nested loop to the loop.
|
|
|
|
|
|
|
|
|
|
Accessors.
|
|
|
|
|
|
|
|
|
|
Report.
|
|
The set of basic blocks.
|
|
Loop depth (zero is the top).
|
|
The loop header.
|
|
Kind of loop.
|
|
The set of nested loops.
|
|
The containing loop.
|
|
The loop preheader.
|