OpenASIP
2.0
|
#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 TerminalNode, ConstantNode, and OperationNode.
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 MoveNode, ProgramDependenceNode, and MIDDGNode.
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()(), RLPriorityCriticalPath::operator()(), RLPriorityNodeId::operator()(), RLBUPriorityCriticalPath::operator()(), DataDependenceEdge::saveState(), FUGen::subOpName(), toString(), ProgramDependenceNode::toString(), ControlDependenceNode::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 MoveNode, ControlDependenceNode, ProgramDependenceNode, BasicBlockNode, TerminalNode, OperationNode, and ConstantNode.
Definition at line 61 of file GraphNode.cc.
References nodeID(), and Conversion::toString().
Referenced by dotString(), and OperationDAGConverter::writeNode().
|
staticprivate |
Definition at line 64 of file GraphNode.hh.
|
private |
Definition at line 63 of file GraphNode.hh.