OA::DUG::Node Class Reference

#include <DUGStandard.hpp>

Inheritance diagram for OA::DUG::Node:

Inheritance graph
[legend]
Collaboration diagram for OA::DUG::Node:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 Node (OA_ptr< DUGStandard > pDUG, ProcHandle proc, NodeType pType)
 Node (OA_ptr< DUGStandard > pDUG, ProcHandle proc, NodeType pType, OA_ptr< CFG::NodeInterface > cNode)
 Node (OA_ptr< DUGStandard > pDUG, ProcHandle pProc, SymHandle pSym)
 ~Node ()
NodeType getType () const
ProcHandle getProc () const
OA_ptr< LocationgetLoc () const
SymHandle getSym () const
void markVaried (std::list< CallHandle > &, OA_ptr< Activity::ActivityIRInterface >, std::set< OA_ptr< EdgeInterface > > &, std::set< std::pair< unsigned, unsigned > > &, ProcHandle, unsigned, OA_ptr< EdgeInterface >, bool activeWithVariedOnly)
void markUseful (std::list< CallHandle > &, OA_ptr< Activity::ActivityIRInterface >, std::set< OA_ptr< EdgeInterface > > &, std::set< std::pair< unsigned, unsigned > > &, ProcHandle, unsigned, OA_ptr< EdgeInterface >)
bool isVaried ()
void setVaried ()
void unsetVaried ()
bool isUseful ()
void setUseful ()
void unsetUseful ()
void setActive ()
void setActive (SymHandle)
bool isSelfDependent ()
void setSelfDependent ()
bool isPathFrom (OA_ptr< NodeInterface >, std::set< OA_ptr< NodeInterface > > &)
bool hasEdgesToOtherProc (ProcHandle, std::set< SymHandle > &)
bool hasEdgesFromOtherProc (ProcHandle, std::set< SymHandle > &)
void findOutgoingNodes (ProcHandle, std::set< SymHandle > &, std::set< SymHandle > &)
unsigned int size () const
 number of statements in node
unsigned int getId () const
 getId: An id unique within instances of DUG::Node
int num_incoming () const
 number of incoming edges
int num_outgoing () const
 number of outgoing edges
bool isAnEntry () const
 returns true if node is an entry node, IOW has no incoming edges
bool isAnExit () const
 returns true if node is an exit node, IOW has no outgoing edges
bool operator== (DGraph::NodeInterface &other)
bool operator< (DGraph::NodeInterface &other)
void dump (std::ostream &os)
void dumpbase (std::ostream &os)
void dump (std::ostream &os, OA_ptr< IRHandlesIRInterface > ir)
void dumpdot (std::ostream &os, OA_ptr< DUGIRInterface > ir)
void longdump (std::ostream &os, OA_ptr< IRHandlesIRInterface > ir)
void output (OA::IRHandlesIRInterface &ir)
OA_ptr
< DGraph::EdgesIteratorInterface
getIncomingEdgesIterator () const
OA_ptr
< DGraph::EdgesIteratorInterface
getOutgoingEdgesIterator () const
OA_ptr
< DGraph::NodesIteratorInterface
getSourceNodesIterator () const
OA_ptr
< DGraph::NodesIteratorInterface
getSinkNodesIterator () const
OA_ptr< EdgesIteratorInterfacegetDUGIncomingEdgesIterator () const
OA_ptr< EdgesIteratorInterfacegetDUGOutgoingEdgesIterator () const
OA_ptr< NodesIteratorInterfacegetDUGSourceNodesIterator () const
OA_ptr< NodesIteratorInterfacegetDUGSinkNodesIterator () const
void addIncomingEdge (OA_ptr< DGraph::EdgeInterface > e)
void addOutgoingEdge (OA_ptr< DGraph::EdgeInterface > e)
void removeIncomingEdge (OA_ptr< DGraph::EdgeInterface > e)
void removeOutgoingEdge (OA_ptr< DGraph::EdgeInterface > e)
 Node (OA_ptr< DUGStandard > pDUG, ProcHandle pProc, IRHandle ih, SymHandle pSym)
 ~Node ()
