summaryrefslogtreecommitdiff
path: root/docs/chapter10b/example1.gv
diff options
context:
space:
mode:
authorCliff Click <cliffc@acm.org>2026-09-29 12:34:58 -0700
committerCliff Click <cliffc@acm.org>2026-09-29 12:34:58 -0700
commitf05ad3837117b3b8cb830981aae619c583d7e694 (patch)
treeceed1399ae4c062adaedfc98625ac5fe632731fe /docs/chapter10b/example1.gv
parent502e7e752f3efdb069a36b23ab51ac22f9d74e9e (diff)
downloadSimple-linear-chapter10b.tar.gz
Simple-linear-chapter10b.zip
Chapter 10b: Splitting Memorylinear-chapter10b
Diffstat (limited to 'docs/chapter10b/example1.gv')
-rw-r--r--docs/chapter10b/example1.gv13
1 files changed, 13 insertions, 0 deletions
diff --git a/docs/chapter10b/example1.gv b/docs/chapter10b/example1.gv
new file mode 100644
index 00000000..0b0a5feb
--- /dev/null
+++ b/docs/chapter10b/example1.gv
@@ -0,0 +1,13 @@
+digraph Memory {
+ 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;
+ { rank=same; MemMerge -> L [style=invis]; }
+ Y -> X [style=invis]; // Layout only: keep the stores in code order.
+}