Skip to content

Commit e5d6da3

Browse files
committed
[herd] Add regression test
1 parent b7a46a4 commit e5d6da3

5 files changed

Lines changed: 32 additions & 1 deletion

File tree

herd/dune

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
(dirs :standard \ tests libdir)
1+
(dirs :standard \ tests/instructions libdir)
22

33
(rule
44
(copy ../Version.ml Version.ml))

herd/tests/other/dune

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
(cram
2+
(deps
3+
(source_tree libdir)
4+
%{bin:herd7}))

herd/tests/other/libdir

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../../libdir

herd/tests/other/poi-loop.t/run.t

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
Check that po indices/edges are assigned correctly in the presence of loops (only checks the last (longest) execution graph)
2+
$ herd7 -set-libdir ../libdir -dumpes true -o - ./wait-flag.litmus | awk '/digraph G \{/ {block=""} {block = block $0 "\n"} END {printf "%s", block}' | grep -e 'poi' -e 'label="po"'
3+
eiid0 [label="a: W[x]=1\lproc:P0 poi:1\lSTR W1,[X0]", shape="box", color="blue"];
4+
eiid1 [label="b: R[x]=S1\lproc:P1 poi:0\lLDR W1,[X0]", shape="box", color="blue"];
5+
eiid11 [label="l: Branching(bcc)\lproc:P1 poi:1\lCBZ W1,.-4", shape="box", color="blue"];
6+
eiid2 [label="c: R[x]=S5\lproc:P1 poi:2\lLDR W1,[X0]", shape="box", color="blue"];
7+
eiid15 [label="p: Branching(bcc)\lproc:P1 poi:3\lCBZ W1,.-4", shape="box", color="blue"];
8+
eiid3 [label="d: R[x]=S9\lproc:P1 poi:4\lLDR W1,[X0]", shape="box", color="blue"];
9+
eiid19 [label="t: Branching(bcc)\lproc:P1 poi:5\lCBZ W1,.-4", shape="box", color="blue"];
10+
eiid20 [label="u: CutOff:L0\lproc:P1 poi:6\lLDR W1,[X0]", shape="box", color="blue"];
11+
/* the poi edges */
12+
eiid1 -> eiid11 [label="po", color="black", fontcolor="black"];
13+
eiid2 -> eiid15 [label="po", color="black", fontcolor="black"];
14+
eiid3 -> eiid19 [label="po", color="black", fontcolor="black"];
15+
eiid11 -> eiid2 [label="po", color="black", fontcolor="black"];
16+
eiid15 -> eiid3 [label="po", color="black", fontcolor="black"];
17+
eiid19 -> eiid20 [label="po", color="black", fontcolor="black"];
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
AArch64 wait-flag
2+
{
3+
0:X0=x; 1:X0=x;
4+
}
5+
P0 | P1 ;
6+
MOV W1,#1 |L0: ;
7+
STR W1,[X0] | LDR W1,[X0] ;
8+
| CBZ W1,L0 ;
9+
exists(1:X1=1)

0 commit comments

Comments
 (0)