NodeType getType () const
ProcHandle getProc () const
OA_ptr< LocationgetLoc () const
SymHandle getSym () const
IRHandle getDef () const
IRSymHandle getIRSymHandle () const
void markVaried (std::list< CallHandle > &, OA_ptr< Activity::ActivityIRInterface >, std::set< OA_ptr< EdgeInterface > > &, std::set< std::pair< unsigned, unsigned > > &, ProcHandle, SymHandle, OA_ptr< EdgeInterface >)
void markUseful (std::list< CallHandle > &, OA_ptr< Activity::ActivityIRInterface >, std::set< OA_ptr< EdgeInterface > > &, std::set< std::pair< unsigned, unsigned > > &, ProcHandle, SymHandle, OA_ptr< EdgeInterface >)
bool isVaried ()
void setVaried ()
void unsetVaried ()
bool isUseful ()
void setUseful ()
void unsetUseful ()
void setActive ()
void setActive (SymHandle)
bool isSelfDependent ()
void setSelfDependent ()
bool isPathFrom (OA_ptr< NodeInterface >, std::set< OA_ptr< NodeInterface > > &)
bool hasOutgoingEdgesToOtherProcs (ProcHandle)
bool hasIncomingEdgesFromOtherProcs (ProcHandle)
void findOutgoingNodes (ProcHandle, std::set< IRSymHandle > &, std::set< IRSymHandle > &)
void findIncomingNodes (ProcHandle, std::set< IRSymHandle > &, std::set< IRSymHandle > &)
bool hasEdgesToOtherProc (ProcHandle, std::set< IRSymHandle > &)
bool hasEdgesFromOtherProc (ProcHandle, std::set< IRSymHandle > &)
unsigned int size () const
 number of statements in node
unsigned int getId () const
 getId: An id unique within instances of DUG::Node
int num_incoming () const
 number of incoming edges
int num_outgoing () const
 number of outgoing edges
bool isAnEntry () const
 returns true if node is an entry node, IOW has no incoming edges
bool isAnExit () const
 returns true if node is an exit node, IOW has no outgoing edges
bool operator== (DGraph::NodeInterface &other)
bool operator< (DGraph::NodeInterface &other)
void dump (std::ostream &os)
void dumpbase (std::ostream &os)
void dump (std::ostream &os, OA_ptr< IRHandlesIRInterface > ir)
void dumpdot (std::ostream &os, OA_ptr< DUGIRInterface > ir)
void longdump (std::ostream &os, OA_ptr< IRHandlesIRInterface > ir)
void output (OA::IRHandlesIRInterface &ir)
OA_ptr
< DGraph::EdgesIteratorInterface
getIncomingEdgesIterator () const
OA_ptr
< DGraph::EdgesIteratorInterface
getOutgoingEdgesIterator () const
OA_ptr
< DGraph::NodesIteratorInterface
getSourceNodesIterator () const
OA_ptr
< DGraph::NodesIteratorInterface
getSinkNodesIterator () const
OA_ptr< EdgesIteratorInterfacegetDUGIncomingEdgesIterator () const
OA_ptr< EdgesIteratorInterfacegetDUGOutgoingEdgesIterator () const
OA_ptr< NodesIteratorInterfacegetDUGSourceNodesIterator () const
OA_ptr< NodesIteratorInterfacegetDUGSinkNodesIterator () const
void addIncomingEdge (OA_ptr< DGraph::EdgeInterface > e)
void addOutgoingEdge (OA_ptr< DGraph::EdgeInterface > e)
void removeIncomingEdge (OA_ptr< DGraph::EdgeInterface > e)
void removeOutgoingEdge (OA_ptr< DGraph::EdgeInterface > e)

Private Member Functions

void Ctor ()
void Ctor ()

Private Attributes

unsigned int mId
OA_ptr< DUGStandardmDUG
ProcHandle mProc
NodeType mType
OA_ptr< DGraph::NodeImplementmDGNode
OA_ptr< LocationmLoc
SymHandle mSym
bool mVaried
bool mUseful
bool mSelfDependent
IRHandle mDef

Friends

class DUGStandard
class Edge


Detailed Description

Definition at line 53 of file DUGStandard.hpp.


Constructor & Destructor Documentation

OA::DUG::Node::Node ( OA_ptr< DUGStandard pDUG,
ProcHandle  proc,
NodeType  pType 
) [inline]

Definition at line 55 of file DUGStandard.hpp.

References Ctor().

Here is the call graph for this function:

