#include <DotWriter.hpp>
Definition at line 15 of file DotWriter.hpp.
◆ ~DotWriter()
| jlm::rvsdg::DotWriter::~DotWriter |
( |
| ) |
|
|
virtualdefaultnoexcept |
◆ AnnotateEdge()
◆ AnnotateGraphNode()
◆ AnnotateRegionArgument()
◆ AnnotateTypeGraphNode()
◆ AttachNodeInput()
Attaches the given GraphWriter port to the input in the RVSDG it represents. Also adds an edge to the input port, from the node representing the input's origin.
- Parameters
-
| inputPort | the GraphWriter port representing the input |
| rvsdgInput | the RVSDG input |
Definition at line 69 of file DotWriter.cpp.
◆ AttachNodeOutput()
Attaches the given GraphWriter port to the output in RVSDG it represents. Also adds information to the output about its type, using a reference to the type graph.
- Parameters
-
| outputPort | the GraphWriter port representing the output |
| rvsdgOutput | the RVSDG output |
| typeGraph | the type graph, or nullptr if the output's type should not be included |
Definition at line 92 of file DotWriter.cpp.
◆ CreateGraphNodes()
Fill the given graph with nodes corresponding to the nodes of the given region. If typeGraph is not nullptr, all rvsdg outputs get a type reference to the type graph. If the type does not already exist in the type graph, it is created.
Definition at line 112 of file DotWriter.cpp.
◆ GetOrCreateTypeGraphNode()
Creates a node in the typeGraph representing the given type, or returns such a node if it has already been created.
Definition at line 43 of file DotWriter.cpp.
◆ WriteGraph()
Convert a region into a DOT graph. All nodes in each region become InOutNodes, with edges showing data and state dependencies. Arguments and results are represented using ArgumentNode and ResultNode, respectively. All created nodes, inputs, and outputs, get associated to the rvsdg nodes, inputs and outputs.
- Parameters
-
| writer | The writer to use |
| region | The RVSDG region to convert. |
- Returns
- A reference to the DOT graph corresponding to the region.
Definition at line 217 of file DotWriter.cpp.
◆ WriteGraphs()
Recursively converts a region and all sub-regions into graphs and sub-graphs. All nodes in each region become InOutNodes, with edges showing data and state dependencies. Arguments and results are represented using ArgumentNode and ResultNode, respectively. All created nodes, inputs, and outputs, get associated to the rvsdg nodes, inputs and outputs.
- Parameters
-
| writer | the GraphWriter to use |
| region | the RVSDG region to recursively traverse |
| emitTypeGraph | if true, an additional graph containing nodes for all types is emitted |
- Returns
- a reference to the top-level graph corresponding to the region
Definition at line 198 of file DotWriter.cpp.
The documentation for this class was generated from the following files: