OpenASIP 2.2
|
#include <GraphNode.hh>
Classes | |
class | Comparator |
Public Member Functions | |
GraphNode (int nodeID) | |
GraphNode () | |
virtual | ~GraphNode () |
virtual GraphNode * | clone () const |
int | nodeID () const |
virtual std::string | toString () const |
virtual std::string | dotString () const |
Private Attributes | |
int | nodeID_ |
Static Private Attributes | |
static int | idCounter_ = 0 |
Node of the graph-based program representation.
Definition at line 42 of file GraphNode.hh.
|
inline |
Definition at line 45 of file GraphNode.hh.
GraphNode::GraphNode | ( | ) |
|
virtual |
Definition at line 39 of file GraphNode.cc.
|
virtual |
Clones node. Needed for dynamic binding, when copying instances through the base class.
Reimplemented in ConstantNode, OperationNode, and TerminalNode.
Definition at line 48 of file GraphNode.cc.
References GraphNode().
|
virtual |
Returns the string that should be placed in the node's properties section in the GraphViz Dot string.
This can be overridden in the derived class to add different properties (e.g., colors, etc.) to different type of nodes. The default implementation only sets the label property.
Reimplemented in MIDDGNode, ProgramDependenceNode, and MoveNode.
Definition at line 76 of file GraphNode.cc.
References toString().
Referenced by MoveNode::dotString().
|
inline |
Referenced by SimpleIfConverter::canConvert(), FUGen::constantName(), SimpleIfConverter::detectDiamond(), SimpleIfConverter::detectTriangleViaFt(), SimpleIfConverter::detectTriangleViaJump(), MachineInstrDDG::dotString(), DataDependenceGraph::dotString(), ResourceConstraintAnalyzer::dumpGraphWithStats(), BBSchedulerController::executeDDGPass(), BFPushMoveUp::operator()(), RLPriorityNodeId::operator()(), RLPriorityCriticalPath::operator()(), RLBUPriorityCriticalPath::operator()(), DataDependenceEdge::saveState(), FUGen::subOpName(), ControlDependenceNode::toString(), ProgramDependenceNode::toString(), toString(), MoveNode::toString(), PreOptimizer::tryToOptimizeAddressReg(), and DataDependenceGraph::writeToXMLFile().
|
virtual |
Returns a node description as a string.
Used for printing graph into .dot file. This is used for a label in the default dotString() implementation.
Reimplemented in ControlDependenceNode, BasicBlockNode, ProgramDependenceNode, ConstantNode, OperationNode, TerminalNode, and MoveNode.
Definition at line 61 of file GraphNode.cc.
References nodeID(), and Conversion::toString().
Referenced by ControlDependenceGraph::computeEECInfo(), ProgramDependenceGraph::computeEECInfo(), dotString(), ControlDependenceGraph::entryNode(), ProgramDependenceGraph::processPredicate(), ControlDependenceGraph::regionHelper(), and OperationDAGConverter::writeNode().
|
staticprivate |
Definition at line 64 of file GraphNode.hh.
|
private |
Definition at line 63 of file GraphNode.hh.