OA::DUG::Node::Node ( OA_ptr< DUGStandard pDUG,
ProcHandle  proc,
NodeType  pType,
OA_ptr< CFG::NodeInterface cNode 
) [inline]

Definition at line 57 of file DUGStandard.hpp.

References Ctor().

Here is the call graph for this function:

OA::DUG::Node::Node ( OA_ptr< DUGStandard pDUG,
ProcHandle  pProc,
SymHandle  pSym 
) [inline]

Definition at line 60 of file DUGStandard.hpp.

References Ctor().

Here is the call graph for this function:

OA::DUG::Node::~Node (  )  [inline]

Definition at line 65 of file DUGStandard.hpp.

OA::DUG::Node::Node ( OA_ptr< DUGStandard pDUG,
ProcHandle  pProc,
IRHandle  ih,
SymHandle  pSym 
) [inline]

Definition at line 59 of file DUGStandard.hpp.

References Ctor().

Here is the call graph for this function:

OA::DUG::Node::~Node (  )  [inline]

Definition at line 64 of file DUGStandard.hpp.


Member Function Documentation

void OA::DUG::Node::addIncomingEdge ( OA_ptr< DGraph::EdgeInterface e  )  [inline, virtual]

Implements OA::DGraph::NodeInterface.

Definition at line 192 of file DUGStandard.hpp.

References mDGNode.

void OA::DUG::Node::addIncomingEdge ( OA_ptr< DGraph::EdgeInterface e  )  [inline, virtual]

Implements OA::DGraph::NodeInterface.

Definition at line 190 of file DUGStandard.hpp.

References mDGNode.

void OA::DUG::Node::addOutgoingEdge ( OA_ptr< DGraph::EdgeInterface e  )  [inline, virtual]

Implements OA::DGraph::NodeInterface.

Definition at line 197 of file DUGStandard.hpp.

References mDGNode.

void OA::DUG::Node::addOutgoingEdge ( OA_ptr< DGraph::EdgeInterface e  )  [inline, virtual]

Implements OA::DGraph::NodeInterface.

Definition at line 195 of file DUGStandard.hpp.

References mDGNode.

void OA::DUG::Node::Ctor (  )  [private]

void OA::DUG::Node::Ctor (  )  [private]

called by all Node constructors

Definition at line 54 of file DUGStandard.cpp.

References getId(), mDGNode, mSelfDependent, mUseful, and mVaried.

Referenced by Node().

Here is the call graph for this function:

void OA::DUG::Node::dump ( std::ostream &  os,
OA_ptr< IRHandlesIRInterface ir 
) [virtual]

void OA::DUG::Node::dump ( std::ostream &  os  )  [inline, virtual]

Implements OA::DUG::NodeInterface.

Definition at line 156 of file DUGStandard.hpp.

void OA::DUG::Node::dump ( std::ostream &  os,
OA_ptr< IRHandlesIRInterface ir 
) [virtual]

void OA::DUG::Node::dump ( std::ostream &  os  )  [inline, virtual]

Implements OA::DUG::NodeInterface.

Definition at line 154 of file DUGStandard.hpp.

void OA::DUG::Node::dumpbase ( std::ostream &  os  )  [inline, virtual]

Implements OA::DUG::NodeInterface.

Definition at line 157 of file DUGStandard.hpp.

void OA::DUG::Node::dumpbase ( std::ostream &  os  )  [inline, virtual]

Implements OA::DUG::NodeInterface.

Definition at line 155 of file DUGStandard.hpp.

void OA::DUG::Node::dumpdot ( std::ostream &  os,
OA_ptr< DUGIRInterface ir 
) [virtual]

void OA::DUG::Node::dumpdot ( std::ostream &  os,
OA_ptr< DUGIRInterface ir 
) [virtual]

Implements OA::DUG::NodeInterface.

Referenced by markUseful(), and markVaried().

void OA::DUG::Node::findIncomingNodes ( ProcHandle  proc,
std::set< IRSymHandle > &  InComingNodeSet,
std::set< IRSymHandle > &  visited 
) [virtual]

Implements OA::DUG::NodeInterface.

Definition at line 1236 of file DUGStandard.cpp.

References OA::DUG::CFLOW_EDGE, getDUGIncomingEdgesIterator(), getIRSymHandle(), and hasIncomingEdgesFromOtherProcs().

