fixed commutativity rule
[cdsspec-compiler.git] / correctness-model / writeup / figures / fence_sw.dot
1 digraph fence_sw {
2 margin=0
3 ranksep=.3;
4
5 N1 [label="A: fence(release)", shape=none];
6 N2 [label="X: v.store(1)", shape=none];
7 N3 [label="Y: v.store(2)", shape=none];
8 N4 [label="Z: v.load()", shape=none];
9 N5 [label="B: fence(acquire)", shape=none];
10 N6 [style=invis, shape=point];
11
12 //N1 -> N5 [label="sw", color=blue, penwidth=3, constraint=false];
13 N2 -> N3 [label="hrs", color="#555555"];
14 N3 -> N4 [label="rf", color=red];
15 N1 -> N2 [label="sb", color=blue, weight=100];
16 N4 -> N5 [label="sb", color=blue, weight=100];
17 N2 -> N6 [style=invis];
18 N6 -> N3 [style=invis];
19 {rank=same; N3 N4 N6}
20 }