summaryrefslogtreecommitdiff
path: root/chapter04/docs/04-pre-peephole.gv
diff options
context:
space:
mode:
Diffstat (limited to 'chapter04/docs/04-pre-peephole.gv')
-rw-r--r--chapter04/docs/04-pre-peephole.gv45
1 files changed, 45 insertions, 0 deletions
diff --git a/chapter04/docs/04-pre-peephole.gv b/chapter04/docs/04-pre-peephole.gv
new file mode 100644
index 00000000..e8016c87
--- /dev/null
+++ b/chapter04/docs/04-pre-peephole.gv
@@ -0,0 +1,45 @@
+digraph chapter04 {
+/*
+return 1+arg+2; #showGraph;
+*/
+ rankdir=BT;
+ subgraph cluster_Nodes {
+ Start1 [ shape=plaintext label=<
+ <TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0" CELLPADDING="4">
+ <TR><TD BGCOLOR="yellow">Start</TD></TR>
+ <TR><TD>
+ <TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0">
+ <TR><TD PORT="p0" BGCOLOR="yellow">$ctrl</TD><TD PORT="p1">arg</TD></TR>
+ </TABLE>
+ </TD></TR>
+ </TABLE>>
+ ];
+ Con_4 [ label="#1" ];
+ Con_5 [ label="#2" ];
+ Add6 [ label="Add" ];
+ Add7 [ label="Add" ];
+ Return8 [ shape=box style=filled fillcolor=yellow label="Return" ];
+ }
+ node [shape=plaintext];
+ subgraph cluster_0 {
+ scope0 [label=<
+ <TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0">
+ <TR><TD BGCOLOR="cyan">0</TD><TD PORT="scope0_$ctrl">$ctrl</TD><TD PORT="scope0_arg">arg</TD></TR>
+ </TABLE>>];
+ subgraph cluster_1 {
+ scope1 [label=<
+ <TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0">
+ <TR><TD BGCOLOR="cyan">1</TD></TR>
+ </TABLE>>];
+ }
+ }
+ Add6 -> Start1:p1;
+ Add6 -> Con_5;
+ Add7 -> Con_4;
+ Add7 -> Add6;
+ Return8 -> Start1:p0 [color=red];
+ Return8 -> Add7;
+ edge [style=dashed color=cornflowerblue];
+ scope0:"scope0_$ctrl" -> Start1:p0;
+ scope0:"scope0_arg" -> Start1:p1;
+}