Here is the call graph for this function:

void OA::DUG::Node::findOutgoingNodes ( ProcHandle  proc,
std::set< IRSymHandle > &  OutGoingNodeSet,
std::set< IRSymHandle > &  visited 
) [virtual]

Implements OA::DUG::NodeInterface.

Definition at line 1191 of file DUGStandard.cpp.

References OA::DUG::CFLOW_EDGE, getDUGOutgoingEdgesIterator(), getIRSymHandle(), and hasOutgoingEdgesToOtherProcs().

Here is the call graph for this function:

void OA::DUG::Node::findOutgoingNodes ( ProcHandle  proc,
std::set< SymHandle > &  OutGoingNodeSet,
std::set< SymHandle > &  visited 
) [virtual]

Implements OA::DUG::NodeInterface.

Definition at line 1181 of file DUGStandard.cpp.

References OA::DUG::CFLOW_EDGE, getDUGOutgoingEdgesIterator(), and getSym().

Here is the call graph for this function:

IRHandle OA::DUG::Node::getDef (  )  const [inline, virtual]

Implements OA::DUG::NodeInterface.

Definition at line 75 of file DUGStandard.hpp.

References mDef.

OA_ptr<EdgesIteratorInterface> OA::DUG::Node::getDUGIncomingEdgesIterator (  )  const [virtual]

OA_ptr< EdgesIteratorInterface > OA::DUG::Node::getDUGIncomingEdgesIterator (  )  const [virtual]

Implements OA::DUG::NodeInterface.

Definition at line 195 of file DUGStandard.cpp.

References getIncomingEdgesIterator().

Referenced by findIncomingNodes(), hasEdgesFromOtherProc(), hasIncomingEdgesFromOtherProcs(), isPathFrom(), and markUseful().

Here is the call graph for this function:

OA_ptr<EdgesIteratorInterface> OA::DUG::Node::getDUGOutgoingEdgesIterator (  )  const [virtual]

OA_ptr< EdgesIteratorInterface > OA::DUG::Node::getDUGOutgoingEdgesIterator (  )  const [virtual]

Implements OA::DUG::NodeInterface.

Definition at line 204 of file DUGStandard.cpp.

References getOutgoingEdgesIterator().

Referenced by findOutgoingNodes(), hasEdgesToOtherProc(), hasOutgoingEdgesToOtherProcs(), and markVaried().

Here is the call graph for this function:

OA_ptr<NodesIteratorInterface> OA::DUG::Node::getDUGSinkNodesIterator (  )  const [virtual]

OA_ptr< NodesIteratorInterface > OA::DUG::Node::getDUGSinkNodesIterator (  )  const [virtual]

Implements OA::DUG::NodeInterface.

Definition at line 222 of file DUGStandard.cpp.

References getSinkNodesIterator().

Here is the call graph for this function:

OA_ptr<NodesIteratorInterface> OA::DUG::Node::getDUGSourceNodesIterator (  )  const [virtual]

OA_ptr< NodesIteratorInterface > OA::DUG::Node::getDUGSourceNodesIterator (  )  const [virtual]

Implements OA::DUG::NodeInterface.

Definition at line 213 of file DUGStandard.cpp.

References getSourceNodesIterator().

Here is the call graph for this function:

unsigned int OA::DUG::Node::getId (  )  const [inline, virtual]

getId: An id unique within instances of DUG::Node

Implements OA::DGraph::NodeInterface.

Definition at line 132 of file DUGStandard.hpp.

References mDGNode.

unsigned int OA::DUG::Node::getId (  )  const [inline, virtual]

getId: An id unique within instances of DUG::Node

Implements OA::DGraph::NodeInterface.

Definition at line 130 of file DUGStandard.hpp.

References mDGNode.

Referenced by Ctor(), markUseful(), and markVaried().

OA_ptr<DGraph::EdgesIteratorInterface> OA::DUG::Node::getIncomingEdgesIterator (  )  const [virtual]

OA_ptr< DGraph::EdgesIteratorInterface > OA::DUG::Node::getIncomingEdgesIterator (  )  const [virtual]

Implements OA::DGraph::NodeInterface.

Definition at line 171 of file DUGStandard.cpp.

References mDGNode.

Referenced by getDUGIncomingEdgesIterator().

