Main Page   Modules   Namespace List   Class Hierarchy   Compound List   File List   Compound Members   File Members   Related Pages  

loopTreeNode Class Reference

#include <loops.h>

List of all members.

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)
basicblockNodeheader () const
basicblockNodepreheader () const
loopTreeNode * parentLoop () const
void parentLoop (loopTreeNode *parent)
loop_setnestedLoops ()
basicblock_setblocks ()
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...


Member Enumeration Documentation

enum loopTreeNode::LoopKind
 

Types of loops.

Enumeration values:
SingleEntry 
MultipleEntry 
Top 


Constructor & Destructor Documentation

loopTreeNode::loopTreeNode LoopKind    kind,
basicblockNode   header
 

Create a new loop.


Member Function Documentation

void loopTreeNode::addBlock basicblockNode   block [inline]
 

Add a block to the loop.

void loopTreeNode::addNestedLoop loopTreeNode *    nest [inline]
 

Add a nested loop to the loop.

basicblock_set& loopTreeNode::blocks   [inline]
 

void loopTreeNode::depth int    d [inline]
 

int loopTreeNode::depth   const [inline]
 

basicblockNode* loopTreeNode::header   const [inline]
 

LoopKind loopTreeNode::kind   const [inline]
 

Accessors.

loop_set& loopTreeNode::nestedLoops   [inline]
 

void loopTreeNode::parentLoop loopTreeNode *    parent [inline]
 

loopTreeNode* loopTreeNode::parentLoop   const [inline]
 

basicblockNode* loopTreeNode::preheader   const [inline]
 

void loopTreeNode::report  
 

Report.


Member Data Documentation

basicblock_set loopTreeNode::_blocks [private]
 

The set of basic blocks.

int loopTreeNode::_depth [private]
 

Loop depth (zero is the top).

basicblockNode* loopTreeNode::_header [private]
 

The loop header.

LoopKind loopTreeNode::_kind [private]
 

Kind of loop.

loop_set loopTreeNode::_nestedLoops [private]
 

The set of nested loops.

loopTreeNode* loopTreeNode::_parentLoop [private]
 

The containing loop.

basicblockNode* loopTreeNode::_preheader [private]
 

The loop preheader.


The documentation for this class was generated from the following files:
Generated on Thu Jan 10 12:06:30 2002 for C-Breeze by doxygen1.2.13.1 written by Dimitri van Heesch, © 1997-2001