diff options
Diffstat (limited to 'chapter10b/docs/example1.gv')
| -rw-r--r-- | chapter10b/docs/example1.gv | 23 |
1 files changed, 15 insertions, 8 deletions
diff --git a/chapter10b/docs/example1.gv b/chapter10b/docs/example1.gv index 0b0a5feb..5e059d77 100644 --- a/chapter10b/docs/example1.gv +++ b/chapter10b/docs/example1.gv @@ -1,13 +1,20 @@ digraph Memory { + // IR styles match graph/web/render.js; arrows are use -> definition. + graph [bgcolor="#fafbfc" fontname="Helvetica" nodesep=0.35 ranksep=0.55 splines=ortho]; + node [fontname="Helvetica" fontsize=12 color="#758191" fontcolor="#152330" shape=box style="rounded,filled" fillcolor="#edf3f7"]; + edge [fontname="Helvetica" fontsize=9 color="#536477" fontcolor="#364352" arrowsize=0.7 penwidth=1.5]; + rankdir=BT; - node [shape=box]; - M [label="Initial memory"]; - X [label="Store x = 42"]; - Y [label="Loop: Store y"]; - L [label="Load x (42)"]; - L -> X -> M [color=blue]; Y -> M [color=green]; - MemMerge -> X [color=blue]; MemMerge -> Y [color=green]; - Return -> MemMerge; Return -> L; + + M [label="Initial memory" shape=octagon style="filled" fillcolor="#dcecff"]; + X [label="Store x = 42" shape=octagon style="filled" fillcolor="#dcecff"]; + Y [label="Loop: Store y" shape=octagon style="filled" fillcolor="#dcecff"]; + L [label="Load x (42)" shape=box style="rounded,filled" fillcolor="#edf3f7"]; + L -> X -> M [color="#2867b2"]; Y -> M [color="#2867b2"]; + MemMerge -> X [color="#2867b2"]; MemMerge -> Y [color="#2867b2"]; + Return -> MemMerge [color="#2867b2"]; Return -> L; { rank=same; MemMerge -> L [style=invis]; } Y -> X [style=invis]; // Layout only: keep the stores in code order. + Return [shape=box style="filled" fillcolor="#fff1c4"]; + MemMerge [shape=octagon style="filled" fillcolor="#dcecff"]; } |