IRSymHandle OA::DUG::Node::getIRSymHandle (  )  const [inline]

Definition at line 76 of file DUGStandard.hpp.

References mDef, and mSym.

Referenced by findIncomingNodes(), findOutgoingNodes(), hasEdgesFromOtherProc(), and hasEdgesToOtherProc().

OA_ptr<Location> OA::DUG::Node::getLoc (  )  const [inline, virtual]

Implements OA::DUG::NodeInterface.

Definition at line 73 of file DUGStandard.hpp.

References mLoc.

OA_ptr<Location> OA::DUG::Node::getLoc (  )  const [inline, virtual]

Implements OA::DUG::NodeInterface.

Definition at line 74 of file DUGStandard.hpp.

References mLoc.

OA_ptr<DGraph::EdgesIteratorInterface> OA::DUG::Node::getOutgoingEdgesIterator (  )  const [virtual]

OA_ptr< DGraph::EdgesIteratorInterface > OA::DUG::Node::getOutgoingEdgesIterator (  )  const [virtual]

Implements OA::DGraph::NodeInterface.

Definition at line 177 of file DUGStandard.cpp.

References mDGNode.

Referenced by getDUGOutgoingEdgesIterator().

ProcHandle OA::DUG::Node::getProc (  )  const [inline, virtual]

Implements OA::DUG::NodeInterface.

Definition at line 72 of file DUGStandard.hpp.

References mProc.

ProcHandle OA::DUG::Node::getProc (  )  const [inline, virtual]

Implements OA::DUG::NodeInterface.

Definition at line 73 of file DUGStandard.hpp.

References mProc.

Referenced by markUseful(), markVaried(), and setActive().

OA_ptr<DGraph::NodesIteratorInterface> OA::DUG::Node::getSinkNodesIterator (  )  const [virtual]

OA_ptr< DGraph::NodesIteratorInterface > OA::DUG::Node::getSinkNodesIterator (  )  const [virtual]

Implements OA::DGraph::NodeInterface.

Definition at line 189 of file DUGStandard.cpp.

References mDGNode.

Referenced by getDUGSinkNodesIterator().

OA_ptr<DGraph::NodesIteratorInterface> OA::DUG::Node::getSourceNodesIterator (  )  const [virtual]

OA_ptr< DGraph::NodesIteratorInterface > OA::DUG::Node::getSourceNodesIterator (  )  const [virtual]

Implements OA::DGraph::NodeInterface.

Definition at line 183 of file DUGStandard.cpp.

References mDGNode.

Referenced by getDUGSourceNodesIterator().

SymHandle OA::DUG::Node::getSym (  )  const [inline, virtual]

Implements OA::DUG::NodeInterface.

Definition at line 74 of file DUGStandard.hpp.

References mSym.

SymHandle OA::DUG::Node::getSym (  )  const [inline, virtual]

NodeType OA::DUG::Node::getType (  )  const [inline, virtual]

Implements OA::DUG::NodeInterface.

Definition at line 70 of file DUGStandard.hpp.

References mType.

NodeType OA::DUG::Node::getType (  )  const [inline, virtual]

Implements OA::DUG::NodeInterface.

Definition at line 71 of file DUGStandard.hpp.

References mType.

bool OA::DUG::Node::hasEdgesFromOtherProc ( ProcHandle  proc,
std::set< IRSymHandle > &  visited 
) [virtual]

Implements OA::DUG::NodeInterface.

Definition at line 1288 of file DUGStandard.cpp.

References OA::DUG::CFLOW_EDGE, getDUGIncomingEdgesIterator(), and getIRSymHandle().

Here is the call graph for this function:

bool OA::DUG::Node::hasEdgesFromOtherProc ( ProcHandle  proc,
std::set< SymHandle > &  visited 
) [virtual]

Implements OA::DUG::NodeInterface.

Definition at line 1239 of file DUGStandard.cpp.

References OA::DUG::CFLOW_EDGE, getDUGIncomingEdgesIterator(), and getSym().

Here is the call graph for this function:

bool OA::DUG::Node::hasEdgesToOtherProc ( ProcHandle  proc,
std::set< IRSymHandle > &  visited 
) [virtual]

Implements OA::DUG::NodeInterface.

Definition at line 1263 of file DUGStandard.cpp.

References OA::DUG::CALL_EDGE, OA::DUG::CFLOW_EDGE, getDUGOutgoingEdgesIterator(), and getIRSymHandle().

Here is the call graph for this function:

bool OA::DUG::Node::hasEdgesToOtherProc ( ProcHandle  proc,
std::set< SymHandle > &  visited 
) [virtual]

Implements OA::DUG::NodeInterface.

Definition at line 1214 of file DUGStandard.cpp.

References OA::DUG::CALL_EDGE, OA::DUG::CFLOW_EDGE, getDUGOutgoingEdgesIterator(), and getSym().

Here is the call graph for this function:

bool OA::DUG::Node::hasIncomingEdgesFromOtherProcs ( ProcHandle  proc  ) 

Definition at line 1220 of file DUGStandard.cpp.

References OA::DUG::CFLOW_EDGE, and getDUGIncomingEdgesIterator().

Referenced by findIncomingNodes().

Here is the call graph for this function:

bool OA::DUG::Node::hasOutgoingEdgesToOtherProcs ( ProcHandle  proc  ) 

Definition at line 1174 of file DUGStandard.cpp.

References OA::DUG::CFLOW_EDGE, and getDUGOutgoingEdgesIterator().

Referenced by findOutgoingNodes().

Here is the call graph for this function:

bool OA::DUG::Node::isAnEntry (  )  const [inline, virtual]

returns true if node is an entry node, IOW has no incoming edges

Implements OA::DGraph::NodeInterface.

Definition at line 145 of file DUGStandard.hpp.

References mDGNode.

bool OA::DUG::Node::isAnEntry (  )  const [inline, virtual]

returns true if node is an entry node, IOW has no incoming edges

Implements OA::DGraph::NodeInterface.

Definition at line 143 of file DUGStandard.hpp.

References mDGNode.

bool OA::DUG::Node::isAnExit (  )  const [inline, virtual]

returns true if node is an exit node, IOW has no outgoing edges

Implements OA::DGraph::NodeInterface.

Definition at line 148 of file DUGStandard.hpp.

References mDGNode.

bool OA::DUG::Node::isAnExit (  )  const [inline, virtual]

returns true if node is an exit node, IOW has no outgoing edges

Implements OA::DGraph::NodeInterface.

Definition at line 146 of file DUGStandard.hpp.

References mDGNode.

bool OA::DUG::Node::isPathFrom ( OA_ptr< NodeInterface ,
std::set< OA_ptr< NodeInterface > > &   
) [virtual]

bool OA::DUG::Node::isPathFrom ( OA_ptr< NodeInterface useNode,
std::set< OA_ptr< NodeInterface > > &  visited 
) [virtual]

Implements OA::DUG::NodeInterface.

Definition at line 1157 of file DUGStandard.cpp.

References getDUGIncomingEdgesIterator(), and OA::OA_ptr< T >::ptrEqual().

Here is the call graph for this function:

bool OA::DUG::Node::isSelfDependent (  )  [inline]

Definition at line 108 of file DUGStandard.hpp.

References mSelfDependent.

bool OA::DUG::Node::isSelfDependent (  )  [inline]

Definition at line 108 of file DUGStandard.hpp.

References mSelfDependent.

Referenced by markUseful(), and markVaried().

bool OA::DUG::Node::isUseful (  )  [inline]

Definition at line 101 of file DUGStandard.hpp.

References mUseful.

bool OA::DUG::Node::isUseful (  )  [inline]

Definition at line 101 of file DUGStandard.hpp.

References mUseful.

Referenced by markUseful().

bool OA::DUG::Node::isVaried (  )  [inline]

Definition at line 91 of file DUGStandard.hpp.

References mVaried.

bool OA::DUG::Node::isVaried (  )  [inline]

Definition at line 91 of file DUGStandard.hpp.

References mVaried.

Referenced by markUseful(), and markVaried().

void OA::DUG::Node::longdump ( std::ostream &  os,
OA_ptr< IRHandlesIRInterface ir 
) [virtual]

void OA::DUG::Node::longdump ( std::ostream &  os,
OA_ptr< IRHandlesIRInterface ir 
) [virtual]

void OA::DUG::Node::markUseful ( std::list< CallHandle > &  callStack,
OA_ptr< Activity::ActivityIRInterface ir,
std::set< OA_ptr< EdgeInterface > > &  visited,
std::set< std::pair< unsigned, unsigned > > &  onPath,
ProcHandle  proc,
SymHandle  prevSym,
OA_ptr< EdgeInterface parenEdge 
) [virtual]

void OA::DUG::Node::markUseful ( std::list< CallHandle > &  callStack,
OA_ptr< Activity::ActivityIRInterface ir,
std::set< OA_ptr< EdgeInterface > > &  visited,
std::set< std::pair< unsigned, unsigned > > &  onPath,
ProcHandle  proc,
unsigned  prevId,
OA_ptr< EdgeInterface parenEdge 
) [virtual]

void OA::DUG::Node::markVaried ( std::list< CallHandle > &  callStack,
OA_ptr< Activity::ActivityIRInterface ir,
std::set< OA_ptr< EdgeInterface > > &  visited,
std::set< std::pair< unsigned, unsigned > > &  onPath,
ProcHandle  proc,
SymHandle  prevSym,
OA_ptr< EdgeInterface parenEdge 
) [virtual]

void OA::DUG::Node::markVaried ( std::list< CallHandle > &  callStack,
OA_ptr< Activity::ActivityIRInterface ir,
std::set< OA_ptr< EdgeInterface > > &  visited,
std::set< std::pair< unsigned, unsigned > > &  onPath,
ProcHandle  proc,
unsigned  prevId,
OA_ptr< EdgeInterface parenEdge,
bool  activeWithVariedOnly 
) [virtual]

int OA::DUG::Node::num_incoming (  )  const [inline, virtual]

number of incoming edges

Implements OA::DGraph::NodeInterface.

Definition at line 139 of file DUGStandard.hpp.

References mDGNode.

int OA::DUG::Node::num_incoming (  )  const [inline, virtual]

number of incoming edges

Implements OA::DGraph::NodeInterface.

Definition at line 137 of file DUGStandard.hpp.

References mDGNode.

int OA::DUG::Node::num_outgoing (  )  const [inline, virtual]

number of outgoing edges

Implements OA::DGraph::NodeInterface.

Definition at line 142 of file DUGStandard.hpp.

References mDGNode.

int OA::DUG::Node::num_outgoing (  )  const [inline, virtual]

number of outgoing edges

Implements OA::DGraph::NodeInterface.

Definition at line 140 of file DUGStandard.hpp.

References mDGNode.

bool OA::DUG::Node::operator< ( DGraph::NodeInterface other  )  [virtual]

bool OA::DUG::Node::operator< ( DGraph::NodeInterface other  )  [virtual]

Implements OA::DGraph::NodeInterface.

Definition at line 95 of file DUGStandard.cpp.

References mDGNode.

bool OA::DUG::Node::operator== ( DGraph::NodeInterface other  )  [virtual]

bool OA::DUG::Node::operator== ( DGraph::NodeInterface other  )  [virtual]

Implements OA::DGraph::NodeInterface.

Definition at line 89 of file DUGStandard.cpp.

References mDGNode.

void OA::DUG::Node::output ( OA::IRHandlesIRInterface ir  )  [inline, virtual]

Implements OA::DUG::NodeInterface.

Definition at line 161 of file DUGStandard.hpp.

References mDGNode.

void OA::DUG::Node::output ( OA::IRHandlesIRInterface ir  )  [inline, virtual]

Implements OA::DUG::NodeInterface.

Definition at line 159 of file DUGStandard.hpp.

References mDGNode.

void OA::DUG::Node::removeIncomingEdge ( OA_ptr< DGraph::EdgeInterface e  )  [inline, virtual]

Implements OA::DGraph::NodeInterface.

Definition at line 202 of file DUGStandard.hpp.

References mDGNode.

void OA::DUG::Node::removeIncomingEdge ( OA_ptr< DGraph::EdgeInterface e  )  [inline, virtual]

Implements OA::DGraph::NodeInterface.

Definition at line 200 of file DUGStandard.hpp.

References mDGNode.

void OA::DUG::Node::removeOutgoingEdge ( OA_ptr< DGraph::EdgeInterface e  )  [inline, virtual]

Implements OA::DGraph::NodeInterface.

Definition at line 208 of file DUGStandard.hpp.

References mDGNode.

void OA::DUG::Node::removeOutgoingEdge ( OA_ptr< DGraph::EdgeInterface e  )  [inline, virtual]

Implements OA::DGraph::NodeInterface.

Definition at line 206 of file DUGStandard.hpp.

References mDGNode.

void OA::DUG::Node::setActive ( SymHandle   ) 

void OA::DUG::Node::setActive (  ) 

void OA::DUG::Node::setActive ( SymHandle  sym  ) 

Definition at line 731 of file DUGStandard.cpp.

References mDUG, and mProc.

void OA::DUG::Node::setActive (  ) 

Definition at line 764 of file DUGStandard.cpp.

References OA::OA_ptr< T >::convert(), getProc(), mDUG, mSym, and OA::OA_ptr< T >::ptrEqual().

Referenced by markUseful(), and markVaried().

Here is the call graph for this function:

void OA::DUG::Node::setSelfDependent (  )  [inline]

Definition at line 109 of file DUGStandard.hpp.

References mSelfDependent.

void OA::DUG::Node::setSelfDependent (  )  [inline]

Definition at line 109 of file DUGStandard.hpp.

References mSelfDependent.

void OA::DUG::Node::setUseful (  )  [inline]

Definition at line 102 of file DUGStandard.hpp.

References mUseful.

void OA::DUG::Node::setUseful (  )  [inline]

Definition at line 102 of file DUGStandard.hpp.

References mUseful.

Referenced by markUseful().

void OA::DUG::Node::setVaried (  )  [inline]

Definition at line 92 of file DUGStandard.hpp.

References mVaried.

void OA::DUG::Node::setVaried (  )  [inline]

Definition at line 92 of file DUGStandard.hpp.

References mVaried.

Referenced by markVaried().

unsigned int OA::DUG::Node::size (  )  const [inline, virtual]

number of statements in node

Implements OA::DUG::NodeInterface.

Definition at line 121 of file DUGStandard.hpp.

unsigned int OA::DUG::Node::size (  )  const [inline, virtual]

number of statements in node

Implements OA::DUG::NodeInterface.

Definition at line 119 of file DUGStandard.hpp.

void OA::DUG::Node::unsetUseful (  )  [inline]

Definition at line 103 of file DUGStandard.hpp.

References mUseful.

void OA::DUG::Node::unsetUseful (  )  [inline]

Definition at line 103 of file DUGStandard.hpp.

References mUseful.

Referenced by markUseful().

void OA::DUG::Node::unsetVaried (  )  [inline]

Definition at line 96 of file DUGStandard.hpp.

References mVaried.

void OA::DUG::Node::unsetVaried (  )  [inline]

Definition at line 96 of file DUGStandard.hpp.

References mVaried.

Referenced by markVaried().


Friends And Related Function Documentation

DUGStandard [friend]

Definition at line 229 of file DUGStandard.hpp.

Edge [friend]

Definition at line 230 of file DUGStandard.hpp.


Member Data Documentation

Definition at line 227 of file DUGStandard.hpp.

Referenced by getDef(), and getIRSymHandle().

Definition at line 216 of file DUGStandard.hpp.

Referenced by markUseful(), markVaried(), and setActive().

unsigned int OA::DUG::Node::mId [private]

Definition at line 215 of file DUGStandard.hpp.

Definition at line 224 of file DUGStandard.hpp.

Referenced by getLoc().

Definition at line 217 of file DUGStandard.hpp.

Referenced by getProc(), and setActive().

Definition at line 228 of file DUGStandard.hpp.

Referenced by Ctor(), isSelfDependent(), and setSelfDependent().

Definition at line 225 of file DUGStandard.hpp.

Referenced by getIRSymHandle(), getSym(), and setActive().

Definition at line 218 of file DUGStandard.hpp.

Referenced by getType().

bool OA::DUG::Node::mUseful [private]

Definition at line 227 of file DUGStandard.hpp.

Referenced by Ctor(), isUseful(), setUseful(), and unsetUseful().

bool OA::DUG::Node::mVaried [private]

Definition at line 226 of file DUGStandard.hpp.

Referenced by Ctor(), isVaried(), setVaried(), and unsetVaried().


The documentation for this class was generated from the following files:

Generated on Fri Jul 24 05:41:54 2009 for OpenADFortTk (extended to Open64) by  doxygen 1.5.7.1