Wed Dec 23 19:00:10 CET 2009
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe000.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe000
"SyncdWW Rfe DpdR Fre SyncsWW Rfe DpdW Wse"
{0:r2=x; 0:r5=y; 1:r2=y; 2:r2=y; 2:r5=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwzx r4,r3,r5 | sync | li r4,1 | sync ;
| li r3,2 | stwx r4,r3,r5 | li r3,1 ;
| stw r3,0(r2) | | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r4=0 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r6,0(r9)
_litmus_P0_1_: xor r11,r6,r6
_litmus_P0_2_: lwzx r7,r11,r2
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: li r8,1
_litmus_P2_3_: stwx r8,r11,r2
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe000 Allowed
Histogram (32 states)
6 :>0:r1=1; 0:r4=1; 2:r1=1; y=2; z=1;
17 :>0:r1=1; 0:r4=0; 2:r1=2; y=2; z=1;
15 :>0:r1=1; 0:r4=0; 2:r1=0; y=2; z=2;
71 :>0:r1=1; 0:r4=1; 2:r1=0; y=2; z=2;
5 :>0:r1=0; 0:r4=1; 2:r1=1; y=2; z=2;
71 :>0:r1=1; 0:r4=0; 2:r1=1; y=2; z=1;
33 :>0:r1=0; 0:r4=1; 2:r1=1; y=2; z=1;
115 :>0:r1=1; 0:r4=2; 2:r1=1; y=2; z=2;
126 :>0:r1=1; 0:r4=2; 2:r1=2; y=2; z=2;
1699 :>0:r1=1; 0:r4=1; 2:r1=2; y=2; z=1;
2783 :>0:r1=1; 0:r4=0; 2:r1=0; y=2; z=1;
119 :>0:r1=0; 0:r4=1; 2:r1=2; y=2; z=2;
749 :>0:r1=0; 0:r4=0; 2:r1=2; y=2; z=2;
5028 :>0:r1=0; 0:r4=0; 2:r1=1; y=2; z=2;
51141 :>0:r1=1; 0:r4=1; 2:r1=0; y=2; z=1;
13580 :>0:r1=1; 0:r4=2; 2:r1=0; y=2; z=2;
2507 :>0:r1=0; 0:r4=2; 2:r1=0; y=2; z=1;
16091 :>0:r1=0; 0:r4=2; 2:r1=1; y=2; z=2;
85221 :>0:r1=0; 0:r4=0; 2:r1=1; y=2; z=1;
55543 :>0:r1=0; 0:r4=0; 2:r1=2; y=2; z=1;
33117 :>0:r1=1; 0:r4=2; 2:r1=1; y=2; z=1;
24413 :>0:r1=0; 0:r4=2; 2:r1=2; y=2; z=2;
27568 :>0:r1=0; 0:r4=1; 2:r1=0; y=2; z=1;
30733 :>0:r1=0; 0:r4=1; 2:r1=2; y=2; z=1;
86616 :>0:r1=0; 0:r4=2; 2:r1=0; y=2; z=2;
29575 :>0:r1=0; 0:r4=2; 2:r1=1; y=2; z=1;
177910:>0:r1=0; 0:r4=2; 2:r1=2; y=2; z=1;
101369:>0:r1=0; 0:r4=1; 2:r1=0; y=2; z=2;
103687:>0:r1=0; 0:r4=0; 2:r1=0; y=2; z=1;
44846 :>0:r1=1; 0:r4=2; 2:r1=2; y=2; z=1;
43256 :>0:r1=1; 0:r4=2; 2:r1=0; y=2; z=1;
61990 :>0:r1=0; 0:r4=0; 2:r1=0; y=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r4=0 /\ 2:r1=2) is NOT validated
Hash=64373a08b655841cf08b65d55533adba
Cycle=SyncdWW Rfe DpdR Fre SyncsWW Rfe DpdW Wse
Relax safe000 No
Safe=Fre Wse DpdW DpdR BCSyncsWW BCSyncdWW
Time safe000 2.61
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe001.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe001
"SyncdWR Fre SyncsWW Rfe DpdW Wse"
{0:r2=x; 1:r2=x; 1:r5=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
li r1,1 | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
sync | li r4,1 | sync ;
li r3,2 | stwx r4,r3,r5 | lwz r3,0(r4) ;
stw r3,0(r2) | | ;
exists (x=2 /\ y=2 /\ 1:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: li r9,1
_litmus_P0_1_: stw r9,0(r2)
_litmus_P0_2_: sync
_litmus_P0_3_: li r11,2
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: xor r11,r7,r7
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stwx r8,r11,r2
_litmus_P2_0_: li r8,2
_litmus_P2_1_: stw r8,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r10,0(r2)
Test safe001 Allowed
Histogram (15 states)
40 :>1:r1=1; 2:r3=1; x=2; y=1;
5 :>1:r1=1; 2:r3=1; x=2; y=2;
151 :>1:r1=0; 2:r3=0; x=2; y=2;
6332 :>1:r1=2; 2:r3=0; x=2; y=1;
8116 :>1:r1=0; 2:r3=1; x=2; y=2;
56294 :>1:r1=0; 2:r3=1; x=2; y=1;
46541 :>1:r1=2; 2:r3=2; x=2; y=2;
35246 :>1:r1=1; 2:r3=0; x=2; y=1;
58567 :>1:r1=0; 2:r3=0; x=2; y=1;
12969 :>1:r1=1; 2:r3=2; x=2; y=2;
5630 :>1:r1=0; 2:r3=2; x=2; y=1;
100610:>1:r1=2; 2:r3=1; x=2; y=1;
87618 :>1:r1=1; 2:r3=2; x=2; y=1;
318475:>1:r1=0; 2:r3=2; x=2; y=2;
263406:>1:r1=2; 2:r3=2; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 1:r1=2 /\ 2:r3=0) is NOT validated
Hash=3b7468a49e1794ff27fce29bb51251d9
Cycle=SyncdWR Fre SyncsWW Rfe DpdW Wse
Relax safe001 No
Safe=Fre Wse SyncdWR DpdW BCSyncsWW
Time safe001 1.61
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe002.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe002
"SyncdWW Rfe SyncdRR Fre SyncsWW Rfe DpdW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r5=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r4) | sync | li r4,1 | sync ;
| li r3,2 | stwx r4,r3,r5 | li r3,1 ;
| stw r3,0(r2) | | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: li r8,1
_litmus_P2_3_: stwx r8,r11,r2
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe002 Allowed
Histogram (32 states)
1 :>0:r1=1; 0:r3=0; 2:r1=2; y=2; z=1;
7 :>0:r1=1; 0:r3=1; 2:r1=0; y=2; z=2;
1 :>0:r1=1; 0:r3=0; 2:r1=1; y=2; z=1;
2 :>0:r1=1; 0:r3=0; 2:r1=0; y=2; z=2;
10 :>0:r1=1; 0:r3=1; 2:r1=1; y=2; z=1;
5 :>0:r1=0; 0:r3=1; 2:r1=1; y=2; z=2;
34 :>0:r1=0; 0:r3=1; 2:r1=1; y=2; z=1;
231 :>0:r1=1; 0:r3=1; 2:r1=2; y=2; z=1;
269 :>0:r1=0; 0:r3=0; 2:r1=2; y=2; z=2;
937 :>0:r1=1; 0:r3=0; 2:r1=0; y=2; z=1;
221 :>0:r1=1; 0:r3=2; 2:r1=2; y=2; z=2;
155 :>0:r1=1; 0:r3=2; 2:r1=1; y=2; z=2;
107 :>0:r1=0; 0:r3=1; 2:r1=2; y=2; z=2;
4691 :>0:r1=1; 0:r3=2; 2:r1=0; y=2; z=2;
2420 :>0:r1=0; 0:r3=0; 2:r1=1; y=2; z=2;
24664 :>0:r1=1; 0:r3=1; 2:r1=0; y=2; z=1;
47871 :>0:r1=0; 0:r3=2; 2:r1=2; y=2; z=2;
42624 :>0:r1=0; 0:r3=0; 2:r1=2; y=2; z=1;
63662 :>0:r1=0; 0:r3=0; 2:r1=0; y=2; z=2;
35057 :>0:r1=0; 0:r3=2; 2:r1=1; y=2; z=2;
25219 :>0:r1=0; 0:r3=2; 2:r1=1; y=2; z=1;
74613 :>0:r1=1; 0:r3=2; 2:r1=0; y=2; z=1;
79190 :>0:r1=0; 0:r3=0; 2:r1=1; y=2; z=1;
36148 :>0:r1=1; 0:r3=2; 2:r1=2; y=2; z=1;
58931 :>0:r1=1; 0:r3=2; 2:r1=1; y=2; z=1;
63164 :>0:r1=0; 0:r3=0; 2:r1=0; y=2; z=1;
36379 :>0:r1=0; 0:r3=1; 2:r1=0; y=2; z=1;
103131:>0:r1=0; 0:r3=1; 2:r1=0; y=2; z=2;
26507 :>0:r1=0; 0:r3=1; 2:r1=2; y=2; z=1;
7218 :>0:r1=0; 0:r3=2; 2:r1=0; y=2; z=1;
117599:>0:r1=0; 0:r3=2; 2:r1=0; y=2; z=2;
148932:>0:r1=0; 0:r3=2; 2:r1=2; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2) is NOT validated
Hash=0eb955235977c8fc2af1c46e930c9ff1
Cycle=SyncdWW Rfe SyncdRR Fre SyncsWW Rfe DpdW Wse
Relax safe002 No
Safe=Fre Wse SyncdRR DpdW BCSyncsWW BCSyncdWW
Time safe002 2.59
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe003.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe003
"SyncdWW Rfe LwSyncdRR Fre SyncsWW Rfe DpdW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r5=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
lwsync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r4) | sync | li r4,1 | sync ;
| li r3,2 | stwx r4,r3,r5 | li r3,1 ;
| stw r3,0(r2) | | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: li r8,1
_litmus_P2_3_: stwx r8,r11,r2
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe003 Allowed
Histogram (30 states)
6 :>0:r1=1; 0:r3=1; 2:r1=0; y=2; z=2;
1 :>0:r1=1; 0:r3=1; 2:r1=1; y=2; z=1;
13 :>0:r1=1; 0:r3=0; 2:r1=2; y=2; z=1;
50 :>0:r1=0; 0:r3=1; 2:r1=2; y=2; z=2;
14 :>0:r1=0; 0:r3=1; 2:r1=1; y=2; z=1;
91 :>0:r1=1; 0:r3=2; 2:r1=1; y=2; z=2;
70 :>0:r1=1; 0:r3=0; 2:r1=1; y=2; z=1;
126 :>0:r1=1; 0:r3=2; 2:r1=2; y=2; z=2;
216 :>0:r1=0; 0:r3=0; 2:r1=2; y=2; z=2;
1685 :>0:r1=1; 0:r3=1; 2:r1=2; y=2; z=1;
932 :>0:r1=1; 0:r3=0; 2:r1=0; y=2; z=1;
8761 :>0:r1=0; 0:r3=0; 2:r1=1; y=2; z=2;
24583 :>0:r1=0; 0:r3=2; 2:r1=1; y=2; z=2;
7784 :>0:r1=0; 0:r3=0; 2:r1=2; y=2; z=1;
14339 :>0:r1=1; 0:r3=1; 2:r1=0; y=2; z=1;
26896 :>0:r1=1; 0:r3=2; 2:r1=2; y=2; z=1;
37751 :>0:r1=0; 0:r3=1; 2:r1=2; y=2; z=1;
22030 :>0:r1=0; 0:r3=2; 2:r1=2; y=2; z=2;
4934 :>0:r1=0; 0:r3=2; 2:r1=0; y=2; z=1;
145476:>0:r1=0; 0:r3=0; 2:r1=0; y=2; z=2;
13513 :>0:r1=0; 0:r3=1; 2:r1=0; y=2; z=1;
80240 :>0:r1=0; 0:r3=2; 2:r1=1; y=2; z=1;
130319:>0:r1=0; 0:r3=1; 2:r1=0; y=2; z=2;
55553 :>0:r1=0; 0:r3=0; 2:r1=1; y=2; z=1;
104825:>0:r1=1; 0:r3=2; 2:r1=0; y=2; z=1;
37709 :>0:r1=0; 0:r3=2; 2:r1=0; y=2; z=2;
110523:>0:r1=0; 0:r3=0; 2:r1=0; y=2; z=1;
26240 :>0:r1=1; 0:r3=2; 2:r1=1; y=2; z=1;
1743 :>0:r1=1; 0:r3=2; 2:r1=0; y=2; z=2;
143577:>0:r1=0; 0:r3=2; 2:r1=2; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2) is NOT validated
Hash=62952aa86720124207d3ca14492de72f
Cycle=SyncdWW Rfe LwSyncdRR Fre SyncsWW Rfe DpdW Wse
Relax safe003 No
Safe=Fre Wse LwSyncdRR DpdW BCSyncsWW BCSyncdWW
Time safe003 2.52
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe004.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe004
"Rfe SyncdRR Fre SyncsWW Rfe DpdW Wse"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r5=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r4) | sync | li r4,1 | ;
| li r3,2 | stwx r4,r3,r5 | ;
| stw r3,0(r2) | | ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: li r8,1
_litmus_P2_3_: stwx r8,r11,r2
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe004 Allowed
Histogram (44 states)
1 :>0:r1=2; 0:r3=1; 2:r1=1; x=2; y=2;
9 :>0:r1=0; 0:r3=0; 2:r1=2; x=2; y=2;
5 :>0:r1=1; 0:r3=1; 2:r1=1; x=2; y=1;
7 :>0:r1=0; 0:r3=1; 2:r1=2; x=2; y=2;
101 :>0:r1=1; 0:r3=2; 2:r1=1; x=2; y=2;
2 :>0:r1=0; 0:r3=1; 2:r1=1; x=2; y=2;
44 :>0:r1=1; 0:r3=0; 2:r1=0; x=2; y=1;
33 :>0:r1=2; 0:r3=1; 2:r1=1; x=2; y=1;
62 :>0:r1=2; 0:r3=0; 2:r1=2; x=2; y=1;
72 :>0:r1=2; 0:r3=2; 2:r1=1; x=2; y=2;
10 :>0:r1=0; 0:r3=1; 2:r1=1; x=2; y=1;
1078 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; y=1;
1487 :>0:r1=2; 0:r3=0; 2:r1=1; x=2; y=1;
5406 :>0:r1=2; 0:r3=1; 2:r1=2; x=2; y=1;
57 :>0:r1=0; 0:r3=0; 2:r1=1; x=2; y=2;
1765 :>0:r1=2; 0:r3=0; 2:r1=0; x=2; y=2;
1594 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; y=2;
3595 :>0:r1=0; 0:r3=2; 2:r1=1; x=2; y=1;
3810 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; y=1;
18866 :>0:r1=0; 0:r3=2; 2:r1=2; x=2; y=2;
1080 :>0:r1=2; 0:r3=2; 2:r1=2; x=2; y=2;
1062 :>0:r1=0; 0:r3=2; 2:r1=1; x=2; y=2;
31661 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; y=2;
1595 :>0:r1=1; 0:r3=2; 2:r1=2; x=2; y=2;
22024 :>0:r1=2; 0:r3=1; 2:r1=0; x=2; y=2;
18643 :>0:r1=2; 0:r3=1; 2:r1=0; x=2; y=1;
3838 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; y=2;
14512 :>0:r1=0; 0:r3=1; 2:r1=2; x=2; y=1;
28099 :>0:r1=0; 0:r3=0; 2:r1=2; x=2; y=1;
413 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; y=2;
91916 :>0:r1=1; 0:r3=2; 2:r1=2; x=2; y=1;
209 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; y=1;
33956 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; y=1;
47626 :>0:r1=0; 0:r3=2; 2:r1=2; x=2; y=1;
24824 :>0:r1=1; 0:r3=0; 2:r1=0; x=2; y=2;
82503 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; y=2;
113511:>0:r1=0; 0:r3=0; 2:r1=0; x=2; y=1;
105573:>0:r1=2; 0:r3=2; 2:r1=1; x=2; y=1;
143314:>0:r1=2; 0:r3=2; 2:r1=2; x=2; y=1;
10504 :>0:r1=2; 0:r3=2; 2:r1=0; x=2; y=1;
13951 :>0:r1=1; 0:r3=2; 2:r1=1; x=2; y=1;
81215 :>0:r1=2; 0:r3=2; 2:r1=0; x=2; y=2;
84048 :>0:r1=0; 0:r3=0; 2:r1=1; x=2; y=1;
5919 :>0:r1=2; 0:r3=0; 2:r1=0; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=2) is NOT validated
Hash=100bb806aa0b06aae337f56128ca08ba
Cycle=Rfe SyncdRR Fre SyncsWW Rfe DpdW Wse
Relax safe004 No
Safe=Fre Wse DpdW ACSyncdRR BCSyncsWW
Time safe004 2.54
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe005.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe005
"LwSyncdWW Rfe SyncdRR Fre SyncsWW Rfe DpdW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r5=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r4) | sync | li r4,1 | lwsync ;
| li r3,2 | stwx r4,r3,r5 | li r3,1 ;
| stw r3,0(r2) | | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: li r8,1
_litmus_P2_3_: stwx r8,r11,r2
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe005 Allowed
Histogram (32 states)
1 :>0:r1=1; 0:r3=0; 2:r1=2; y=2; z=1;
3 :>0:r1=0; 0:r3=1; 2:r1=1; y=2; z=2;
33 :>0:r1=0; 0:r3=1; 2:r1=2; y=2; z=2;
33 :>0:r1=1; 0:r3=0; 2:r1=1; y=2; z=1;
9 :>0:r1=1; 0:r3=1; 2:r1=1; y=2; z=1;
16 :>0:r1=0; 0:r3=1; 2:r1=1; y=2; z=1;
321 :>0:r1=1; 0:r3=2; 2:r1=2; y=2; z=2;
288 :>0:r1=1; 0:r3=0; 2:r1=0; y=2; z=2;
223 :>0:r1=1; 0:r3=2; 2:r1=1; y=2; z=2;
114 :>0:r1=0; 0:r3=0; 2:r1=2; y=2; z=2;
682 :>0:r1=1; 0:r3=1; 2:r1=0; y=2; z=2;
4369 :>0:r1=1; 0:r3=0; 2:r1=0; y=2; z=1;
2365 :>0:r1=1; 0:r3=1; 2:r1=2; y=2; z=1;
1262 :>0:r1=0; 0:r3=0; 2:r1=1; y=2; z=2;
66563 :>0:r1=0; 0:r3=0; 2:r1=0; y=2; z=2;
44457 :>0:r1=0; 0:r3=2; 2:r1=2; y=2; z=2;
26235 :>0:r1=0; 0:r3=2; 2:r1=1; y=2; z=2;
13991 :>0:r1=0; 0:r3=2; 2:r1=1; y=2; z=1;
63732 :>0:r1=1; 0:r3=1; 2:r1=0; y=2; z=1;
104390:>0:r1=0; 0:r3=1; 2:r1=0; y=2; z=2;
46608 :>0:r1=0; 0:r3=0; 2:r1=2; y=2; z=1;
5044 :>0:r1=0; 0:r3=2; 2:r1=0; y=2; z=1;
15977 :>0:r1=0; 0:r3=1; 2:r1=2; y=2; z=1;
106746:>0:r1=0; 0:r3=2; 2:r1=2; y=2; z=1;
75243 :>0:r1=0; 0:r3=0; 2:r1=0; y=2; z=1;
86249 :>0:r1=1; 0:r3=2; 2:r1=2; y=2; z=1;
87505 :>0:r1=0; 0:r3=2; 2:r1=0; y=2; z=2;
70321 :>0:r1=0; 0:r3=0; 2:r1=1; y=2; z=1;
38502 :>0:r1=1; 0:r3=2; 2:r1=1; y=2; z=1;
92664 :>0:r1=1; 0:r3=2; 2:r1=0; y=2; z=1;
28174 :>0:r1=1; 0:r3=2; 2:r1=0; y=2; z=2;
17880 :>0:r1=0; 0:r3=1; 2:r1=0; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2) is NOT validated
Hash=44ae9b655b46275e702585f159ab9b2f
Cycle=LwSyncdWW Rfe SyncdRR Fre SyncsWW Rfe DpdW Wse
Relax safe005 No
Safe=Fre Wse LwSyncdWW DpdW ACSyncdRR BCSyncsWW
Time safe005 2.53
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe006.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe006
"SyncdWW Rfe SyncsRW Rfe DpdW Wse"
{0:r2=x; 1:r2=x; 1:r5=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | xor r3,r1,r1 | stw r1,0(r2) ;
li r3,2 | li r4,1 | sync ;
stw r3,0(r2) | stwx r4,r3,r5 | li r3,1 ;
| | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: xor r11,r7,r7
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stwx r8,r11,r2
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe006 Allowed
Histogram (13 states)
206 :>0:r1=1; 1:r1=2; x=2; y=1;
130 :>0:r1=1; 1:r1=0; x=2; y=2;
19165 :>0:r1=0; 1:r1=0; x=2; y=2;
25738 :>0:r1=1; 1:r1=0; x=2; y=1;
125036:>0:r1=0; 1:r1=0; x=2; y=1;
30997 :>0:r1=0; 1:r1=0; x=1; y=1;
32422 :>0:r1=0; 1:r1=2; x=2; y=1;
40633 :>0:r1=0; 1:r1=2; x=1; y=2;
27739 :>0:r1=1; 1:r1=1; x=2; y=1;
270752:>0:r1=0; 1:r1=2; x=1; y=1;
90823 :>0:r1=0; 1:r1=1; x=2; y=1;
309801:>0:r1=0; 1:r1=0; x=1; y=2;
26558 :>0:r1=0; 1:r1=1; x=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2) is NOT validated
Hash=8f49a4008fbe910240040d2dc19d822c
Cycle=SyncdWW Rfe SyncsRW Rfe DpdW Wse
Relax safe006 No
Safe=Wse DpdW BCSyncsRW BCSyncdWW
Time safe006 1.50
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe007.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe007
"SyncdWW Wse SyncdWW Rfe SyncsRW Rfe DpdW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r5=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
li r1,2 | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | sync | xor r3,r1,r1 | stw r1,0(r2) ;
sync | li r3,2 | li r4,1 | sync ;
li r3,1 | stw r3,0(r2) | stwx r4,r3,r5 | li r3,1 ;
stw r3,0(r4) | | | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ z=2 /\ 1:r1=1 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: li r11,2
_litmus_P0_1_: stw r11,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r10,1
_litmus_P0_4_: stw r10,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: li r8,1
_litmus_P2_3_: stwx r8,r11,r2
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe007 Allowed
Histogram (29 states)
1 :>1:r1=1; 2:r1=0; x=2; y=2; z=2;
9 :>1:r1=1; 2:r1=2; x=1; y=2; z=2;
57 :>1:r1=0; 2:r1=2; x=2; y=1; z=2;
13 :>1:r1=1; 2:r1=1; x=2; y=2; z=1;
77 :>1:r1=0; 2:r1=2; x=2; y=2; z=1;
372 :>1:r1=0; 2:r1=1; x=2; y=2; z=1;
410 :>1:r1=0; 2:r1=1; x=1; y=1; z=2;
1520 :>1:r1=0; 2:r1=1; x=1; y=2; z=2;
142 :>1:r1=0; 2:r1=2; x=1; y=2; z=2;
699 :>1:r1=0; 2:r1=1; x=2; y=1; z=1;
2452 :>1:r1=0; 2:r1=0; x=2; y=1; z=2;
1120 :>1:r1=1; 2:r1=0; x=2; y=2; z=1;
2705 :>1:r1=1; 2:r1=2; x=1; y=2; z=1;
131338:>1:r1=0; 2:r1=0; x=1; y=2; z=2;
37566 :>1:r1=1; 2:r1=1; x=1; y=2; z=1;
43068 :>1:r1=0; 2:r1=2; x=1; y=1; z=2;
26111 :>1:r1=0; 2:r1=0; x=2; y=2; z=1;
51658 :>1:r1=0; 2:r1=2; x=1; y=2; z=1;
78461 :>1:r1=0; 2:r1=0; x=1; y=2; z=1;
62126 :>1:r1=0; 2:r1=1; x=1; y=2; z=1;
28478 :>1:r1=0; 2:r1=0; x=1; y=1; z=1;
47581 :>1:r1=0; 2:r1=2; x=2; y=1; z=1;
123779:>1:r1=0; 2:r1=0; x=2; y=1; z=1;
118391:>1:r1=0; 2:r1=0; x=1; y=1; z=2;
27633 :>1:r1=0; 2:r1=1; x=1; y=1; z=1;
167541:>1:r1=0; 2:r1=2; x=1; y=1; z=1;
27147 :>1:r1=1; 2:r1=0; x=1; y=2; z=1;
18188 :>1:r1=1; 2:r1=0; x=1; y=2; z=2;
1357 :>1:r1=1; 2:r1=1; x=1; y=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ z=2 /\ 1:r1=1 /\ 2:r1=2) is NOT validated
Hash=07995fe435e061ac35da5e8b3a82f864
Cycle=SyncdWW Wse SyncdWW Rfe SyncsRW Rfe DpdW Wse
Relax safe007 No
Safe=Wse SyncdWW DpdW BCSyncsRW BCSyncdWW
Time safe007 2.60
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe008.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe008
"LwSyncdWW Wse SyncdWW Rfe SyncsRW Rfe DpdW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r5=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
li r1,2 | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | sync | xor r3,r1,r1 | stw r1,0(r2) ;
sync | li r3,2 | li r4,1 | lwsync ;
li r3,1 | stw r3,0(r2) | stwx r4,r3,r5 | li r3,1 ;
stw r3,0(r4) | | | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ z=2 /\ 1:r1=1 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: li r11,2
_litmus_P0_1_: stw r11,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r10,1
_litmus_P0_4_: stw r10,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: li r8,1
_litmus_P2_3_: stwx r8,r11,r2
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe008 Allowed
Histogram (30 states)
27 :>1:r1=0; 2:r1=2; x=1; y=2; z=2;
88 :>1:r1=1; 2:r1=0; x=2; y=2; z=2;
58 :>1:r1=1; 2:r1=1; x=2; y=2; z=1;
174 :>1:r1=0; 2:r1=2; x=2; y=2; z=1;
244 :>1:r1=0; 2:r1=1; x=1; y=1; z=2;
391 :>1:r1=0; 2:r1=1; x=1; y=2; z=2;
700 :>1:r1=1; 2:r1=1; x=1; y=2; z=2;
441 :>1:r1=0; 2:r1=2; x=2; y=1; z=2;
2258 :>1:r1=0; 2:r1=1; x=2; y=1; z=1;
3919 :>1:r1=1; 2:r1=2; x=1; y=2; z=1;
415 :>1:r1=0; 2:r1=0; x=2; y=2; z=2;
3458 :>1:r1=1; 2:r1=0; x=2; y=2; z=1;
9261 :>1:r1=1; 2:r1=0; x=1; y=2; z=2;
30133 :>1:r1=0; 2:r1=2; x=1; y=1; z=2;
3182 :>1:r1=0; 2:r1=1; x=2; y=2; z=1;
73256 :>1:r1=0; 2:r1=0; x=2; y=2; z=1;
31889 :>1:r1=0; 2:r1=0; x=2; y=1; z=2;
27382 :>1:r1=0; 2:r1=2; x=1; y=2; z=1;
34249 :>1:r1=0; 2:r1=1; x=1; y=2; z=1;
119601:>1:r1=1; 2:r1=1; x=1; y=2; z=1;
101197:>1:r1=0; 2:r1=0; x=1; y=2; z=2;
15222 :>1:r1=0; 2:r1=1; x=1; y=1; z=1;
31163 :>1:r1=0; 2:r1=0; x=1; y=2; z=1;
152450:>1:r1=0; 2:r1=2; x=2; y=1; z=1;
25312 :>1:r1=1; 2:r1=0; x=1; y=2; z=1;
105551:>1:r1=0; 2:r1=0; x=1; y=1; z=2;
12996 :>1:r1=0; 2:r1=0; x=1; y=1; z=1;
100857:>1:r1=0; 2:r1=2; x=1; y=1; z=1;
114122:>1:r1=0; 2:r1=0; x=2; y=1; z=1;
4 :>1:r1=1; 2:r1=2; x=1; y=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ z=2 /\ 1:r1=1 /\ 2:r1=2) is NOT validated
Hash=fee02d0a5ef6acb2d655e27a4213d8e9
Cycle=LwSyncdWW Wse SyncdWW Rfe SyncsRW Rfe DpdW Wse
Relax safe008 No
Safe=Wse LwSyncdWW DpdW BCSyncsRW BCSyncdWW
Time safe008 2.70
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe009.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe009
"SyncdWR Fre SyncdWW Rfe SyncsRW Rfe DpdW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r5=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
li r1,1 | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | sync | xor r3,r1,r1 | stw r1,0(r2) ;
sync | li r3,2 | li r4,1 | sync ;
li r3,1 | stw r3,0(r2) | stwx r4,r3,r5 | lwz r3,0(r4) ;
stw r3,0(r4) | | | ;
exists (y=2 /\ z=2 /\ 1:r1=1 /\ 2:r1=2 /\ 3:r3=0)
Generated assembler
_litmus_P0_0_: li r11,1
_litmus_P0_1_: stw r11,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r10,1
_litmus_P0_4_: stw r10,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: li r8,1
_litmus_P2_3_: stwx r8,r11,r2
_litmus_P3_0_: li r10,2
_litmus_P3_1_: stw r10,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: lwz r8,0(r2)
Test safe009 Allowed
Histogram (31 states)
1 :>1:r1=1; 2:r1=2; 3:r3=0; y=2; z=1;
6 :>1:r1=1; 2:r1=2; 3:r3=1; y=2; z=2;
55 :>1:r1=0; 2:r1=2; 3:r3=1; y=2; z=2;
413 :>1:r1=0; 2:r1=1; 3:r3=1; y=1; z=2;
201 :>1:r1=0; 2:r1=2; 3:r3=0; y=1; z=2;
241 :>1:r1=0; 2:r1=0; 3:r3=0; y=2; z=2;
215 :>1:r1=0; 2:r1=2; 3:r3=0; y=2; z=1;
2597 :>1:r1=1; 2:r1=2; 3:r3=1; y=2; z=1;
3861 :>1:r1=0; 2:r1=1; 3:r3=0; y=2; z=1;
2724 :>1:r1=0; 2:r1=1; 3:r3=0; y=1; z=1;
11 :>1:r1=1; 2:r1=0; 3:r3=0; y=2; z=2;
65 :>1:r1=1; 2:r1=1; 3:r3=0; y=2; z=1;
28370 :>1:r1=0; 2:r1=0; 3:r3=0; y=1; z=2;
44641 :>1:r1=0; 2:r1=1; 3:r3=1; y=2; z=1;
24269 :>1:r1=0; 2:r1=2; 3:r3=1; y=2; z=1;
34181 :>1:r1=0; 2:r1=0; 3:r3=0; y=2; z=1;
963 :>1:r1=0; 2:r1=1; 3:r3=1; y=2; z=2;
33967 :>1:r1=0; 2:r1=2; 3:r3=1; y=1; z=2;
40737 :>1:r1=1; 2:r1=0; 3:r3=1; y=2; z=1;
18116 :>1:r1=0; 2:r1=1; 3:r3=1; y=1; z=1;
96516 :>1:r1=1; 2:r1=1; 3:r3=1; y=2; z=1;
109645:>1:r1=0; 2:r1=0; 3:r3=1; y=2; z=2;
29278 :>1:r1=0; 2:r1=0; 3:r3=1; y=1; z=1;
82001 :>1:r1=0; 2:r1=2; 3:r3=0; y=1; z=1;
66042 :>1:r1=0; 2:r1=0; 3:r3=0; y=1; z=1;
121432:>1:r1=0; 2:r1=0; 3:r3=1; y=1; z=2;
73231 :>1:r1=0; 2:r1=0; 3:r3=1; y=2; z=1;
168869:>1:r1=0; 2:r1=2; 3:r3=1; y=1; z=1;
3602 :>1:r1=1; 2:r1=0; 3:r3=0; y=2; z=1;
12825 :>1:r1=1; 2:r1=0; 3:r3=1; y=2; z=2;
925 :>1:r1=1; 2:r1=1; 3:r3=1; y=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 1:r1=1 /\ 2:r1=2 /\ 3:r3=0) is NOT validated
Hash=c321d98137b37466eedcf0d4e469c915
Cycle=SyncdWR Fre SyncdWW Rfe SyncsRW Rfe DpdW Wse
Relax safe009 No
Safe=Fre Wse SyncdWR DpdW BCSyncsRW BCSyncdWW
Time safe009 2.58
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe010.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe010
"SyncdWW Rfe SyncdRW Rfe SyncsRW Rfe DpdW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r5=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | sync | xor r3,r1,r1 | stw r1,0(r2) ;
li r3,1 | li r3,2 | li r4,1 | sync ;
stw r3,0(r4) | stw r3,0(r2) | stwx r4,r3,r5 | li r3,1 ;
| | | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: li r8,1
_litmus_P2_3_: stwx r8,r11,r2
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe010 Allowed
Histogram (30 states)
1 :>0:r1=1; 1:r1=0; 2:r1=0; y=2; z=2;
5 :>0:r1=1; 1:r1=1; 2:r1=1; y=2; z=1;
13 :>0:r1=0; 1:r1=1; 2:r1=2; y=2; z=2;
16 :>0:r1=1; 1:r1=0; 2:r1=2; y=2; z=1;
221 :>0:r1=1; 1:r1=0; 2:r1=2; y=1; z=2;
190 :>0:r1=0; 1:r1=0; 2:r1=2; y=2; z=2;
1289 :>0:r1=0; 1:r1=0; 2:r1=1; y=2; z=2;
392 :>0:r1=0; 1:r1=0; 2:r1=1; y=1; z=2;
103 :>0:r1=1; 1:r1=1; 2:r1=0; y=2; z=2;
206 :>0:r1=1; 1:r1=0; 2:r1=1; y=2; z=1;
3998 :>0:r1=0; 1:r1=1; 2:r1=2; y=2; z=1;
2666 :>0:r1=0; 1:r1=1; 2:r1=1; y=2; z=2;
1840 :>0:r1=1; 1:r1=0; 2:r1=1; y=1; z=1;
5130 :>0:r1=1; 1:r1=0; 2:r1=0; y=1; z=2;
48531 :>0:r1=1; 1:r1=0; 2:r1=0; y=2; z=1;
74183 :>0:r1=0; 1:r1=0; 2:r1=2; y=1; z=2;
79168 :>0:r1=1; 1:r1=0; 2:r1=0; y=1; z=1;
58169 :>0:r1=1; 1:r1=0; 2:r1=2; y=1; z=1;
66179 :>0:r1=0; 1:r1=1; 2:r1=1; y=2; z=1;
30608 :>0:r1=0; 1:r1=0; 2:r1=0; y=1; z=1;
94843 :>0:r1=0; 1:r1=0; 2:r1=0; y=2; z=2;
16954 :>0:r1=0; 1:r1=0; 2:r1=1; y=1; z=1;
40850 :>0:r1=0; 1:r1=1; 2:r1=0; y=2; z=1;
51053 :>0:r1=0; 1:r1=0; 2:r1=0; y=2; z=1;
175860:>0:r1=0; 1:r1=0; 2:r1=0; y=1; z=2;
47806 :>0:r1=0; 1:r1=0; 2:r1=1; y=2; z=1;
152342:>0:r1=0; 1:r1=0; 2:r1=2; y=1; z=1;
509 :>0:r1=1; 1:r1=1; 2:r1=0; y=2; z=1;
19056 :>0:r1=0; 1:r1=1; 2:r1=0; y=2; z=2;
27819 :>0:r1=0; 1:r1=0; 2:r1=2; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2) is NOT validated
Hash=f000e2d04cdb3fae078379dcf758fd60
Cycle=SyncdWW Rfe SyncdRW Rfe SyncsRW Rfe DpdW Wse
Relax safe010 No
Safe=Wse DpdW BCSyncsRW BCSyncdWW BCSyncdRW
Time safe010 2.48
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe011.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe011
"SyncdWW Rfe DpdW Wse"
{0:r2=x; 0:r5=y; 1:r2=y; 1:r4=x;}
P0 | P1 ;
lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | stw r1,0(r2) ;
li r4,1 | sync ;
stwx r4,r3,r5 | li r3,1 ;
| stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: xor r11,r7,r7
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stwx r8,r11,r2
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
Test safe011 Allowed
Histogram (3 states)
924358:>0:r1=0; y=1;
142868:>0:r1=1; y=1;
932774:>0:r1=0; y=2;
No
Witnesses
Positive: 0, Negative: 2000000
Condition exists (y=2 /\ 0:r1=1) is NOT validated
Hash=f526808a123f5759da22561f08441a6b
Cycle=SyncdWW Rfe DpdW Wse
Relax safe011 No
Safe=Wse DpdW BCSyncdWW
Time safe011 1.23
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe012.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe012
"SyncdWW Rfe DpdW Wse SyncdWW Rfe DpdW Wse"
{0:r2=x; 0:r5=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r5=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
li r4,1 | sync | li r4,1 | sync ;
stwx r4,r3,r5 | li r3,1 | stwx r4,r3,r5 | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (a=2 /\ y=2 /\ 0:r1=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: xor r11,r7,r7
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stwx r8,r11,r2
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: li r8,1
_litmus_P2_3_: stwx r8,r11,r2
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe012 Allowed
Histogram (15 states)
2 :>0:r1=1; 2:r1=1; a=1; y=2;
7 :>0:r1=1; 2:r1=0; a=2; y=2;
26 :>0:r1=0; 2:r1=1; a=2; y=2;
12 :>0:r1=1; 2:r1=1; a=2; y=1;
7524 :>0:r1=0; 2:r1=1; a=1; y=2;
6302 :>0:r1=0; 2:r1=1; a=2; y=1;
5846 :>0:r1=1; 2:r1=0; a=1; y=2;
7884 :>0:r1=1; 2:r1=1; a=1; y=1;
16359 :>0:r1=1; 2:r1=0; a=2; y=1;
295044:>0:r1=0; 2:r1=0; a=2; y=1;
178018:>0:r1=1; 2:r1=0; a=1; y=1;
161981:>0:r1=0; 2:r1=0; a=2; y=2;
116851:>0:r1=0; 2:r1=1; a=1; y=1;
60105 :>0:r1=0; 2:r1=0; a=1; y=1;
144039:>0:r1=0; 2:r1=0; a=1; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ y=2 /\ 0:r1=1 /\ 2:r1=1) is NOT validated
Hash=b01daec625933b1c72cf2ec69858ac68
Cycle=SyncdWW Rfe DpdW Wse SyncdWW Rfe DpdW Wse
Relax safe012 No
Safe=Wse DpdW BCSyncdWW
Time safe012 2.17
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe013.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe013
"SyncdWW Wse SyncdWW Rfe DpdW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r5=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
li r1,2 | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
sync | li r4,1 | sync ;
li r3,1 | stwx r4,r3,r5 | li r3,1 ;
stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 1:r1=1)
Generated assembler
_litmus_P0_0_: li r10,2
_litmus_P0_1_: stw r10,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r11,1
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: xor r11,r7,r7
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stwx r8,r11,r2
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe013 Allowed
Histogram (7 states)
450 :>1:r1=0; x=2; z=2;
169 :>1:r1=1; x=2; z=1;
1499 :>1:r1=1; x=1; z=2;
370171:>1:r1=0; x=1; z=2;
292589:>1:r1=0; x=1; z=1;
149265:>1:r1=1; x=1; z=1;
185857:>1:r1=0; x=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 1:r1=1) is NOT validated
Hash=61706d506aedff4395c0fcabfb3f3625
Cycle=SyncdWW Wse SyncdWW Rfe DpdW Wse
Relax safe013 No
Safe=Wse SyncdWW DpdW BCSyncdWW
Time safe013 1.64
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe014.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe014
"SyncdWW Rfe SyncdRW Wse SyncdWW Rfe DpdW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r5=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
li r3,1 | sync | li r4,1 | sync ;
stw r3,0(r4) | li r3,1 | stwx r4,r3,r5 | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (a=2 /\ y=2 /\ 0:r1=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: li r8,1
_litmus_P2_3_: stwx r8,r11,r2
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe014 Allowed
Histogram (15 states)
1 :>0:r1=1; 2:r1=1; a=1; y=2;
9 :>0:r1=1; 2:r1=0; a=2; y=2;
14 :>0:r1=1; 2:r1=1; a=2; y=1;
8 :>0:r1=0; 2:r1=1; a=2; y=2;
4408 :>0:r1=1; 2:r1=0; a=1; y=2;
3363 :>0:r1=0; 2:r1=1; a=2; y=1;
37423 :>0:r1=1; 2:r1=1; a=1; y=1;
33985 :>0:r1=0; 2:r1=0; a=2; y=2;
21317 :>0:r1=1; 2:r1=0; a=2; y=1;
125614:>0:r1=1; 2:r1=0; a=1; y=1;
190774:>0:r1=0; 2:r1=0; a=1; y=1;
249621:>0:r1=0; 2:r1=0; a=2; y=1;
150398:>0:r1=0; 2:r1=1; a=1; y=1;
3990 :>0:r1=0; 2:r1=1; a=1; y=2;
179075:>0:r1=0; 2:r1=0; a=1; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ y=2 /\ 0:r1=1 /\ 2:r1=1) is NOT validated
Hash=6cf7663018e38924ed44fb14e5afad12
Cycle=SyncdWW Rfe SyncdRW Wse SyncdWW Rfe DpdW Wse
Relax safe014 No
Safe=Wse SyncdRW DpdW BCSyncdWW
Time safe014 2.18
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe015.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe015
"LwSyncdWW Wse SyncdWW Rfe DpdW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r5=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
li r1,2 | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
sync | li r4,1 | lwsync ;
li r3,1 | stwx r4,r3,r5 | li r3,1 ;
stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 1:r1=1)
Generated assembler
_litmus_P0_0_: li r10,2
_litmus_P0_1_: stw r10,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r11,1
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: xor r11,r7,r7
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stwx r8,r11,r2
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe015 Allowed
Histogram (7 states)
810 :>1:r1=1; x=2; z=1;
693 :>1:r1=1; x=1; z=2;
4248 :>1:r1=0; x=2; z=2;
175100:>1:r1=0; x=1; z=1;
282197:>1:r1=0; x=2; z=1;
330865:>1:r1=0; x=1; z=2;
206087:>1:r1=1; x=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 1:r1=1) is NOT validated
Hash=13ea9b05c67e30c2904c774a6e31b828
Cycle=LwSyncdWW Wse SyncdWW Rfe DpdW Wse
Relax safe015 No
Safe=Wse LwSyncdWW DpdW BCSyncdWW
Time safe015 1.63
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe016.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe016
"SyncdWW Rfe LwSyncdRW Wse SyncdWW Rfe DpdW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r5=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
lwsync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
li r3,1 | sync | li r4,1 | sync ;
stw r3,0(r4) | li r3,1 | stwx r4,r3,r5 | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (a=2 /\ y=2 /\ 0:r1=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: li r8,1
_litmus_P2_3_: stwx r8,r11,r2
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe016 Allowed
Histogram (15 states)
4 :>0:r1=1; 2:r1=1; a=1; y=2;
12 :>0:r1=1; 2:r1=1; a=2; y=1;
4 :>0:r1=1; 2:r1=0; a=2; y=2;
7 :>0:r1=0; 2:r1=1; a=2; y=2;
4184 :>0:r1=0; 2:r1=1; a=2; y=1;
1209 :>0:r1=0; 2:r1=1; a=1; y=2;
5317 :>0:r1=1; 2:r1=0; a=1; y=2;
12070 :>0:r1=1; 2:r1=0; a=2; y=1;
121184:>0:r1=0; 2:r1=1; a=1; y=1;
11689 :>0:r1=1; 2:r1=1; a=1; y=1;
153025:>0:r1=0; 2:r1=0; a=2; y=2;
264076:>0:r1=0; 2:r1=0; a=2; y=1;
118869:>0:r1=0; 2:r1=0; a=1; y=1;
160504:>0:r1=1; 2:r1=0; a=1; y=1;
147846:>0:r1=0; 2:r1=0; a=1; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ y=2 /\ 0:r1=1 /\ 2:r1=1) is NOT validated
Hash=b75737c880243d981d9643cd75a59bed
Cycle=SyncdWW Rfe LwSyncdRW Wse SyncdWW Rfe DpdW Wse
Relax safe016 No
Safe=Wse LwSyncdRW DpdW BCSyncdWW
Time safe016 2.14
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe017.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe017
"Rfe SyncdRW Wse SyncdWW Rfe DpdW Wse"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r5=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
li r3,1 | sync | li r4,1 | ;
stw r3,0(r4) | li r3,1 | stwx r4,r3,r5 | ;
| stw r3,0(r4) | | ;
exists (x=2 /\ z=2 /\ 0:r1=2 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: li r8,1
_litmus_P2_3_: stwx r8,r11,r2
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe017 Allowed
Histogram (20 states)
11 :>0:r1=2; 2:r1=1; x=2; z=1;
162 :>0:r1=1; 2:r1=1; x=1; z=2;
117 :>0:r1=2; 2:r1=1; x=1; z=2;
2691 :>0:r1=0; 2:r1=1; x=1; z=2;
2817 :>0:r1=0; 2:r1=1; x=2; z=1;
25563 :>0:r1=1; 2:r1=0; x=2; z=2;
3833 :>0:r1=1; 2:r1=1; x=1; z=1;
17136 :>0:r1=0; 2:r1=0; x=2; z=2;
5474 :>0:r1=1; 2:r1=0; x=2; z=1;
56195 :>0:r1=0; 2:r1=1; x=1; z=1;
12949 :>0:r1=2; 2:r1=0; x=2; z=2;
127083:>0:r1=2; 2:r1=1; x=1; z=1;
57090 :>0:r1=2; 2:r1=0; x=2; z=1;
30036 :>0:r1=0; 2:r1=0; x=1; z=2;
92787 :>0:r1=2; 2:r1=0; x=1; z=2;
75362 :>0:r1=1; 2:r1=0; x=1; z=1;
41324 :>0:r1=0; 2:r1=0; x=1; z=1;
152098:>0:r1=2; 2:r1=0; x=1; z=1;
88950 :>0:r1=1; 2:r1=0; x=1; z=2;
208322:>0:r1=0; 2:r1=0; x=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=2 /\ 2:r1=1) is NOT validated
Hash=8ebbf3189b74df08be1c2711540f99fe
Cycle=Rfe SyncdRW Wse SyncdWW Rfe DpdW Wse
Relax safe017 No
Safe=Wse DpdW ACSyncdRW BCSyncdWW
Time safe017 2.18
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe018.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe018
"LwSyncdWW Rfe SyncdRW Wse SyncdWW Rfe DpdW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r5=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
li r3,1 | sync | li r4,1 | lwsync ;
stw r3,0(r4) | li r3,1 | stwx r4,r3,r5 | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (a=2 /\ y=2 /\ 0:r1=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: li r8,1
_litmus_P2_3_: stwx r8,r11,r2
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe018 Allowed
Histogram (15 states)
1 :>0:r1=0; 2:r1=1; a=2; y=2;
15 :>0:r1=1; 2:r1=0; a=2; y=2;
42 :>0:r1=1; 2:r1=1; a=2; y=1;
5 :>0:r1=1; 2:r1=1; a=1; y=2;
4356 :>0:r1=0; 2:r1=1; a=2; y=1;
27457 :>0:r1=1; 2:r1=0; a=2; y=1;
12408 :>0:r1=1; 2:r1=0; a=1; y=2;
208902:>0:r1=1; 2:r1=0; a=1; y=1;
244359:>0:r1=0; 2:r1=0; a=2; y=1;
142878:>0:r1=0; 2:r1=0; a=1; y=2;
100611:>0:r1=0; 2:r1=0; a=1; y=1;
49660 :>0:r1=1; 2:r1=1; a=1; y=1;
137851:>0:r1=0; 2:r1=1; a=1; y=1;
3381 :>0:r1=0; 2:r1=1; a=1; y=2;
68074 :>0:r1=0; 2:r1=0; a=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ y=2 /\ 0:r1=1 /\ 2:r1=1) is NOT validated
Hash=15dae0142e0d6cf1f69ffbc88cea6bf8
Cycle=LwSyncdWW Rfe SyncdRW Wse SyncdWW Rfe DpdW Wse
Relax safe018 No
Safe=Wse LwSyncdWW DpdW ACSyncdRW BCSyncdWW
Time safe018 2.11
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe019.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe019
"SyncdWW Rfe DpdR Fre SyncdWW Rfe DpdW Wse"
{0:r2=x; 0:r5=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r5=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwzx r4,r3,r5 | sync | li r4,1 | sync ;
| li r3,1 | stwx r4,r3,r5 | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 0:r4=0 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r6,0(r9)
_litmus_P0_1_: xor r11,r6,r6
_litmus_P0_2_: lwzx r7,r11,r2
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: li r8,1
_litmus_P2_3_: stwx r8,r11,r2
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe019 Allowed
Histogram (15 states)
3 :>0:r1=1; 0:r4=1; 2:r1=1; a=2;
4 :>0:r1=1; 0:r4=0; 2:r1=0; a=2;
13 :>0:r1=1; 0:r4=0; 2:r1=1; a=1;
12 :>0:r1=0; 0:r4=0; 2:r1=1; a=2;
1967 :>0:r1=0; 0:r4=1; 2:r1=1; a=2;
7417 :>0:r1=1; 0:r4=1; 2:r1=0; a=2;
16549 :>0:r1=1; 0:r4=1; 2:r1=1; a=1;
7031 :>0:r1=1; 0:r4=0; 2:r1=0; a=1;
101308:>0:r1=0; 0:r4=0; 2:r1=0; a=2;
115604:>0:r1=1; 0:r4=1; 2:r1=0; a=1;
171710:>0:r1=0; 0:r4=1; 2:r1=0; a=1;
220314:>0:r1=0; 0:r4=1; 2:r1=0; a=2;
127800:>0:r1=0; 0:r4=1; 2:r1=1; a=1;
7820 :>0:r1=0; 0:r4=0; 2:r1=1; a=1;
222448:>0:r1=0; 0:r4=0; 2:r1=0; a=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 0:r4=0 /\ 2:r1=1) is NOT validated
Hash=27557bf4afdadffd1ce286b14e0b9ea1
Cycle=SyncdWW Rfe DpdR Fre SyncdWW Rfe DpdW Wse
Relax safe019 No
Safe=Fre Wse DpdW DpdR BCSyncdWW
Time safe019 2.21
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe020.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe020
"SyncdWW Rfe DpsR Fre SyncdWW Rfe DpdW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r5=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwzx r4,r3,r2 | sync | li r4,1 | sync ;
| li r3,1 | stwx r4,r3,r5 | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r4=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r2)
_litmus_P0_1_: xor r11,r7,r7
_litmus_P0_2_: lwzx r9,r11,r2
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: li r8,1
_litmus_P2_3_: stwx r8,r11,r2
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe020 Allowed
Histogram (34 states)
1 :>0:r1=0; 0:r4=2; 2:r1=0; x=2; z=2;
1 :>0:r1=0; 0:r4=1; 2:r1=1; x=2; z=1;
4 :>0:r1=2; 0:r4=1; 2:r1=1; x=1; z=1;
16 :>0:r1=1; 0:r4=1; 2:r1=1; x=1; z=2;
4 :>0:r1=0; 0:r4=1; 2:r1=0; x=1; z=2;
10 :>0:r1=0; 0:r4=2; 2:r1=0; x=2; z=1;
4 :>0:r1=0; 0:r4=2; 2:r1=1; x=2; z=1;
19 :>0:r1=0; 0:r4=1; 2:r1=1; x=1; z=1;
8 :>0:r1=2; 0:r4=1; 2:r1=0; x=1; z=1;
29 :>0:r1=0; 0:r4=1; 2:r1=0; x=2; z=1;
95 :>0:r1=1; 0:r4=1; 2:r1=0; x=2; z=2;
65 :>0:r1=2; 0:r4=2; 2:r1=0; x=2; z=2;
55 :>0:r1=0; 0:r4=1; 2:r1=0; x=1; z=1;
56 :>0:r1=0; 0:r4=0; 2:r1=1; x=2; z=1;
203 :>0:r1=0; 0:r4=2; 2:r1=0; x=1; z=1;
45 :>0:r1=1; 0:r4=1; 2:r1=1; x=2; z=1;
115 :>0:r1=0; 0:r4=0; 2:r1=1; x=1; z=2;
133 :>0:r1=0; 0:r4=2; 2:r1=1; x=1; z=1;
4549 :>0:r1=2; 0:r4=2; 2:r1=1; x=1; z=2;
106 :>0:r1=0; 0:r4=2; 2:r1=0; x=1; z=2;
1074 :>0:r1=2; 0:r4=2; 2:r1=1; x=2; z=1;
6998 :>0:r1=0; 0:r4=0; 2:r1=0; x=2; z=2;
12283 :>0:r1=1; 0:r4=1; 2:r1=1; x=1; z=1;
18408 :>0:r1=0; 0:r4=0; 2:r1=1; x=1; z=1;
71558 :>0:r1=1; 0:r4=1; 2:r1=0; x=2; z=1;
144975:>0:r1=2; 0:r4=2; 2:r1=0; x=1; z=2;
116189:>0:r1=2; 0:r4=2; 2:r1=0; x=1; z=1;
88317 :>0:r1=2; 0:r4=2; 2:r1=1; x=1; z=1;
52690 :>0:r1=0; 0:r4=0; 2:r1=0; x=2; z=1;
174373:>0:r1=0; 0:r4=0; 2:r1=0; x=1; z=1;
39037 :>0:r1=1; 0:r4=1; 2:r1=0; x=1; z=1;
37687 :>0:r1=2; 0:r4=2; 2:r1=0; x=2; z=1;
5170 :>0:r1=1; 0:r4=1; 2:r1=0; x=1; z=2;
225723:>0:r1=0; 0:r4=0; 2:r1=0; x=1; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r4=1 /\ 2:r1=1) is NOT validated
Hash=c1bf65fca64b17f3a78c42bbc9534db5
Cycle=SyncdWW Rfe DpsR Fre SyncdWW Rfe DpdW Wse
Relax safe020 No
Safe=Fre Wse DpsR DpdW BCSyncdWW
Time safe020 2.70
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe021.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe021
"SyncdWR Fre SyncdWW Rfe DpdW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r5=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
li r1,1 | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
sync | li r4,1 | sync ;
li r3,1 | stwx r4,r3,r5 | lwz r3,0(r4) ;
stw r3,0(r4) | | ;
exists (z=2 /\ 1:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: li r10,1
_litmus_P0_1_: stw r10,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r11,1
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: xor r11,r7,r7
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stwx r8,r11,r2
_litmus_P2_0_: li r8,2
_litmus_P2_1_: stw r8,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r10,0(r2)
Test safe021 Allowed
Histogram (7 states)
1280 :>1:r1=1; 2:r3=1; z=2;
1113 :>1:r1=1; 2:r3=0; z=1;
3177 :>1:r1=0; 2:r3=0; z=2;
265743:>1:r1=0; 2:r3=1; z=1;
338386:>1:r1=0; 2:r3=1; z=2;
122161:>1:r1=1; 2:r3=1; z=1;
268140:>1:r1=0; 2:r3=0; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 1:r1=1 /\ 2:r3=0) is NOT validated
Hash=f3987244b10801ba3857394a9988bab7
Cycle=SyncdWR Fre SyncdWW Rfe DpdW Wse
Relax safe021 No
Safe=Fre Wse SyncdWR DpdW BCSyncdWW
Time safe021 1.65
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe022.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe022
"SyncdWW Rfe SyncdRR Fre SyncdWW Rfe DpdW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r5=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r4) | sync | li r4,1 | sync ;
| li r3,1 | stwx r4,r3,r5 | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: li r8,1
_litmus_P2_3_: stwx r8,r11,r2
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe022 Allowed
Histogram (15 states)
1 :>0:r1=1; 0:r3=0; 2:r1=1; a=1;
11 :>0:r1=1; 0:r3=1; 2:r1=1; a=2;
16 :>0:r1=0; 0:r3=0; 2:r1=1; a=2;
6 :>0:r1=1; 0:r3=0; 2:r1=0; a=2;
1705 :>0:r1=0; 0:r3=1; 2:r1=1; a=2;
1872 :>0:r1=0; 0:r3=0; 2:r1=1; a=1;
3065 :>0:r1=1; 0:r3=0; 2:r1=0; a=1;
28585 :>0:r1=1; 0:r3=1; 2:r1=1; a=1;
12313 :>0:r1=1; 0:r3=1; 2:r1=0; a=2;
137383:>0:r1=0; 0:r3=1; 2:r1=1; a=1;
243064:>0:r1=0; 0:r3=1; 2:r1=0; a=2;
166573:>0:r1=0; 0:r3=1; 2:r1=0; a=1;
134179:>0:r1=1; 0:r3=1; 2:r1=0; a=1;
202867:>0:r1=0; 0:r3=0; 2:r1=0; a=1;
68360 :>0:r1=0; 0:r3=0; 2:r1=0; a=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1) is NOT validated
Hash=cab7ea6326ec7d9d19083a87bb57615d
Cycle=SyncdWW Rfe SyncdRR Fre SyncdWW Rfe DpdW Wse
Relax safe022 No
Safe=Fre Wse SyncdRR DpdW BCSyncdWW
Time safe022 2.22
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe023.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe023
"SyncdWW Rfe SyncsRR Fre SyncdWW Rfe DpdW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r5=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r2) | sync | li r4,1 | sync ;
| li r3,1 | stwx r4,r3,r5 | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: li r8,1
_litmus_P2_3_: stwx r8,r11,r2
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe023 Allowed
Histogram (41 states)
2 :>0:r1=1; 0:r3=1; 2:r1=1; x=2; z=1;
1 :>0:r1=2; 0:r3=1; 2:r1=1; x=1; z=2;
7 :>0:r1=1; 0:r3=1; 2:r1=1; x=1; z=2;
20 :>0:r1=0; 0:r3=0; 2:r1=1; x=2; z=1;
12 :>0:r1=0; 0:r3=2; 2:r1=1; x=1; z=2;
33 :>0:r1=2; 0:r3=2; 2:r1=1; x=2; z=1;
3 :>0:r1=0; 0:r3=1; 2:r1=1; x=2; z=1;
30 :>0:r1=0; 0:r3=2; 2:r1=1; x=2; z=1;
30 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; z=2;
13 :>0:r1=1; 0:r3=2; 2:r1=1; x=2; z=1;
28 :>0:r1=0; 0:r3=0; 2:r1=1; x=1; z=2;
124 :>0:r1=0; 0:r3=1; 2:r1=1; x=1; z=1;
109 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; z=2;
274 :>0:r1=2; 0:r3=2; 2:r1=0; x=2; z=2;
5330 :>0:r1=1; 0:r3=1; 2:r1=1; x=1; z=1;
974 :>0:r1=0; 0:r3=2; 2:r1=1; x=1; z=1;
2071 :>0:r1=2; 0:r3=2; 2:r1=1; x=1; z=2;
5159 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; z=2;
5609 :>0:r1=0; 0:r3=1; 2:r1=0; x=1; z=2;
9884 :>0:r1=0; 0:r3=0; 2:r1=1; x=1; z=1;
17392 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; z=1;
10396 :>0:r1=0; 0:r3=1; 2:r1=0; x=1; z=1;
634 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; z=2;
5341 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; z=2;
59192 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; z=1;
6580 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; z=1;
14466 :>0:r1=2; 0:r3=1; 2:r1=0; x=1; z=2;
6913 :>0:r1=0; 0:r3=2; 2:r1=0; x=1; z=1;
117330:>0:r1=2; 0:r3=2; 2:r1=1; x=1; z=1;
14217 :>0:r1=2; 0:r3=1; 2:r1=0; x=1; z=1;
27142 :>0:r1=2; 0:r3=1; 2:r1=1; x=1; z=1;
27313 :>0:r1=2; 0:r3=2; 2:r1=0; x=1; z=1;
26133 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; z=1;
128384:>0:r1=0; 0:r3=0; 2:r1=0; x=1; z=1;
56476 :>0:r1=0; 0:r3=2; 2:r1=0; x=1; z=2;
91843 :>0:r1=2; 0:r3=2; 2:r1=0; x=1; z=2;
232867:>0:r1=0; 0:r3=0; 2:r1=0; x=1; z=2;
19414 :>0:r1=1; 0:r3=1; 2:r1=0; x=1; z=1;
81756 :>0:r1=2; 0:r3=2; 2:r1=0; x=2; z=1;
7889 :>0:r1=1; 0:r3=1; 2:r1=0; x=1; z=2;
18609 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1) is NOT validated
Hash=25c9ad9ca2cb94be17c498b96346aa1c
Cycle=SyncdWW Rfe SyncsRR Fre SyncdWW Rfe DpdW Wse
Relax safe023 No
Safe=Fre Wse SyncsRR DpdW BCSyncdWW
Time safe023 2.92
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe024.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe024
"SyncdWW Rfe LwSyncdRR Fre SyncdWW Rfe DpdW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r5=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
lwsync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r4) | sync | li r4,1 | sync ;
| li r3,1 | stwx r4,r3,r5 | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: li r8,1
_litmus_P2_3_: stwx r8,r11,r2
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe024 Allowed
Histogram (15 states)
5 :>0:r1=1; 0:r3=0; 2:r1=1; a=1;
6 :>0:r1=1; 0:r3=1; 2:r1=1; a=2;
6 :>0:r1=1; 0:r3=0; 2:r1=0; a=2;
23 :>0:r1=0; 0:r3=0; 2:r1=1; a=2;
6536 :>0:r1=1; 0:r3=0; 2:r1=0; a=1;
14776 :>0:r1=1; 0:r3=1; 2:r1=1; a=1;
3060 :>0:r1=0; 0:r3=1; 2:r1=1; a=2;
5230 :>0:r1=0; 0:r3=0; 2:r1=1; a=1;
10935 :>0:r1=1; 0:r3=1; 2:r1=0; a=2;
124942:>0:r1=0; 0:r3=1; 2:r1=1; a=1;
130499:>0:r1=0; 0:r3=0; 2:r1=0; a=2;
157707:>0:r1=1; 0:r3=1; 2:r1=0; a=1;
261177:>0:r1=0; 0:r3=1; 2:r1=0; a=2;
101984:>0:r1=0; 0:r3=1; 2:r1=0; a=1;
183114:>0:r1=0; 0:r3=0; 2:r1=0; a=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1) is NOT validated
Hash=ff95e9861f69dfdc3162a73e7454bac9
Cycle=SyncdWW Rfe LwSyncdRR Fre SyncdWW Rfe DpdW Wse
Relax safe024 No
Safe=Fre Wse LwSyncdRR DpdW BCSyncdWW
Time safe024 2.24
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe025.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe025
"SyncdWW Rfe LwSyncsRR Fre SyncdWW Rfe DpdW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r5=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
lwsync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r2) | sync | li r4,1 | sync ;
| li r3,1 | stwx r4,r3,r5 | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: li r8,1
_litmus_P2_3_: stwx r8,r11,r2
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe025 Allowed
Histogram (35 states)
1 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; z=2;
4 :>0:r1=2; 0:r3=1; 2:r1=0; x=1; z=2;
24 :>0:r1=0; 0:r3=2; 2:r1=1; x=1; z=2;
47 :>0:r1=0; 0:r3=0; 2:r1=1; x=2; z=1;
52 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; z=1;
66 :>0:r1=0; 0:r3=0; 2:r1=1; x=1; z=2;
48 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; z=2;
25 :>0:r1=1; 0:r3=1; 2:r1=1; x=2; z=1;
41 :>0:r1=0; 0:r3=1; 2:r1=1; x=1; z=1;
4 :>0:r1=1; 0:r3=1; 2:r1=1; x=1; z=2;
18 :>0:r1=0; 0:r3=1; 2:r1=0; x=1; z=2;
609 :>0:r1=0; 0:r3=1; 2:r1=0; x=1; z=1;
36 :>0:r1=2; 0:r3=1; 2:r1=1; x=1; z=1;
25 :>0:r1=2; 0:r3=1; 2:r1=0; x=1; z=1;
692 :>0:r1=0; 0:r3=2; 2:r1=0; x=1; z=1;
279 :>0:r1=0; 0:r3=2; 2:r1=0; x=1; z=2;
127 :>0:r1=2; 0:r3=2; 2:r1=0; x=2; z=2;
797 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; z=1;
121 :>0:r1=2; 0:r3=2; 2:r1=1; x=2; z=1;
1845 :>0:r1=2; 0:r3=2; 2:r1=1; x=1; z=2;
232 :>0:r1=0; 0:r3=2; 2:r1=1; x=1; z=1;
4958 :>0:r1=1; 0:r3=1; 2:r1=1; x=1; z=1;
25338 :>0:r1=0; 0:r3=0; 2:r1=1; x=1; z=1;
92873 :>0:r1=2; 0:r3=2; 2:r1=0; x=1; z=2;
9395 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; z=2;
59653 :>0:r1=2; 0:r3=2; 2:r1=0; x=1; z=1;
64472 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; z=1;
152532:>0:r1=2; 0:r3=2; 2:r1=1; x=1; z=1;
53794 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; z=1;
251206:>0:r1=0; 0:r3=0; 2:r1=0; x=1; z=2;
179406:>0:r1=0; 0:r3=0; 2:r1=0; x=1; z=1;
20313 :>0:r1=1; 0:r3=1; 2:r1=0; x=1; z=1;
76057 :>0:r1=2; 0:r3=2; 2:r1=0; x=2; z=1;
4694 :>0:r1=1; 0:r3=1; 2:r1=0; x=1; z=2;
216 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1) is NOT validated
Hash=5811602a2cca18c5e37991a1700cc7d9
Cycle=SyncdWW Rfe LwSyncsRR Fre SyncdWW Rfe DpdW Wse
Relax safe025 No
Safe=Fre Wse LwSyncsRR DpdW BCSyncdWW
Time safe025 2.68
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe026.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe026
"LwSyncdWW Rfe SyncsRR Fre SyncdWW Rfe DpdW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r5=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r2) | sync | li r4,1 | lwsync ;
| li r3,1 | stwx r4,r3,r5 | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: li r8,1
_litmus_P2_3_: stwx r8,r11,r2
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe026 Allowed
Histogram (41 states)
7 :>0:r1=1; 0:r3=1; 2:r1=1; x=1; z=2;
80 :>0:r1=0; 0:r3=2; 2:r1=1; x=2; z=1;
53 :>0:r1=2; 0:r3=1; 2:r1=1; x=1; z=2;
70 :>0:r1=1; 0:r3=2; 2:r1=1; x=2; z=1;
106 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; z=2;
17 :>0:r1=0; 0:r3=2; 2:r1=1; x=1; z=2;
29 :>0:r1=0; 0:r3=0; 2:r1=1; x=2; z=1;
187 :>0:r1=0; 0:r3=1; 2:r1=1; x=1; z=1;
13 :>0:r1=0; 0:r3=0; 2:r1=1; x=1; z=2;
17 :>0:r1=1; 0:r3=1; 2:r1=1; x=2; z=1;
6 :>0:r1=0; 0:r3=1; 2:r1=1; x=2; z=1;
469 :>0:r1=2; 0:r3=2; 2:r1=1; x=2; z=1;
199 :>0:r1=2; 0:r3=2; 2:r1=0; x=2; z=2;
671 :>0:r1=2; 0:r3=2; 2:r1=1; x=1; z=2;
172 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; z=2;
3290 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; z=2;
1266 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; z=2;
9089 :>0:r1=2; 0:r3=1; 2:r1=0; x=1; z=2;
929 :>0:r1=0; 0:r3=2; 2:r1=1; x=1; z=1;
26968 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; z=1;
9121 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; z=1;
5860 :>0:r1=0; 0:r3=1; 2:r1=0; x=1; z=2;
21313 :>0:r1=0; 0:r3=0; 2:r1=1; x=1; z=1;
48681 :>0:r1=2; 0:r3=1; 2:r1=0; x=1; z=1;
24521 :>0:r1=2; 0:r3=1; 2:r1=1; x=1; z=1;
11863 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; z=1;
15386 :>0:r1=1; 0:r3=1; 2:r1=1; x=1; z=1;
52532 :>0:r1=2; 0:r3=2; 2:r1=0; x=1; z=2;
38929 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; z=1;
148675:>0:r1=0; 0:r3=0; 2:r1=0; x=1; z=1;
105990:>0:r1=2; 0:r3=2; 2:r1=1; x=1; z=1;
26625 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; z=2;
169947:>0:r1=0; 0:r3=0; 2:r1=0; x=1; z=2;
37781 :>0:r1=2; 0:r3=2; 2:r1=0; x=1; z=1;
52813 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; z=1;
37361 :>0:r1=0; 0:r3=2; 2:r1=0; x=1; z=2;
5564 :>0:r1=0; 0:r3=2; 2:r1=0; x=1; z=1;
15154 :>0:r1=1; 0:r3=1; 2:r1=0; x=1; z=1;
114001:>0:r1=2; 0:r3=2; 2:r1=0; x=2; z=1;
2826 :>0:r1=1; 0:r3=1; 2:r1=0; x=1; z=2;
11419 :>0:r1=0; 0:r3=1; 2:r1=0; x=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1) is NOT validated
Hash=be39741c172d8bf91d0619958a871e1e
Cycle=LwSyncdWW Rfe SyncsRR Fre SyncdWW Rfe DpdW Wse
Relax safe026 No
Safe=Fre Wse LwSyncdWW DpdW ACSyncsRR BCSyncdWW
Time safe026 2.75
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe027.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe027
"Rfe SyncdRR Fre SyncdWW Rfe DpdW Wse"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r5=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r4) | sync | li r4,1 | ;
| li r3,1 | stwx r4,r3,r5 | ;
| stw r3,0(r4) | | ;
exists (z=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: li r8,1
_litmus_P2_3_: stwx r8,r11,r2
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe027 Allowed
Histogram (20 states)
20 :>0:r1=2; 0:r3=1; 2:r1=1; z=2;
16 :>0:r1=1; 0:r3=1; 2:r1=1; z=2;
12 :>0:r1=2; 0:r3=0; 2:r1=1; z=1;
850 :>0:r1=0; 0:r3=1; 2:r1=1; z=2;
12715 :>0:r1=1; 0:r3=0; 2:r1=0; z=1;
15683 :>0:r1=2; 0:r3=0; 2:r1=0; z=2;
30910 :>0:r1=1; 0:r3=0; 2:r1=0; z=2;
1738 :>0:r1=0; 0:r3=0; 2:r1=1; z=1;
5279 :>0:r1=1; 0:r3=1; 2:r1=1; z=1;
38668 :>0:r1=0; 0:r3=1; 2:r1=1; z=1;
18522 :>0:r1=0; 0:r3=1; 2:r1=0; z=2;
49329 :>0:r1=2; 0:r3=0; 2:r1=0; z=1;
8793 :>0:r1=0; 0:r3=0; 2:r1=0; z=2;
141610:>0:r1=2; 0:r3=1; 2:r1=0; z=1;
96000 :>0:r1=1; 0:r3=1; 2:r1=0; z=2;
34250 :>0:r1=0; 0:r3=1; 2:r1=0; z=1;
127580:>0:r1=2; 0:r3=1; 2:r1=1; z=1;
112475:>0:r1=1; 0:r3=1; 2:r1=0; z=1;
78723 :>0:r1=2; 0:r3=1; 2:r1=0; z=2;
226827:>0:r1=0; 0:r3=0; 2:r1=0; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1) is NOT validated
Hash=281bad3e866a9cb3593d41024c7fa831
Cycle=Rfe SyncdRR Fre SyncdWW Rfe DpdW Wse
Relax safe027 No
Safe=Fre Wse DpdW ACSyncdRR BCSyncdWW
Time safe027 2.08
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe028.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe028
"LwSyncdWW Rfe SyncdRR Fre SyncdWW Rfe DpdW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r5=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r4) | sync | li r4,1 | lwsync ;
| li r3,1 | stwx r4,r3,r5 | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: li r8,1
_litmus_P2_3_: stwx r8,r11,r2
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe028 Allowed
Histogram (15 states)
14 :>0:r1=1; 0:r3=0; 2:r1=1; a=1;
37 :>0:r1=1; 0:r3=0; 2:r1=0; a=2;
8 :>0:r1=0; 0:r3=0; 2:r1=1; a=2;
25 :>0:r1=1; 0:r3=1; 2:r1=1; a=2;
4101 :>0:r1=0; 0:r3=1; 2:r1=1; a=2;
3551 :>0:r1=0; 0:r3=0; 2:r1=1; a=1;
16699 :>0:r1=1; 0:r3=1; 2:r1=0; a=2;
24961 :>0:r1=1; 0:r3=1; 2:r1=1; a=1;
18115 :>0:r1=1; 0:r3=0; 2:r1=0; a=1;
196445:>0:r1=1; 0:r3=1; 2:r1=0; a=1;
104463:>0:r1=0; 0:r3=0; 2:r1=0; a=2;
120300:>0:r1=0; 0:r3=1; 2:r1=1; a=1;
270305:>0:r1=0; 0:r3=1; 2:r1=0; a=2;
79859 :>0:r1=0; 0:r3=1; 2:r1=0; a=1;
161117:>0:r1=0; 0:r3=0; 2:r1=0; a=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1) is NOT validated
Hash=9352bc24ea7793346231b325236f5377
Cycle=LwSyncdWW Rfe SyncdRR Fre SyncdWW Rfe DpdW Wse
Relax safe028 No
Safe=Fre Wse LwSyncdWW DpdW ACSyncdRR BCSyncdWW
Time safe028 2.10
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe029.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe029
"SyncdWR Fre SyncsWW Rfe SyncdRW Rfe DpdW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r5=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
li r1,1 | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | sync | xor r3,r1,r1 | stw r1,0(r2) ;
sync | li r3,1 | li r4,1 | sync ;
li r3,2 | stw r3,0(r4) | stwx r4,r3,r5 | lwz r3,0(r4) ;
stw r3,0(r2) | | | ;
exists (x=2 /\ z=2 /\ 1:r1=2 /\ 2:r1=1 /\ 3:r3=0)
Generated assembler
_litmus_P0_0_: li r9,1
_litmus_P0_1_: stw r9,0(r2)
_litmus_P0_2_: sync
_litmus_P0_3_: li r11,2
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: li r8,1
_litmus_P2_3_: stwx r8,r11,r2
_litmus_P3_0_: li r10,2
_litmus_P3_1_: stw r10,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: lwz r8,0(r2)
Test safe029 Allowed
Histogram (32 states)
1 :>1:r1=1; 2:r1=1; 3:r3=1; x=2; z=1;
1 :>1:r1=2; 2:r1=1; 3:r3=0; x=2; z=1;
8 :>1:r1=2; 2:r1=1; 3:r3=1; x=2; z=1;
36 :>1:r1=1; 2:r1=1; 3:r3=0; x=2; z=1;
4 :>1:r1=0; 2:r1=1; 3:r3=0; x=2; z=2;
5 :>1:r1=2; 2:r1=0; 3:r3=0; x=2; z=2;
22 :>1:r1=2; 2:r1=1; 3:r3=2; x=2; z=2;
11 :>1:r1=1; 2:r1=0; 3:r3=1; x=2; z=2;
91 :>1:r1=0; 2:r1=1; 3:r3=1; x=2; z=2;
61 :>1:r1=1; 2:r1=0; 3:r3=0; x=2; z=2;
25 :>1:r1=1; 2:r1=1; 3:r3=2; x=2; z=2;
20 :>1:r1=1; 2:r1=0; 3:r3=1; x=2; z=1;
5418 :>1:r1=0; 2:r1=1; 3:r3=2; x=2; z=2;
2507 :>1:r1=2; 2:r1=0; 3:r3=1; x=2; z=2;
9301 :>1:r1=1; 2:r1=1; 3:r3=2; x=2; z=1;
3226 :>1:r1=2; 2:r1=0; 3:r3=0; x=2; z=1;
55342 :>1:r1=2; 2:r1=0; 3:r3=2; x=2; z=2;
17279 :>1:r1=2; 2:r1=0; 3:r3=1; x=2; z=1;
38455 :>1:r1=0; 2:r1=1; 3:r3=0; x=2; z=1;
48403 :>1:r1=0; 2:r1=0; 3:r3=1; x=2; z=2;
59234 :>1:r1=1; 2:r1=0; 3:r3=0; x=2; z=1;
92326 :>1:r1=0; 2:r1=0; 3:r3=1; x=2; z=1;
19884 :>1:r1=0; 2:r1=0; 3:r3=2; x=2; z=1;
140251:>1:r1=2; 2:r1=0; 3:r3=2; x=2; z=1;
62719 :>1:r1=0; 2:r1=1; 3:r3=1; x=2; z=1;
6040 :>1:r1=0; 2:r1=0; 3:r3=0; x=2; z=2;
46471 :>1:r1=1; 2:r1=0; 3:r3=2; x=2; z=1;
56675 :>1:r1=0; 2:r1=1; 3:r3=2; x=2; z=1;
99401 :>1:r1=0; 2:r1=0; 3:r3=2; x=2; z=2;
96112 :>1:r1=0; 2:r1=0; 3:r3=0; x=2; z=1;
121958:>1:r1=1; 2:r1=0; 3:r3=2; x=2; z=2;
18713 :>1:r1=2; 2:r1=1; 3:r3=2; x=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 1:r1=2 /\ 2:r1=1 /\ 3:r3=0) is NOT validated
Hash=ed8991123e5cb10bf55bc1310a236378
Cycle=SyncdWR Fre SyncsWW Rfe SyncdRW Rfe DpdW Wse
Relax safe029 No
Safe=Fre Wse SyncdWR DpdW BCSyncsWW BCSyncdRW
Time safe029 2.50
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe030.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe030
"SyncdWW Rfe SyncsRW Rfe SyncdRW Rfe DpdW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r5=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | sync | xor r3,r1,r1 | stw r1,0(r2) ;
li r3,2 | li r3,1 | li r4,1 | sync ;
stw r3,0(r2) | stw r3,0(r4) | stwx r4,r3,r5 | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: li r8,1
_litmus_P2_3_: stwx r8,r11,r2
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe030 Allowed
Histogram (30 states)
2 :>0:r1=0; 1:r1=2; 2:r1=1; x=2; z=1;
4 :>0:r1=1; 1:r1=0; 2:r1=1; x=2; z=2;
24 :>0:r1=0; 1:r1=1; 2:r1=1; x=2; z=1;
84 :>0:r1=1; 1:r1=1; 2:r1=1; x=2; z=1;
32 :>0:r1=1; 1:r1=2; 2:r1=0; x=2; z=2;
7 :>0:r1=0; 1:r1=1; 2:r1=1; x=1; z=1;
74 :>0:r1=0; 1:r1=0; 2:r1=1; x=2; z=2;
149 :>0:r1=0; 1:r1=2; 2:r1=0; x=2; z=2;
199 :>0:r1=0; 1:r1=2; 2:r1=1; x=1; z=2;
31 :>0:r1=1; 1:r1=1; 2:r1=0; x=2; z=2;
988 :>0:r1=0; 1:r1=1; 2:r1=0; x=2; z=2;
1085 :>0:r1=1; 1:r1=0; 2:r1=0; x=2; z=2;
6536 :>0:r1=1; 1:r1=0; 2:r1=1; x=2; z=1;
2742 :>0:r1=1; 1:r1=2; 2:r1=0; x=2; z=1;
9070 :>0:r1=0; 1:r1=0; 2:r1=1; x=1; z=2;
46521 :>0:r1=0; 1:r1=0; 2:r1=1; x=2; z=1;
36717 :>0:r1=0; 1:r1=2; 2:r1=1; x=1; z=1;
45785 :>0:r1=0; 1:r1=1; 2:r1=0; x=2; z=1;
7970 :>0:r1=0; 1:r1=1; 2:r1=0; x=1; z=1;
41106 :>0:r1=0; 1:r1=0; 2:r1=0; x=2; z=1;
27490 :>0:r1=0; 1:r1=0; 2:r1=0; x=2; z=2;
58444 :>0:r1=1; 1:r1=0; 2:r1=0; x=2; z=1;
157225:>0:r1=0; 1:r1=0; 2:r1=0; x=1; z=2;
73980 :>0:r1=1; 1:r1=1; 2:r1=0; x=2; z=1;
152021:>0:r1=0; 1:r1=2; 2:r1=0; x=1; z=2;
134494:>0:r1=0; 1:r1=2; 2:r1=0; x=1; z=1;
129924:>0:r1=0; 1:r1=0; 2:r1=1; x=1; z=1;
26117 :>0:r1=0; 1:r1=2; 2:r1=0; x=2; z=1;
2288 :>0:r1=0; 1:r1=1; 2:r1=0; x=1; z=2;
38891 :>0:r1=0; 1:r1=0; 2:r1=0; x=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1) is NOT validated
Hash=dc0a3623b6202baf674b32e639a3edf8
Cycle=SyncdWW Rfe SyncsRW Rfe SyncdRW Rfe DpdW Wse
Relax safe030 No
Safe=Wse DpdW BCSyncsRW BCSyncdWW BCSyncdRW
Time safe030 2.56
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe031.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe031
"SyncdWW Rfe SyncdRW Rfe DpdW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r5=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | xor r3,r1,r1 | stw r1,0(r2) ;
li r3,1 | li r4,1 | sync ;
stw r3,0(r4) | stwx r4,r3,r5 | li r3,1 ;
| | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 1:r1=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stw r8,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: xor r11,r7,r7
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stwx r8,r11,r2
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe031 Allowed
Histogram (7 states)
487 :>0:r1=1; 1:r1=1; z=1;
3909 :>0:r1=0; 1:r1=1; z=2;
981 :>0:r1=1; 1:r1=0; z=2;
327085:>0:r1=0; 1:r1=0; z=1;
339608:>0:r1=0; 1:r1=0; z=2;
189880:>0:r1=0; 1:r1=1; z=1;
138050:>0:r1=1; 1:r1=0; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 1:r1=1) is NOT validated
Hash=bcc22010cd10d95121e6b6339e1bd4f5
Cycle=SyncdWW Rfe SyncdRW Rfe DpdW Wse
Relax safe031 No
Safe=Wse DpdW BCSyncdWW BCSyncdRW
Time safe031 1.59
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe032.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe032
"SyncdWW Wse SyncdWW Rfe SyncdRW Rfe DpdW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r5=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
li r1,2 | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | sync | xor r3,r1,r1 | stw r1,0(r2) ;
sync | li r3,1 | li r4,1 | sync ;
li r3,1 | stw r3,0(r4) | stwx r4,r3,r5 | li r3,1 ;
stw r3,0(r4) | | | stw r3,0(r4) ;
exists (a=2 /\ x=2 /\ 1:r1=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: li r11,2
_litmus_P0_1_: stw r11,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r10,1
_litmus_P0_4_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: li r8,1
_litmus_P2_3_: stwx r8,r11,r2
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe032 Allowed
Histogram (15 states)
2 :>1:r1=1; 2:r1=1; a=2; x=1;
7 :>1:r1=1; 2:r1=0; a=2; x=2;
52 :>1:r1=1; 2:r1=1; a=1; x=2;
116 :>1:r1=0; 2:r1=1; a=2; x=2;
1530 :>1:r1=1; 2:r1=0; a=1; x=2;
16139 :>1:r1=0; 2:r1=1; a=1; x=2;
13161 :>1:r1=0; 2:r1=1; a=2; x=1;
107100:>1:r1=1; 2:r1=0; a=2; x=1;
85635 :>1:r1=1; 2:r1=0; a=1; x=1;
128440:>1:r1=0; 2:r1=0; a=1; x=1;
180182:>1:r1=0; 2:r1=0; a=1; x=2;
307816:>1:r1=0; 2:r1=0; a=2; x=1;
139179:>1:r1=0; 2:r1=1; a=1; x=1;
1669 :>1:r1=1; 2:r1=1; a=1; x=1;
18972 :>1:r1=0; 2:r1=0; a=2; x=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ x=2 /\ 1:r1=1 /\ 2:r1=1) is NOT validated
Hash=a774cc55157f4afcd9e5f68308d271b1
Cycle=SyncdWW Wse SyncdWW Rfe SyncdRW Rfe DpdW Wse
Relax safe032 No
Safe=Wse SyncdWW DpdW BCSyncdWW BCSyncdRW
Time safe032 2.18
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe033.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe033
"LwSyncdWW Wse SyncdWW Rfe SyncdRW Rfe DpdW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r5=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
li r1,2 | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | sync | xor r3,r1,r1 | stw r1,0(r2) ;
sync | li r3,1 | li r4,1 | lwsync ;
li r3,1 | stw r3,0(r4) | stwx r4,r3,r5 | li r3,1 ;
stw r3,0(r4) | | | stw r3,0(r4) ;
exists (a=2 /\ x=2 /\ 1:r1=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: li r11,2
_litmus_P0_1_: stw r11,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r10,1
_litmus_P0_4_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: li r8,1
_litmus_P2_3_: stwx r8,r11,r2
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe033 Allowed
Histogram (15 states)
1 :>1:r1=1; 2:r1=1; a=2; x=1;
231 :>1:r1=0; 2:r1=1; a=2; x=2;
236 :>1:r1=1; 2:r1=1; a=1; x=2;
24 :>1:r1=1; 2:r1=0; a=2; x=2;
4908 :>1:r1=1; 2:r1=0; a=1; x=2;
82250 :>1:r1=1; 2:r1=0; a=2; x=1;
12591 :>1:r1=0; 2:r1=1; a=2; x=1;
92372 :>1:r1=1; 2:r1=0; a=1; x=1;
38552 :>1:r1=0; 2:r1=1; a=1; x=2;
224132:>1:r1=0; 2:r1=0; a=1; x=2;
95044 :>1:r1=0; 2:r1=0; a=1; x=1;
269038:>1:r1=0; 2:r1=0; a=2; x=1;
127164:>1:r1=0; 2:r1=1; a=1; x=1;
2661 :>1:r1=1; 2:r1=1; a=1; x=1;
50796 :>1:r1=0; 2:r1=0; a=2; x=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ x=2 /\ 1:r1=1 /\ 2:r1=1) is NOT validated
Hash=52559a3d9599799e0f7665cf4dce5293
Cycle=LwSyncdWW Wse SyncdWW Rfe SyncdRW Rfe DpdW Wse
Relax safe033 No
Safe=Wse LwSyncdWW DpdW BCSyncdWW BCSyncdRW
Time safe033 2.14
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe034.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe034
"SyncdWR Fre SyncdWW Rfe SyncdRW Rfe DpdW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r5=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
li r1,1 | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | sync | xor r3,r1,r1 | stw r1,0(r2) ;
sync | li r3,1 | li r4,1 | sync ;
li r3,1 | stw r3,0(r4) | stwx r4,r3,r5 | lwz r3,0(r4) ;
stw r3,0(r4) | | | ;
exists (a=2 /\ 1:r1=1 /\ 2:r1=1 /\ 3:r3=0)
Generated assembler
_litmus_P0_0_: li r11,1
_litmus_P0_1_: stw r11,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r10,1
_litmus_P0_4_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: li r8,1
_litmus_P2_3_: stwx r8,r11,r2
_litmus_P3_0_: li r10,2
_litmus_P3_1_: stw r10,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: lwz r8,0(r2)
Test safe034 Allowed
Histogram (15 states)
11 :>1:r1=1; 2:r1=0; 3:r3=0; a=2;
53 :>1:r1=0; 2:r1=1; 3:r3=0; a=2;
37 :>1:r1=1; 2:r1=1; 3:r3=0; a=1;
1448 :>1:r1=0; 2:r1=1; 3:r3=1; a=2;
571 :>1:r1=1; 2:r1=1; 3:r3=1; a=1;
1196 :>1:r1=1; 2:r1=0; 3:r3=0; a=1;
41113 :>1:r1=1; 2:r1=0; 3:r3=1; a=2;
73767 :>1:r1=0; 2:r1=1; 3:r3=0; a=1;
153364:>1:r1=0; 2:r1=1; 3:r3=1; a=1;
196287:>1:r1=0; 2:r1=0; 3:r3=0; a=1;
86844 :>1:r1=1; 2:r1=0; 3:r3=1; a=1;
265677:>1:r1=0; 2:r1=0; 3:r3=1; a=2;
156601:>1:r1=0; 2:r1=0; 3:r3=1; a=1;
104 :>1:r1=1; 2:r1=1; 3:r3=1; a=2;
22927 :>1:r1=0; 2:r1=0; 3:r3=0; a=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 1:r1=1 /\ 2:r1=1 /\ 3:r3=0) is NOT validated
Hash=f15eb812e943554d81d0caa9b503de94
Cycle=SyncdWR Fre SyncdWW Rfe SyncdRW Rfe DpdW Wse
Relax safe034 No
Safe=Fre Wse SyncdWR DpdW BCSyncdWW BCSyncdRW
Time safe034 2.10
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe035.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe035
"SyncdWW Rfe SyncdRW Rfe SyncdRW Rfe DpdW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r5=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | sync | xor r3,r1,r1 | stw r1,0(r2) ;
li r3,1 | li r3,1 | li r4,1 | sync ;
stw r3,0(r4) | stw r3,0(r4) | stwx r4,r3,r5 | li r3,1 ;
| | | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: li r8,1
_litmus_P2_3_: stwx r8,r11,r2
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe035 Allowed
Histogram (15 states)
2 :>0:r1=1; 1:r1=1; 2:r1=0; a=2;
9 :>0:r1=0; 1:r1=1; 2:r1=1; a=2;
12 :>0:r1=1; 1:r1=0; 2:r1=1; a=2;
10 :>0:r1=1; 1:r1=1; 2:r1=1; a=1;
5696 :>0:r1=1; 1:r1=0; 2:r1=1; a=1;
1059 :>0:r1=0; 1:r1=1; 2:r1=1; a=1;
10433 :>0:r1=1; 1:r1=0; 2:r1=0; a=2;
12759 :>0:r1=0; 1:r1=0; 2:r1=1; a=2;
1030 :>0:r1=1; 1:r1=1; 2:r1=0; a=1;
114951:>0:r1=0; 1:r1=1; 2:r1=0; a=2;
145346:>0:r1=0; 1:r1=0; 2:r1=1; a=1;
167251:>0:r1=1; 1:r1=0; 2:r1=0; a=1;
319999:>0:r1=0; 1:r1=0; 2:r1=0; a=2;
80782 :>0:r1=0; 1:r1=1; 2:r1=0; a=1;
140661:>0:r1=0; 1:r1=0; 2:r1=0; a=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=1) is NOT validated
Hash=58234c8c6aaff40363a001e7c0a08513
Cycle=SyncdWW Rfe SyncdRW Rfe SyncdRW Rfe DpdW Wse
Relax safe035 No
Safe=Wse DpdW BCSyncdWW BCSyncdRW
Time safe035 2.25
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe036.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe036
"SyncdWW Wse SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=x;}
P0 | P1 ;
li r1,2 | li r1,2 ;
stw r1,0(r2) | stw r1,0(r2) ;
sync | sync ;
li r3,1 | li r3,1 ;
stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ y=2)
Generated assembler
_litmus_P0_0_: li r11,2
_litmus_P0_1_: stw r11,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r10,1
_litmus_P0_4_: stw r10,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
Test safe036 Allowed
Histogram (3 states)
158730:>x=1; y=2;
162774:>x=2; y=1;
1678496:>x=1; y=1;
No
Witnesses
Positive: 0, Negative: 2000000
Condition exists (x=2 /\ y=2) is NOT validated
Hash=b13e0c20b3a95ec28cc7a23efa1563b6
Cycle=SyncdWW Wse SyncdWW Wse
Relax safe036 No
Safe=Wse SyncdWW
Time safe036 1.35
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe037.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe037
"SyncdWW Wse SyncdWW Wse SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
li r1,2 | li r1,2 | li r1,2 ;
stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
sync | sync | sync ;
li r3,1 | li r3,1 | li r3,1 ;
stw r3,0(r4) | stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ z=2)
Generated assembler
_litmus_P0_0_: li r10,2
_litmus_P0_1_: stw r10,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r11,1
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: li r10,2
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe037 Allowed
Histogram (7 states)
87 :>x=1; y=2; z=2;
328 :>x=2; y=2; z=1;
271 :>x=2; y=1; z=2;
260193:>x=1; y=2; z=1;
194853:>x=1; y=1; z=2;
328057:>x=1; y=1; z=1;
216211:>x=2; y=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ z=2) is NOT validated
Hash=29e092e26d25015c351a682f181e1b0f
Cycle=SyncdWW Wse SyncdWW Wse SyncdWW Wse
Relax safe037 No
Safe=Wse SyncdWW
Time safe037 1.81
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe038.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe038
"LwSyncdWW Wse SyncdWW Wse SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
li r1,2 | li r1,2 | li r1,2 ;
stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
sync | sync | lwsync ;
li r3,1 | li r3,1 | li r3,1 ;
stw r3,0(r4) | stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ z=2)
Generated assembler
_litmus_P0_0_: li r10,2
_litmus_P0_1_: stw r10,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r11,1
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: li r10,2
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe038 Allowed
Histogram (7 states)
194 :>x=1; y=2; z=2;
678 :>x=2; y=1; z=2;
461 :>x=2; y=2; z=1;
281406:>x=2; y=1; z=1;
248042:>x=1; y=1; z=2;
277433:>x=1; y=1; z=1;
191786:>x=1; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ z=2) is NOT validated
Hash=9fdaf07975754951c834724222b34025
Cycle=LwSyncdWW Wse SyncdWW Wse SyncdWW Wse
Relax safe038 No
Safe=Wse SyncdWW LwSyncdWW
Time safe038 1.78
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe039.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe039
"Rfe SyncdRW Wse SyncdWW Wse SyncdWW Wse"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | li r1,2 | li r1,2 ;
sync | stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | sync | sync | ;
stw r3,0(r4) | li r3,1 | li r3,1 | ;
| stw r3,0(r4) | stw r3,0(r4) | ;
exists (x=2 /\ y=2 /\ z=2 /\ 0:r1=2)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe039 Allowed
Histogram (21 states)
1 :>0:r1=0; x=2; y=2; z=2;
6 :>0:r1=2; x=1; y=2; z=2;
5 :>0:r1=2; x=2; y=2; z=1;
6 :>0:r1=1; x=1; y=2; z=2;
455 :>0:r1=2; x=2; y=1; z=2;
491 :>0:r1=0; x=1; y=2; z=2;
1018 :>0:r1=1; x=2; y=1; z=2;
8758 :>0:r1=0; x=2; y=1; z=2;
2618 :>0:r1=0; x=2; y=2; z=1;
34248 :>0:r1=2; x=1; y=1; z=2;
64658 :>0:r1=0; x=1; y=2; z=1;
83645 :>0:r1=0; x=1; y=1; z=2;
88583 :>0:r1=1; x=1; y=1; z=1;
197978:>0:r1=0; x=2; y=1; z=1;
151285:>0:r1=2; x=1; y=2; z=1;
219449:>0:r1=2; x=1; y=1; z=1;
26731 :>0:r1=1; x=1; y=1; z=2;
71179 :>0:r1=0; x=1; y=1; z=1;
1522 :>0:r1=1; x=1; y=2; z=1;
3140 :>0:r1=1; x=2; y=1; z=1;
44224 :>0:r1=2; x=2; y=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ z=2 /\ 0:r1=2) is NOT validated
Hash=2df7fd2345526e3c9189675e0e988eba
Cycle=Rfe SyncdRW Wse SyncdWW Wse SyncdWW Wse
Relax safe039 No
Safe=Wse SyncdWW ACSyncdRW
Time safe039 2.31
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe040.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe040
"SyncdWR Fre SyncdWW Wse SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
li r1,1 | li r1,2 | li r1,2 ;
stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
sync | sync | sync ;
li r3,1 | li r3,1 | lwz r3,0(r4) ;
stw r3,0(r4) | stw r3,0(r4) | ;
exists (y=2 /\ z=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: li r10,1
_litmus_P0_1_: stw r10,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r11,1
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: li r10,2
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r8,2
_litmus_P2_1_: stw r8,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r10,0(r2)
Test safe040 Allowed
Histogram (7 states)
351 :>2:r3=0; y=2; z=1;
427 :>2:r3=1; y=2; z=2;
791 :>2:r3=0; y=1; z=2;
264886:>2:r3=0; y=1; z=1;
197353:>2:r3=1; y=2; z=1;
194723:>2:r3=1; y=1; z=2;
341469:>2:r3=1; y=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 2:r3=0) is NOT validated
Hash=60904a5b2739e8950875099ac77c27af
Cycle=SyncdWR Fre SyncdWW Wse SyncdWW Wse
Relax safe040 No
Safe=Fre Wse SyncdWW SyncdWR
Time safe040 1.72
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe041.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe041
"Rfe SyncdRR Fre SyncdWW Wse SyncdWW Wse"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | li r1,2 | li r1,2 ;
sync | stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r4) | sync | sync | ;
| li r3,1 | li r3,1 | ;
| stw r3,0(r4) | stw r3,0(r4) | ;
exists (y=2 /\ z=2 /\ 0:r1=2 /\ 0:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe041 Allowed
Histogram (20 states)
6 :>0:r1=2; 0:r3=1; y=2; z=2;
5 :>0:r1=1; 0:r3=1; y=2; z=2;
20 :>0:r1=2; 0:r3=0; y=2; z=1;
1526 :>0:r1=2; 0:r3=0; y=1; z=2;
2141 :>0:r1=0; 0:r3=1; y=2; z=2;
2399 :>0:r1=1; 0:r3=0; y=1; z=2;
3627 :>0:r1=0; 0:r3=0; y=2; z=1;
1020 :>0:r1=1; 0:r3=1; y=2; z=1;
39670 :>0:r1=0; 0:r3=0; y=1; z=2;
19225 :>0:r1=2; 0:r3=1; y=1; z=2;
13205 :>0:r1=1; 0:r3=1; y=1; z=2;
92816 :>0:r1=0; 0:r3=1; y=1; z=1;
58913 :>0:r1=0; 0:r3=1; y=1; z=2;
50136 :>0:r1=0; 0:r3=1; y=2; z=1;
81991 :>0:r1=2; 0:r3=1; y=2; z=1;
15637 :>0:r1=1; 0:r3=0; y=1; z=1;
154655:>0:r1=2; 0:r3=1; y=1; z=1;
242599:>0:r1=0; 0:r3=0; y=1; z=1;
148033:>0:r1=1; 0:r3=1; y=1; z=1;
72376 :>0:r1=2; 0:r3=0; y=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=2 /\ 0:r3=0) is NOT validated
Hash=fb61b90d1ac062daf42b0e18268929ef
Cycle=Rfe SyncdRR Fre SyncdWW Wse SyncdWW Wse
Relax safe041 No
Safe=Fre Wse SyncdWW ACSyncdRR
Time safe041 2.18
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe042.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe042
"SyncdWW Rfe SyncsRW Rfe SyncdRW Wse SyncdWW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,2 | li r3,1 | sync | sync ;
stw r3,0(r2) | stw r3,0(r4) | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe042 Allowed
Histogram (30 states)
1 :>0:r1=1; 1:r1=0; x=2; y=2; z=2;
2 :>0:r1=0; 1:r1=0; x=2; y=2; z=2;
13 :>0:r1=0; 1:r1=2; x=2; y=2; z=1;
100 :>0:r1=0; 1:r1=1; x=1; y=2; z=1;
129 :>0:r1=0; 1:r1=1; x=2; y=1; z=2;
176 :>0:r1=0; 1:r1=1; x=1; y=1; z=2;
224 :>0:r1=0; 1:r1=2; x=1; y=2; z=2;
169 :>0:r1=1; 1:r1=2; x=2; y=1; z=2;
83 :>0:r1=1; 1:r1=1; x=2; y=1; z=2;
1058 :>0:r1=1; 1:r1=1; x=2; y=2; z=1;
58 :>0:r1=0; 1:r1=2; x=2; y=1; z=2;
261 :>0:r1=0; 1:r1=1; x=2; y=2; z=1;
1985 :>0:r1=1; 1:r1=0; x=2; y=1; z=2;
2746 :>0:r1=0; 1:r1=0; x=1; y=2; z=2;
3867 :>0:r1=1; 1:r1=2; x=2; y=1; z=1;
18176 :>0:r1=1; 1:r1=0; x=2; y=2; z=1;
38414 :>0:r1=0; 1:r1=2; x=2; y=1; z=1;
43006 :>0:r1=0; 1:r1=2; x=1; y=1; z=2;
57341 :>0:r1=0; 1:r1=2; x=1; y=2; z=1;
107024:>0:r1=0; 1:r1=0; x=1; y=1; z=2;
125045:>0:r1=0; 1:r1=0; x=1; y=2; z=1;
115837:>0:r1=0; 1:r1=0; x=2; y=2; z=1;
28278 :>0:r1=0; 1:r1=1; x=1; y=1; z=1;
19108 :>0:r1=0; 1:r1=0; x=2; y=1; z=2;
60121 :>0:r1=0; 1:r1=1; x=2; y=1; z=1;
94861 :>0:r1=0; 1:r1=0; x=2; y=1; z=1;
153492:>0:r1=0; 1:r1=2; x=1; y=1; z=1;
43217 :>0:r1=1; 1:r1=0; x=2; y=1; z=1;
53866 :>0:r1=1; 1:r1=1; x=2; y=1; z=1;
31342 :>0:r1=0; 1:r1=0; x=1; y=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2) is NOT validated
Hash=1b324c1d0d6c2e9fd8506b81bd8884f5
Cycle=SyncdWW Rfe SyncsRW Rfe SyncdRW Wse SyncdWW Wse
Relax safe042 No
Safe=Wse SyncdWW SyncdRW BCSyncsRW BCSyncdWW
Time safe042 2.62
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe043.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe043
"SyncdWW Rfe SyncdRW Wse SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,2 | li r1,2 ;
sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | sync | sync ;
stw r3,0(r4) | li r3,1 | li r3,1 ;
| stw r3,0(r4) | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stw r8,0(r2)
_litmus_P1_0_: li r10,2
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe043 Allowed
Histogram (7 states)
377 :>0:r1=1; y=2; z=1;
112 :>0:r1=0; y=2; z=2;
244 :>0:r1=1; y=1; z=2;
213762:>0:r1=0; y=1; z=2;
137275:>0:r1=1; y=1; z=1;
361670:>0:r1=0; y=1; z=1;
286560:>0:r1=0; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1) is NOT validated
Hash=a1c7a876487f80e045aabb8ee96a5918
Cycle=SyncdWW Rfe SyncdRW Wse SyncdWW Wse
Relax safe043 No
Safe=Wse SyncdWW SyncdRW BCSyncdWW
Time safe043 1.71
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe044.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe044
"SyncdWW Rfe SyncdRW Rfe SyncdRW Wse SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | li r3,1 | sync | sync ;
stw r3,0(r4) | stw r3,0(r4) | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (a=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe044 Allowed
Histogram (13 states)
1 :>0:r1=1; 1:r1=0; a=2; z=2;
3 :>0:r1=0; 1:r1=1; a=2; z=2;
4620 :>0:r1=0; 1:r1=0; a=2; z=2;
3445 :>0:r1=0; 1:r1=1; a=1; z=2;
1472 :>0:r1=1; 1:r1=1; a=1; z=1;
2095 :>0:r1=1; 1:r1=0; a=2; z=1;
23515 :>0:r1=0; 1:r1=1; a=2; z=1;
36309 :>0:r1=1; 1:r1=0; a=1; z=2;
223892:>0:r1=0; 1:r1=0; a=2; z=1;
157005:>0:r1=1; 1:r1=0; a=1; z=1;
213678:>0:r1=0; 1:r1=0; a=1; z=2;
128242:>0:r1=0; 1:r1=1; a=1; z=1;
205723:>0:r1=0; 1:r1=0; a=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1) is NOT validated
Hash=711106b3985b740696bb8402cdd0f6a9
Cycle=SyncdWW Rfe SyncdRW Rfe SyncdRW Wse SyncdWW Wse
Relax safe044 No
Safe=Wse SyncdWW SyncdRW BCSyncdWW BCSyncdRW
Time safe044 2.18
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe045.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe045
"LwSyncdWW Wse SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=x;}
P0 | P1 ;
li r1,2 | li r1,2 ;
stw r1,0(r2) | stw r1,0(r2) ;
sync | lwsync ;
li r3,1 | li r3,1 ;
stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ y=2)
Generated assembler
_litmus_P0_0_: li r11,2
_litmus_P0_1_: stw r11,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r10,1
_litmus_P0_4_: stw r10,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
Test safe045 Allowed
Histogram (3 states)
101409:>x=1; y=2;
777812:>x=2; y=1;
1120779:>x=1; y=1;
No
Witnesses
Positive: 0, Negative: 2000000
Condition exists (x=2 /\ y=2) is NOT validated
Hash=68b87fd4beebe403e166c8646f0170ab
Cycle=LwSyncdWW Wse SyncdWW Wse
Relax safe045 No
Safe=Wse SyncdWW LwSyncdWW
Time safe045 1.35
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe046.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe046
"LwSyncdWW Wse LwSyncdWW Wse SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
li r1,2 | li r1,2 | li r1,2 ;
stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
lwsync | sync | lwsync ;
li r3,1 | li r3,1 | li r3,1 ;
stw r3,0(r4) | stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ z=2)
Generated assembler
_litmus_P0_0_: li r10,2
_litmus_P0_1_: stw r10,0(r9)
_litmus_P0_2_: lwsync
_litmus_P0_3_: li r11,1
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: li r10,2
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe046 Allowed
Histogram (7 states)
1656 :>x=2; y=1; z=2;
2878 :>x=2; y=2; z=1;
420 :>x=1; y=2; z=2;
323771:>x=2; y=1; z=1;
174925:>x=1; y=1; z=2;
277996:>x=1; y=2; z=1;
218354:>x=1; y=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ z=2) is NOT validated
Hash=ef787314c1fb4635934ec5bee20106c0
Cycle=LwSyncdWW Wse LwSyncdWW Wse SyncdWW Wse
Relax safe046 No
Safe=Wse SyncdWW LwSyncdWW
Time safe046 1.78
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe047.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe047
"Rfe SyncdRW Wse LwSyncdWW Wse SyncdWW Wse"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | li r1,2 | li r1,2 ;
sync | stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwsync | sync | ;
stw r3,0(r4) | li r3,1 | li r3,1 | ;
| stw r3,0(r4) | stw r3,0(r4) | ;
exists (x=2 /\ y=2 /\ z=2 /\ 0:r1=2)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe047 Allowed
Histogram (21 states)
1 :>0:r1=0; x=2; y=2; z=2;
20 :>0:r1=2; x=1; y=2; z=2;
13 :>0:r1=2; x=2; y=2; z=1;
21 :>0:r1=1; x=1; y=2; z=2;
2159 :>0:r1=1; x=2; y=1; z=2;
547 :>0:r1=2; x=2; y=1; z=2;
17877 :>0:r1=0; x=2; y=1; z=2;
1454 :>0:r1=1; x=2; y=1; z=1;
7976 :>0:r1=0; x=2; y=2; z=1;
2052 :>0:r1=0; x=1; y=2; z=2;
26609 :>0:r1=2; x=2; y=1; z=1;
67209 :>0:r1=0; x=1; y=1; z=2;
162572:>0:r1=2; x=1; y=2; z=1;
53121 :>0:r1=2; x=1; y=1; z=2;
126077:>0:r1=0; x=1; y=2; z=1;
202512:>0:r1=2; x=1; y=1; z=1;
47520 :>0:r1=1; x=1; y=1; z=2;
61140 :>0:r1=0; x=1; y=1; z=1;
5351 :>0:r1=1; x=1; y=2; z=1;
56465 :>0:r1=1; x=1; y=1; z=1;
159304:>0:r1=0; x=2; y=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ z=2 /\ 0:r1=2) is NOT validated
Hash=4986a0787a76241f4b9cd489f1050ddf
Cycle=Rfe SyncdRW Wse LwSyncdWW Wse SyncdWW Wse
Relax safe047 No
Safe=Wse SyncdWW LwSyncdWW ACSyncdRW
Time safe047 2.35
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe048.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe048
"SyncdWR Fre LwSyncdWW Wse SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
li r1,1 | li r1,2 | li r1,2 ;
stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
lwsync | sync | sync ;
li r3,1 | li r3,1 | lwz r3,0(r4) ;
stw r3,0(r4) | stw r3,0(r4) | ;
exists (y=2 /\ z=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: li r10,1
_litmus_P0_1_: stw r10,0(r9)
_litmus_P0_2_: lwsync
_litmus_P0_3_: li r11,1
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: li r10,2
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r8,2
_litmus_P2_1_: stw r8,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r10,0(r2)
Test safe048 Allowed
Histogram (7 states)
705 :>2:r3=0; y=1; z=2;
11807 :>2:r3=0; y=2; z=1;
209368:>2:r3=0; y=1; z=1;
313539:>2:r3=1; y=2; z=1;
198605:>2:r3=1; y=1; z=2;
701 :>2:r3=1; y=2; z=2;
265275:>2:r3=1; y=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 2:r3=0) is NOT validated
Hash=fded52f6a8a54c4d9bf3c0cde8ee353b
Cycle=SyncdWR Fre LwSyncdWW Wse SyncdWW Wse
Relax safe048 No
Safe=Fre Wse SyncdWW SyncdWR LwSyncdWW
Time safe048 1.66
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe049.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe049
"Rfe SyncdRR Fre LwSyncdWW Wse SyncdWW Wse"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | li r1,2 | li r1,2 ;
sync | stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r4) | lwsync | sync | ;
| li r3,1 | li r3,1 | ;
| stw r3,0(r4) | stw r3,0(r4) | ;
exists (y=2 /\ z=2 /\ 0:r1=2 /\ 0:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe049 Allowed
Histogram (21 states)
4 :>0:r1=0; 0:r3=0; y=2; z=2;
29 :>0:r1=2; 0:r3=1; y=2; z=2;
23 :>0:r1=2; 0:r3=0; y=2; z=1;
22 :>0:r1=1; 0:r3=1; y=2; z=2;
1492 :>0:r1=1; 0:r3=0; y=1; z=2;
1962 :>0:r1=2; 0:r3=0; y=1; z=2;
12710 :>0:r1=1; 0:r3=0; y=1; z=1;
3274 :>0:r1=0; 0:r3=1; y=2; z=2;
19675 :>0:r1=0; 0:r3=0; y=2; z=1;
14342 :>0:r1=1; 0:r3=1; y=1; z=2;
5189 :>0:r1=1; 0:r3=1; y=2; z=1;
22111 :>0:r1=2; 0:r3=1; y=1; z=2;
28925 :>0:r1=0; 0:r3=1; y=1; z=2;
40261 :>0:r1=0; 0:r3=1; y=1; z=1;
58449 :>0:r1=0; 0:r3=1; y=2; z=1;
43274 :>0:r1=2; 0:r3=0; y=1; z=1;
160389:>0:r1=2; 0:r3=1; y=2; z=1;
177405:>0:r1=2; 0:r3=1; y=1; z=1;
30676 :>0:r1=0; 0:r3=0; y=1; z=2;
159715:>0:r1=1; 0:r3=1; y=1; z=1;
220073:>0:r1=0; 0:r3=0; y=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=2 /\ 0:r3=0) is NOT validated
Hash=72264a57cefbc21922f9f1857dbf44e9
Cycle=Rfe SyncdRR Fre LwSyncdWW Wse SyncdWW Wse
Relax safe049 No
Safe=Fre Wse SyncdWW LwSyncdWW ACSyncdRR
Time safe049 2.35
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe050.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe050
"SyncdWW Rfe SyncsRW Rfe LwSyncdRW Wse SyncdWW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
sync | lwsync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,2 | li r3,1 | sync | sync ;
stw r3,0(r2) | stw r3,0(r4) | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: lwsync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe050 Allowed
Histogram (28 states)
18 :>0:r1=0; 1:r1=2; x=2; y=2; z=1;
61 :>0:r1=1; 1:r1=1; x=2; y=1; z=2;
164 :>0:r1=0; 1:r1=1; x=1; y=1; z=2;
64 :>0:r1=0; 1:r1=2; x=2; y=1; z=2;
251 :>0:r1=0; 1:r1=1; x=1; y=2; z=1;
146 :>0:r1=1; 1:r1=2; x=2; y=1; z=2;
564 :>0:r1=0; 1:r1=1; x=2; y=1; z=2;
249 :>0:r1=1; 1:r1=0; x=2; y=1; z=2;
1624 :>0:r1=1; 1:r1=1; x=2; y=2; z=1;
548 :>0:r1=0; 1:r1=1; x=2; y=2; z=1;
187 :>0:r1=0; 1:r1=2; x=1; y=2; z=2;
942 :>0:r1=0; 1:r1=0; x=1; y=2; z=2;
7478 :>0:r1=0; 1:r1=0; x=2; y=1; z=2;
60284 :>0:r1=1; 1:r1=1; x=2; y=1; z=1;
20808 :>0:r1=0; 1:r1=2; x=2; y=1; z=1;
41566 :>0:r1=0; 1:r1=1; x=2; y=1; z=1;
42038 :>0:r1=1; 1:r1=0; x=2; y=1; z=1;
49660 :>0:r1=1; 1:r1=0; x=2; y=2; z=1;
16388 :>0:r1=0; 1:r1=1; x=1; y=1; z=1;
171498:>0:r1=0; 1:r1=0; x=2; y=2; z=1;
113337:>0:r1=0; 1:r1=0; x=1; y=1; z=2;
145543:>0:r1=0; 1:r1=2; x=1; y=1; z=1;
32407 :>0:r1=0; 1:r1=0; x=1; y=1; z=1;
64754 :>0:r1=0; 1:r1=0; x=2; y=1; z=1;
41575 :>0:r1=0; 1:r1=2; x=1; y=1; z=2;
76102 :>0:r1=0; 1:r1=2; x=1; y=2; z=1;
2206 :>0:r1=1; 1:r1=2; x=2; y=1; z=1;
109538:>0:r1=0; 1:r1=0; x=1; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2) is NOT validated
Hash=5151ce08537a0f3636b4d63ef57523fc
Cycle=SyncdWW Rfe SyncsRW Rfe LwSyncdRW Wse SyncdWW Wse
Relax safe050 No
Safe=Wse SyncdWW LwSyncdRW BCSyncsRW BCSyncdWW
Time safe050 2.66
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe051.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe051
"SyncdWW Rfe LwSyncdRW Wse SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,2 | li r1,2 ;
lwsync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | sync | sync ;
stw r3,0(r4) | li r3,1 | li r3,1 ;
| stw r3,0(r4) | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stw r8,0(r2)
_litmus_P1_0_: li r10,2
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe051 Allowed
Histogram (7 states)
141 :>0:r1=1; y=1; z=2;
855 :>0:r1=1; y=2; z=1;
967 :>0:r1=0; y=2; z=2;
148965:>0:r1=0; y=1; z=2;
160092:>0:r1=1; y=1; z=1;
355517:>0:r1=0; y=2; z=1;
333463:>0:r1=0; y=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1) is NOT validated
Hash=eccec84da47f82ace2815eb1aaeac028
Cycle=SyncdWW Rfe LwSyncdRW Wse SyncdWW Wse
Relax safe051 No
Safe=Wse SyncdWW LwSyncdRW BCSyncdWW
Time safe051 1.67
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe052.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe052
"SyncdWW Rfe SyncdRW Rfe LwSyncdRW Wse SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
sync | lwsync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | li r3,1 | sync | sync ;
stw r3,0(r4) | stw r3,0(r4) | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (a=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: lwsync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe052 Allowed
Histogram (14 states)
2 :>0:r1=1; 1:r1=1; a=1; z=2;
5 :>0:r1=1; 1:r1=0; a=2; z=2;
8 :>0:r1=0; 1:r1=1; a=2; z=2;
1618 :>0:r1=1; 1:r1=1; a=1; z=1;
3079 :>0:r1=0; 1:r1=1; a=1; z=2;
5885 :>0:r1=0; 1:r1=0; a=2; z=2;
25820 :>0:r1=1; 1:r1=0; a=1; z=2;
59956 :>0:r1=0; 1:r1=1; a=2; z=1;
163266:>0:r1=1; 1:r1=0; a=1; z=1;
174386:>0:r1=0; 1:r1=0; a=2; z=1;
230553:>0:r1=0; 1:r1=0; a=1; z=2;
172559:>0:r1=0; 1:r1=0; a=1; z=1;
160462:>0:r1=0; 1:r1=1; a=1; z=1;
2401 :>0:r1=1; 1:r1=0; a=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1) is NOT validated
Hash=139727b8c4cc9bdf3552dc06e7ce1187
Cycle=SyncdWW Rfe SyncdRW Rfe LwSyncdRW Wse SyncdWW Wse
Relax safe052 No
Safe=Wse SyncdWW LwSyncdRW BCSyncdWW BCSyncdRW
Time safe052 2.18
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe053.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe053
"Rfe SyncdRW Wse SyncdWW Wse"
{0:r2=y; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,2 | li r1,2 ;
sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | sync | ;
stw r3,0(r4) | li r3,1 | ;
| stw r3,0(r4) | ;
exists (x=2 /\ y=2 /\ 0:r1=2)
Generated assembler
_litmus_P0_0_: lwz r10,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stw r8,0(r2)
_litmus_P1_0_: li r10,2
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r9,2
_litmus_P2_1_: stw r9,0(r2)
Test safe053 Allowed
Histogram (9 states)
34 :>0:r1=0; x=2; y=2;
3926 :>0:r1=2; x=2; y=1;
16376 :>0:r1=2; x=1; y=2;
97169 :>0:r1=0; x=1; y=2;
16645 :>0:r1=1; x=1; y=2;
223537:>0:r1=0; x=1; y=1;
320530:>0:r1=2; x=1; y=1;
174494:>0:r1=0; x=2; y=1;
147289:>0:r1=1; x=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2) is NOT validated
Hash=ba3f8e217d8c0c62def76e472f955111
Cycle=Rfe SyncdRW Wse SyncdWW Wse
Relax safe053 No
Safe=Wse SyncdWW ACSyncdRW
Time safe053 1.50
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe054.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe054
"LwSyncdWW Wse Rfe SyncdRW Wse SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x; 3:r2=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | li r1,2 | li r1,2 ;
sync | stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | sync | lwsync | ;
stw r3,0(r4) | li r3,1 | li r3,1 | ;
| stw r3,0(r4) | stw r3,0(r4) | ;
exists (x=2 /\ y=2 /\ z=2 /\ 0:r1=2)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe054 Allowed
Histogram (20 states)
9 :>0:r1=2; x=1; y=2; z=2;
95 :>0:r1=1; x=2; y=1; z=2;
73 :>0:r1=2; x=2; y=1; z=2;
2287 :>0:r1=0; x=1; y=2; z=2;
1291 :>0:r1=1; x=1; y=1; z=2;
10773 :>0:r1=2; x=2; y=2; z=1;
3838 :>0:r1=0; x=2; y=1; z=2;
5179 :>0:r1=1; x=1; y=2; z=1;
14411 :>0:r1=1; x=2; y=2; z=1;
64822 :>0:r1=2; x=1; y=2; z=1;
59661 :>0:r1=0; x=2; y=1; z=1;
66988 :>0:r1=0; x=1; y=1; z=2;
174583:>0:r1=0; x=1; y=2; z=1;
80766 :>0:r1=2; x=1; y=1; z=2;
129353:>0:r1=2; x=1; y=1; z=1;
58639 :>0:r1=1; x=2; y=1; z=1;
81543 :>0:r1=0; x=1; y=1; z=1;
94480 :>0:r1=1; x=1; y=1; z=1;
107709:>0:r1=2; x=2; y=1; z=1;
43500 :>0:r1=0; x=2; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ z=2 /\ 0:r1=2) is NOT validated
Hash=6191bb9c560ad020876b2511e2bd7c05
Cycle=LwSyncdWW Wse Rfe SyncdRW Wse SyncdWW Wse
Relax safe054 No
Safe=Wse SyncdWW LwSyncdWW ACSyncdRW
Time safe054 2.36
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe055.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe055
"SyncdWR Fre Rfe SyncdRW Wse SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x; 3:r2=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | li r1,2 | li r1,1 ;
sync | stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | sync | sync | ;
stw r3,0(r4) | li r3,1 | lwz r3,0(r4) | ;
| stw r3,0(r4) | | ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
Test safe055 Allowed
Histogram (15 states)
1 :>0:r1=0; 2:r3=0; y=2; z=2;
5 :>0:r1=1; 2:r3=1; y=2; z=2;
52 :>0:r1=1; 2:r3=0; y=1; z=2;
3828 :>0:r1=1; 2:r3=0; y=2; z=1;
1997 :>0:r1=0; 2:r3=1; y=2; z=2;
184 :>0:r1=0; 2:r3=0; y=1; z=2;
8861 :>0:r1=0; 2:r3=0; y=2; z=1;
48097 :>0:r1=1; 2:r3=0; y=1; z=1;
27771 :>0:r1=1; 2:r3=1; y=2; z=1;
197232:>0:r1=1; 2:r3=1; y=1; z=2;
73171 :>0:r1=0; 2:r3=0; y=1; z=1;
202384:>0:r1=0; 2:r3=1; y=2; z=1;
31874 :>0:r1=0; 2:r3=1; y=1; z=2;
359900:>0:r1=1; 2:r3=1; y=1; z=1;
44643 :>0:r1=0; 2:r3=1; y=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 2:r3=0) is NOT validated
Hash=867f40d757b178e221408a91eea32812
Cycle=SyncdWR Fre Rfe SyncdRW Wse SyncdWW Wse
Relax safe055 No
Safe=Fre Wse SyncdWW SyncdWR ACSyncdRW
Time safe055 2.07
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe056.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe056
"SyncdWW Rfe DpdW Rfe SyncdRW Wse SyncdWW Wse"
{0:r2=x; 0:r5=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
xor r3,r1,r1 | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r4,1 | li r3,1 | sync | sync ;
stwx r4,r3,r5 | stw r3,0(r4) | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (a=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: xor r11,r7,r7
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stwx r8,r11,r2
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe056 Allowed
Histogram (14 states)
4 :>0:r1=1; 1:r1=1; a=1; z=2;
1 :>0:r1=1; 1:r1=1; a=2; z=1;
19 :>0:r1=0; 1:r1=1; a=2; z=2;
1747 :>0:r1=1; 1:r1=0; a=2; z=1;
3559 :>0:r1=1; 1:r1=1; a=1; z=1;
3598 :>0:r1=0; 1:r1=0; a=2; z=2;
53621 :>0:r1=1; 1:r1=0; a=1; z=2;
160512:>0:r1=1; 1:r1=0; a=1; z=1;
49700 :>0:r1=0; 1:r1=1; a=1; z=2;
33978 :>0:r1=0; 1:r1=1; a=2; z=1;
224502:>0:r1=0; 1:r1=0; a=2; z=1;
183389:>0:r1=0; 1:r1=0; a=1; z=2;
185426:>0:r1=0; 1:r1=1; a=1; z=1;
99944 :>0:r1=0; 1:r1=0; a=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1) is NOT validated
Hash=7630c43affabebe098487baa901522da
Cycle=SyncdWW Rfe DpdW Rfe SyncdRW Wse SyncdWW Wse
Relax safe056 No
Safe=Wse SyncdWW DpdW ACSyncdRW BCSyncdWW
Time safe056 2.16
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe057.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe057
"SyncdWW Rfe DpsW Rfe SyncdRW Wse SyncdWW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
xor r3,r1,r1 | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r4,2 | li r3,1 | sync | sync ;
stwx r4,r3,r2 | stw r3,0(r4) | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: xor r11,r8,r8
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stwx r9,r11,r2
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe057 Allowed
Histogram (28 states)
3 :>0:r1=0; 1:r1=2; x=2; y=1; z=2;
5 :>0:r1=1; 1:r1=2; x=2; y=2; z=1;
23 :>0:r1=0; 1:r1=1; x=2; y=2; z=1;
166 :>0:r1=0; 1:r1=1; x=1; y=2; z=1;
28 :>0:r1=1; 1:r1=1; x=2; y=1; z=2;
99 :>0:r1=0; 1:r1=1; x=2; y=1; z=2;
237 :>0:r1=1; 1:r1=2; x=2; y=1; z=2;
93 :>0:r1=0; 1:r1=2; x=1; y=2; z=2;
183 :>0:r1=1; 1:r1=0; x=2; y=1; z=2;
1285 :>0:r1=0; 1:r1=1; x=1; y=1; z=2;
1189 :>0:r1=0; 1:r1=2; x=2; y=1; z=1;
2777 :>0:r1=0; 1:r1=1; x=2; y=1; z=1;
1435 :>0:r1=1; 1:r1=1; x=2; y=2; z=1;
1421 :>0:r1=0; 1:r1=0; x=2; y=1; z=2;
678 :>0:r1=0; 1:r1=0; x=1; y=2; z=2;
90949 :>0:r1=0; 1:r1=0; x=2; y=2; z=1;
90415 :>0:r1=0; 1:r1=0; x=1; y=1; z=2;
91187 :>0:r1=0; 1:r1=2; x=1; y=2; z=1;
63084 :>0:r1=0; 1:r1=1; x=1; y=1; z=1;
38297 :>0:r1=1; 1:r1=0; x=2; y=2; z=1;
34767 :>0:r1=1; 1:r1=1; x=2; y=1; z=1;
28810 :>0:r1=0; 1:r1=0; x=2; y=1; z=1;
85647 :>0:r1=0; 1:r1=2; x=1; y=1; z=2;
23243 :>0:r1=0; 1:r1=0; x=1; y=1; z=1;
71438 :>0:r1=1; 1:r1=0; x=2; y=1; z=1;
201761:>0:r1=0; 1:r1=2; x=1; y=1; z=1;
30246 :>0:r1=1; 1:r1=2; x=2; y=1; z=1;
140534:>0:r1=0; 1:r1=0; x=1; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2) is NOT validated
Hash=93fb642fd1627b7d7cf81d07cac9f3f7
Cycle=SyncdWW Rfe DpsW Rfe SyncdRW Wse SyncdWW Wse
Relax safe057 No
Safe=Wse SyncdWW DpsW ACSyncdRW BCSyncdWW
Time safe057 2.68
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe058.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe058
"LwSyncdWW Rfe SyncdRW Wse SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,2 | li r1,2 ;
sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | sync | lwsync ;
stw r3,0(r4) | li r3,1 | li r3,1 ;
| stw r3,0(r4) | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stw r8,0(r2)
_litmus_P1_0_: li r10,2
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe058 Allowed
Histogram (7 states)
937 :>0:r1=0; y=2; z=2;
1648 :>0:r1=1; y=1; z=2;
741 :>0:r1=1; y=2; z=1;
199035:>0:r1=0; y=1; z=2;
230858:>0:r1=0; y=2; z=1;
306265:>0:r1=0; y=1; z=1;
260516:>0:r1=1; y=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1) is NOT validated
Hash=8d0c555c30cd1133ab795e02f1c2287f
Cycle=LwSyncdWW Rfe SyncdRW Wse SyncdWW Wse
Relax safe058 No
Safe=Wse SyncdWW LwSyncdWW ACSyncdRW
Time safe058 1.65
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe059.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe059
"SyncdWW Rfe LwSyncdRW Rfe SyncdRW Wse SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
lwsync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | li r3,1 | sync | sync ;
stw r3,0(r4) | stw r3,0(r4) | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (a=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe059 Allowed
Histogram (13 states)
1 :>0:r1=0; 1:r1=1; a=2; z=2;
4 :>0:r1=1; 1:r1=1; a=1; z=2;
673 :>0:r1=1; 1:r1=0; a=2; z=1;
2988 :>0:r1=0; 1:r1=1; a=1; z=2;
1615 :>0:r1=0; 1:r1=0; a=2; z=2;
4977 :>0:r1=1; 1:r1=1; a=1; z=1;
31273 :>0:r1=1; 1:r1=0; a=1; z=2;
179061:>0:r1=0; 1:r1=0; a=2; z=1;
65039 :>0:r1=0; 1:r1=1; a=2; z=1;
142371:>0:r1=1; 1:r1=0; a=1; z=1;
135141:>0:r1=0; 1:r1=0; a=1; z=1;
213706:>0:r1=0; 1:r1=0; a=1; z=2;
223151:>0:r1=0; 1:r1=1; a=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1) is NOT validated
Hash=a10bc5bda562abc43dcf622dcb21e2ae
Cycle=SyncdWW Rfe LwSyncdRW Rfe SyncdRW Wse SyncdWW Wse
Relax safe059 No
Safe=Wse SyncdWW LwSyncdRW ACSyncdRW BCSyncdWW
Time safe059 2.16
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe060.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe060
"SyncdWW Rfe LwSyncsRW Rfe SyncdRW Wse SyncdWW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
lwsync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,2 | li r3,1 | sync | sync ;
stw r3,0(r2) | stw r3,0(r4) | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe060 Allowed
Histogram (29 states)
1 :>0:r1=0; 1:r1=2; x=2; y=1; z=2;
1 :>0:r1=1; 1:r1=0; x=2; y=2; z=2;
6 :>0:r1=1; 1:r1=2; x=2; y=2; z=1;
16 :>0:r1=0; 1:r1=1; x=2; y=2; z=1;
35 :>0:r1=1; 1:r1=1; x=2; y=1; z=2;
4 :>0:r1=0; 1:r1=1; x=2; y=1; z=2;
238 :>0:r1=1; 1:r1=1; x=2; y=2; z=1;
231 :>0:r1=0; 1:r1=1; x=1; y=2; z=1;
221 :>0:r1=1; 1:r1=2; x=2; y=1; z=2;
337 :>0:r1=0; 1:r1=1; x=1; y=1; z=2;
615 :>0:r1=1; 1:r1=0; x=2; y=1; z=2;
3432 :>0:r1=0; 1:r1=0; x=2; y=1; z=2;
388 :>0:r1=0; 1:r1=2; x=1; y=2; z=2;
4059 :>0:r1=0; 1:r1=0; x=1; y=2; z=2;
34050 :>0:r1=0; 1:r1=0; x=2; y=2; z=1;
7791 :>0:r1=1; 1:r1=0; x=2; y=2; z=1;
5560 :>0:r1=0; 1:r1=1; x=2; y=1; z=1;
5878 :>0:r1=0; 1:r1=2; x=2; y=1; z=1;
34141 :>0:r1=0; 1:r1=0; x=2; y=1; z=1;
27475 :>0:r1=1; 1:r1=1; x=2; y=1; z=1;
50078 :>0:r1=0; 1:r1=0; x=1; y=1; z=2;
42242 :>0:r1=1; 1:r1=0; x=2; y=1; z=1;
97629 :>0:r1=0; 1:r1=2; x=1; y=2; z=1;
193325:>0:r1=0; 1:r1=0; x=1; y=2; z=1;
137758:>0:r1=0; 1:r1=2; x=1; y=1; z=2;
183338:>0:r1=0; 1:r1=2; x=1; y=1; z=1;
37635 :>0:r1=0; 1:r1=0; x=1; y=1; z=1;
27443 :>0:r1=1; 1:r1=2; x=2; y=1; z=1;
106073:>0:r1=0; 1:r1=1; x=1; y=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2) is NOT validated
Hash=f2640ce5ef68ef33d45535a64f431f7d
Cycle=SyncdWW Rfe LwSyncsRW Rfe SyncdRW Wse SyncdWW Wse
Relax safe060 No
Safe=Wse SyncdWW LwSyncsRW ACSyncdRW BCSyncdWW
Time safe060 2.77
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe061.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe061
"LwSyncdWW Rfe SyncsRW Rfe SyncdRW Wse SyncdWW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,2 | li r3,1 | sync | lwsync ;
stw r3,0(r2) | stw r3,0(r4) | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe061 Allowed
Histogram (29 states)
1 :>0:r1=1; 1:r1=2; x=2; y=2; z=1;
113 :>0:r1=0; 1:r1=2; x=2; y=1; z=2;
50 :>0:r1=0; 1:r1=2; x=1; y=2; z=2;
149 :>0:r1=0; 1:r1=1; x=1; y=2; z=1;
258 :>0:r1=0; 1:r1=1; x=2; y=2; z=1;
2490 :>0:r1=1; 1:r1=1; x=2; y=2; z=1;
246 :>0:r1=1; 1:r1=1; x=2; y=1; z=2;
1604 :>0:r1=1; 1:r1=0; x=2; y=1; z=2;
1883 :>0:r1=0; 1:r1=0; x=1; y=2; z=2;
100 :>0:r1=0; 1:r1=2; x=2; y=2; z=1;
179 :>0:r1=0; 1:r1=1; x=2; y=1; z=2;
34132 :>0:r1=0; 1:r1=2; x=1; y=1; z=2;
72386 :>0:r1=0; 1:r1=2; x=1; y=2; z=1;
24398 :>0:r1=0; 1:r1=2; x=2; y=1; z=1;
47292 :>0:r1=1; 1:r1=0; x=2; y=1; z=1;
48089 :>0:r1=0; 1:r1=1; x=1; y=1; z=1;
28216 :>0:r1=0; 1:r1=1; x=2; y=1; z=1;
69272 :>0:r1=1; 1:r1=0; x=2; y=2; z=1;
96929 :>0:r1=0; 1:r1=0; x=1; y=1; z=2;
103999:>0:r1=0; 1:r1=0; x=1; y=2; z=1;
66710 :>0:r1=0; 1:r1=0; x=2; y=2; z=1;
109234:>0:r1=0; 1:r1=2; x=1; y=1; z=1;
76362 :>0:r1=0; 1:r1=0; x=2; y=1; z=1;
150956:>0:r1=1; 1:r1=1; x=2; y=1; z=1;
24114 :>0:r1=0; 1:r1=0; x=2; y=1; z=2;
28647 :>0:r1=0; 1:r1=0; x=1; y=1; z=1;
11555 :>0:r1=1; 1:r1=2; x=2; y=1; z=1;
195 :>0:r1=1; 1:r1=2; x=2; y=1; z=2;
441 :>0:r1=0; 1:r1=1; x=1; y=1; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2) is NOT validated
Hash=42ef41b476eab53dc2ec3795f484b134
Cycle=LwSyncdWW Rfe SyncsRW Rfe SyncdRW Wse SyncdWW Wse
Relax safe061 No
Safe=Wse SyncdWW LwSyncdWW ACSyncsRW ACSyncdRW
Time safe061 2.55
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe062.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe062
"Rfe SyncdRW Rfe SyncdRW Wse SyncdWW Wse"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | li r3,1 | sync | ;
stw r3,0(r4) | stw r3,0(r4) | li r3,1 | ;
| | stw r3,0(r4) | ;
exists (y=2 /\ z=2 /\ 0:r1=2 /\ 1:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe062 Allowed
Histogram (21 states)
2 :>0:r1=0; 1:r1=1; y=2; z=2;
13 :>0:r1=2; 1:r1=1; y=2; z=1;
14 :>0:r1=1; 1:r1=0; y=2; z=2;
25 :>0:r1=2; 1:r1=0; y=2; z=2;
162 :>0:r1=2; 1:r1=1; y=1; z=2;
1388 :>0:r1=1; 1:r1=1; y=1; z=2;
2900 :>0:r1=0; 1:r1=1; y=2; z=1;
339 :>0:r1=0; 1:r1=0; y=2; z=2;
23452 :>0:r1=0; 1:r1=1; y=1; z=2;
17642 :>0:r1=2; 1:r1=0; y=1; z=2;
28595 :>0:r1=2; 1:r1=1; y=1; z=1;
23491 :>0:r1=1; 1:r1=0; y=1; z=2;
185490:>0:r1=0; 1:r1=1; y=1; z=1;
135404:>0:r1=2; 1:r1=0; y=2; z=1;
246639:>0:r1=2; 1:r1=0; y=1; z=1;
87507 :>0:r1=0; 1:r1=0; y=1; z=1;
40664 :>0:r1=1; 1:r1=0; y=1; z=1;
106454:>0:r1=0; 1:r1=0; y=1; z=2;
3022 :>0:r1=1; 1:r1=0; y=2; z=1;
1248 :>0:r1=1; 1:r1=1; y=1; z=1;
95549 :>0:r1=0; 1:r1=0; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=2 /\ 1:r1=1) is NOT validated
Hash=ce1bc8dc9ee2327910dc20a870ad1ae4
Cycle=Rfe SyncdRW Rfe SyncdRW Wse SyncdWW Wse
Relax safe062 No
Safe=Wse SyncdWW ACSyncdRW
Time safe062 2.11
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe063.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe063
"LwSyncdWW Rfe SyncdRW Rfe SyncdRW Wse SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | li r3,1 | sync | lwsync ;
stw r3,0(r4) | stw r3,0(r4) | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (a=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe063 Allowed
Histogram (14 states)
1 :>0:r1=0; 1:r1=1; a=2; z=2;
1 :>0:r1=1; 1:r1=1; a=1; z=2;
4 :>0:r1=1; 1:r1=1; a=2; z=1;
1083 :>0:r1=0; 1:r1=0; a=2; z=2;
4475 :>0:r1=0; 1:r1=1; a=1; z=2;
7312 :>0:r1=1; 1:r1=0; a=2; z=1;
3893 :>0:r1=1; 1:r1=1; a=1; z=1;
12628 :>0:r1=0; 1:r1=1; a=2; z=1;
190110:>0:r1=0; 1:r1=0; a=1; z=2;
131029:>0:r1=0; 1:r1=0; a=1; z=1;
98135 :>0:r1=1; 1:r1=0; a=1; z=2;
217143:>0:r1=1; 1:r1=0; a=1; z=1;
160705:>0:r1=0; 1:r1=1; a=1; z=1;
173481:>0:r1=0; 1:r1=0; a=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1) is NOT validated
Hash=eb550ad34f1577df59b4e2d3f96a2fed
Cycle=LwSyncdWW Rfe SyncdRW Rfe SyncdRW Wse SyncdWW Wse
Relax safe063 No
Safe=Wse SyncdWW LwSyncdWW ACSyncdRW
Time safe063 2.14
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe064.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe064
"SyncdWW Rfe SyncsRW Rfe DpdR Fre SyncdWW Wse"
{0:r2=x; 1:r2=x; 1:r5=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
sync | xor r3,r1,r1 | stw r1,0(r2) | stw r1,0(r2) ;
li r3,2 | lwzx r4,r3,r5 | sync | sync ;
stw r3,0(r2) | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r4=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r6,0(r9)
_litmus_P1_1_: xor r11,r6,r6
_litmus_P1_2_: lwzx r7,r11,r2
_litmus_P2_0_: li r11,1
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe064 Allowed
Histogram (30 states)
3 :>0:r1=1; 1:r1=2; 1:r4=0; x=2; z=1;
78 :>0:r1=0; 1:r1=2; 1:r4=0; x=2; z=1;
16 :>0:r1=1; 1:r1=1; 1:r4=1; x=2; z=2;
113 :>0:r1=0; 1:r1=2; 1:r4=1; x=2; z=2;
293 :>0:r1=0; 1:r1=1; 1:r4=1; x=2; z=2;
399 :>0:r1=0; 1:r1=1; 1:r4=1; x=1; z=2;
46 :>0:r1=0; 1:r1=0; 1:r4=0; x=2; z=2;
229 :>0:r1=0; 1:r1=1; 1:r4=0; x=1; z=1;
1688 :>0:r1=0; 1:r1=1; 1:r4=0; x=2; z=1;
1216 :>0:r1=1; 1:r1=0; 1:r4=1; x=2; z=2;
3398 :>0:r1=1; 1:r1=1; 1:r4=0; x=2; z=1;
348 :>0:r1=1; 1:r1=2; 1:r4=1; x=2; z=2;
1331 :>0:r1=0; 1:r1=2; 1:r4=0; x=1; z=2;
65559 :>0:r1=1; 1:r1=1; 1:r4=1; x=2; z=1;
19433 :>0:r1=0; 1:r1=0; 1:r4=1; x=2; z=2;
7843 :>0:r1=0; 1:r1=0; 1:r4=0; x=1; z=2;
20434 :>0:r1=1; 1:r1=0; 1:r4=1; x=2; z=1;
22310 :>0:r1=1; 1:r1=0; 1:r4=0; x=2; z=1;
59056 :>0:r1=0; 1:r1=2; 1:r4=1; x=1; z=2;
46027 :>0:r1=0; 1:r1=2; 1:r4=1; x=2; z=1;
24333 :>0:r1=0; 1:r1=0; 1:r4=1; x=1; z=1;
144760:>0:r1=0; 1:r1=0; 1:r4=0; x=1; z=1;
24685 :>0:r1=0; 1:r1=1; 1:r4=1; x=1; z=1;
66187 :>0:r1=0; 1:r1=0; 1:r4=1; x=2; z=1;
57215 :>0:r1=0; 1:r1=1; 1:r4=1; x=2; z=1;
106908:>0:r1=0; 1:r1=0; 1:r4=1; x=1; z=2;
142891:>0:r1=0; 1:r1=2; 1:r4=1; x=1; z=1;
107313:>0:r1=0; 1:r1=0; 1:r4=0; x=2; z=1;
6862 :>0:r1=1; 1:r1=2; 1:r4=1; x=2; z=1;
69026 :>0:r1=0; 1:r1=2; 1:r4=0; x=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r4=0) is NOT validated
Hash=af1138ae98af68a54dbf1be478f2b622
Cycle=SyncdWW Rfe SyncsRW Rfe DpdR Fre SyncdWW Wse
Relax safe064 No
Safe=Fre Wse SyncdWW DpdR BCSyncsRW BCSyncdWW
Time safe064 2.62
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe065.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe065
"SyncdWW Rfe DpdR Fre SyncdWW Wse"
{0:r2=x; 0:r5=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,1 | li r1,2 ;
xor r3,r1,r1 | stw r1,0(r2) | stw r1,0(r2) ;
lwzx r4,r3,r5 | sync | sync ;
| li r3,1 | li r3,1 ;
| stw r3,0(r4) | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 0:r4=0)
Generated assembler
_litmus_P0_0_: lwz r6,0(r9)
_litmus_P0_1_: xor r11,r6,r6
_litmus_P0_2_: lwzx r7,r11,r2
_litmus_P1_0_: li r10,1
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe065 Allowed
Histogram (7 states)
503 :>0:r1=0; 0:r4=0; z=2;
456 :>0:r1=1; 0:r4=1; z=2;
3669 :>0:r1=1; 0:r4=0; z=1;
209479:>0:r1=0; 0:r4=1; z=1;
179265:>0:r1=0; 0:r4=1; z=2;
387469:>0:r1=0; 0:r4=0; z=1;
219159:>0:r1=1; 0:r4=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 0:r4=0) is NOT validated
Hash=8383fd8590d27742351d6feb702c80b8
Cycle=SyncdWW Rfe DpdR Fre SyncdWW Wse
Relax safe065 No
Safe=Fre Wse SyncdWW DpdR BCSyncdWW
Time safe065 1.66
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe066.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe066
"SyncdWW Rfe SyncdRW Rfe DpdR Fre SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r5=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
sync | xor r3,r1,r1 | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwzx r4,r3,r5 | sync | sync ;
stw r3,0(r4) | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r4=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r6,0(r9)
_litmus_P1_1_: xor r11,r6,r6
_litmus_P1_2_: lwzx r7,r11,r2
_litmus_P2_0_: li r11,1
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe066 Allowed
Histogram (14 states)
1 :>0:r1=1; 1:r1=0; 1:r4=0; a=2;
20 :>0:r1=0; 1:r1=1; 1:r4=0; a=2;
7 :>0:r1=1; 1:r1=1; 1:r4=0; a=1;
392 :>0:r1=1; 1:r1=0; 1:r4=1; a=2;
2309 :>0:r1=1; 1:r1=1; 1:r4=1; a=1;
7267 :>0:r1=0; 1:r1=0; 1:r4=0; a=2;
10333 :>0:r1=0; 1:r1=1; 1:r4=0; a=1;
17670 :>0:r1=1; 1:r1=0; 1:r4=0; a=1;
79495 :>0:r1=1; 1:r1=0; 1:r4=1; a=1;
171240:>0:r1=0; 1:r1=0; 1:r4=1; a=2;
174805:>0:r1=0; 1:r1=0; 1:r4=1; a=1;
291946:>0:r1=0; 1:r1=0; 1:r4=0; a=1;
192131:>0:r1=0; 1:r1=1; 1:r4=1; a=1;
52384 :>0:r1=0; 1:r1=1; 1:r4=1; a=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r4=0) is NOT validated
Hash=1650d64f0e90a647a0df4b17df0dd81c
Cycle=SyncdWW Rfe SyncdRW Rfe DpdR Fre SyncdWW Wse
Relax safe066 No
Safe=Fre Wse SyncdWW DpdR BCSyncdWW BCSyncdRW
Time safe066 2.10
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe067.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe067
"SyncdWW Rfe DpsR Fre SyncdWW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,2 | li r1,2 ;
xor r3,r1,r1 | stw r1,0(r2) | stw r1,0(r2) ;
lwzx r4,r3,r2 | sync | sync ;
| li r3,1 | li r3,1 ;
| stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r4=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r2)
_litmus_P0_1_: xor r11,r7,r7
_litmus_P0_2_: lwzx r9,r11,r2
_litmus_P1_0_: li r10,2
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe067 Allowed
Histogram (17 states)
4 :>0:r1=0; 0:r4=2; x=1; y=2;
30 :>0:r1=2; 0:r4=1; x=1; y=2;
96 :>0:r1=0; 0:r4=2; x=1; y=1;
58 :>0:r1=0; 0:r4=1; x=2; y=1;
127 :>0:r1=1; 0:r4=1; x=1; y=2;
346 :>0:r1=1; 0:r4=2; x=2; y=1;
168 :>0:r1=0; 0:r4=2; x=2; y=1;
4664 :>0:r1=0; 0:r4=0; x=1; y=2;
3345 :>0:r1=2; 0:r4=1; x=1; y=1;
64897 :>0:r1=1; 0:r4=1; x=1; y=1;
16700 :>0:r1=1; 0:r4=1; x=2; y=1;
234767:>0:r1=2; 0:r4=2; x=1; y=2;
33709 :>0:r1=2; 0:r4=2; x=2; y=1;
58821 :>0:r1=0; 0:r4=0; x=2; y=1;
235761:>0:r1=2; 0:r4=2; x=1; y=1;
346325:>0:r1=0; 0:r4=0; x=1; y=1;
182 :>0:r1=0; 0:r4=1; x=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r4=1) is NOT validated
Hash=83561cbdf2863e501449afc58857e6ce
Cycle=SyncdWW Rfe DpsR Fre SyncdWW Wse
Relax safe067 No
Safe=Fre Wse SyncdWW DpsR BCSyncdWW
Time safe067 1.66
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe068.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe068
"SyncdWW Rfe SyncdRW Rfe DpsR Fre SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
sync | xor r3,r1,r1 | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwzx r4,r3,r2 | sync | sync ;
stw r3,0(r4) | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r4=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r7,0(r2)
_litmus_P1_1_: xor r11,r7,r7
_litmus_P1_2_: lwzx r9,r11,r2
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe068 Allowed
Histogram (35 states)
1 :>0:r1=0; 1:r1=0; 1:r4=1; y=2; z=2;
3 :>0:r1=1; 1:r1=2; 1:r4=2; y=2; z=1;
5 :>0:r1=0; 1:r1=1; 1:r4=2; y=2; z=2;
1 :>0:r1=1; 1:r1=0; 1:r4=2; y=1; z=1;
11 :>0:r1=0; 1:r1=0; 1:r4=2; y=2; z=2;
3 :>0:r1=1; 1:r1=0; 1:r4=1; y=1; z=1;
27 :>0:r1=0; 1:r1=0; 1:r4=2; y=1; z=2;
18 :>0:r1=0; 1:r1=0; 1:r4=1; y=1; z=2;
90 :>0:r1=0; 1:r1=1; 1:r4=2; y=2; z=1;
6 :>0:r1=1; 1:r1=2; 1:r4=1; y=1; z=1;
78 :>0:r1=0; 1:r1=0; 1:r4=2; y=1; z=1;
24 :>0:r1=0; 1:r1=2; 1:r4=1; y=1; z=2;
12 :>0:r1=1; 1:r1=0; 1:r4=0; y=1; z=2;
41 :>0:r1=0; 1:r1=2; 1:r4=1; y=1; z=1;
380 :>0:r1=1; 1:r1=1; 1:r4=1; y=1; z=2;
134 :>0:r1=0; 1:r1=1; 1:r4=1; y=2; z=2;
567 :>0:r1=1; 1:r1=2; 1:r4=2; y=1; z=2;
71 :>0:r1=0; 1:r1=0; 1:r4=1; y=1; z=1;
257 :>0:r1=0; 1:r1=0; 1:r4=0; y=2; z=2;
787 :>0:r1=0; 1:r1=2; 1:r4=2; y=2; z=2;
1076 :>0:r1=1; 1:r1=0; 1:r4=0; y=2; z=1;
110 :>0:r1=0; 1:r1=0; 1:r4=2; y=2; z=1;
9660 :>0:r1=0; 1:r1=1; 1:r4=1; y=1; z=2;
35154 :>0:r1=0; 1:r1=0; 1:r4=0; y=1; z=2;
95243 :>0:r1=1; 1:r1=0; 1:r4=0; y=1; z=1;
95989 :>0:r1=1; 1:r1=2; 1:r4=2; y=1; z=1;
33922 :>0:r1=0; 1:r1=2; 1:r4=2; y=2; z=1;
115779:>0:r1=0; 1:r1=0; 1:r4=0; y=2; z=1;
67627 :>0:r1=0; 1:r1=2; 1:r4=2; y=1; z=1;
50660 :>0:r1=0; 1:r1=1; 1:r4=1; y=2; z=1;
217998:>0:r1=0; 1:r1=2; 1:r4=2; y=1; z=2;
39767 :>0:r1=0; 1:r1=1; 1:r4=1; y=1; z=1;
232278:>0:r1=0; 1:r1=0; 1:r4=0; y=1; z=1;
2041 :>0:r1=1; 1:r1=1; 1:r4=1; y=1; z=1;
180 :>0:r1=0; 1:r1=0; 1:r4=1; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r4=1) is NOT validated
Hash=0cca260b802bf258aa5170ea31aa1250
Cycle=SyncdWW Rfe SyncdRW Rfe DpsR Fre SyncdWW Wse
Relax safe068 No
Safe=Fre Wse SyncdWW DpsR BCSyncdWW BCSyncdRW
Time safe068 2.83
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe069.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe069
"SyncdWR Fre SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=x;}
P0 | P1 ;
li r1,1 | li r1,2 ;
stw r1,0(r2) | stw r1,0(r2) ;
sync | sync ;
li r3,1 | lwz r3,0(r4) ;
stw r3,0(r4) | ;
exists (y=2 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: li r11,1
_litmus_P0_1_: stw r11,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r10,1
_litmus_P0_4_: stw r10,0(r2)
_litmus_P1_0_: li r10,2
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: lwz r8,0(r2)
Test safe069 Allowed
Histogram (3 states)
161112:>1:r3=1; y=2;
339252:>1:r3=0; y=1;
1499636:>1:r3=1; y=1;
No
Witnesses
Positive: 0, Negative: 2000000
Condition exists (y=2 /\ 1:r3=0) is NOT validated
Hash=7da20a2ab953c9d18488d3f4e7841bb2
Cycle=SyncdWR Fre SyncdWW Wse
Relax safe069 No
Safe=Fre Wse SyncdWW SyncdWR
Time safe069 1.33
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe070.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe070
"LwSyncdWW Wse SyncdWR Fre SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
li r1,2 | li r1,1 | li r1,2 ;
stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
sync | sync | lwsync ;
lwz r3,0(r4) | li r3,1 | li r3,1 ;
| stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r3=0)
Generated assembler
_litmus_P0_0_: li r8,2
_litmus_P0_1_: stw r8,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: lwz r10,0(r2)
_litmus_P1_0_: li r10,1
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe070 Allowed
Histogram (7 states)
893 :>0:r3=1; x=2; z=2;
2327 :>0:r3=0; x=2; z=1;
1621 :>0:r3=0; x=1; z=2;
291964:>0:r3=1; x=2; z=1;
219194:>0:r3=1; x=1; z=2;
235873:>0:r3=1; x=1; z=1;
248128:>0:r3=0; x=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r3=0) is NOT validated
Hash=41c68cedc1ddadab686061c793b3d241
Cycle=LwSyncdWW Wse SyncdWR Fre SyncdWW Wse
Relax safe070 No
Safe=Fre Wse SyncdWW SyncdWR LwSyncdWW
Time safe070 1.71
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe071.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe071
"Rfe SyncdRW Wse SyncdWR Fre SyncdWW Wse"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | li r1,1 | li r1,2 ;
sync | stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | sync | sync | ;
stw r3,0(r4) | lwz r3,0(r4) | li r3,1 | ;
| | stw r3,0(r4) | ;
exists (x=2 /\ z=2 /\ 0:r1=2 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: li r10,2
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: lwz r8,0(r2)
_litmus_P2_0_: li r11,1
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe071 Allowed
Histogram (20 states)
17 :>0:r1=2; 1:r3=0; x=2; z=1;
32 :>0:r1=1; 1:r3=0; x=1; z=2;
22 :>0:r1=2; 1:r3=0; x=1; z=2;
1370 :>0:r1=1; 1:r3=1; x=2; z=2;
1420 :>0:r1=0; 1:r3=0; x=1; z=2;
3342 :>0:r1=1; 1:r3=0; x=1; z=1;
4778 :>0:r1=0; 1:r3=0; x=2; z=1;
66196 :>0:r1=2; 1:r3=1; x=2; z=1;
26258 :>0:r1=2; 1:r3=1; x=1; z=2;
159121:>0:r1=2; 1:r3=0; x=1; z=1;
24233 :>0:r1=1; 1:r3=1; x=1; z=2;
90556 :>0:r1=1; 1:r3=1; x=1; z=1;
57967 :>0:r1=0; 1:r3=1; x=1; z=1;
242583:>0:r1=2; 1:r3=1; x=1; z=1;
49728 :>0:r1=0; 1:r3=1; x=1; z=2;
206453:>0:r1=0; 1:r3=1; x=2; z=1;
53532 :>0:r1=0; 1:r3=0; x=1; z=1;
3157 :>0:r1=1; 1:r3=1; x=2; z=1;
610 :>0:r1=2; 1:r3=1; x=2; z=2;
8625 :>0:r1=0; 1:r3=1; x=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=2 /\ 1:r3=0) is NOT validated
Hash=ba651a4d3e3321d6f1c5d6c03208dec5
Cycle=Rfe SyncdRW Wse SyncdWR Fre SyncdWW Wse
Relax safe071 No
Safe=Fre Wse SyncdWW SyncdWR ACSyncdRW
Time safe071 2.16
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe072.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe072
"SyncdWR Fre SyncdWR Fre SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
li r1,1 | li r1,1 | li r1,2 ;
stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
sync | sync | sync ;
lwz r3,0(r4) | li r3,1 | lwz r3,0(r4) ;
| stw r3,0(r4) | ;
exists (z=2 /\ 0:r3=0 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: li r8,1
_litmus_P0_1_: stw r8,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: lwz r10,0(r2)
_litmus_P1_0_: li r10,1
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r8,2
_litmus_P2_1_: stw r8,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r10,0(r2)
Test safe072 Allowed
Histogram (7 states)
1051 :>0:r3=0; 2:r3=1; z=2;
4501 :>0:r3=0; 2:r3=0; z=1;
1105 :>0:r3=1; 2:r3=0; z=2;
215470:>0:r3=0; 2:r3=1; z=1;
273333:>0:r3=1; 2:r3=0; z=1;
224466:>0:r3=1; 2:r3=1; z=2;
280074:>0:r3=1; 2:r3=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r3=0 /\ 2:r3=0) is NOT validated
Hash=545ab7a6a327dd4d73e4f0fc0d60719e
Cycle=SyncdWR Fre SyncdWR Fre SyncdWW Wse
Relax safe072 No
Safe=Fre Wse SyncdWW SyncdWR
Time safe072 1.69
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe073.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe073
"Rfe SyncdRR Fre SyncdWR Fre SyncdWW Wse"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | li r1,1 | li r1,2 ;
sync | stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r4) | sync | sync | ;
| lwz r3,0(r4) | li r3,1 | ;
| | stw r3,0(r4) | ;
exists (z=2 /\ 0:r1=2 /\ 0:r3=0 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r10,1
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: lwz r8,0(r2)
_litmus_P2_0_: li r11,1
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe073 Allowed
Histogram (21 states)
6 :>0:r1=2; 0:r3=1; 1:r3=0; z=2;
3 :>0:r1=0; 0:r3=0; 1:r3=0; z=2;
5 :>0:r1=1; 0:r3=1; 1:r3=0; z=2;
1343 :>0:r1=2; 0:r3=0; 1:r3=1; z=2;
153 :>0:r1=0; 0:r3=1; 1:r3=0; z=2;
2238 :>0:r1=1; 0:r3=0; 1:r3=1; z=2;
21 :>0:r1=2; 0:r3=0; 1:r3=0; z=1;
3131 :>0:r1=1; 0:r3=0; 1:r3=1; z=1;
16332 :>0:r1=1; 0:r3=1; 1:r3=1; z=2;
3638 :>0:r1=1; 0:r3=1; 1:r3=0; z=1;
2119 :>0:r1=0; 0:r3=0; 1:r3=0; z=1;
15371 :>0:r1=2; 0:r3=1; 1:r3=1; z=2;
159919:>0:r1=2; 0:r3=1; 1:r3=0; z=1;
81054 :>0:r1=2; 0:r3=0; 1:r3=1; z=1;
14438 :>0:r1=0; 0:r3=0; 1:r3=1; z=2;
34093 :>0:r1=0; 0:r3=1; 1:r3=1; z=1;
47911 :>0:r1=0; 0:r3=1; 1:r3=0; z=1;
36686 :>0:r1=0; 0:r3=1; 1:r3=1; z=2;
238432:>0:r1=0; 0:r3=0; 1:r3=1; z=1;
124683:>0:r1=1; 0:r3=1; 1:r3=1; z=1;
218424:>0:r1=2; 0:r3=1; 1:r3=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=2 /\ 0:r3=0 /\ 1:r3=0) is NOT validated
Hash=ca0086aafbc06d9a1352d6df2a3bc75c
Cycle=Rfe SyncdRR Fre SyncdWR Fre SyncdWW Wse
Relax safe073 No
Safe=Fre Wse SyncdWW SyncdWR ACSyncdRR
Time safe073 2.11
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe074.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe074
"SyncdWW Rfe SyncsRW Rfe SyncdRR Fre SyncdWW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,2 | lwz r3,0(r4) | sync | sync ;
stw r3,0(r2) | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r11,1
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe074 Allowed
Histogram (30 states)
6 :>0:r1=1; 1:r1=1; 1:r3=1; x=2; z=2;
40 :>0:r1=0; 1:r1=2; 1:r3=1; x=2; z=2;
25 :>0:r1=0; 1:r1=2; 1:r3=0; x=2; z=1;
1 :>0:r1=1; 1:r1=0; 1:r3=0; x=2; z=2;
278 :>0:r1=0; 1:r1=1; 1:r3=1; x=2; z=2;
66 :>0:r1=0; 1:r1=1; 1:r3=0; x=1; z=1;
32 :>0:r1=0; 1:r1=2; 1:r3=0; x=1; z=2;
357 :>0:r1=1; 1:r1=1; 1:r3=0; x=2; z=1;
296 :>0:r1=1; 1:r1=2; 1:r3=1; x=2; z=2;
272 :>0:r1=0; 1:r1=1; 1:r3=0; x=2; z=1;
977 :>0:r1=0; 1:r1=0; 1:r3=0; x=1; z=2;
37 :>0:r1=0; 1:r1=0; 1:r3=0; x=2; z=2;
926 :>0:r1=0; 1:r1=1; 1:r3=1; x=1; z=2;
81 :>0:r1=1; 1:r1=0; 1:r3=1; x=2; z=2;
79646 :>0:r1=0; 1:r1=0; 1:r3=0; x=2; z=1;
2727 :>0:r1=0; 1:r1=0; 1:r3=1; x=2; z=2;
33601 :>0:r1=0; 1:r1=1; 1:r3=1; x=2; z=1;
121002:>0:r1=1; 1:r1=1; 1:r3=1; x=2; z=1;
4719 :>0:r1=1; 1:r1=0; 1:r3=0; x=2; z=1;
19272 :>0:r1=1; 1:r1=0; 1:r3=1; x=2; z=1;
35904 :>0:r1=0; 1:r1=0; 1:r3=1; x=1; z=1;
15748 :>0:r1=0; 1:r1=1; 1:r3=1; x=1; z=1;
103299:>0:r1=0; 1:r1=2; 1:r3=1; x=1; z=2;
168889:>0:r1=0; 1:r1=2; 1:r3=1; x=1; z=1;
61547 :>0:r1=0; 1:r1=0; 1:r3=1; x=2; z=1;
96192 :>0:r1=0; 1:r1=0; 1:r3=1; x=1; z=2;
70162 :>0:r1=0; 1:r1=2; 1:r3=0; x=1; z=1;
158410:>0:r1=0; 1:r1=0; 1:r3=0; x=1; z=1;
3093 :>0:r1=1; 1:r1=2; 1:r3=1; x=2; z=1;
22395 :>0:r1=0; 1:r1=2; 1:r3=1; x=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0) is NOT validated
Hash=d0515d6ff7457bb86c56ad6aef33a2d3
Cycle=SyncdWW Rfe SyncsRW Rfe SyncdRR Fre SyncdWW Wse
Relax safe074 No
Safe=Fre Wse SyncdWW SyncdRR BCSyncsRW BCSyncdWW
Time safe074 2.60
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe075.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe075
"SyncdWW Rfe SyncdRR Fre SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,1 | li r1,2 ;
sync | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r4) | sync | sync ;
| li r3,1 | li r3,1 ;
| stw r3,0(r4) | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 0:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r10,1
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe075 Allowed
Histogram (7 states)
204 :>0:r1=1; 0:r3=0; z=1;
395 :>0:r1=1; 0:r3=1; z=2;
569 :>0:r1=0; 0:r3=0; z=2;
238782:>0:r1=1; 0:r3=1; z=1;
143779:>0:r1=0; 0:r3=1; z=2;
282119:>0:r1=0; 0:r3=0; z=1;
334152:>0:r1=0; 0:r3=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 0:r3=0) is NOT validated
Hash=40e26cddf1a1a4a7dbfaf915a0a16f84
Cycle=SyncdWW Rfe SyncdRR Fre SyncdWW Wse
Relax safe075 No
Safe=Fre Wse SyncdWW SyncdRR BCSyncdWW
Time safe075 1.72
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe076.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe076
"SyncdWW Rfe SyncdRW Rfe SyncdRR Fre SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r4) | sync | sync ;
stw r3,0(r4) | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r11,1
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe076 Allowed
Histogram (14 states)
3 :>0:r1=1; 1:r1=1; 1:r3=0; a=1;
2 :>0:r1=1; 1:r1=0; 1:r3=0; a=2;
2 :>0:r1=0; 1:r1=1; 1:r3=0; a=2;
412 :>0:r1=1; 1:r1=0; 1:r3=1; a=2;
1689 :>0:r1=1; 1:r1=1; 1:r3=1; a=1;
2853 :>0:r1=0; 1:r1=0; 1:r3=0; a=2;
3368 :>0:r1=0; 1:r1=1; 1:r3=0; a=1;
97263 :>0:r1=1; 1:r1=0; 1:r3=1; a=1;
174049:>0:r1=0; 1:r1=0; 1:r3=1; a=2;
244396:>0:r1=0; 1:r1=0; 1:r3=0; a=1;
225571:>0:r1=0; 1:r1=0; 1:r3=1; a=1;
25229 :>0:r1=1; 1:r1=0; 1:r3=0; a=1;
178798:>0:r1=0; 1:r1=1; 1:r3=1; a=1;
46365 :>0:r1=0; 1:r1=1; 1:r3=1; a=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=0) is NOT validated
Hash=5be469a22c33d0af289d11f330162e0a
Cycle=SyncdWW Rfe SyncdRW Rfe SyncdRR Fre SyncdWW Wse
Relax safe076 No
Safe=Fre Wse SyncdWW SyncdRR BCSyncdWW BCSyncdRW
Time safe076 2.07
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe077.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe077
"SyncdWR Fre SyncsWR Fre SyncdWW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
li r1,1 | li r1,2 | li r1,2 ;
stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
sync | sync | sync ;
lwz r3,0(r2) | li r3,1 | lwz r3,0(r4) ;
| stw r3,0(r4) | ;
exists (x=2 /\ y=2 /\ 0:r3=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: li r9,1
_litmus_P0_1_: stw r9,0(r2)
_litmus_P0_2_: sync
_litmus_P0_3_: lwz r10,0(r2)
_litmus_P1_0_: li r10,2
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r8,2
_litmus_P2_1_: stw r8,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r10,0(r2)
Test safe077 Allowed
Histogram (13 states)
14 :>0:r3=2; 2:r3=1; x=2; y=1;
83 :>0:r3=1; 2:r3=2; x=1; y=2;
161 :>0:r3=2; 2:r3=2; x=2; y=2;
2396 :>0:r3=1; 2:r3=2; x=2; y=2;
60359 :>0:r3=1; 2:r3=1; x=2; y=1;
39841 :>0:r3=2; 2:r3=0; x=2; y=1;
243624:>0:r3=1; 2:r3=1; x=1; y=2;
73613 :>0:r3=1; 2:r3=0; x=1; y=1;
309229:>0:r3=1; 2:r3=2; x=2; y=1;
52989 :>0:r3=1; 2:r3=2; x=1; y=1;
174546:>0:r3=1; 2:r3=1; x=1; y=1;
29755 :>0:r3=2; 2:r3=2; x=2; y=1;
13390 :>0:r3=1; 2:r3=0; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r3=1 /\ 2:r3=0) is NOT validated
Hash=90440690a11b718ea7844fef30ba96c5
Cycle=SyncdWR Fre SyncsWR Fre SyncdWW Wse
Relax safe077 No
Safe=Fre Wse SyncsWR SyncdWW SyncdWR
Time safe077 1.62
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe078.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe078
"Rfe SyncdRR Fre SyncsWR Fre SyncdWW Wse"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | li r1,2 | li r1,2 ;
sync | stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r4) | sync | sync | ;
| lwz r3,0(r2) | li r3,1 | ;
| | stw r3,0(r4) | ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 1:r3=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: lwz r10,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe078 Allowed
Histogram (36 states)
1 :>0:r1=0; 0:r3=1; 1:r3=2; x=2; y=1;
2 :>0:r1=1; 0:r3=2; 1:r3=2; x=2; y=2;
6 :>0:r1=2; 0:r3=2; 1:r3=2; x=2; y=2;
14 :>0:r1=0; 0:r3=1; 1:r3=1; x=2; y=2;
32 :>0:r1=2; 0:r3=0; 1:r3=1; x=2; y=1;
23 :>0:r1=2; 0:r3=2; 1:r3=1; x=1; y=2;
89 :>0:r1=2; 0:r3=2; 1:r3=1; x=2; y=2;
82 :>0:r1=1; 0:r3=2; 1:r3=1; x=1; y=1;
10 :>0:r1=0; 0:r3=0; 1:r3=2; x=2; y=2;
390 :>0:r1=0; 0:r3=0; 1:r3=1; x=1; y=2;
1377 :>0:r1=0; 0:r3=2; 1:r3=2; x=2; y=2;
111 :>0:r1=1; 0:r3=2; 1:r3=1; x=2; y=2;
878 :>0:r1=1; 0:r3=2; 1:r3=1; x=1; y=2;
647 :>0:r1=2; 0:r3=0; 1:r3=1; x=1; y=1;
7960 :>0:r1=0; 0:r3=2; 1:r3=1; x=1; y=2;
530 :>0:r1=2; 0:r3=0; 1:r3=2; x=2; y=1;
38425 :>0:r1=1; 0:r3=2; 1:r3=1; x=2; y=1;
3587 :>0:r1=2; 0:r3=2; 1:r3=1; x=1; y=1;
3438 :>0:r1=1; 0:r3=2; 1:r3=2; x=2; y=1;
34758 :>0:r1=0; 0:r3=2; 1:r3=1; x=1; y=1;
50935 :>0:r1=1; 0:r3=1; 1:r3=1; x=1; y=2;
44639 :>0:r1=0; 0:r3=0; 1:r3=2; x=2; y=1;
18285 :>0:r1=0; 0:r3=1; 1:r3=1; x=1; y=1;
40966 :>0:r1=2; 0:r3=1; 1:r3=1; x=1; y=2;
39773 :>0:r1=0; 0:r3=2; 1:r3=1; x=2; y=2;
66645 :>0:r1=0; 0:r3=1; 1:r3=1; x=1; y=2;
54632 :>0:r1=2; 0:r3=1; 1:r3=1; x=1; y=1;
101611:>0:r1=0; 0:r3=0; 1:r3=1; x=1; y=1;
106085:>0:r1=2; 0:r3=2; 1:r3=2; x=2; y=1;
6863 :>0:r1=0; 0:r3=2; 1:r3=2; x=2; y=1;
37792 :>0:r1=0; 0:r3=1; 1:r3=1; x=2; y=1;
159629:>0:r1=2; 0:r3=2; 1:r3=1; x=2; y=1;
77581 :>0:r1=0; 0:r3=2; 1:r3=1; x=2; y=1;
53993 :>0:r1=1; 0:r3=1; 1:r3=1; x=1; y=1;
32207 :>0:r1=0; 0:r3=0; 1:r3=1; x=2; y=1;
16004 :>0:r1=2; 0:r3=1; 1:r3=1; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 1:r3=1) is NOT validated
Hash=194e4b366724457deb7369274f0eee71
Cycle=Rfe SyncdRR Fre SyncsWR Fre SyncdWW Wse
Relax safe078 No
Safe=Fre Wse SyncsWR SyncdWW ACSyncdRR
Time safe078 2.38
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe079.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe079
"SyncdWW Rfe SyncsRR Fre SyncdWW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,2 | li r1,2 ;
sync | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r2) | sync | sync ;
| li r3,1 | li r3,1 ;
| stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r10,2
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe079 Allowed
Histogram (17 states)
3036 :>0:r1=2; 0:r3=1; x=1; y=2;
219 :>0:r1=1; 0:r3=1; x=1; y=2;
1659 :>0:r1=1; 0:r3=1; x=2; y=1;
19899 :>0:r1=0; 0:r3=2; x=2; y=1;
14307 :>0:r1=1; 0:r3=2; x=2; y=1;
4153 :>0:r1=0; 0:r3=1; x=2; y=1;
29141 :>0:r1=0; 0:r3=0; x=2; y=1;
135549:>0:r1=2; 0:r3=1; x=1; y=1;
91925 :>0:r1=1; 0:r3=1; x=1; y=1;
13848 :>0:r1=0; 0:r3=1; x=1; y=1;
276 :>0:r1=0; 0:r3=2; x=1; y=2;
27701 :>0:r1=2; 0:r3=2; x=2; y=1;
5483 :>0:r1=0; 0:r3=0; x=1; y=2;
43721 :>0:r1=2; 0:r3=2; x=1; y=1;
274297:>0:r1=2; 0:r3=2; x=1; y=2;
329624:>0:r1=0; 0:r3=0; x=1; y=1;
5162 :>0:r1=0; 0:r3=2; x=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1) is NOT validated
Hash=3f34b7315bfbcad685c60046cd7f12e3
Cycle=SyncdWW Rfe SyncsRR Fre SyncdWW Wse
Relax safe079 No
Safe=Fre Wse SyncsRR SyncdWW BCSyncdWW
Time safe079 1.72
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe080.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe080
"SyncdWW Rfe SyncdRW Rfe SyncsRR Fre SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r2) | sync | sync ;
stw r3,0(r4) | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r9,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe080 Allowed
Histogram (38 states)
1 :>0:r1=1; 1:r1=2; 1:r3=2; y=2; z=1;
6 :>0:r1=1; 1:r1=0; 1:r3=0; y=1; z=2;
1 :>0:r1=1; 1:r1=1; 1:r3=2; y=2; z=1;
121 :>0:r1=0; 1:r1=0; 1:r3=0; y=2; z=2;
55 :>0:r1=1; 1:r1=0; 1:r3=1; y=2; z=1;
96 :>0:r1=0; 1:r1=1; 1:r3=2; y=2; z=2;
20 :>0:r1=0; 1:r1=1; 1:r3=1; y=2; z=2;
602 :>0:r1=0; 1:r1=0; 1:r3=1; y=1; z=2;
518 :>0:r1=1; 1:r1=0; 1:r3=2; y=2; z=1;
562 :>0:r1=1; 1:r1=0; 1:r3=0; y=2; z=1;
735 :>0:r1=0; 1:r1=2; 1:r3=2; y=2; z=2;
289 :>0:r1=1; 1:r1=2; 1:r3=2; y=1; z=2;
114 :>0:r1=0; 1:r1=0; 1:r3=2; y=2; z=2;
1029 :>0:r1=1; 1:r1=0; 1:r3=1; y=1; z=1;
2970 :>0:r1=1; 1:r1=2; 1:r3=1; y=1; z=1;
8979 :>0:r1=0; 1:r1=1; 1:r3=1; y=2; z=1;
13338 :>0:r1=0; 1:r1=1; 1:r3=1; y=1; z=2;
17438 :>0:r1=0; 1:r1=0; 1:r3=0; y=1; z=2;
589 :>0:r1=0; 1:r1=0; 1:r3=2; y=1; z=2;
12362 :>0:r1=0; 1:r1=0; 1:r3=1; y=2; z=1;
39023 :>0:r1=0; 1:r1=0; 1:r3=2; y=2; z=1;
13627 :>0:r1=1; 1:r1=0; 1:r3=2; y=1; z=1;
41867 :>0:r1=0; 1:r1=2; 1:r3=2; y=2; z=1;
11345 :>0:r1=0; 1:r1=0; 1:r3=2; y=1; z=1;
48132 :>0:r1=1; 1:r1=0; 1:r3=0; y=1; z=1;
26386 :>0:r1=0; 1:r1=1; 1:r3=2; y=2; z=1;
32598 :>0:r1=0; 1:r1=0; 1:r3=1; y=1; z=1;
114978:>0:r1=1; 1:r1=2; 1:r3=2; y=1; z=1;
49683 :>0:r1=0; 1:r1=0; 1:r3=0; y=2; z=1;
49062 :>0:r1=0; 1:r1=2; 1:r3=1; y=1; z=2;
29974 :>0:r1=0; 1:r1=2; 1:r3=1; y=1; z=1;
46319 :>0:r1=0; 1:r1=2; 1:r3=2; y=1; z=1;
155407:>0:r1=0; 1:r1=2; 1:r3=2; y=1; z=2;
52690 :>0:r1=0; 1:r1=1; 1:r3=1; y=1; z=1;
226754:>0:r1=0; 1:r1=0; 1:r3=0; y=1; z=1;
1941 :>0:r1=1; 1:r1=1; 1:r3=1; y=1; z=1;
382 :>0:r1=1; 1:r1=1; 1:r3=1; y=1; z=2;
7 :>0:r1=0; 1:r1=0; 1:r3=1; y=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1) is NOT validated
Hash=8759209178b9dc51307c043cbf1a0a23
Cycle=SyncdWW Rfe SyncdRW Rfe SyncsRR Fre SyncdWW Wse
Relax safe080 No
Safe=Fre Wse SyncsRR SyncdWW BCSyncdWW BCSyncdRW
Time safe080 2.86
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe081.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe081
"SyncdWW Rfe SyncsRW Rfe LwSyncdRR Fre SyncdWW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
sync | lwsync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,2 | lwz r3,0(r4) | sync | sync ;
stw r3,0(r2) | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: lwsync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r11,1
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe081 Allowed
Histogram (31 states)
3 :>0:r1=1; 1:r1=0; 1:r3=0; x=2; z=2;
3 :>0:r1=1; 1:r1=2; 1:r3=0; x=2; z=1;
32 :>0:r1=1; 1:r1=1; 1:r3=1; x=2; z=2;
59 :>0:r1=0; 1:r1=2; 1:r3=0; x=2; z=1;
82 :>0:r1=0; 1:r1=2; 1:r3=1; x=2; z=2;
200 :>0:r1=0; 1:r1=1; 1:r3=0; x=1; z=1;
438 :>0:r1=0; 1:r1=1; 1:r3=1; x=2; z=2;
44 :>0:r1=0; 1:r1=0; 1:r3=0; x=2; z=2;
1167 :>0:r1=1; 1:r1=0; 1:r3=1; x=2; z=2;
917 :>0:r1=0; 1:r1=1; 1:r3=0; x=2; z=1;
1746 :>0:r1=1; 1:r1=1; 1:r3=0; x=2; z=1;
15752 :>0:r1=0; 1:r1=0; 1:r3=0; x=1; z=2;
740 :>0:r1=0; 1:r1=2; 1:r3=0; x=1; z=2;
70259 :>0:r1=0; 1:r1=2; 1:r3=1; x=1; z=2;
17394 :>0:r1=1; 1:r1=0; 1:r3=0; x=2; z=1;
16728 :>0:r1=0; 1:r1=0; 1:r3=1; x=2; z=2;
62219 :>0:r1=0; 1:r1=2; 1:r3=0; x=1; z=1;
20967 :>0:r1=0; 1:r1=1; 1:r3=1; x=1; z=1;
32783 :>0:r1=0; 1:r1=2; 1:r3=1; x=2; z=1;
64975 :>0:r1=0; 1:r1=0; 1:r3=1; x=2; z=1;
30282 :>0:r1=1; 1:r1=0; 1:r3=1; x=2; z=1;
106899:>0:r1=1; 1:r1=1; 1:r3=1; x=2; z=1;
158472:>0:r1=0; 1:r1=2; 1:r3=1; x=1; z=1;
107119:>0:r1=0; 1:r1=0; 1:r3=0; x=2; z=1;
46609 :>0:r1=0; 1:r1=1; 1:r3=1; x=2; z=1;
85704 :>0:r1=0; 1:r1=0; 1:r3=1; x=1; z=2;
22954 :>0:r1=0; 1:r1=0; 1:r3=1; x=1; z=1;
128717:>0:r1=0; 1:r1=0; 1:r3=0; x=1; z=1;
6029 :>0:r1=1; 1:r1=2; 1:r3=1; x=2; z=1;
338 :>0:r1=1; 1:r1=2; 1:r3=1; x=2; z=2;
369 :>0:r1=0; 1:r1=1; 1:r3=1; x=1; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0) is NOT validated
Hash=2d0a8c8c54f32b7f01200441b92357c4
Cycle=SyncdWW Rfe SyncsRW Rfe LwSyncdRR Fre SyncdWW Wse
Relax safe081 No
Safe=Fre Wse SyncdWW LwSyncdRR BCSyncsRW BCSyncdWW
Time safe081 2.57
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe082.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe082
"SyncdWW Rfe LwSyncdRR Fre SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,1 | li r1,2 ;
lwsync | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r4) | sync | sync ;
| li r3,1 | li r3,1 ;
| stw r3,0(r4) | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 0:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r10,1
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe082 Allowed
Histogram (7 states)
1868 :>0:r1=0; 0:r3=0; z=2;
165 :>0:r1=1; 0:r3=1; z=2;
1624 :>0:r1=1; 0:r3=0; z=1;
355862:>0:r1=0; 0:r3=0; z=1;
177979:>0:r1=1; 0:r3=1; z=1;
213616:>0:r1=0; 0:r3=1; z=2;
248886:>0:r1=0; 0:r3=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 0:r3=0) is NOT validated
Hash=2ea1a9022d8c78f9feaceae86ca04da7
Cycle=SyncdWW Rfe LwSyncdRR Fre SyncdWW Wse
Relax safe082 No
Safe=Fre Wse SyncdWW LwSyncdRR BCSyncdWW
Time safe082 1.68
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe083.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe083
"SyncdWW Rfe SyncdRW Rfe LwSyncdRR Fre SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
sync | lwsync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r4) | sync | sync ;
stw r3,0(r4) | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: lwsync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r11,1
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe083 Allowed
Histogram (15 states)
2 :>0:r1=1; 1:r1=0; 1:r3=0; a=2;
12 :>0:r1=0; 1:r1=1; 1:r3=0; a=2;
1 :>0:r1=1; 1:r1=1; 1:r3=1; a=2;
14 :>0:r1=1; 1:r1=1; 1:r3=0; a=1;
561 :>0:r1=1; 1:r1=0; 1:r3=1; a=2;
3279 :>0:r1=0; 1:r1=0; 1:r3=0; a=2;
2690 :>0:r1=1; 1:r1=1; 1:r3=1; a=1;
12175 :>0:r1=0; 1:r1=1; 1:r3=0; a=1;
39294 :>0:r1=1; 1:r1=0; 1:r3=0; a=1;
42858 :>0:r1=1; 1:r1=0; 1:r3=1; a=1;
203194:>0:r1=0; 1:r1=0; 1:r3=1; a=1;
175531:>0:r1=0; 1:r1=0; 1:r3=1; a=2;
300839:>0:r1=0; 1:r1=0; 1:r3=0; a=1;
186382:>0:r1=0; 1:r1=1; 1:r3=1; a=1;
33168 :>0:r1=0; 1:r1=1; 1:r3=1; a=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=0) is NOT validated
Hash=db6516f08b1d5932218c8ba205d07e7e
Cycle=SyncdWW Rfe SyncdRW Rfe LwSyncdRR Fre SyncdWW Wse
Relax safe083 No
Safe=Fre Wse SyncdWW LwSyncdRR BCSyncdWW BCSyncdRW
Time safe083 2.14
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe084.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe084
"SyncdWW Rfe LwSyncsRR Fre SyncdWW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,2 | li r1,2 ;
lwsync | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r2) | sync | sync ;
| li r3,1 | li r3,1 ;
| stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r10,2
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe084 Allowed
Histogram (17 states)
2 :>0:r1=0; 0:r3=1; x=2; y=1;
41 :>0:r1=0; 0:r3=2; x=1; y=2;
98 :>0:r1=2; 0:r3=1; x=1; y=2;
35 :>0:r1=1; 0:r3=2; x=2; y=1;
246 :>0:r1=2; 0:r3=1; x=1; y=1;
91 :>0:r1=0; 0:r3=2; x=2; y=1;
212 :>0:r1=1; 0:r3=1; x=1; y=2;
27561 :>0:r1=2; 0:r3=2; x=2; y=1;
6875 :>0:r1=0; 0:r3=1; x=1; y=1;
13600 :>0:r1=1; 0:r3=1; x=2; y=1;
1090 :>0:r1=0; 0:r3=2; x=1; y=1;
6086 :>0:r1=0; 0:r3=0; x=1; y=2;
76637 :>0:r1=0; 0:r3=0; x=2; y=1;
186751:>0:r1=2; 0:r3=2; x=1; y=1;
275758:>0:r1=2; 0:r3=2; x=1; y=2;
329498:>0:r1=0; 0:r3=0; x=1; y=1;
75419 :>0:r1=1; 0:r3=1; x=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1) is NOT validated
Hash=ce1727bd47b05f8d66a6493c1cba2926
Cycle=SyncdWW Rfe LwSyncsRR Fre SyncdWW Wse
Relax safe084 No
Safe=Fre Wse SyncdWW LwSyncsRR BCSyncdWW
Time safe084 1.75
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe085.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe085
"SyncdWW Rfe SyncdRW Rfe LwSyncsRR Fre SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
sync | lwsync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r2) | sync | sync ;
stw r3,0(r4) | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: lwsync
_litmus_P1_2_: lwz r9,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe085 Allowed
Histogram (33 states)
2 :>0:r1=1; 1:r1=0; 1:r3=0; y=1; z=2;
1 :>0:r1=0; 1:r1=0; 1:r3=2; y=2; z=2;
6 :>0:r1=0; 1:r1=1; 1:r3=2; y=2; z=2;
14 :>0:r1=0; 1:r1=0; 1:r3=2; y=1; z=2;
1 :>0:r1=1; 1:r1=1; 1:r3=1; y=2; z=1;
25 :>0:r1=1; 1:r1=0; 1:r3=1; y=1; z=1;
9 :>0:r1=0; 1:r1=0; 1:r3=1; y=1; z=2;
79 :>0:r1=0; 1:r1=2; 1:r3=1; y=1; z=2;
113 :>0:r1=0; 1:r1=0; 1:r3=1; y=2; z=1;
57 :>0:r1=0; 1:r1=2; 1:r3=1; y=1; z=1;
95 :>0:r1=0; 1:r1=1; 1:r3=1; y=2; z=2;
298 :>0:r1=0; 1:r1=0; 1:r3=0; y=2; z=2;
128 :>0:r1=1; 1:r1=2; 1:r3=2; y=1; z=2;
346 :>0:r1=0; 1:r1=0; 1:r3=2; y=2; z=1;
248 :>0:r1=0; 1:r1=2; 1:r3=2; y=2; z=2;
2824 :>0:r1=1; 1:r1=0; 1:r3=0; y=2; z=1;
4950 :>0:r1=1; 1:r1=0; 1:r3=2; y=1; z=1;
810 :>0:r1=0; 1:r1=0; 1:r3=1; y=1; z=1;
2168 :>0:r1=0; 1:r1=0; 1:r3=0; y=1; z=2;
306 :>0:r1=0; 1:r1=1; 1:r3=2; y=2; z=1;
50775 :>0:r1=0; 1:r1=1; 1:r3=1; y=2; z=1;
2573 :>0:r1=0; 1:r1=0; 1:r3=2; y=1; z=1;
51142 :>0:r1=0; 1:r1=2; 1:r3=2; y=2; z=1;
43214 :>0:r1=1; 1:r1=2; 1:r3=2; y=1; z=1;
11288 :>0:r1=0; 1:r1=1; 1:r3=1; y=1; z=1;
159124:>0:r1=1; 1:r1=0; 1:r3=0; y=1; z=1;
140313:>0:r1=0; 1:r1=0; 1:r3=0; y=2; z=1;
175636:>0:r1=0; 1:r1=2; 1:r3=2; y=1; z=2;
78761 :>0:r1=0; 1:r1=2; 1:r3=2; y=1; z=1;
268351:>0:r1=0; 1:r1=0; 1:r3=0; y=1; z=1;
1779 :>0:r1=1; 1:r1=1; 1:r3=1; y=1; z=1;
237 :>0:r1=1; 1:r1=1; 1:r3=1; y=1; z=2;
4327 :>0:r1=0; 1:r1=1; 1:r3=1; y=1; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1) is NOT validated
Hash=2f651589ba8f721af2223a52803b47bb
Cycle=SyncdWW Rfe SyncdRW Rfe LwSyncsRR Fre SyncdWW Wse
Relax safe085 No
Safe=Fre Wse SyncdWW LwSyncsRR BCSyncdWW BCSyncdRW
Time safe085 2.68
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe086.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe086
"SyncdWR Fre Rfe SyncsRR Fre SyncdWW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=x; 3:r2=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | li r1,2 | li r1,1 ;
sync | stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r2) | sync | sync | ;
| li r3,1 | lwz r3,0(r4) | ;
| stw r3,0(r4) | | ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
Test safe086 Allowed
Histogram (52 states)
7 :>0:r1=1; 0:r3=1; 2:r3=2; x=1; y=2;
6 :>0:r1=0; 0:r3=0; 2:r3=2; x=1; y=2;
204 :>0:r1=0; 0:r3=2; 2:r3=1; x=1; y=2;
218 :>0:r1=0; 0:r3=1; 2:r3=1; x=1; y=2;
563 :>0:r1=0; 0:r3=2; 2:r3=2; x=1; y=1;
209 :>0:r1=2; 0:r3=1; 2:r3=2; x=1; y=2;
179 :>0:r1=0; 0:r3=2; 2:r3=0; x=1; y=1;
151 :>0:r1=0; 0:r3=2; 2:r3=2; x=2; y=2;
2486 :>0:r1=2; 0:r3=2; 2:r3=2; x=1; y=2;
1712 :>0:r1=0; 0:r3=1; 2:r3=0; x=1; y=1;
2012 :>0:r1=0; 0:r3=1; 2:r3=0; x=2; y=1;
2451 :>0:r1=2; 0:r3=1; 2:r3=0; x=1; y=1;
749 :>0:r1=0; 0:r3=1; 2:r3=1; x=1; y=1;
760 :>0:r1=2; 0:r3=2; 2:r3=0; x=1; y=1;
1551 :>0:r1=1; 0:r3=1; 2:r3=2; x=1; y=1;
102 :>0:r1=0; 0:r3=1; 2:r3=2; x=1; y=1;
4122 :>0:r1=0; 0:r3=2; 2:r3=1; x=2; y=1;
4579 :>0:r1=0; 0:r3=0; 2:r3=2; x=1; y=1;
38 :>0:r1=0; 0:r3=1; 2:r3=2; x=2; y=2;
11822 :>0:r1=0; 0:r3=0; 2:r3=1; x=1; y=2;
9716 :>0:r1=0; 0:r3=1; 2:r3=1; x=2; y=1;
13307 :>0:r1=0; 0:r3=2; 2:r3=0; x=2; y=1;
21436 :>0:r1=2; 0:r3=2; 2:r3=2; x=1; y=1;
25281 :>0:r1=1; 0:r3=1; 2:r3=1; x=2; y=1;
12252 :>0:r1=1; 0:r3=1; 2:r3=0; x=1; y=1;
23252 :>0:r1=2; 0:r3=2; 2:r3=0; x=2; y=1;
17352 :>0:r1=0; 0:r3=0; 2:r3=0; x=2; y=1;
11287 :>0:r1=0; 0:r3=2; 2:r3=2; x=2; y=1;
2903 :>0:r1=1; 0:r3=1; 2:r3=0; x=2; y=1;
1251 :>0:r1=1; 0:r3=1; 2:r3=2; x=2; y=2;
464 :>0:r1=0; 0:r3=2; 2:r3=1; x=1; y=1;
13143 :>0:r1=1; 0:r3=2; 2:r3=0; x=2; y=1;
6219 :>0:r1=2; 0:r3=1; 2:r3=2; x=1; y=1;
25938 :>0:r1=2; 0:r3=2; 2:r3=1; x=1; y=2;
1402 :>0:r1=0; 0:r3=1; 2:r3=2; x=2; y=1;
17236 :>0:r1=1; 0:r3=2; 2:r3=2; x=2; y=2;
114817:>0:r1=1; 0:r3=1; 2:r3=1; x=1; y=2;
25943 :>0:r1=2; 0:r3=1; 2:r3=1; x=1; y=2;
10032 :>0:r1=0; 0:r3=0; 2:r3=0; x=1; y=1;
26803 :>0:r1=0; 0:r3=0; 2:r3=1; x=1; y=1;
59774 :>0:r1=2; 0:r3=2; 2:r3=2; x=2; y=2;
5837 :>0:r1=0; 0:r3=0; 2:r3=2; x=2; y=2;
34181 :>0:r1=1; 0:r3=1; 2:r3=2; x=2; y=1;
12295 :>0:r1=1; 0:r3=1; 2:r3=1; x=1; y=1;
27225 :>0:r1=1; 0:r3=2; 2:r3=1; x=2; y=1;
34678 :>0:r1=2; 0:r3=1; 2:r3=1; x=1; y=1;
23713 :>0:r1=2; 0:r3=2; 2:r3=1; x=2; y=1;
195366:>0:r1=0; 0:r3=0; 2:r3=2; x=2; y=1;
16947 :>0:r1=2; 0:r3=2; 2:r3=1; x=1; y=1;
64828 :>0:r1=1; 0:r3=2; 2:r3=2; x=2; y=1;
4502 :>0:r1=0; 0:r3=0; 2:r3=1; x=2; y=1;
106699:>0:r1=2; 0:r3=2; 2:r3=2; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r3=0) is NOT validated
Hash=77c74df38c905332db2728fd0c6421b0
Cycle=SyncdWR Fre Rfe SyncsRR Fre SyncdWW Wse
Relax safe086 No
Safe=Fre Wse SyncdWW SyncdWR ACSyncsRR
Time safe086 2.84
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe087.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe087
"SyncdWW Rfe DpdW Rfe SyncsRR Fre SyncdWW Wse"
{0:r2=x; 0:r5=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
xor r3,r1,r1 | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r4,1 | lwz r3,0(r2) | sync | sync ;
stwx r4,r3,r5 | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: xor r11,r7,r7
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stwx r8,r11,r2
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r9,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe087 Allowed
Histogram (40 states)
1 :>0:r1=1; 1:r1=0; 1:r3=2; y=1; z=2;
6 :>0:r1=1; 1:r1=0; 1:r3=0; y=1; z=2;
19 :>0:r1=1; 1:r1=0; 1:r3=1; y=2; z=1;
4 :>0:r1=1; 1:r1=1; 1:r3=1; y=2; z=1;
94 :>0:r1=1; 1:r1=2; 1:r3=2; y=2; z=1;
89 :>0:r1=0; 1:r1=0; 1:r3=1; y=2; z=2;
614 :>0:r1=1; 1:r1=2; 1:r3=2; y=1; z=2;
104 :>0:r1=1; 1:r1=1; 1:r3=2; y=2; z=1;
363 :>0:r1=0; 1:r1=0; 1:r3=2; y=2; z=2;
396 :>0:r1=1; 1:r1=1; 1:r3=1; y=1; z=2;
505 :>0:r1=0; 1:r1=0; 1:r3=2; y=1; z=2;
1281 :>0:r1=0; 1:r1=0; 1:r3=0; y=2; z=2;
2606 :>0:r1=1; 1:r1=0; 1:r3=0; y=2; z=1;
1155 :>0:r1=1; 1:r1=0; 1:r3=2; y=2; z=1;
613 :>0:r1=0; 1:r1=0; 1:r3=1; y=1; z=2;
1742 :>0:r1=0; 1:r1=1; 1:r3=1; y=2; z=2;
3145 :>0:r1=0; 1:r1=1; 1:r3=2; y=2; z=2;
3450 :>0:r1=1; 1:r1=0; 1:r3=1; y=1; z=1;
4970 :>0:r1=0; 1:r1=2; 1:r3=2; y=2; z=2;
7145 :>0:r1=0; 1:r1=0; 1:r3=1; y=2; z=1;
54599 :>0:r1=0; 1:r1=2; 1:r3=1; y=1; z=2;
17398 :>0:r1=0; 1:r1=1; 1:r3=1; y=1; z=2;
26139 :>0:r1=1; 1:r1=2; 1:r3=1; y=1; z=1;
6288 :>0:r1=0; 1:r1=0; 1:r3=2; y=1; z=1;
55683 :>0:r1=1; 1:r1=0; 1:r3=0; y=1; z=1;
9485 :>0:r1=0; 1:r1=0; 1:r3=0; y=1; z=2;
50008 :>0:r1=1; 1:r1=2; 1:r3=2; y=1; z=1;
35743 :>0:r1=0; 1:r1=0; 1:r3=0; y=2; z=1;
20238 :>0:r1=0; 1:r1=0; 1:r3=1; y=1; z=1;
7538 :>0:r1=1; 1:r1=0; 1:r3=2; y=1; z=1;
70343 :>0:r1=0; 1:r1=1; 1:r3=2; y=2; z=1;
30693 :>0:r1=0; 1:r1=1; 1:r3=1; y=1; z=1;
34469 :>0:r1=0; 1:r1=2; 1:r3=1; y=1; z=1;
59779 :>0:r1=0; 1:r1=2; 1:r3=2; y=1; z=1;
72736 :>0:r1=0; 1:r1=2; 1:r3=2; y=2; z=1;
111002:>0:r1=0; 1:r1=2; 1:r3=2; y=1; z=2;
27329 :>0:r1=0; 1:r1=0; 1:r3=2; y=2; z=1;
208121:>0:r1=0; 1:r1=0; 1:r3=0; y=1; z=1;
3921 :>0:r1=1; 1:r1=1; 1:r3=1; y=1; z=1;
70186 :>0:r1=0; 1:r1=1; 1:r3=1; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1) is NOT validated
Hash=a2b71f42d836755aaa9df64368c736bb
Cycle=SyncdWW Rfe DpdW Rfe SyncsRR Fre SyncdWW Wse
Relax safe087 No
Safe=Fre Wse SyncdWW DpdW ACSyncsRR BCSyncdWW
Time safe087 2.92
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe088.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe088
"LwSyncdWW Rfe SyncsRR Fre SyncdWW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,2 | li r1,2 ;
sync | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r2) | sync | lwsync ;
| li r3,1 | li r3,1 ;
| stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r10,2
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe088 Allowed
Histogram (18 states)
2 :>0:r1=0; 0:r3=1; x=1; y=2;
165 :>0:r1=0; 0:r3=2; x=1; y=2;
1501 :>0:r1=1; 0:r3=1; x=1; y=2;
5390 :>0:r1=0; 0:r3=1; x=2; y=1;
7634 :>0:r1=2; 0:r3=1; x=1; y=2;
18030 :>0:r1=0; 0:r3=1; x=1; y=1;
27536 :>0:r1=0; 0:r3=0; x=2; y=1;
6989 :>0:r1=1; 0:r3=1; x=2; y=1;
26298 :>0:r1=1; 0:r3=1; x=1; y=1;
7968 :>0:r1=0; 0:r3=0; x=1; y=2;
96222 :>0:r1=1; 0:r3=2; x=2; y=1;
21794 :>0:r1=0; 0:r3=2; x=2; y=1;
4252 :>0:r1=0; 0:r3=2; x=1; y=1;
120900:>0:r1=2; 0:r3=2; x=2; y=1;
35972 :>0:r1=2; 0:r3=2; x=1; y=1;
233569:>0:r1=2; 0:r3=2; x=1; y=2;
308128:>0:r1=0; 0:r3=0; x=1; y=1;
77650 :>0:r1=2; 0:r3=1; x=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1) is NOT validated
Hash=f11d507c5e97af0a8f4c3a27397170e1
Cycle=LwSyncdWW Rfe SyncsRR Fre SyncdWW Wse
Relax safe088 No
Safe=Fre Wse SyncdWW LwSyncdWW ACSyncsRR
Time safe088 1.72
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe089.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe089
"SyncdWW Rfe LwSyncdRW Rfe SyncsRR Fre SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
lwsync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r2) | sync | sync ;
stw r3,0(r4) | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r9,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe089 Allowed
Histogram (41 states)
2 :>0:r1=1; 1:r1=2; 1:r3=1; y=1; z=2;
1 :>0:r1=1; 1:r1=0; 1:r3=2; y=1; z=2;
2 :>0:r1=1; 1:r1=0; 1:r3=0; y=1; z=2;
1 :>0:r1=1; 1:r1=1; 1:r3=1; y=2; z=1;
12 :>0:r1=0; 1:r1=0; 1:r3=1; y=2; z=2;
39 :>0:r1=1; 1:r1=2; 1:r3=2; y=2; z=1;
63 :>0:r1=1; 1:r1=1; 1:r3=2; y=2; z=1;
186 :>0:r1=0; 1:r1=0; 1:r3=2; y=1; z=2;
85 :>0:r1=0; 1:r1=0; 1:r3=2; y=2; z=2;
181 :>0:r1=1; 1:r1=2; 1:r3=2; y=1; z=2;
99 :>0:r1=0; 1:r1=0; 1:r3=0; y=2; z=2;
266 :>0:r1=1; 1:r1=0; 1:r3=1; y=2; z=1;
233 :>0:r1=0; 1:r1=1; 1:r3=2; y=2; z=2;
74 :>0:r1=0; 1:r1=1; 1:r3=1; y=2; z=2;
1145 :>0:r1=1; 1:r1=0; 1:r3=2; y=2; z=1;
197 :>0:r1=0; 1:r1=0; 1:r3=1; y=1; z=2;
4332 :>0:r1=1; 1:r1=2; 1:r3=1; y=1; z=1;
285 :>0:r1=1; 1:r1=1; 1:r3=1; y=1; z=2;
801 :>0:r1=0; 1:r1=2; 1:r3=2; y=2; z=2;
4150 :>0:r1=1; 1:r1=0; 1:r3=1; y=1; z=1;
4810 :>0:r1=1; 1:r1=0; 1:r3=0; y=2; z=1;
53374 :>0:r1=0; 1:r1=1; 1:r3=1; y=2; z=1;
1732 :>0:r1=0; 1:r1=0; 1:r3=0; y=1; z=2;
31279 :>0:r1=0; 1:r1=2; 1:r3=1; y=1; z=2;
22582 :>0:r1=0; 1:r1=1; 1:r3=1; y=1; z=2;
62086 :>0:r1=0; 1:r1=1; 1:r3=2; y=2; z=1;
15178 :>0:r1=0; 1:r1=1; 1:r3=1; y=1; z=1;
6421 :>0:r1=0; 1:r1=0; 1:r3=2; y=1; z=1;
28115 :>0:r1=0; 1:r1=0; 1:r3=2; y=2; z=1;
113676:>0:r1=1; 1:r1=0; 1:r3=0; y=1; z=1;
60328 :>0:r1=0; 1:r1=2; 1:r3=2; y=2; z=1;
49927 :>0:r1=1; 1:r1=2; 1:r3=2; y=1; z=1;
123686:>0:r1=0; 1:r1=2; 1:r3=2; y=1; z=2;
27638 :>0:r1=1; 1:r1=0; 1:r3=2; y=1; z=1;
104655:>0:r1=0; 1:r1=0; 1:r3=0; y=2; z=1;
22589 :>0:r1=0; 1:r1=0; 1:r3=1; y=1; z=1;
31233 :>0:r1=0; 1:r1=2; 1:r3=2; y=1; z=1;
43308 :>0:r1=0; 1:r1=2; 1:r3=1; y=1; z=1;
169066:>0:r1=0; 1:r1=0; 1:r3=0; y=1; z=1;
2382 :>0:r1=1; 1:r1=1; 1:r3=1; y=1; z=1;
13781 :>0:r1=0; 1:r1=0; 1:r3=1; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1) is NOT validated
Hash=d27869d64b859c026a08cf2e6316bf66
Cycle=SyncdWW Rfe LwSyncdRW Rfe SyncsRR Fre SyncdWW Wse
Relax safe089 No
Safe=Fre Wse SyncdWW LwSyncdRW ACSyncsRR BCSyncdWW
Time safe089 2.89
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe090.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe090
"Rfe SyncdRW Rfe SyncsRR Fre SyncdWW Wse"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r2) | sync | ;
stw r3,0(r4) | | li r3,1 | ;
| | stw r3,0(r4) | ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r9,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe090 Allowed
Histogram (50 states)
2 :>0:r1=0; 1:r1=0; 1:r3=1; x=2; y=2;
4 :>0:r1=0; 1:r1=1; 1:r3=1; x=2; y=2;
1 :>0:r1=2; 1:r1=0; 1:r3=2; x=1; y=2;
23 :>0:r1=1; 1:r1=0; 1:r3=0; x=1; y=2;
14 :>0:r1=0; 1:r1=0; 1:r3=2; x=2; y=2;
8 :>0:r1=0; 1:r1=1; 1:r3=2; x=2; y=2;
20 :>0:r1=2; 1:r1=1; 1:r3=1; x=1; y=2;
35 :>0:r1=2; 1:r1=0; 1:r3=0; x=1; y=2;
18 :>0:r1=0; 1:r1=0; 1:r3=1; x=1; y=2;
6 :>0:r1=0; 1:r1=0; 1:r3=0; x=2; y=2;
140 :>0:r1=1; 1:r1=1; 1:r3=1; x=1; y=2;
120 :>0:r1=0; 1:r1=2; 1:r3=2; x=2; y=2;
69 :>0:r1=2; 1:r1=2; 1:r3=1; x=1; y=2;
125 :>0:r1=1; 1:r1=2; 1:r3=1; x=1; y=1;
438 :>0:r1=2; 1:r1=1; 1:r3=1; x=2; y=1;
1139 :>0:r1=2; 1:r1=1; 1:r3=2; x=2; y=1;
244 :>0:r1=0; 1:r1=0; 1:r3=2; x=1; y=2;
1912 :>0:r1=2; 1:r1=2; 1:r3=2; x=2; y=1;
2292 :>0:r1=2; 1:r1=0; 1:r3=1; x=2; y=1;
6478 :>0:r1=2; 1:r1=0; 1:r3=2; x=2; y=1;
7913 :>0:r1=0; 1:r1=0; 1:r3=1; x=2; y=1;
1583 :>0:r1=1; 1:r1=2; 1:r3=1; x=1; y=2;
9395 :>0:r1=0; 1:r1=0; 1:r3=1; x=1; y=1;
19273 :>0:r1=1; 1:r1=2; 1:r3=2; x=1; y=2;
11842 :>0:r1=2; 1:r1=0; 1:r3=0; x=2; y=1;
10189 :>0:r1=0; 1:r1=0; 1:r3=0; x=1; y=2;
10042 :>0:r1=0; 1:r1=1; 1:r3=1; x=1; y=2;
2315 :>0:r1=0; 1:r1=0; 1:r3=2; x=1; y=1;
9628 :>0:r1=0; 1:r1=2; 1:r3=1; x=1; y=1;
15098 :>0:r1=1; 1:r1=0; 1:r3=0; x=1; y=1;
63143 :>0:r1=1; 1:r1=2; 1:r3=2; x=1; y=1;
20063 :>0:r1=2; 1:r1=2; 1:r3=2; x=1; y=2;
31436 :>0:r1=0; 1:r1=1; 1:r3=1; x=2; y=1;
445 :>0:r1=1; 1:r1=0; 1:r3=2; x=1; y=1;
58699 :>0:r1=0; 1:r1=1; 1:r3=2; x=2; y=1;
54549 :>0:r1=2; 1:r1=0; 1:r3=2; x=1; y=1;
10760 :>0:r1=0; 1:r1=1; 1:r3=1; x=1; y=1;
15013 :>0:r1=2; 1:r1=2; 1:r3=1; x=1; y=1;
14333 :>0:r1=2; 1:r1=0; 1:r3=1; x=1; y=1;
59798 :>0:r1=0; 1:r1=2; 1:r3=1; x=1; y=2;
19839 :>0:r1=0; 1:r1=0; 1:r3=0; x=2; y=1;
18001 :>0:r1=0; 1:r1=0; 1:r3=2; x=2; y=1;
88736 :>0:r1=0; 1:r1=0; 1:r3=0; x=1; y=1;
49827 :>0:r1=0; 1:r1=2; 1:r3=2; x=1; y=2;
11486 :>0:r1=0; 1:r1=2; 1:r3=2; x=1; y=1;
20769 :>0:r1=2; 1:r1=2; 1:r3=2; x=1; y=1;
250635:>0:r1=2; 1:r1=0; 1:r3=0; x=1; y=1;
245 :>0:r1=1; 1:r1=1; 1:r3=1; x=1; y=1;
92123 :>0:r1=0; 1:r1=2; 1:r3=2; x=2; y=1;
9734 :>0:r1=2; 1:r1=1; 1:r3=1; x=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=1) is NOT validated
Hash=3e90de92efcf72f6fc29a2f7570df1ef
Cycle=Rfe SyncdRW Rfe SyncsRR Fre SyncdWW Wse
Relax safe090 No
Safe=Fre Wse SyncdWW ACSyncsRR ACSyncdRW
Time safe090 2.81
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe091.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe091
"LwSyncdWW Rfe SyncdRW Rfe SyncsRR Fre SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r2) | sync | lwsync ;
stw r3,0(r4) | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r9,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe091 Allowed
Histogram (40 states)
1 :>0:r1=1; 1:r1=1; 1:r3=1; y=2; z=1;
2 :>0:r1=1; 1:r1=1; 1:r3=2; y=2; z=1;
6 :>0:r1=1; 1:r1=0; 1:r3=0; y=1; z=2;
8 :>0:r1=1; 1:r1=2; 1:r3=2; y=2; z=1;
7 :>0:r1=0; 1:r1=0; 1:r3=1; y=2; z=2;
112 :>0:r1=1; 1:r1=0; 1:r3=1; y=2; z=1;
18 :>0:r1=1; 1:r1=2; 1:r3=1; y=1; z=2;
201 :>0:r1=0; 1:r1=0; 1:r3=2; y=1; z=2;
141 :>0:r1=0; 1:r1=1; 1:r3=2; y=2; z=2;
181 :>0:r1=0; 1:r1=0; 1:r3=2; y=2; z=2;
289 :>0:r1=1; 1:r1=2; 1:r3=2; y=1; z=2;
6 :>0:r1=0; 1:r1=1; 1:r3=1; y=2; z=2;
110 :>0:r1=0; 1:r1=0; 1:r3=0; y=2; z=2;
364 :>0:r1=0; 1:r1=2; 1:r3=2; y=2; z=2;
332 :>0:r1=1; 1:r1=1; 1:r3=1; y=1; z=2;
639 :>0:r1=0; 1:r1=0; 1:r3=1; y=1; z=2;
890 :>0:r1=1; 1:r1=0; 1:r3=2; y=2; z=1;
3143 :>0:r1=0; 1:r1=0; 1:r3=0; y=1; z=2;
4069 :>0:r1=1; 1:r1=0; 1:r3=1; y=1; z=1;
5404 :>0:r1=1; 1:r1=2; 1:r3=1; y=1; z=1;
1830 :>0:r1=1; 1:r1=0; 1:r3=0; y=2; z=1;
6662 :>0:r1=0; 1:r1=1; 1:r3=1; y=1; z=2;
54435 :>0:r1=0; 1:r1=2; 1:r3=2; y=2; z=1;
41196 :>0:r1=0; 1:r1=2; 1:r3=1; y=1; z=1;
12252 :>0:r1=0; 1:r1=0; 1:r3=1; y=2; z=1;
8368 :>0:r1=0; 1:r1=1; 1:r3=1; y=2; z=1;
9274 :>0:r1=0; 1:r1=0; 1:r3=2; y=1; z=1;
40832 :>0:r1=0; 1:r1=0; 1:r3=2; y=2; z=1;
56745 :>0:r1=0; 1:r1=2; 1:r3=2; y=1; z=1;
21688 :>0:r1=0; 1:r1=2; 1:r3=1; y=1; z=2;
33745 :>0:r1=1; 1:r1=0; 1:r3=2; y=1; z=1;
28581 :>0:r1=0; 1:r1=0; 1:r3=1; y=1; z=1;
77014 :>0:r1=1; 1:r1=2; 1:r3=2; y=1; z=1;
48960 :>0:r1=0; 1:r1=0; 1:r3=0; y=2; z=1;
134437:>0:r1=1; 1:r1=0; 1:r3=0; y=1; z=1;
144285:>0:r1=0; 1:r1=2; 1:r3=2; y=1; z=2;
44176 :>0:r1=0; 1:r1=1; 1:r3=2; y=2; z=1;
201101:>0:r1=0; 1:r1=0; 1:r3=0; y=1; z=1;
2438 :>0:r1=1; 1:r1=1; 1:r3=1; y=1; z=1;
16058 :>0:r1=0; 1:r1=1; 1:r3=1; y=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1) is NOT validated
Hash=7d999dbe3603f965427d3dbdeca8cdf0
Cycle=LwSyncdWW Rfe SyncdRW Rfe SyncsRR Fre SyncdWW Wse
Relax safe091 No
Safe=Fre Wse SyncdWW LwSyncdWW ACSyncsRR ACSyncdRW
Time safe091 2.90
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe092.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe092
"Rfe SyncdRR Fre SyncdWW Wse"
{0:r2=y; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,1 | li r1,2 ;
sync | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r4) | sync | ;
| li r3,1 | ;
| stw r3,0(r4) | ;
exists (y=2 /\ 0:r1=2 /\ 0:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r10,1
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r9,2
_litmus_P2_1_: stw r9,0(r2)
Test safe092 Allowed
Histogram (9 states)
650 :>0:r1=0; 0:r3=0; y=2;
36480 :>0:r1=1; 0:r3=1; y=2;
86227 :>0:r1=0; 0:r3=1; y=2;
110255:>0:r1=1; 0:r3=1; y=1;
114097:>0:r1=0; 0:r3=1; y=1;
327339:>0:r1=2; 0:r3=1; y=1;
28688 :>0:r1=2; 0:r3=1; y=2;
295410:>0:r1=0; 0:r3=0; y=1;
854 :>0:r1=2; 0:r3=0; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=2 /\ 0:r3=0) is NOT validated
Hash=35aae3379dd7411c9b994dfb3c7acbf8
Cycle=Rfe SyncdRR Fre SyncdWW Wse
Relax safe092 No
Safe=Fre Wse SyncdWW ACSyncdRR
Time safe092 1.43
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe093.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe093
"LwSyncdWW Wse Rfe SyncdRR Fre SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x; 3:r2=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | li r1,2 | li r1,2 ;
sync | stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwsync | ;
| li r3,1 | li r3,1 | ;
| stw r3,0(r4) | stw r3,0(r4) | ;
exists (x=2 /\ z=2 /\ 0:r1=2 /\ 0:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe093 Allowed
Histogram (21 states)
3 :>0:r1=0; 0:r3=0; x=2; z=2;
5 :>0:r1=2; 0:r3=0; x=1; z=2;
56 :>0:r1=1; 0:r3=1; x=2; z=2;
61 :>0:r1=2; 0:r3=1; x=2; z=2;
2086 :>0:r1=1; 0:r3=1; x=1; z=2;
2528 :>0:r1=0; 0:r3=0; x=1; z=2;
1483 :>0:r1=0; 0:r3=1; x=2; z=2;
7035 :>0:r1=2; 0:r3=0; x=2; z=1;
5856 :>0:r1=1; 0:r3=0; x=1; z=1;
83608 :>0:r1=2; 0:r3=1; x=1; z=2;
19537 :>0:r1=1; 0:r3=0; x=2; z=1;
73627 :>0:r1=2; 0:r3=0; x=1; z=1;
37749 :>0:r1=0; 0:r3=1; x=2; z=1;
38087 :>0:r1=0; 0:r3=0; x=2; z=1;
73688 :>0:r1=1; 0:r3=1; x=2; z=1;
89502 :>0:r1=0; 0:r3=1; x=1; z=2;
131700:>0:r1=2; 0:r3=1; x=1; z=1;
82272 :>0:r1=0; 0:r3=1; x=1; z=1;
93537 :>0:r1=1; 0:r3=1; x=1; z=1;
84289 :>0:r1=2; 0:r3=1; x=2; z=1;
173291:>0:r1=0; 0:r3=0; x=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=2 /\ 0:r3=0) is NOT validated
Hash=ded298de45f7010d319d4f12eed9e733
Cycle=LwSyncdWW Wse Rfe SyncdRR Fre SyncdWW Wse
Relax safe093 No
Safe=Fre Wse SyncdWW LwSyncdWW ACSyncdRR
Time safe093 2.31
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe094.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe094
"SyncdWR Fre Rfe SyncdRR Fre SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x; 3:r2=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | li r1,2 | li r1,1 ;
sync | stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r4) | sync | sync | ;
| li r3,1 | lwz r3,0(r4) | ;
| stw r3,0(r4) | | ;
exists (z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
Test safe094 Allowed
Histogram (15 states)
1 :>0:r1=0; 0:r3=0; 2:r3=0; z=2;
13 :>0:r1=1; 0:r3=0; 2:r3=1; z=2;
218 :>0:r1=1; 0:r3=1; 2:r3=0; z=2;
847 :>0:r1=0; 0:r3=1; 2:r3=0; z=2;
3990 :>0:r1=0; 0:r3=0; 2:r3=1; z=2;
1815 :>0:r1=1; 0:r3=0; 2:r3=0; z=1;
37765 :>0:r1=0; 0:r3=0; 2:r3=0; z=1;
51167 :>0:r1=0; 0:r3=1; 2:r3=1; z=2;
58161 :>0:r1=0; 0:r3=1; 2:r3=1; z=1;
127049:>0:r1=0; 0:r3=1; 2:r3=0; z=1;
126459:>0:r1=1; 0:r3=1; 2:r3=1; z=2;
206270:>0:r1=0; 0:r3=0; 2:r3=1; z=1;
309243:>0:r1=1; 0:r3=1; 2:r3=1; z=1;
45682 :>0:r1=1; 0:r3=1; 2:r3=0; z=1;
31320 :>0:r1=1; 0:r3=0; 2:r3=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r3=0) is NOT validated
Hash=37840f605497f5c546584123e2097687
Cycle=SyncdWR Fre Rfe SyncdRR Fre SyncdWW Wse
Relax safe094 No
Safe=Fre Wse SyncdWW SyncdWR ACSyncdRR
Time safe094 1.96
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe095.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe095
"SyncdWW Rfe DpdW Rfe SyncdRR Fre SyncdWW Wse"
{0:r2=x; 0:r5=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
xor r3,r1,r1 | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r4,1 | lwz r3,0(r4) | sync | sync ;
stwx r4,r3,r5 | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: xor r11,r7,r7
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stwx r8,r11,r2
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r11,1
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe095 Allowed
Histogram (14 states)
1 :>0:r1=1; 1:r1=1; 1:r3=1; a=2;
20 :>0:r1=1; 1:r1=1; 1:r3=0; a=1;
6 :>0:r1=0; 1:r1=1; 1:r3=0; a=2;
3351 :>0:r1=1; 1:r1=1; 1:r3=1; a=1;
2213 :>0:r1=0; 1:r1=0; 1:r3=0; a=2;
318 :>0:r1=1; 1:r1=0; 1:r3=1; a=2;
11871 :>0:r1=1; 1:r1=0; 1:r3=0; a=1;
5910 :>0:r1=0; 1:r1=1; 1:r3=0; a=1;
121763:>0:r1=0; 1:r1=0; 1:r3=1; a=2;
101964:>0:r1=1; 1:r1=0; 1:r3=1; a=1;
137226:>0:r1=0; 1:r1=0; 1:r3=1; a=1;
251138:>0:r1=0; 1:r1=0; 1:r3=0; a=1;
230790:>0:r1=0; 1:r1=1; 1:r3=1; a=1;
133429:>0:r1=0; 1:r1=1; 1:r3=1; a=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=0) is NOT validated
Hash=2aa5ad32a62ef7327a59e034b27637f8
Cycle=SyncdWW Rfe DpdW Rfe SyncdRR Fre SyncdWW Wse
Relax safe095 No
Safe=Fre Wse SyncdWW DpdW ACSyncdRR BCSyncdWW
Time safe095 2.13
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe096.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe096
"SyncdWW Rfe DpsW Rfe SyncdRR Fre SyncdWW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
xor r3,r1,r1 | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r4,2 | lwz r3,0(r4) | sync | sync ;
stwx r4,r3,r2 | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: xor r11,r8,r8
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stwx r9,r11,r2
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r11,1
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe096 Allowed
Histogram (29 states)
5 :>0:r1=1; 1:r1=1; 1:r3=1; x=2; z=2;
1 :>0:r1=0; 1:r1=2; 1:r3=0; x=2; z=1;
6 :>0:r1=0; 1:r1=0; 1:r3=0; x=2; z=2;
27 :>0:r1=1; 1:r1=2; 1:r3=0; x=2; z=1;
18 :>0:r1=0; 1:r1=1; 1:r3=1; x=2; z=2;
17 :>0:r1=0; 1:r1=1; 1:r3=0; x=2; z=1;
310 :>0:r1=1; 1:r1=1; 1:r3=0; x=2; z=1;
227 :>0:r1=0; 1:r1=1; 1:r3=0; x=1; z=1;
765 :>0:r1=0; 1:r1=1; 1:r3=1; x=1; z=2;
371 :>0:r1=1; 1:r1=2; 1:r3=1; x=2; z=2;
273 :>0:r1=0; 1:r1=2; 1:r3=0; x=1; z=2;
912 :>0:r1=0; 1:r1=0; 1:r3=1; x=2; z=2;
135 :>0:r1=1; 1:r1=0; 1:r3=1; x=2; z=2;
4952 :>0:r1=1; 1:r1=0; 1:r3=0; x=2; z=1;
2109 :>0:r1=0; 1:r1=1; 1:r3=1; x=2; z=1;
1453 :>0:r1=0; 1:r1=2; 1:r3=1; x=2; z=1;
20152 :>0:r1=0; 1:r1=0; 1:r3=0; x=2; z=1;
4628 :>0:r1=0; 1:r1=0; 1:r3=0; x=1; z=2;
23414 :>0:r1=1; 1:r1=0; 1:r3=1; x=2; z=1;
18852 :>0:r1=0; 1:r1=0; 1:r3=1; x=2; z=1;
37475 :>0:r1=0; 1:r1=0; 1:r3=1; x=1; z=2;
58318 :>0:r1=1; 1:r1=1; 1:r3=1; x=2; z=1;
25683 :>0:r1=0; 1:r1=0; 1:r3=1; x=1; z=1;
196902:>0:r1=0; 1:r1=2; 1:r3=1; x=1; z=1;
172264:>0:r1=0; 1:r1=2; 1:r3=1; x=1; z=2;
113239:>0:r1=0; 1:r1=2; 1:r3=0; x=1; z=1;
199701:>0:r1=0; 1:r1=0; 1:r3=0; x=1; z=1;
34660 :>0:r1=1; 1:r1=2; 1:r3=1; x=2; z=1;
83131 :>0:r1=0; 1:r1=1; 1:r3=1; x=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0) is NOT validated
Hash=99281ce138980d0eadd70393a94216e7
Cycle=SyncdWW Rfe DpsW Rfe SyncdRR Fre SyncdWW Wse
Relax safe096 No
Safe=Fre Wse SyncdWW DpsW ACSyncdRR BCSyncdWW
Time safe096 2.68
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe097.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe097
"LwSyncdWW Rfe SyncdRR Fre SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,1 | li r1,2 ;
sync | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwsync ;
| li r3,1 | li r3,1 ;
| stw r3,0(r4) | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 0:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r10,1
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe097 Allowed
Histogram (7 states)
2921 :>0:r1=1; 0:r3=0; z=1;
2412 :>0:r1=1; 0:r3=1; z=2;
276 :>0:r1=0; 0:r3=0; z=2;
180689:>0:r1=0; 0:r3=1; z=2;
306003:>0:r1=0; 0:r3=0; z=1;
196125:>0:r1=0; 0:r3=1; z=1;
311574:>0:r1=1; 0:r3=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 0:r3=0) is NOT validated
Hash=1672b3ef407e294fb87b77307234ea02
Cycle=LwSyncdWW Rfe SyncdRR Fre SyncdWW Wse
Relax safe097 No
Safe=Fre Wse SyncdWW LwSyncdWW ACSyncdRR
Time safe097 1.68
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe098.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe098
"SyncdWW Rfe LwSyncdRW Rfe SyncdRR Fre SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
lwsync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r4) | sync | sync ;
stw r3,0(r4) | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r11,1
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe098 Allowed
Histogram (13 states)
1 :>0:r1=0; 1:r1=1; 1:r3=0; a=2;
12 :>0:r1=1; 1:r1=1; 1:r3=0; a=1;
281 :>0:r1=1; 1:r1=0; 1:r3=1; a=2;
289 :>0:r1=0; 1:r1=0; 1:r3=0; a=2;
2123 :>0:r1=0; 1:r1=1; 1:r3=0; a=1;
2677 :>0:r1=1; 1:r1=1; 1:r3=1; a=1;
55803 :>0:r1=0; 1:r1=1; 1:r3=1; a=2;
46919 :>0:r1=1; 1:r1=0; 1:r3=0; a=1;
100302:>0:r1=1; 1:r1=0; 1:r3=1; a=1;
152188:>0:r1=0; 1:r1=0; 1:r3=1; a=2;
234139:>0:r1=0; 1:r1=0; 1:r3=0; a=1;
235059:>0:r1=0; 1:r1=1; 1:r3=1; a=1;
170207:>0:r1=0; 1:r1=0; 1:r3=1; a=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=0) is NOT validated
Hash=b58456d81ec328503da1d070ee7abbf8
Cycle=SyncdWW Rfe LwSyncdRW Rfe SyncdRR Fre SyncdWW Wse
Relax safe098 No
Safe=Fre Wse SyncdWW LwSyncdRW ACSyncdRR BCSyncdWW
Time safe098 2.09
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe099.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe099
"SyncdWW Rfe LwSyncsRW Rfe SyncdRR Fre SyncdWW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
lwsync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,2 | lwz r3,0(r4) | sync | sync ;
stw r3,0(r2) | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r11,1
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe099 Allowed
Histogram (31 states)
3 :>0:r1=1; 1:r1=0; 1:r3=0; x=2; z=2;
2 :>0:r1=0; 1:r1=2; 1:r3=1; x=2; z=2;
5 :>0:r1=0; 1:r1=2; 1:r3=0; x=2; z=1;
6 :>0:r1=1; 1:r1=1; 1:r3=1; x=2; z=2;
16 :>0:r1=0; 1:r1=0; 1:r3=0; x=2; z=2;
11 :>0:r1=0; 1:r1=1; 1:r3=1; x=2; z=2;
11 :>0:r1=1; 1:r1=2; 1:r3=0; x=2; z=1;
150 :>0:r1=0; 1:r1=1; 1:r3=0; x=1; z=1;
31 :>0:r1=0; 1:r1=1; 1:r3=0; x=2; z=1;
493 :>0:r1=1; 1:r1=0; 1:r3=1; x=2; z=2;
506 :>0:r1=0; 1:r1=1; 1:r3=1; x=1; z=2;
891 :>0:r1=0; 1:r1=2; 1:r3=0; x=1; z=2;
1428 :>0:r1=1; 1:r1=1; 1:r3=0; x=2; z=1;
8581 :>0:r1=0; 1:r1=2; 1:r3=1; x=2; z=1;
5306 :>0:r1=0; 1:r1=1; 1:r3=1; x=2; z=1;
7542 :>0:r1=0; 1:r1=0; 1:r3=1; x=2; z=2;
33817 :>0:r1=1; 1:r1=1; 1:r3=1; x=2; z=1;
24194 :>0:r1=1; 1:r1=0; 1:r3=0; x=2; z=1;
64309 :>0:r1=0; 1:r1=0; 1:r3=0; x=2; z=1;
36749 :>0:r1=1; 1:r1=0; 1:r3=1; x=2; z=1;
42554 :>0:r1=0; 1:r1=1; 1:r3=1; x=1; z=1;
61378 :>0:r1=0; 1:r1=2; 1:r3=0; x=1; z=1;
91152 :>0:r1=0; 1:r1=2; 1:r3=1; x=1; z=2;
48537 :>0:r1=0; 1:r1=0; 1:r3=1; x=2; z=1;
40341 :>0:r1=0; 1:r1=0; 1:r3=1; x=1; z=1;
110229:>0:r1=0; 1:r1=0; 1:r3=1; x=1; z=2;
190174:>0:r1=0; 1:r1=2; 1:r3=1; x=1; z=1;
142826:>0:r1=0; 1:r1=0; 1:r3=0; x=1; z=1;
61672 :>0:r1=1; 1:r1=2; 1:r3=1; x=2; z=1;
350 :>0:r1=1; 1:r1=2; 1:r3=1; x=2; z=2;
26736 :>0:r1=0; 1:r1=0; 1:r3=0; x=1; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0) is NOT validated
Hash=e3af3e2e8c9a111969d7862c8bb78b85
Cycle=SyncdWW Rfe LwSyncsRW Rfe SyncdRR Fre SyncdWW Wse
Relax safe099 No
Safe=Fre Wse SyncdWW LwSyncsRW ACSyncdRR BCSyncdWW
Time safe099 2.68
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe100.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe100
"LwSyncdWW Rfe SyncsRW Rfe SyncdRR Fre SyncdWW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,2 | lwz r3,0(r4) | sync | lwsync ;
stw r3,0(r2) | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r11,1
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe100 Allowed
Histogram (31 states)
2 :>0:r1=1; 1:r1=0; 1:r3=0; x=2; z=2;
11 :>0:r1=1; 1:r1=2; 1:r3=0; x=2; z=1;
41 :>0:r1=0; 1:r1=1; 1:r3=0; x=1; z=1;
34 :>0:r1=0; 1:r1=2; 1:r3=0; x=2; z=1;
28 :>0:r1=1; 1:r1=1; 1:r3=1; x=2; z=2;
77 :>0:r1=0; 1:r1=2; 1:r3=1; x=2; z=2;
27 :>0:r1=0; 1:r1=0; 1:r3=0; x=2; z=2;
306 :>0:r1=0; 1:r1=1; 1:r3=1; x=2; z=2;
68 :>0:r1=0; 1:r1=2; 1:r3=0; x=1; z=2;
234 :>0:r1=0; 1:r1=1; 1:r3=0; x=2; z=1;
804 :>0:r1=1; 1:r1=1; 1:r3=0; x=2; z=1;
535 :>0:r1=1; 1:r1=0; 1:r3=1; x=2; z=2;
10734 :>0:r1=0; 1:r1=0; 1:r3=0; x=1; z=2;
23735 :>0:r1=0; 1:r1=0; 1:r3=1; x=2; z=2;
5381 :>0:r1=1; 1:r1=0; 1:r3=0; x=2; z=1;
118497:>0:r1=0; 1:r1=2; 1:r3=1; x=1; z=2;
15344 :>0:r1=1; 1:r1=0; 1:r3=1; x=2; z=1;
36093 :>0:r1=0; 1:r1=1; 1:r3=1; x=2; z=1;
35207 :>0:r1=0; 1:r1=2; 1:r3=1; x=2; z=1;
83513 :>0:r1=0; 1:r1=2; 1:r3=0; x=1; z=1;
31019 :>0:r1=0; 1:r1=0; 1:r3=1; x=2; z=1;
89118 :>0:r1=0; 1:r1=0; 1:r3=0; x=2; z=1;
16916 :>0:r1=0; 1:r1=1; 1:r3=1; x=1; z=1;
28435 :>0:r1=0; 1:r1=0; 1:r3=1; x=1; z=1;
131076:>0:r1=1; 1:r1=1; 1:r3=1; x=2; z=1;
47486 :>0:r1=0; 1:r1=0; 1:r3=1; x=1; z=2;
160469:>0:r1=0; 1:r1=2; 1:r3=1; x=1; z=1;
145974:>0:r1=0; 1:r1=0; 1:r3=0; x=1; z=1;
14449 :>0:r1=1; 1:r1=2; 1:r3=1; x=2; z=1;
308 :>0:r1=1; 1:r1=2; 1:r3=1; x=2; z=2;
4079 :>0:r1=0; 1:r1=1; 1:r3=1; x=1; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0) is NOT validated
Hash=381b1b234e88befbd33c5715bafc2fa8
Cycle=LwSyncdWW Rfe SyncsRW Rfe SyncdRR Fre SyncdWW Wse
Relax safe100 No
Safe=Fre Wse SyncdWW LwSyncdWW ACSyncsRW ACSyncdRR
Time safe100 2.62
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe101.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe101
"Rfe SyncdRW Rfe SyncdRR Fre SyncdWW Wse"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r4) | sync | ;
stw r3,0(r4) | | li r3,1 | ;
| | stw r3,0(r4) | ;
exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r11,1
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe101 Allowed
Histogram (21 states)
3 :>0:r1=0; 1:r1=1; 1:r3=0; z=2;
6 :>0:r1=2; 1:r1=1; 1:r3=0; z=1;
11 :>0:r1=1; 1:r1=0; 1:r3=0; z=2;
481 :>0:r1=0; 1:r1=0; 1:r3=0; z=2;
1447 :>0:r1=1; 1:r1=1; 1:r3=1; z=2;
491 :>0:r1=2; 1:r1=1; 1:r3=1; z=2;
26 :>0:r1=2; 1:r1=0; 1:r3=0; z=2;
3680 :>0:r1=0; 1:r1=1; 1:r3=0; z=1;
22145 :>0:r1=2; 1:r1=0; 1:r3=1; z=2;
10079 :>0:r1=1; 1:r1=0; 1:r3=0; z=1;
28398 :>0:r1=2; 1:r1=1; 1:r3=1; z=1;
20504 :>0:r1=1; 1:r1=0; 1:r3=1; z=2;
85402 :>0:r1=1; 1:r1=0; 1:r3=1; z=1;
10144 :>0:r1=0; 1:r1=1; 1:r3=1; z=2;
65798 :>0:r1=0; 1:r1=0; 1:r3=1; z=1;
257255:>0:r1=2; 1:r1=0; 1:r3=1; z=1;
46255 :>0:r1=0; 1:r1=0; 1:r3=1; z=2;
189925:>0:r1=0; 1:r1=1; 1:r3=1; z=1;
112645:>0:r1=0; 1:r1=0; 1:r3=0; z=1;
2515 :>0:r1=1; 1:r1=1; 1:r3=1; z=1;
142790:>0:r1=2; 1:r1=0; 1:r3=0; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=0) is NOT validated
Hash=be9420ad85da25841ad280a4fe8bf88c
Cycle=Rfe SyncdRW Rfe SyncdRR Fre SyncdWW Wse
Relax safe101 No
Safe=Fre Wse SyncdWW ACSyncdRW ACSyncdRR
Time safe101 2.08
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe102.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe102
"LwSyncdWW Rfe SyncdRW Rfe SyncdRR Fre SyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r4) | sync | lwsync ;
stw r3,0(r4) | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r11,1
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe102 Allowed
Histogram (15 states)
5 :>0:r1=1; 1:r1=0; 1:r3=0; a=2;
3 :>0:r1=0; 1:r1=1; 1:r3=0; a=2;
3 :>0:r1=1; 1:r1=1; 1:r3=1; a=2;
13 :>0:r1=1; 1:r1=1; 1:r3=0; a=1;
5735 :>0:r1=1; 1:r1=1; 1:r3=1; a=1;
20904 :>0:r1=0; 1:r1=1; 1:r3=1; a=2;
8659 :>0:r1=0; 1:r1=1; 1:r3=0; a=1;
6455 :>0:r1=0; 1:r1=0; 1:r3=0; a=2;
210763:>0:r1=0; 1:r1=0; 1:r3=1; a=2;
57265 :>0:r1=1; 1:r1=0; 1:r3=0; a=1;
190657:>0:r1=0; 1:r1=0; 1:r3=0; a=1;
162366:>0:r1=0; 1:r1=0; 1:r3=1; a=1;
174136:>0:r1=1; 1:r1=0; 1:r3=1; a=1;
160643:>0:r1=0; 1:r1=1; 1:r3=1; a=1;
2393 :>0:r1=1; 1:r1=0; 1:r3=1; a=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=0) is NOT validated
Hash=643e9f052590af0007cb98bb9493653a
Cycle=LwSyncdWW Rfe SyncdRW Rfe SyncdRR Fre SyncdWW Wse
Relax safe102 No
Safe=Fre Wse SyncdWW LwSyncdWW ACSyncdRW ACSyncdRR
Time safe102 2.07
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe103.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe103
"SyncdWW Rfe DpdR Fre SyncsWW Rfe SyncdRW Wse"
{0:r2=x; 0:r5=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwzx r4,r3,r5 | sync | li r3,1 | sync ;
| li r3,2 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r2) | | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r4=0 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r6,0(r9)
_litmus_P0_1_: xor r11,r6,r6
_litmus_P0_2_: lwzx r7,r11,r2
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe103 Allowed
Histogram (31 states)
2 :>0:r1=1; 0:r4=0; 2:r1=2; y=2; z=1;
5 :>0:r1=1; 0:r4=1; 2:r1=1; y=2; z=1;
5 :>0:r1=0; 0:r4=1; 2:r1=1; y=2; z=2;
17 :>0:r1=1; 0:r4=0; 2:r1=1; y=2; z=1;
3 :>0:r1=1; 0:r4=1; 2:r1=0; y=2; z=2;
22 :>0:r1=0; 0:r4=1; 2:r1=1; y=2; z=1;
9 :>0:r1=1; 0:r4=2; 2:r1=2; y=2; z=2;
402 :>0:r1=1; 0:r4=1; 2:r1=2; y=2; z=1;
32 :>0:r1=1; 0:r4=2; 2:r1=1; y=2; z=2;
1088 :>0:r1=0; 0:r4=0; 2:r1=1; y=2; z=2;
107 :>0:r1=0; 0:r4=0; 2:r1=2; y=2; z=2;
47 :>0:r1=0; 0:r4=1; 2:r1=2; y=2; z=2;
2724 :>0:r1=1; 0:r4=0; 2:r1=0; y=2; z=1;
40869 :>0:r1=0; 0:r4=0; 2:r1=2; y=2; z=1;
76709 :>0:r1=1; 0:r4=1; 2:r1=0; y=2; z=1;
27773 :>0:r1=0; 0:r4=2; 2:r1=2; y=2; z=2;
14013 :>0:r1=0; 0:r4=2; 2:r1=0; y=2; z=1;
38927 :>0:r1=1; 0:r4=2; 2:r1=2; y=2; z=1;
33616 :>0:r1=0; 0:r4=2; 2:r1=1; y=2; z=1;
68253 :>0:r1=0; 0:r4=0; 2:r1=0; y=2; z=2;
38422 :>0:r1=0; 0:r4=2; 2:r1=1; y=2; z=2;
85459 :>0:r1=0; 0:r4=0; 2:r1=0; y=2; z=1;
79339 :>0:r1=0; 0:r4=1; 2:r1=0; y=2; z=2;
106625:>0:r1=0; 0:r4=2; 2:r1=0; y=2; z=2;
143575:>0:r1=0; 0:r4=2; 2:r1=2; y=2; z=1;
31853 :>0:r1=0; 0:r4=1; 2:r1=0; y=2; z=1;
93207 :>0:r1=0; 0:r4=0; 2:r1=1; y=2; z=1;
33512 :>0:r1=1; 0:r4=2; 2:r1=1; y=2; z=1;
67084 :>0:r1=1; 0:r4=2; 2:r1=0; y=2; z=1;
2223 :>0:r1=1; 0:r4=2; 2:r1=0; y=2; z=2;
14078 :>0:r1=0; 0:r4=1; 2:r1=2; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r4=0 /\ 2:r1=2) is NOT validated
Hash=fdbb3481b7efecd0eee058e719244582
Cycle=SyncdWW Rfe DpdR Fre SyncsWW Rfe SyncdRW Wse
Relax safe103 No
Safe=Fre Wse SyncdRW DpdR BCSyncsWW BCSyncdWW
Time safe103 2.54
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe104.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe104
"SyncdWR Fre SyncsWW Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
li r1,1 | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | sync | stw r1,0(r2) ;
sync | li r3,1 | sync ;
li r3,2 | stw r3,0(r4) | lwz r3,0(r4) ;
stw r3,0(r2) | | ;
exists (x=2 /\ y=2 /\ 1:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: li r9,1
_litmus_P0_1_: stw r9,0(r2)
_litmus_P0_2_: sync
_litmus_P0_3_: li r11,2
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r10,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stw r8,0(r2)
_litmus_P2_0_: li r8,2
_litmus_P2_1_: stw r8,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r10,0(r2)
Test safe104 Allowed
Histogram (14 states)
54 :>1:r1=1; 2:r3=1; x=2; y=1;
1984 :>1:r1=1; 2:r3=2; x=2; y=2;
107 :>1:r1=0; 2:r3=0; x=2; y=2;
9825 :>1:r1=0; 2:r3=1; x=2; y=2;
110593:>1:r1=0; 2:r3=1; x=2; y=1;
6317 :>1:r1=2; 2:r3=2; x=2; y=2;
37970 :>1:r1=2; 2:r3=1; x=2; y=1;
16630 :>1:r1=1; 2:r3=0; x=2; y=1;
150836:>1:r1=0; 2:r3=0; x=2; y=1;
26036 :>1:r1=0; 2:r3=2; x=2; y=1;
48483 :>1:r1=1; 2:r3=2; x=2; y=1;
266173:>1:r1=0; 2:r3=2; x=2; y=2;
314360:>1:r1=2; 2:r3=2; x=2; y=1;
10632 :>1:r1=2; 2:r3=0; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 1:r1=2 /\ 2:r3=0) is NOT validated
Hash=54374f31f1bfac82b7d05b6f6766c8a8
Cycle=SyncdWR Fre SyncsWW Rfe SyncdRW Wse
Relax safe104 No
Safe=Fre Wse SyncdWR SyncdRW BCSyncsWW
Time safe104 1.63
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe105.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe105
"SyncdWW Rfe SyncdRR Fre SyncsWW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | li r3,1 | sync ;
| li r3,2 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r2) | | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe105 Allowed
Histogram (30 states)
1 :>0:r1=1; 0:r3=0; 2:r1=0; y=2; z=2;
2 :>0:r1=0; 0:r3=1; 2:r1=1; y=2; z=2;
2 :>0:r1=1; 0:r3=0; 2:r1=1; y=2; z=1;
8 :>0:r1=1; 0:r3=1; 2:r1=1; y=2; z=1;
55 :>0:r1=1; 0:r3=1; 2:r1=2; y=2; z=1;
20 :>0:r1=0; 0:r3=1; 2:r1=2; y=2; z=2;
13 :>0:r1=1; 0:r3=2; 2:r1=2; y=2; z=2;
23 :>0:r1=0; 0:r3=1; 2:r1=1; y=2; z=1;
27 :>0:r1=0; 0:r3=0; 2:r1=2; y=2; z=2;
24 :>0:r1=1; 0:r3=2; 2:r1=1; y=2; z=2;
381 :>0:r1=0; 0:r3=0; 2:r1=1; y=2; z=2;
1078 :>0:r1=1; 0:r3=0; 2:r1=0; y=2; z=1;
12899 :>0:r1=0; 0:r3=2; 2:r1=2; y=2; z=2;
24461 :>0:r1=0; 0:r3=2; 2:r1=1; y=2; z=2;
22589 :>0:r1=0; 0:r3=1; 2:r1=2; y=2; z=1;
112494:>0:r1=0; 0:r3=1; 2:r1=0; y=2; z=2;
16585 :>0:r1=0; 0:r3=0; 2:r1=2; y=2; z=1;
38524 :>0:r1=0; 0:r3=0; 2:r1=0; y=2; z=2;
60120 :>0:r1=1; 0:r3=2; 2:r1=0; y=2; z=1;
24391 :>0:r1=1; 0:r3=1; 2:r1=0; y=2; z=1;
37387 :>0:r1=0; 0:r3=2; 2:r1=1; y=2; z=1;
95959 :>0:r1=0; 0:r3=2; 2:r1=0; y=2; z=2;
177740:>0:r1=0; 0:r3=2; 2:r1=2; y=2; z=1;
58123 :>0:r1=0; 0:r3=1; 2:r1=0; y=2; z=1;
14935 :>0:r1=0; 0:r3=2; 2:r1=0; y=2; z=1;
105913:>0:r1=0; 0:r3=0; 2:r1=1; y=2; z=1;
22396 :>0:r1=1; 0:r3=2; 2:r1=2; y=2; z=1;
87097 :>0:r1=1; 0:r3=2; 2:r1=1; y=2; z=1;
1758 :>0:r1=1; 0:r3=2; 2:r1=0; y=2; z=2;
84995 :>0:r1=0; 0:r3=0; 2:r1=0; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2) is NOT validated
Hash=47cdad16eac5658a47c7192bd60c217a
Cycle=SyncdWW Rfe SyncdRR Fre SyncsWW Rfe SyncdRW Wse
Relax safe105 No
Safe=Fre Wse SyncdRW SyncdRR BCSyncsWW BCSyncdWW
Time safe105 2.55
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe106.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe106
"SyncdWW Rfe LwSyncdRR Fre SyncsWW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
lwsync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | li r3,1 | sync ;
| li r3,2 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r2) | | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe106 Allowed
Histogram (30 states)
6 :>0:r1=1; 0:r3=1; 2:r1=0; y=2; z=2;
4 :>0:r1=1; 0:r3=0; 2:r1=1; y=2; z=1;
1 :>0:r1=0; 0:r3=1; 2:r1=1; y=2; z=2;
2 :>0:r1=1; 0:r3=1; 2:r1=1; y=2; z=1;
24 :>0:r1=0; 0:r3=1; 2:r1=2; y=2; z=2;
20 :>0:r1=1; 0:r3=2; 2:r1=1; y=2; z=2;
31 :>0:r1=1; 0:r3=2; 2:r1=2; y=2; z=2;
90 :>0:r1=1; 0:r3=1; 2:r1=2; y=2; z=1;
117 :>0:r1=0; 0:r3=0; 2:r1=2; y=2; z=2;
7 :>0:r1=0; 0:r3=1; 2:r1=1; y=2; z=1;
824 :>0:r1=0; 0:r3=0; 2:r1=1; y=2; z=2;
3984 :>0:r1=1; 0:r3=0; 2:r1=0; y=2; z=1;
72818 :>0:r1=1; 0:r3=1; 2:r1=0; y=2; z=1;
4187 :>0:r1=0; 0:r3=1; 2:r1=2; y=2; z=1;
21896 :>0:r1=0; 0:r3=0; 2:r1=2; y=2; z=1;
50802 :>0:r1=0; 0:r3=2; 2:r1=1; y=2; z=2;
13712 :>0:r1=1; 0:r3=2; 2:r1=2; y=2; z=1;
83888 :>0:r1=0; 0:r3=0; 2:r1=1; y=2; z=1;
126472:>0:r1=0; 0:r3=2; 2:r1=2; y=2; z=1;
98752 :>0:r1=0; 0:r3=1; 2:r1=0; y=2; z=2;
33858 :>0:r1=0; 0:r3=2; 2:r1=1; y=2; z=1;
67771 :>0:r1=0; 0:r3=2; 2:r1=0; y=2; z=2;
33238 :>0:r1=0; 0:r3=2; 2:r1=2; y=2; z=2;
14311 :>0:r1=0; 0:r3=2; 2:r1=0; y=2; z=1;
38772 :>0:r1=0; 0:r3=1; 2:r1=0; y=2; z=1;
102519:>0:r1=0; 0:r3=0; 2:r1=0; y=2; z=1;
31958 :>0:r1=1; 0:r3=2; 2:r1=1; y=2; z=1;
99587 :>0:r1=1; 0:r3=2; 2:r1=0; y=2; z=1;
2762 :>0:r1=1; 0:r3=2; 2:r1=0; y=2; z=2;
97587 :>0:r1=0; 0:r3=0; 2:r1=0; y=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2) is NOT validated
Hash=3d241539f6b8ca40e1ce0b34a6117396
Cycle=SyncdWW Rfe LwSyncdRR Fre SyncsWW Rfe SyncdRW Wse
Relax safe106 No
Safe=Fre Wse SyncdRW LwSyncdRR BCSyncsWW BCSyncdWW
Time safe106 2.50
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe107.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe107
"Rfe SyncdRR Fre SyncsWW Rfe SyncdRW Wse"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | li r3,1 | ;
| li r3,2 | stw r3,0(r4) | ;
| stw r3,0(r2) | | ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe107 Allowed
Histogram (43 states)
2 :>0:r1=0; 0:r3=1; 2:r1=1; x=2; y=2;
1 :>0:r1=1; 0:r3=1; 2:r1=1; x=2; y=1;
23 :>0:r1=2; 0:r3=1; 2:r1=1; x=2; y=1;
6 :>0:r1=0; 0:r3=0; 2:r1=2; x=2; y=2;
12 :>0:r1=0; 0:r3=1; 2:r1=2; x=2; y=2;
82 :>0:r1=1; 0:r3=2; 2:r1=2; x=2; y=2;
15 :>0:r1=1; 0:r3=2; 2:r1=1; x=2; y=2;
77 :>0:r1=0; 0:r3=0; 2:r1=1; x=2; y=2;
43 :>0:r1=1; 0:r3=0; 2:r1=0; x=2; y=1;
26 :>0:r1=2; 0:r3=2; 2:r1=1; x=2; y=2;
61 :>0:r1=2; 0:r3=0; 2:r1=0; x=2; y=2;
97 :>0:r1=2; 0:r3=2; 2:r1=2; x=2; y=2;
2186 :>0:r1=2; 0:r3=0; 2:r1=1; x=2; y=1;
8991 :>0:r1=1; 0:r3=0; 2:r1=0; x=2; y=2;
3113 :>0:r1=0; 0:r3=2; 2:r1=1; x=2; y=2;
21 :>0:r1=0; 0:r3=1; 2:r1=1; x=2; y=1;
2978 :>0:r1=2; 0:r3=1; 2:r1=0; x=2; y=2;
9785 :>0:r1=2; 0:r3=1; 2:r1=2; x=2; y=1;
1975 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; y=1;
22798 :>0:r1=2; 0:r3=1; 2:r1=0; x=2; y=1;
22842 :>0:r1=1; 0:r3=2; 2:r1=2; x=2; y=1;
6734 :>0:r1=2; 0:r3=0; 2:r1=0; x=2; y=1;
1379 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; y=1;
22296 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; y=1;
17431 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; y=2;
42793 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; y=2;
44314 :>0:r1=0; 0:r3=1; 2:r1=2; x=2; y=1;
2090 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; y=2;
23352 :>0:r1=2; 0:r3=2; 2:r1=0; x=2; y=1;
9949 :>0:r1=1; 0:r3=2; 2:r1=1; x=2; y=1;
19052 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; y=1;
66285 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; y=1;
99004 :>0:r1=0; 0:r3=2; 2:r1=2; x=2; y=1;
28408 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; y=2;
17915 :>0:r1=0; 0:r3=0; 2:r1=2; x=2; y=1;
18402 :>0:r1=0; 0:r3=2; 2:r1=2; x=2; y=2;
71952 :>0:r1=2; 0:r3=2; 2:r1=0; x=2; y=2;
25359 :>0:r1=0; 0:r3=2; 2:r1=1; x=2; y=1;
159065:>0:r1=2; 0:r3=2; 2:r1=2; x=2; y=1;
117920:>0:r1=2; 0:r3=2; 2:r1=1; x=2; y=1;
32313 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; y=2;
98688 :>0:r1=0; 0:r3=0; 2:r1=1; x=2; y=1;
165 :>0:r1=2; 0:r3=0; 2:r1=2; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=2) is NOT validated
Hash=f0f8b97e43b742272e71d4aec652f381
Cycle=Rfe SyncdRR Fre SyncsWW Rfe SyncdRW Wse
Relax safe107 No
Safe=Fre Wse SyncdRW ACSyncdRR BCSyncsWW
Time safe107 2.58
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe108.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe108
"LwSyncdWW Rfe SyncdRR Fre SyncsWW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | li r3,1 | lwsync ;
| li r3,2 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r2) | | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe108 Allowed
Histogram (31 states)
1 :>0:r1=1; 0:r3=0; 2:r1=2; y=2; z=1;
6 :>0:r1=1; 0:r3=1; 2:r1=1; y=2; z=1;
19 :>0:r1=1; 0:r3=0; 2:r1=0; y=2; z=2;
15 :>0:r1=1; 0:r3=2; 2:r1=2; y=2; z=2;
21 :>0:r1=0; 0:r3=1; 2:r1=1; y=2; z=1;
34 :>0:r1=1; 0:r3=1; 2:r1=0; y=2; z=2;
3 :>0:r1=0; 0:r3=1; 2:r1=1; y=2; z=2;
14 :>0:r1=1; 0:r3=2; 2:r1=1; y=2; z=2;
61 :>0:r1=0; 0:r3=0; 2:r1=2; y=2; z=2;
22 :>0:r1=0; 0:r3=1; 2:r1=2; y=2; z=2;
238 :>0:r1=1; 0:r3=1; 2:r1=2; y=2; z=1;
466 :>0:r1=0; 0:r3=0; 2:r1=1; y=2; z=2;
21092 :>0:r1=0; 0:r3=0; 2:r1=2; y=2; z=1;
2959 :>0:r1=1; 0:r3=0; 2:r1=0; y=2; z=1;
58804 :>0:r1=1; 0:r3=1; 2:r1=0; y=2; z=1;
23380 :>0:r1=0; 0:r3=1; 2:r1=2; y=2; z=1;
30421 :>0:r1=0; 0:r3=2; 2:r1=1; y=2; z=1;
99886 :>0:r1=0; 0:r3=0; 2:r1=1; y=2; z=1;
50739 :>0:r1=0; 0:r3=0; 2:r1=0; y=2; z=2;
38562 :>0:r1=1; 0:r3=2; 2:r1=2; y=2; z=1;
102338:>0:r1=0; 0:r3=1; 2:r1=0; y=2; z=2;
161819:>0:r1=0; 0:r3=2; 2:r1=2; y=2; z=1;
90375 :>0:r1=0; 0:r3=2; 2:r1=0; y=2; z=2;
24215 :>0:r1=0; 0:r3=2; 2:r1=1; y=2; z=2;
38313 :>0:r1=0; 0:r3=1; 2:r1=0; y=2; z=1;
10023 :>0:r1=0; 0:r3=2; 2:r1=0; y=2; z=1;
75175 :>0:r1=0; 0:r3=0; 2:r1=0; y=2; z=1;
79659 :>0:r1=1; 0:r3=2; 2:r1=1; y=2; z=1;
66172 :>0:r1=1; 0:r3=2; 2:r1=0; y=2; z=1;
6178 :>0:r1=1; 0:r3=2; 2:r1=0; y=2; z=2;
18990 :>0:r1=0; 0:r3=2; 2:r1=2; y=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2) is NOT validated
Hash=3a9434ca6bb1dfab0c42815d574beac5
Cycle=LwSyncdWW Rfe SyncdRR Fre SyncsWW Rfe SyncdRW Wse
Relax safe108 No
Safe=Fre Wse SyncdRW LwSyncdWW ACSyncdRR BCSyncsWW
Time safe108 2.54
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe109.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe109
"SyncdWW Rfe SyncsRW Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | sync | stw r1,0(r2) ;
li r3,2 | li r3,1 | sync ;
stw r3,0(r2) | stw r3,0(r4) | li r3,1 ;
| | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r10,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stw r8,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe109 Allowed
Histogram (13 states)
188 :>0:r1=1; 1:r1=2; x=2; y=1;
91 :>0:r1=1; 1:r1=0; x=2; y=2;
11386 :>0:r1=0; 1:r1=2; x=1; y=2;
13505 :>0:r1=0; 1:r1=0; x=2; y=2;
8714 :>0:r1=0; 1:r1=2; x=2; y=1;
34081 :>0:r1=0; 1:r1=1; x=2; y=1;
79555 :>0:r1=0; 1:r1=0; x=1; y=1;
32387 :>0:r1=1; 1:r1=1; x=2; y=1;
63720 :>0:r1=1; 1:r1=0; x=2; y=1;
276681:>0:r1=0; 1:r1=2; x=1; y=1;
223962:>0:r1=0; 1:r1=0; x=1; y=2;
12753 :>0:r1=0; 1:r1=1; x=1; y=1;
242977:>0:r1=0; 1:r1=0; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2) is NOT validated
Hash=0524a102a192e94553f2ec8abc111490
Cycle=SyncdWW Rfe SyncsRW Rfe SyncdRW Wse
Relax safe109 No
Safe=Wse SyncdRW BCSyncsRW BCSyncdWW
Time safe109 1.60
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe110.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe110
"LwSyncdWW Wse SyncdWW Rfe SyncsRW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
li r1,2 | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | sync | sync | stw r1,0(r2) ;
sync | li r3,2 | li r3,1 | lwsync ;
li r3,1 | stw r3,0(r2) | stw r3,0(r4) | li r3,1 ;
stw r3,0(r4) | | | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ z=2 /\ 1:r1=1 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: li r11,2
_litmus_P0_1_: stw r11,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r10,1
_litmus_P0_4_: stw r10,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe110 Allowed
Histogram (29 states)
1 :>1:r1=1; 2:r1=1; x=2; y=2; z=1;
5 :>1:r1=0; 2:r1=2; x=1; y=2; z=2;
15 :>1:r1=1; 2:r1=0; x=2; y=2; z=2;
16 :>1:r1=0; 2:r1=2; x=2; y=2; z=1;
76 :>1:r1=0; 2:r1=0; x=2; y=2; z=2;
45 :>1:r1=0; 2:r1=1; x=1; y=1; z=2;
40 :>1:r1=0; 2:r1=2; x=2; y=1; z=2;
208 :>1:r1=1; 2:r1=1; x=1; y=2; z=2;
449 :>1:r1=0; 2:r1=1; x=2; y=2; z=1;
858 :>1:r1=1; 2:r1=0; x=2; y=2; z=1;
2126 :>1:r1=1; 2:r1=2; x=1; y=2; z=1;
49 :>1:r1=0; 2:r1=1; x=1; y=2; z=2;
1236 :>1:r1=0; 2:r1=1; x=2; y=1; z=1;
23760 :>1:r1=0; 2:r1=2; x=1; y=1; z=2;
7283 :>1:r1=1; 2:r1=0; x=1; y=2; z=2;
14710 :>1:r1=0; 2:r1=1; x=1; y=1; z=1;
68375 :>1:r1=0; 2:r1=0; x=2; y=2; z=1;
51414 :>1:r1=0; 2:r1=1; x=1; y=2; z=1;
42622 :>1:r1=1; 2:r1=1; x=1; y=2; z=1;
66151 :>1:r1=1; 2:r1=0; x=1; y=2; z=1;
40390 :>1:r1=0; 2:r1=0; x=1; y=1; z=1;
29972 :>1:r1=0; 2:r1=2; x=1; y=2; z=1;
129936:>1:r1=0; 2:r1=2; x=2; y=1; z=1;
145185:>1:r1=0; 2:r1=0; x=1; y=1; z=2;
42945 :>1:r1=0; 2:r1=0; x=1; y=2; z=1;
127907:>1:r1=0; 2:r1=2; x=1; y=1; z=1;
141657:>1:r1=0; 2:r1=0; x=2; y=1; z=1;
6128 :>1:r1=0; 2:r1=0; x=2; y=1; z=2;
56441 :>1:r1=0; 2:r1=0; x=1; y=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ z=2 /\ 1:r1=1 /\ 2:r1=2) is NOT validated
Hash=734b504a0a1bd3e295f48c0b64c21b88
Cycle=LwSyncdWW Wse SyncdWW Rfe SyncsRW Rfe SyncdRW Wse
Relax safe110 No
Safe=Wse SyncdRW LwSyncdWW BCSyncsRW BCSyncdWW
Time safe110 2.69
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe111.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe111
"SyncdWR Fre SyncdWW Rfe SyncsRW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
li r1,1 | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | sync | sync | stw r1,0(r2) ;
sync | li r3,2 | li r3,1 | sync ;
li r3,1 | stw r3,0(r2) | stw r3,0(r4) | lwz r3,0(r4) ;
stw r3,0(r4) | | | ;
exists (y=2 /\ z=2 /\ 1:r1=1 /\ 2:r1=2 /\ 3:r3=0)
Generated assembler
_litmus_P0_0_: li r11,1
_litmus_P0_1_: stw r11,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r10,1
_litmus_P0_4_: stw r10,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r10,2
_litmus_P3_1_: stw r10,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: lwz r8,0(r2)
Test safe111 Allowed
Histogram (30 states)
1 :>1:r1=1; 2:r1=0; 3:r3=0; y=2; z=2;
11 :>1:r1=0; 2:r1=0; 3:r3=0; y=2; z=2;
1 :>1:r1=1; 2:r1=2; 3:r3=1; y=2; z=2;
151 :>1:r1=1; 2:r1=1; 3:r3=0; y=2; z=1;
6 :>1:r1=0; 2:r1=2; 3:r3=0; y=1; z=2;
407 :>1:r1=0; 2:r1=2; 3:r3=0; y=2; z=1;
20 :>1:r1=0; 2:r1=2; 3:r3=1; y=2; z=2;
85 :>1:r1=0; 2:r1=1; 3:r3=1; y=1; z=2;
139 :>1:r1=0; 2:r1=1; 3:r3=1; y=2; z=2;
1920 :>1:r1=1; 2:r1=2; 3:r3=1; y=2; z=1;
5668 :>1:r1=0; 2:r1=1; 3:r3=0; y=2; z=1;
244 :>1:r1=1; 2:r1=1; 3:r3=1; y=2; z=2;
4770 :>1:r1=1; 2:r1=0; 3:r3=0; y=2; z=1;
2211 :>1:r1=0; 2:r1=1; 3:r3=0; y=1; z=1;
8547 :>1:r1=1; 2:r1=0; 3:r3=1; y=2; z=2;
98381 :>1:r1=0; 2:r1=0; 3:r3=1; y=2; z=2;
10591 :>1:r1=0; 2:r1=2; 3:r3=1; y=1; z=2;
78213 :>1:r1=0; 2:r1=2; 3:r3=0; y=1; z=1;
45891 :>1:r1=0; 2:r1=0; 3:r3=0; y=2; z=1;
55393 :>1:r1=1; 2:r1=0; 3:r3=1; y=2; z=1;
84025 :>1:r1=1; 2:r1=1; 3:r3=1; y=2; z=1;
44401 :>1:r1=0; 2:r1=1; 3:r3=1; y=2; z=1;
90430 :>1:r1=0; 2:r1=0; 3:r3=1; y=2; z=1;
72592 :>1:r1=0; 2:r1=0; 3:r3=0; y=1; z=1;
4039 :>1:r1=0; 2:r1=0; 3:r3=0; y=1; z=2;
16028 :>1:r1=0; 2:r1=1; 3:r3=1; y=1; z=1;
190138:>1:r1=0; 2:r1=2; 3:r3=1; y=1; z=1;
45503 :>1:r1=0; 2:r1=0; 3:r3=1; y=1; z=1;
121619:>1:r1=0; 2:r1=0; 3:r3=1; y=1; z=2;
18575 :>1:r1=0; 2:r1=2; 3:r3=1; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 1:r1=1 /\ 2:r1=2 /\ 3:r3=0) is NOT validated
Hash=c3598aedf88e092ade82e60c213cab91
Cycle=SyncdWR Fre SyncdWW Rfe SyncsRW Rfe SyncdRW Wse
Relax safe111 No
Safe=Fre Wse SyncdWR SyncdRW BCSyncsRW BCSyncdWW
Time safe111 2.60
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe112.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe112
"SyncdWW Rfe SyncdRW Rfe SyncsRW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | sync | sync | stw r1,0(r2) ;
li r3,1 | li r3,2 | li r3,1 | sync ;
stw r3,0(r4) | stw r3,0(r2) | stw r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe112 Allowed
Histogram (28 states)
28 :>0:r1=1; 1:r1=0; 2:r1=2; y=1; z=2;
8 :>0:r1=1; 1:r1=0; 2:r1=2; y=2; z=1;
1 :>0:r1=1; 1:r1=0; 2:r1=0; y=2; z=2;
189 :>0:r1=1; 1:r1=0; 2:r1=1; y=2; z=1;
44 :>0:r1=0; 1:r1=0; 2:r1=2; y=2; z=2;
803 :>0:r1=0; 1:r1=1; 2:r1=1; y=2; z=2;
81 :>0:r1=0; 1:r1=0; 2:r1=1; y=1; z=2;
144 :>0:r1=1; 1:r1=1; 2:r1=0; y=2; z=2;
245 :>0:r1=0; 1:r1=0; 2:r1=1; y=2; z=2;
1533 :>0:r1=1; 1:r1=0; 2:r1=1; y=1; z=1;
1576 :>0:r1=1; 1:r1=0; 2:r1=0; y=1; z=2;
45944 :>0:r1=1; 1:r1=0; 2:r1=0; y=2; z=1;
12076 :>0:r1=0; 1:r1=0; 2:r1=1; y=1; z=1;
21459 :>0:r1=0; 1:r1=0; 2:r1=2; y=2; z=1;
58925 :>0:r1=1; 1:r1=0; 2:r1=2; y=1; z=1;
48297 :>0:r1=0; 1:r1=0; 2:r1=1; y=2; z=1;
79965 :>0:r1=0; 1:r1=0; 2:r1=0; y=2; z=2;
58168 :>0:r1=0; 1:r1=1; 2:r1=1; y=2; z=1;
32571 :>0:r1=0; 1:r1=0; 2:r1=2; y=1; z=2;
85607 :>0:r1=1; 1:r1=0; 2:r1=0; y=1; z=1;
57097 :>0:r1=0; 1:r1=1; 2:r1=0; y=2; z=1;
167876:>0:r1=0; 1:r1=0; 2:r1=0; y=1; z=2;
67676 :>0:r1=0; 1:r1=0; 2:r1=0; y=2; z=1;
175338:>0:r1=0; 1:r1=0; 2:r1=2; y=1; z=1;
67291 :>0:r1=0; 1:r1=0; 2:r1=0; y=1; z=1;
549 :>0:r1=1; 1:r1=1; 2:r1=0; y=2; z=1;
13818 :>0:r1=0; 1:r1=1; 2:r1=0; y=2; z=2;
2691 :>0:r1=0; 1:r1=1; 2:r1=2; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2) is NOT validated
Hash=83d9c97f90ca26f4f247609bc6435a93
Cycle=SyncdWW Rfe SyncdRW Rfe SyncsRW Rfe SyncdRW Wse
Relax safe112 No
Safe=Wse SyncdRW BCSyncsRW BCSyncdWW BCSyncdRW
Time safe112 2.48
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe113.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe113
"SyncdWW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=x;}
P0 | P1 ;
lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) ;
li r3,1 | sync ;
stw r3,0(r4) | li r3,1 ;
| stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
Test safe113 Allowed
Histogram (3 states)
95428 :>0:r1=1; y=1;
200154:>0:r1=0; y=2;
1704418:>0:r1=0; y=1;
No
Witnesses
Positive: 0, Negative: 2000000
Condition exists (y=2 /\ 0:r1=1) is NOT validated
Hash=2852992fd9248c971e43c10010e6a018
Cycle=SyncdWW Rfe SyncdRW Wse
Relax safe113 No
Safe=Wse SyncdRW BCSyncdWW
Time safe113 1.25
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe114.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe114
"SyncdWW Rfe SyncdRW Wse SyncdWW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
li r3,1 | sync | li r3,1 | sync ;
stw r3,0(r4) | li r3,1 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (a=2 /\ y=2 /\ 0:r1=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe114 Allowed
Histogram (13 states)
1 :>0:r1=1; 2:r1=0; a=2; y=2;
1 :>0:r1=0; 2:r1=1; a=2; y=2;
140 :>0:r1=0; 2:r1=1; a=2; y=1;
1795 :>0:r1=1; 2:r1=0; a=1; y=2;
1405 :>0:r1=1; 2:r1=0; a=2; y=1;
683 :>0:r1=0; 2:r1=1; a=1; y=2;
34669 :>0:r1=1; 2:r1=1; a=1; y=1;
201008:>0:r1=0; 2:r1=0; a=2; y=1;
153574:>0:r1=0; 2:r1=1; a=1; y=1;
161045:>0:r1=1; 2:r1=0; a=1; y=1;
240459:>0:r1=0; 2:r1=0; a=1; y=1;
168456:>0:r1=0; 2:r1=0; a=1; y=2;
36764 :>0:r1=0; 2:r1=0; a=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ y=2 /\ 0:r1=1 /\ 2:r1=1) is NOT validated
Hash=f8528d9f705d8cc31c1f88bc77c52b4c
Cycle=SyncdWW Rfe SyncdRW Wse SyncdWW Rfe SyncdRW Wse
Relax safe114 No
Safe=Wse SyncdRW BCSyncdWW
Time safe114 2.09
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe115.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe115
"LwSyncdWW Wse SyncdWW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
li r1,2 | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | sync | stw r1,0(r2) ;
sync | li r3,1 | lwsync ;
li r3,1 | stw r3,0(r4) | li r3,1 ;
stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 1:r1=1)
Generated assembler
_litmus_P0_0_: li r10,2
_litmus_P0_1_: stw r10,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r11,1
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r10,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stw r8,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe115 Allowed
Histogram (7 states)
2777 :>1:r1=0; x=2; z=2;
604 :>1:r1=1; x=1; z=2;
437 :>1:r1=1; x=2; z=1;
210088:>1:r1=0; x=1; z=2;
313002:>1:r1=0; x=2; z=1;
162693:>1:r1=1; x=1; z=1;
310399:>1:r1=0; x=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 1:r1=1) is NOT validated
Hash=ef78748150573a2bcdc3af8d7bf8f587
Cycle=LwSyncdWW Wse SyncdWW Rfe SyncdRW Wse
Relax safe115 No
Safe=Wse SyncdRW LwSyncdWW BCSyncdWW
Time safe115 1.66
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe116.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe116
"SyncdWW Rfe LwSyncdRW Wse SyncdWW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
lwsync | stw r1,0(r2) | sync | stw r1,0(r2) ;
li r3,1 | sync | li r3,1 | sync ;
stw r3,0(r4) | li r3,1 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (a=2 /\ y=2 /\ 0:r1=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe116 Allowed
Histogram (15 states)
1 :>0:r1=1; 2:r1=0; a=2; y=2;
3 :>0:r1=0; 2:r1=1; a=2; y=2;
2 :>0:r1=1; 2:r1=1; a=2; y=1;
6 :>0:r1=1; 2:r1=1; a=1; y=2;
4602 :>0:r1=1; 2:r1=0; a=1; y=2;
1562 :>0:r1=0; 2:r1=1; a=2; y=1;
23045 :>0:r1=1; 2:r1=1; a=1; y=1;
2212 :>0:r1=1; 2:r1=0; a=2; y=1;
176641:>0:r1=1; 2:r1=0; a=1; y=1;
196713:>0:r1=0; 2:r1=0; a=1; y=2;
172441:>0:r1=0; 2:r1=0; a=1; y=1;
58056 :>0:r1=0; 2:r1=0; a=2; y=2;
95244 :>0:r1=0; 2:r1=1; a=1; y=1;
4515 :>0:r1=0; 2:r1=1; a=1; y=2;
264957:>0:r1=0; 2:r1=0; a=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ y=2 /\ 0:r1=1 /\ 2:r1=1) is NOT validated
Hash=2a00e2b2c8f33552ef10ee799f8c1ab3
Cycle=SyncdWW Rfe LwSyncdRW Wse SyncdWW Rfe SyncdRW Wse
Relax safe116 No
Safe=Wse SyncdRW LwSyncdRW BCSyncdWW
Time safe116 2.16
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe117.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe117
"Rfe SyncdRW Wse SyncdWW Rfe SyncdRW Wse"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
li r3,1 | sync | li r3,1 | ;
stw r3,0(r4) | li r3,1 | stw r3,0(r4) | ;
| stw r3,0(r4) | | ;
exists (x=2 /\ z=2 /\ 0:r1=2 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe117 Allowed
Histogram (21 states)
1 :>0:r1=2; 2:r1=1; x=1; z=2;
1 :>0:r1=0; 2:r1=1; x=2; z=2;
15 :>0:r1=2; 2:r1=1; x=2; z=1;
3 :>0:r1=1; 2:r1=1; x=1; z=2;
687 :>0:r1=2; 2:r1=0; x=2; z=2;
987 :>0:r1=1; 2:r1=1; x=1; z=1;
2599 :>0:r1=1; 2:r1=0; x=2; z=2;
3086 :>0:r1=1; 2:r1=0; x=2; z=1;
10088 :>0:r1=0; 2:r1=0; x=2; z=2;
2076 :>0:r1=0; 2:r1=1; x=2; z=1;
64187 :>0:r1=1; 2:r1=0; x=1; z=2;
51683 :>0:r1=0; 2:r1=0; x=1; z=1;
236809:>0:r1=2; 2:r1=0; x=1; z=1;
48669 :>0:r1=0; 2:r1=1; x=1; z=1;
146936:>0:r1=2; 2:r1=1; x=1; z=1;
52432 :>0:r1=0; 2:r1=0; x=1; z=2;
39897 :>0:r1=2; 2:r1=0; x=2; z=1;
215620:>0:r1=0; 2:r1=0; x=2; z=1;
78819 :>0:r1=1; 2:r1=0; x=1; z=1;
44894 :>0:r1=2; 2:r1=0; x=1; z=2;
511 :>0:r1=0; 2:r1=1; x=1; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=2 /\ 2:r1=1) is NOT validated
Hash=5a09e3090bb51ca85f52a8028a256819
Cycle=Rfe SyncdRW Wse SyncdWW Rfe SyncdRW Wse
Relax safe117 No
Safe=Wse SyncdRW ACSyncdRW BCSyncdWW
Time safe117 2.14
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe118.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe118
"LwSyncdWW Rfe SyncdRW Wse SyncdWW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
li r3,1 | sync | li r3,1 | lwsync ;
stw r3,0(r4) | li r3,1 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (a=2 /\ y=2 /\ 0:r1=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe118 Allowed
Histogram (13 states)
3 :>0:r1=1; 2:r1=0; a=2; y=2;
2 :>0:r1=1; 2:r1=1; a=1; y=2;
2204 :>0:r1=0; 2:r1=1; a=2; y=1;
6162 :>0:r1=1; 2:r1=0; a=1; y=2;
9545 :>0:r1=1; 2:r1=0; a=2; y=1;
11985 :>0:r1=0; 2:r1=0; a=2; y=2;
42369 :>0:r1=1; 2:r1=1; a=1; y=1;
225698:>0:r1=1; 2:r1=0; a=1; y=1;
191803:>0:r1=0; 2:r1=0; a=1; y=1;
158954:>0:r1=0; 2:r1=0; a=1; y=2;
96405 :>0:r1=0; 2:r1=1; a=1; y=1;
5296 :>0:r1=0; 2:r1=1; a=1; y=2;
249574:>0:r1=0; 2:r1=0; a=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ y=2 /\ 0:r1=1 /\ 2:r1=1) is NOT validated
Hash=c63293b022c83bb525a204bcace43c65
Cycle=LwSyncdWW Rfe SyncdRW Wse SyncdWW Rfe SyncdRW Wse
Relax safe118 No
Safe=Wse SyncdRW LwSyncdWW ACSyncdRW BCSyncdWW
Time safe118 2.13
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe119.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe119
"SyncdWW Rfe DpdR Fre SyncdWW Rfe SyncdRW Wse"
{0:r2=x; 0:r5=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwzx r4,r3,r5 | sync | li r3,1 | sync ;
| li r3,1 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 0:r4=0 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r6,0(r9)
_litmus_P0_1_: xor r11,r6,r6
_litmus_P0_2_: lwzx r7,r11,r2
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe119 Allowed
Histogram (14 states)
5 :>0:r1=0; 0:r4=0; 2:r1=1; a=2;
1 :>0:r1=1; 0:r4=0; 2:r1=0; a=2;
10 :>0:r1=1; 0:r4=0; 2:r1=1; a=1;
84 :>0:r1=0; 0:r4=1; 2:r1=1; a=2;
1026 :>0:r1=1; 0:r4=1; 2:r1=0; a=2;
2079 :>0:r1=0; 0:r4=0; 2:r1=1; a=1;
5691 :>0:r1=1; 0:r4=0; 2:r1=0; a=1;
29307 :>0:r1=1; 0:r4=1; 2:r1=1; a=1;
41499 :>0:r1=0; 0:r4=0; 2:r1=0; a=2;
178502:>0:r1=0; 0:r4=1; 2:r1=0; a=2;
153582:>0:r1=0; 0:r4=1; 2:r1=1; a=1;
178696:>0:r1=0; 0:r4=1; 2:r1=0; a=1;
272296:>0:r1=0; 0:r4=0; 2:r1=0; a=1;
137222:>0:r1=1; 0:r4=1; 2:r1=0; a=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 0:r4=0 /\ 2:r1=1) is NOT validated
Hash=7536dbead0384798a5c640a296f9535a
Cycle=SyncdWW Rfe DpdR Fre SyncdWW Rfe SyncdRW Wse
Relax safe119 No
Safe=Fre Wse SyncdRW DpdR BCSyncdWW
Time safe119 2.21
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe120.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe120
"SyncdWW Rfe DpsR Fre SyncdWW Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwzx r4,r3,r2 | sync | li r3,1 | sync ;
| li r3,1 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r4=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r2)
_litmus_P0_1_: xor r11,r7,r7
_litmus_P0_2_: lwzx r9,r11,r2
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe120 Allowed
Histogram (31 states)
4 :>0:r1=2; 0:r4=1; 2:r1=1; x=1; z=1;
4 :>0:r1=0; 0:r4=1; 2:r1=1; x=1; z=1;
3 :>0:r1=0; 0:r4=1; 2:r1=0; x=1; z=2;
5 :>0:r1=0; 0:r4=1; 2:r1=0; x=2; z=1;
10 :>0:r1=1; 0:r4=1; 2:r1=0; x=2; z=2;
12 :>0:r1=2; 0:r4=1; 2:r1=0; x=1; z=1;
1 :>0:r1=0; 0:r4=2; 2:r1=1; x=2; z=1;
21 :>0:r1=0; 0:r4=0; 2:r1=1; x=2; z=1;
12 :>0:r1=1; 0:r4=1; 2:r1=1; x=2; z=1;
9 :>0:r1=0; 0:r4=2; 2:r1=0; x=2; z=1;
40 :>0:r1=0; 0:r4=1; 2:r1=0; x=1; z=1;
6 :>0:r1=2; 0:r4=2; 2:r1=0; x=2; z=2;
112 :>0:r1=2; 0:r4=2; 2:r1=1; x=2; z=1;
1269 :>0:r1=0; 0:r4=0; 2:r1=0; x=2; z=2;
148 :>0:r1=0; 0:r4=0; 2:r1=1; x=1; z=2;
91 :>0:r1=0; 0:r4=2; 2:r1=0; x=1; z=2;
5617 :>0:r1=2; 0:r4=2; 2:r1=1; x=1; z=2;
143 :>0:r1=0; 0:r4=2; 2:r1=1; x=1; z=1;
5193 :>0:r1=1; 0:r4=1; 2:r1=1; x=1; z=1;
80752 :>0:r1=2; 0:r4=2; 2:r1=0; x=1; z=2;
48272 :>0:r1=2; 0:r4=2; 2:r1=0; x=2; z=1;
83817 :>0:r1=0; 0:r4=0; 2:r1=0; x=2; z=1;
27573 :>0:r1=0; 0:r4=0; 2:r1=1; x=1; z=1;
49659 :>0:r1=1; 0:r4=1; 2:r1=0; x=2; z=1;
61662 :>0:r1=2; 0:r4=2; 2:r1=0; x=1; z=1;
173635:>0:r1=2; 0:r4=2; 2:r1=1; x=1; z=1;
215089:>0:r1=0; 0:r4=0; 2:r1=0; x=1; z=2;
198048:>0:r1=0; 0:r4=0; 2:r1=0; x=1; z=1;
47078 :>0:r1=1; 0:r4=1; 2:r1=0; x=1; z=1;
1447 :>0:r1=1; 0:r4=1; 2:r1=0; x=1; z=2;
268 :>0:r1=0; 0:r4=2; 2:r1=0; x=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r4=1 /\ 2:r1=1) is NOT validated
Hash=96dd8350f3e8d77ffb563a8e5d46ea21
Cycle=SyncdWW Rfe DpsR Fre SyncdWW Rfe SyncdRW Wse
Relax safe120 No
Safe=Fre Wse SyncdRW DpsR BCSyncdWW
Time safe120 2.57
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe121.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe121
"SyncdWR Fre SyncdWW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
li r1,1 | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | sync | stw r1,0(r2) ;
sync | li r3,1 | sync ;
li r3,1 | stw r3,0(r4) | lwz r3,0(r4) ;
stw r3,0(r4) | | ;
exists (z=2 /\ 1:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: li r10,1
_litmus_P0_1_: stw r10,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r11,1
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r10,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stw r8,0(r2)
_litmus_P2_0_: li r8,2
_litmus_P2_1_: stw r8,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r10,0(r2)
Test safe121 Allowed
Histogram (7 states)
459 :>1:r1=0; 2:r3=0; z=2;
1770 :>1:r1=1; 2:r3=0; z=1;
129036:>1:r1=1; 2:r3=1; z=1;
259670:>1:r1=0; 2:r3=0; z=1;
287052:>1:r1=0; 2:r3=1; z=2;
567 :>1:r1=1; 2:r3=1; z=2;
321446:>1:r1=0; 2:r3=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 1:r1=1 /\ 2:r3=0) is NOT validated
Hash=d737e6a935bb70f598d5da4925efd1e1
Cycle=SyncdWR Fre SyncdWW Rfe SyncdRW Wse
Relax safe121 No
Safe=Fre Wse SyncdWR SyncdRW BCSyncdWW
Time safe121 1.67
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe122.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe122
"SyncdWW Rfe SyncdRR Fre SyncdWW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | li r3,1 | sync ;
| li r3,1 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe122 Allowed
Histogram (14 states)
2 :>0:r1=0; 0:r3=0; 2:r1=1; a=2;
2 :>0:r1=1; 0:r3=0; 2:r1=1; a=1;
1 :>0:r1=1; 0:r3=0; 2:r1=0; a=2;
9664 :>0:r1=1; 0:r3=1; 2:r1=1; a=1;
1274 :>0:r1=0; 0:r3=1; 2:r1=1; a=2;
2015 :>0:r1=1; 0:r3=1; 2:r1=0; a=2;
6647 :>0:r1=0; 0:r3=0; 2:r1=1; a=1;
4688 :>0:r1=1; 0:r3=0; 2:r1=0; a=1;
126624:>0:r1=0; 0:r3=1; 2:r1=1; a=1;
50272 :>0:r1=0; 0:r3=0; 2:r1=0; a=2;
123505:>0:r1=1; 0:r3=1; 2:r1=0; a=1;
229672:>0:r1=0; 0:r3=1; 2:r1=0; a=2;
215098:>0:r1=0; 0:r3=1; 2:r1=0; a=1;
230536:>0:r1=0; 0:r3=0; 2:r1=0; a=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1) is NOT validated
Hash=100bde1b58388bef911dc788c055118d
Cycle=SyncdWW Rfe SyncdRR Fre SyncdWW Rfe SyncdRW Wse
Relax safe122 No
Safe=Fre Wse SyncdRW SyncdRR BCSyncdWW
Time safe122 2.29
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe123.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe123
"SyncdWW Rfe SyncsRR Fre SyncdWW Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r2) | sync | li r3,1 | sync ;
| li r3,1 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe123 Allowed
Histogram (40 states)
1 :>0:r1=1; 0:r3=1; 2:r1=1; x=1; z=2;
2 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; z=2;
4 :>0:r1=2; 0:r3=2; 2:r1=0; x=2; z=2;
12 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; z=2;
4 :>0:r1=0; 0:r3=1; 2:r1=1; x=2; z=1;
6 :>0:r1=0; 0:r3=0; 2:r1=1; x=1; z=2;
4 :>0:r1=0; 0:r3=2; 2:r1=1; x=1; z=2;
20 :>0:r1=0; 0:r3=0; 2:r1=1; x=2; z=1;
7 :>0:r1=1; 0:r3=1; 2:r1=1; x=2; z=1;
27 :>0:r1=0; 0:r3=2; 2:r1=1; x=2; z=1;
15 :>0:r1=1; 0:r3=2; 2:r1=1; x=2; z=1;
598 :>0:r1=2; 0:r3=2; 2:r1=1; x=1; z=2;
353 :>0:r1=2; 0:r3=2; 2:r1=1; x=2; z=1;
103 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; z=2;
271 :>0:r1=0; 0:r3=1; 2:r1=1; x=1; z=1;
13301 :>0:r1=2; 0:r3=1; 2:r1=0; x=1; z=2;
1026 :>0:r1=0; 0:r3=2; 2:r1=1; x=1; z=1;
11602 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; z=1;
621 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; z=2;
13189 :>0:r1=1; 0:r3=1; 2:r1=1; x=1; z=1;
11727 :>0:r1=0; 0:r3=2; 2:r1=0; x=1; z=1;
54354 :>0:r1=2; 0:r3=1; 2:r1=0; x=1; z=1;
17991 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; z=1;
42226 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; z=1;
37110 :>0:r1=2; 0:r3=1; 2:r1=1; x=1; z=1;
44082 :>0:r1=2; 0:r3=2; 2:r1=0; x=2; z=1;
8098 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; z=1;
1412 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; z=2;
19654 :>0:r1=0; 0:r3=1; 2:r1=0; x=1; z=1;
18966 :>0:r1=0; 0:r3=0; 2:r1=1; x=1; z=1;
114613:>0:r1=2; 0:r3=2; 2:r1=0; x=1; z=2;
31471 :>0:r1=0; 0:r3=2; 2:r1=0; x=1; z=2;
83618 :>0:r1=2; 0:r3=2; 2:r1=0; x=1; z=1;
1960 :>0:r1=0; 0:r3=1; 2:r1=0; x=1; z=2;
86870 :>0:r1=2; 0:r3=2; 2:r1=1; x=1; z=1;
97077 :>0:r1=0; 0:r3=0; 2:r1=0; x=1; z=2;
204292:>0:r1=0; 0:r3=0; 2:r1=0; x=1; z=1;
60360 :>0:r1=1; 0:r3=1; 2:r1=0; x=1; z=1;
1972 :>0:r1=1; 0:r3=1; 2:r1=0; x=1; z=2;
20981 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1) is NOT validated
Hash=a36bcf594b89f68efecc4831d546fd3e
Cycle=SyncdWW Rfe SyncsRR Fre SyncdWW Rfe SyncdRW Wse
Relax safe123 No
Safe=Fre Wse SyncsRR SyncdRW BCSyncdWW
Time safe123 2.85
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe124.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe124
"SyncdWW Rfe LwSyncdRR Fre SyncdWW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
lwsync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | li r3,1 | sync ;
| li r3,1 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe124 Allowed
Histogram (15 states)
2 :>0:r1=1; 0:r3=1; 2:r1=1; a=2;
1 :>0:r1=1; 0:r3=0; 2:r1=0; a=2;
8 :>0:r1=1; 0:r3=0; 2:r1=1; a=1;
8 :>0:r1=0; 0:r3=0; 2:r1=1; a=2;
860 :>0:r1=1; 0:r3=1; 2:r1=0; a=2;
1518 :>0:r1=0; 0:r3=1; 2:r1=1; a=2;
5188 :>0:r1=1; 0:r3=1; 2:r1=1; a=1;
22719 :>0:r1=0; 0:r3=0; 2:r1=1; a=1;
7601 :>0:r1=1; 0:r3=0; 2:r1=0; a=1;
200265:>0:r1=0; 0:r3=1; 2:r1=0; a=2;
146087:>0:r1=0; 0:r3=1; 2:r1=1; a=1;
117988:>0:r1=0; 0:r3=1; 2:r1=0; a=1;
123561:>0:r1=1; 0:r3=1; 2:r1=0; a=1;
272039:>0:r1=0; 0:r3=0; 2:r1=0; a=1;
102155:>0:r1=0; 0:r3=0; 2:r1=0; a=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1) is NOT validated
Hash=d3e21a80282576bf8b25a438203684a4
Cycle=SyncdWW Rfe LwSyncdRR Fre SyncdWW Rfe SyncdRW Wse
Relax safe124 No
Safe=Fre Wse SyncdRW LwSyncdRR BCSyncdWW
Time safe124 2.26
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe125.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe125
"SyncdWW Rfe LwSyncsRR Fre SyncdWW Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
lwsync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r2) | sync | li r3,1 | sync ;
| li r3,1 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe125 Allowed
Histogram (35 states)
4 :>0:r1=0; 0:r3=2; 2:r1=1; x=1; z=2;
1 :>0:r1=1; 0:r3=1; 2:r1=1; x=1; z=2;
1 :>0:r1=0; 0:r3=2; 2:r1=1; x=2; z=1;
4 :>0:r1=2; 0:r3=1; 2:r1=0; x=1; z=2;
8 :>0:r1=1; 0:r3=1; 2:r1=1; x=2; z=1;
12 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; z=2;
15 :>0:r1=0; 0:r3=1; 2:r1=0; x=1; z=2;
8 :>0:r1=2; 0:r3=2; 2:r1=0; x=2; z=2;
24 :>0:r1=0; 0:r3=1; 2:r1=1; x=1; z=1;
19 :>0:r1=0; 0:r3=0; 2:r1=1; x=2; z=1;
9 :>0:r1=0; 0:r3=0; 2:r1=1; x=1; z=2;
50 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; z=1;
114 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; z=1;
179 :>0:r1=2; 0:r3=1; 2:r1=1; x=1; z=1;
96 :>0:r1=2; 0:r3=1; 2:r1=0; x=1; z=1;
761 :>0:r1=0; 0:r3=2; 2:r1=0; x=1; z=1;
93 :>0:r1=2; 0:r3=2; 2:r1=1; x=2; z=1;
1859 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; z=2;
189 :>0:r1=0; 0:r3=2; 2:r1=1; x=1; z=1;
368 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; z=1;
1211 :>0:r1=2; 0:r3=2; 2:r1=1; x=1; z=2;
600 :>0:r1=0; 0:r3=1; 2:r1=0; x=1; z=1;
11910 :>0:r1=0; 0:r3=0; 2:r1=1; x=1; z=1;
1578 :>0:r1=1; 0:r3=1; 2:r1=0; x=1; z=2;
3366 :>0:r1=1; 0:r3=1; 2:r1=1; x=1; z=1;
142721:>0:r1=2; 0:r3=2; 2:r1=1; x=1; z=1;
74185 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; z=1;
193337:>0:r1=0; 0:r3=0; 2:r1=0; x=1; z=2;
113181:>0:r1=2; 0:r3=2; 2:r1=0; x=1; z=1;
49726 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; z=1;
93742 :>0:r1=2; 0:r3=2; 2:r1=0; x=1; z=2;
216690:>0:r1=0; 0:r3=0; 2:r1=0; x=1; z=1;
41792 :>0:r1=2; 0:r3=2; 2:r1=0; x=2; z=1;
51860 :>0:r1=1; 0:r3=1; 2:r1=0; x=1; z=1;
287 :>0:r1=0; 0:r3=2; 2:r1=0; x=1; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1) is NOT validated
Hash=41fdc9aa8a424375c0b9c5a52a83e077
Cycle=SyncdWW Rfe LwSyncsRR Fre SyncdWW Rfe SyncdRW Wse
Relax safe125 No
Safe=Fre Wse SyncdRW LwSyncsRR BCSyncdWW
Time safe125 2.68
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe126.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe126
"LwSyncdWW Rfe SyncsRR Fre SyncdWW Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r2) | sync | li r3,1 | lwsync ;
| li r3,1 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe126 Allowed
Histogram (39 states)
5 :>0:r1=0; 0:r3=2; 2:r1=1; x=1; z=2;
4 :>0:r1=0; 0:r3=1; 2:r1=1; x=2; z=1;
8 :>0:r1=0; 0:r3=0; 2:r1=1; x=2; z=1;
19 :>0:r1=1; 0:r3=2; 2:r1=1; x=2; z=1;
14 :>0:r1=0; 0:r3=2; 2:r1=1; x=2; z=1;
74 :>0:r1=0; 0:r3=1; 2:r1=1; x=1; z=1;
4 :>0:r1=0; 0:r3=0; 2:r1=1; x=1; z=2;
7 :>0:r1=1; 0:r3=1; 2:r1=1; x=2; z=1;
194 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; z=2;
567 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; z=2;
225 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; z=2;
144 :>0:r1=2; 0:r3=2; 2:r1=1; x=2; z=1;
351 :>0:r1=2; 0:r3=2; 2:r1=0; x=2; z=2;
479 :>0:r1=0; 0:r3=2; 2:r1=1; x=1; z=1;
6383 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; z=2;
17602 :>0:r1=2; 0:r3=1; 2:r1=1; x=1; z=1;
482 :>0:r1=2; 0:r3=2; 2:r1=1; x=1; z=2;
2500 :>0:r1=0; 0:r3=1; 2:r1=0; x=1; z=2;
61947 :>0:r1=1; 0:r3=1; 2:r1=1; x=1; z=1;
32657 :>0:r1=0; 0:r3=2; 2:r1=0; x=1; z=2;
21049 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; z=1;
12567 :>0:r1=0; 0:r3=0; 2:r1=1; x=1; z=1;
95806 :>0:r1=0; 0:r3=0; 2:r1=0; x=1; z=2;
22424 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; z=1;
19283 :>0:r1=2; 0:r3=1; 2:r1=0; x=1; z=2;
820 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; z=2;
17685 :>0:r1=0; 0:r3=1; 2:r1=0; x=1; z=1;
50436 :>0:r1=2; 0:r3=2; 2:r1=0; x=1; z=2;
48487 :>0:r1=2; 0:r3=2; 2:r1=0; x=1; z=1;
50519 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; z=1;
70135 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; z=1;
84273 :>0:r1=2; 0:r3=2; 2:r1=1; x=1; z=1;
66695 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; z=1;
27131 :>0:r1=2; 0:r3=1; 2:r1=0; x=1; z=1;
171022:>0:r1=0; 0:r3=0; 2:r1=0; x=1; z=1;
45933 :>0:r1=1; 0:r3=1; 2:r1=0; x=1; z=1;
55975 :>0:r1=2; 0:r3=2; 2:r1=0; x=2; z=1;
7725 :>0:r1=1; 0:r3=1; 2:r1=0; x=1; z=2;
8369 :>0:r1=0; 0:r3=2; 2:r1=0; x=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1) is NOT validated
Hash=20d3f80f3efdfa98307cdf2bd7e8d49c
Cycle=LwSyncdWW Rfe SyncsRR Fre SyncdWW Rfe SyncdRW Wse
Relax safe126 No
Safe=Fre Wse SyncdRW LwSyncdWW ACSyncsRR BCSyncdWW
Time safe126 2.68
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe127.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe127
"Rfe SyncdRR Fre SyncdWW Rfe SyncdRW Wse"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | li r3,1 | ;
| li r3,1 | stw r3,0(r4) | ;
| stw r3,0(r4) | | ;
exists (z=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe127 Allowed
Histogram (20 states)
2 :>0:r1=2; 0:r3=1; 2:r1=1; z=2;
2 :>0:r1=1; 0:r3=1; 2:r1=1; z=2;
5 :>0:r1=2; 0:r3=0; 2:r1=1; z=1;
129 :>0:r1=0; 0:r3=1; 2:r1=1; z=2;
1915 :>0:r1=1; 0:r3=1; 2:r1=1; z=1;
346 :>0:r1=0; 0:r3=0; 2:r1=1; z=1;
5411 :>0:r1=1; 0:r3=0; 2:r1=0; z=1;
12158 :>0:r1=1; 0:r3=0; 2:r1=0; z=2;
2563 :>0:r1=2; 0:r3=0; 2:r1=0; z=2;
21871 :>0:r1=2; 0:r3=1; 2:r1=0; z=2;
54764 :>0:r1=0; 0:r3=1; 2:r1=1; z=1;
61253 :>0:r1=0; 0:r3=1; 2:r1=0; z=2;
65237 :>0:r1=2; 0:r3=0; 2:r1=0; z=1;
56801 :>0:r1=2; 0:r3=1; 2:r1=1; z=1;
41199 :>0:r1=1; 0:r3=1; 2:r1=0; z=2;
48019 :>0:r1=0; 0:r3=1; 2:r1=0; z=1;
59643 :>0:r1=0; 0:r3=0; 2:r1=0; z=2;
215386:>0:r1=2; 0:r3=1; 2:r1=0; z=1;
115737:>0:r1=1; 0:r3=1; 2:r1=0; z=1;
237559:>0:r1=0; 0:r3=0; 2:r1=0; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1) is NOT validated
Hash=680d931c2c71660f4ddfec2d93fe492d
Cycle=Rfe SyncdRR Fre SyncdWW Rfe SyncdRW Wse
Relax safe127 No
Safe=Fre Wse SyncdRW ACSyncdRR BCSyncdWW
Time safe127 2.05
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe128.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe128
"LwSyncdWW Rfe SyncdRR Fre SyncdWW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | li r3,1 | lwsync ;
| li r3,1 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe128 Allowed
Histogram (14 states)
1 :>0:r1=1; 0:r3=1; 2:r1=1; a=2;
6 :>0:r1=1; 0:r3=0; 2:r1=1; a=1;
127 :>0:r1=0; 0:r3=1; 2:r1=1; a=2;
382 :>0:r1=0; 0:r3=0; 2:r1=1; a=1;
24500 :>0:r1=1; 0:r3=0; 2:r1=0; a=1;
17516 :>0:r1=0; 0:r3=0; 2:r1=0; a=2;
3818 :>0:r1=1; 0:r3=1; 2:r1=0; a=2;
52668 :>0:r1=1; 0:r3=1; 2:r1=1; a=1;
115975:>0:r1=0; 0:r3=1; 2:r1=1; a=1;
185403:>0:r1=0; 0:r3=1; 2:r1=0; a=2;
138134:>0:r1=0; 0:r3=1; 2:r1=0; a=1;
209678:>0:r1=1; 0:r3=1; 2:r1=0; a=1;
251785:>0:r1=0; 0:r3=0; 2:r1=0; a=1;
7 :>0:r1=1; 0:r3=0; 2:r1=0; a=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1) is NOT validated
Hash=a0067211f33533b1de43eeef4bfc976d
Cycle=LwSyncdWW Rfe SyncdRR Fre SyncdWW Rfe SyncdRW Wse
Relax safe128 No
Safe=Fre Wse SyncdRW LwSyncdWW ACSyncdRR BCSyncdWW
Time safe128 2.09
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe129.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe129
"SyncdWR Fre SyncsWW Rfe SyncdRW Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
li r1,1 | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | sync | sync | stw r1,0(r2) ;
sync | li r3,1 | li r3,1 | sync ;
li r3,2 | stw r3,0(r4) | stw r3,0(r4) | lwz r3,0(r4) ;
stw r3,0(r2) | | | ;
exists (x=2 /\ z=2 /\ 1:r1=2 /\ 2:r1=1 /\ 3:r3=0)
Generated assembler
_litmus_P0_0_: li r9,1
_litmus_P0_1_: stw r9,0(r2)
_litmus_P0_2_: sync
_litmus_P0_3_: li r11,2
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r10,2
_litmus_P3_1_: stw r10,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: lwz r8,0(r2)
Test safe129 Allowed
Histogram (30 states)
3 :>1:r1=1; 2:r1=0; 3:r3=1; x=2; z=2;
3 :>1:r1=0; 2:r1=1; 3:r3=1; x=2; z=2;
2 :>1:r1=2; 2:r1=1; 3:r3=0; x=2; z=1;
3 :>1:r1=1; 2:r1=1; 3:r3=1; x=2; z=1;
9 :>1:r1=2; 2:r1=1; 3:r3=2; x=2; z=2;
3 :>1:r1=1; 2:r1=1; 3:r3=2; x=2; z=2;
9 :>1:r1=1; 2:r1=0; 3:r3=0; x=2; z=2;
18 :>1:r1=1; 2:r1=0; 3:r3=1; x=2; z=1;
32 :>1:r1=1; 2:r1=1; 3:r3=0; x=2; z=1;
2757 :>1:r1=0; 2:r1=1; 3:r3=2; x=2; z=2;
15 :>1:r1=2; 2:r1=1; 3:r3=1; x=2; z=1;
4485 :>1:r1=2; 2:r1=0; 3:r3=0; x=2; z=1;
279 :>1:r1=2; 2:r1=0; 3:r3=1; x=2; z=2;
20635 :>1:r1=2; 2:r1=1; 3:r3=2; x=2; z=1;
63801 :>1:r1=1; 2:r1=0; 3:r3=0; x=2; z=1;
14704 :>1:r1=2; 2:r1=0; 3:r3=1; x=2; z=1;
61388 :>1:r1=0; 2:r1=1; 3:r3=2; x=2; z=1;
7494 :>1:r1=1; 2:r1=1; 3:r3=2; x=2; z=1;
135040:>1:r1=0; 2:r1=0; 3:r3=2; x=2; z=2;
44153 :>1:r1=0; 2:r1=1; 3:r3=0; x=2; z=1;
2006 :>1:r1=0; 2:r1=0; 3:r3=0; x=2; z=2;
49778 :>1:r1=0; 2:r1=0; 3:r3=1; x=2; z=2;
47729 :>1:r1=1; 2:r1=0; 3:r3=2; x=2; z=1;
35454 :>1:r1=0; 2:r1=0; 3:r3=2; x=2; z=1;
75412 :>1:r1=0; 2:r1=1; 3:r3=1; x=2; z=1;
58884 :>1:r1=1; 2:r1=0; 3:r3=2; x=2; z=2;
94837 :>1:r1=0; 2:r1=0; 3:r3=1; x=2; z=1;
92669 :>1:r1=0; 2:r1=0; 3:r3=0; x=2; z=1;
28766 :>1:r1=2; 2:r1=0; 3:r3=2; x=2; z=2;
159632:>1:r1=2; 2:r1=0; 3:r3=2; x=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 1:r1=2 /\ 2:r1=1 /\ 3:r3=0) is NOT validated
Hash=b98482c26ddb860c62f9a6567817d640
Cycle=SyncdWR Fre SyncsWW Rfe SyncdRW Rfe SyncdRW Wse
Relax safe129 No
Safe=Fre Wse SyncdWR SyncdRW BCSyncsWW BCSyncdRW
Time safe129 2.41
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe130.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe130
"SyncdWW Rfe SyncsRW Rfe SyncdRW Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | sync | sync | stw r1,0(r2) ;
li r3,2 | li r3,1 | li r3,1 | sync ;
stw r3,0(r2) | stw r3,0(r4) | stw r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe130 Allowed
Histogram (29 states)
2 :>0:r1=0; 1:r1=0; 2:r1=1; x=2; z=2;
9 :>0:r1=0; 1:r1=2; 2:r1=1; x=2; z=1;
5 :>0:r1=0; 1:r1=1; 2:r1=1; x=1; z=1;
8 :>0:r1=0; 1:r1=2; 2:r1=1; x=1; z=2;
29 :>0:r1=1; 1:r1=1; 2:r1=0; x=2; z=2;
29 :>0:r1=0; 1:r1=1; 2:r1=1; x=2; z=1;
45 :>0:r1=1; 1:r1=2; 2:r1=0; x=2; z=2;
1047 :>0:r1=0; 1:r1=0; 2:r1=1; x=1; z=2;
317 :>0:r1=1; 1:r1=0; 2:r1=0; x=2; z=2;
286 :>0:r1=1; 1:r1=1; 2:r1=1; x=2; z=1;
2015 :>0:r1=1; 1:r1=2; 2:r1=0; x=2; z=1;
102 :>0:r1=0; 1:r1=2; 2:r1=0; x=2; z=2;
1227 :>0:r1=0; 1:r1=1; 2:r1=0; x=1; z=2;
12784 :>0:r1=1; 1:r1=0; 2:r1=1; x=2; z=1;
711 :>0:r1=0; 1:r1=1; 2:r1=0; x=2; z=2;
13950 :>0:r1=0; 1:r1=1; 2:r1=0; x=1; z=1;
75936 :>0:r1=1; 1:r1=1; 2:r1=0; x=2; z=1;
11560 :>0:r1=0; 1:r1=2; 2:r1=1; x=1; z=1;
72573 :>0:r1=1; 1:r1=0; 2:r1=0; x=2; z=1;
88087 :>0:r1=0; 1:r1=0; 2:r1=1; x=1; z=1;
19204 :>0:r1=0; 1:r1=0; 2:r1=0; x=2; z=2;
96826 :>0:r1=0; 1:r1=2; 2:r1=0; x=1; z=2;
87886 :>0:r1=0; 1:r1=0; 2:r1=1; x=2; z=1;
85636 :>0:r1=0; 1:r1=0; 2:r1=0; x=2; z=1;
189814:>0:r1=0; 1:r1=2; 2:r1=0; x=1; z=1;
64888 :>0:r1=0; 1:r1=0; 2:r1=0; x=1; z=1;
36530 :>0:r1=0; 1:r1=1; 2:r1=0; x=2; z=1;
119680:>0:r1=0; 1:r1=0; 2:r1=0; x=1; z=2;
18814 :>0:r1=0; 1:r1=2; 2:r1=0; x=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1) is NOT validated
Hash=8e6ff4dd4ef6d7924856718b4d0a3402
Cycle=SyncdWW Rfe SyncsRW Rfe SyncdRW Rfe SyncdRW Wse
Relax safe130 No
Safe=Wse SyncdRW BCSyncsRW BCSyncdWW BCSyncdRW
Time safe130 2.63
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe131.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe131
"SyncdWW Rfe SyncdRW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | sync | stw r1,0(r2) ;
li r3,1 | li r3,1 | sync ;
stw r3,0(r4) | stw r3,0(r4) | li r3,1 ;
| | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 1:r1=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stw r8,0(r2)
_litmus_P1_0_: lwz r10,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stw r8,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe131 Allowed
Histogram (7 states)
93 :>0:r1=1; 1:r1=0; z=2;
240 :>0:r1=1; 1:r1=1; z=1;
445 :>0:r1=0; 1:r1=1; z=2;
184528:>0:r1=1; 1:r1=0; z=1;
232860:>0:r1=0; 1:r1=0; z=2;
178276:>0:r1=0; 1:r1=1; z=1;
403558:>0:r1=0; 1:r1=0; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 1:r1=1) is NOT validated
Hash=b3e274de6a2af80c4d8404aab3438c66
Cycle=SyncdWW Rfe SyncdRW Rfe SyncdRW Wse
Relax safe131 No
Safe=Wse SyncdRW BCSyncdWW BCSyncdRW
Time safe131 1.63
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe132.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe132
"LwSyncdWW Wse SyncdWW Rfe SyncdRW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
li r1,2 | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | sync | sync | stw r1,0(r2) ;
sync | li r3,1 | li r3,1 | lwsync ;
li r3,1 | stw r3,0(r4) | stw r3,0(r4) | li r3,1 ;
stw r3,0(r4) | | | stw r3,0(r4) ;
exists (a=2 /\ x=2 /\ 1:r1=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: li r11,2
_litmus_P0_1_: stw r11,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r10,1
_litmus_P0_4_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe132 Allowed
Histogram (15 states)
4 :>1:r1=1; 2:r1=0; a=2; x=2;
10 :>1:r1=0; 2:r1=1; a=2; x=2;
1 :>1:r1=1; 2:r1=1; a=2; x=1;
3893 :>1:r1=1; 2:r1=0; a=1; x=2;
31103 :>1:r1=1; 2:r1=0; a=2; x=1;
252 :>1:r1=1; 2:r1=1; a=1; x=2;
2119 :>1:r1=1; 2:r1=1; a=1; x=1;
6720 :>1:r1=0; 2:r1=1; a=2; x=1;
17842 :>1:r1=0; 2:r1=0; a=2; x=2;
37977 :>1:r1=0; 2:r1=1; a=1; x=2;
243580:>1:r1=0; 2:r1=0; a=1; x=2;
224903:>1:r1=0; 2:r1=0; a=2; x=1;
125563:>1:r1=0; 2:r1=1; a=1; x=1;
163846:>1:r1=0; 2:r1=0; a=1; x=1;
142187:>1:r1=1; 2:r1=0; a=1; x=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ x=2 /\ 1:r1=1 /\ 2:r1=1) is NOT validated
Hash=8e4bd6ddbaf555917f7b3f6d30dbac09
Cycle=LwSyncdWW Wse SyncdWW Rfe SyncdRW Rfe SyncdRW Wse
Relax safe132 No
Safe=Wse SyncdRW LwSyncdWW BCSyncdWW BCSyncdRW
Time safe132 2.20
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe133.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe133
"SyncdWR Fre SyncdWW Rfe SyncdRW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
li r1,1 | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | sync | sync | stw r1,0(r2) ;
sync | li r3,1 | li r3,1 | sync ;
li r3,1 | stw r3,0(r4) | stw r3,0(r4) | lwz r3,0(r4) ;
stw r3,0(r4) | | | ;
exists (a=2 /\ 1:r1=1 /\ 2:r1=1 /\ 3:r3=0)
Generated assembler
_litmus_P0_0_: li r11,1
_litmus_P0_1_: stw r11,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r10,1
_litmus_P0_4_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r10,2
_litmus_P3_1_: stw r10,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: lwz r8,0(r2)
Test safe133 Allowed
Histogram (15 states)
1 :>1:r1=1; 2:r1=0; 3:r3=0; a=2;
6 :>1:r1=0; 2:r1=1; 3:r3=0; a=2;
36 :>1:r1=1; 2:r1=1; 3:r3=0; a=1;
36 :>1:r1=1; 2:r1=1; 3:r3=1; a=2;
739 :>1:r1=1; 2:r1=1; 3:r3=1; a=1;
5509 :>1:r1=0; 2:r1=1; 3:r3=1; a=2;
4177 :>1:r1=1; 2:r1=0; 3:r3=0; a=1;
15265 :>1:r1=0; 2:r1=1; 3:r3=0; a=1;
6974 :>1:r1=0; 2:r1=0; 3:r3=0; a=2;
131070:>1:r1=1; 2:r1=0; 3:r3=1; a=1;
216317:>1:r1=0; 2:r1=0; 3:r3=0; a=1;
124131:>1:r1=0; 2:r1=1; 3:r3=1; a=1;
277195:>1:r1=0; 2:r1=0; 3:r3=1; a=2;
51652 :>1:r1=1; 2:r1=0; 3:r3=1; a=2;
166892:>1:r1=0; 2:r1=0; 3:r3=1; a=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 1:r1=1 /\ 2:r1=1 /\ 3:r3=0) is NOT validated
Hash=875ef96107939c6fa8d18dc93e4e03c0
Cycle=SyncdWR Fre SyncdWW Rfe SyncdRW Rfe SyncdRW Wse
Relax safe133 No
Safe=Fre Wse SyncdWR SyncdRW BCSyncdWW BCSyncdRW
Time safe133 2.15
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe134.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe134
"SyncdWW Rfe SyncdRW Rfe SyncdRW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | sync | sync | stw r1,0(r2) ;
li r3,1 | li r3,1 | li r3,1 | sync ;
stw r3,0(r4) | stw r3,0(r4) | stw r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe134 Allowed
Histogram (14 states)
3 :>0:r1=0; 1:r1=1; 2:r1=1; a=2;
1 :>0:r1=1; 1:r1=0; 2:r1=1; a=2;
4 :>0:r1=1; 1:r1=1; 2:r1=1; a=1;
1004 :>0:r1=1; 1:r1=1; 2:r1=0; a=1;
968 :>0:r1=1; 1:r1=0; 2:r1=0; a=2;
3747 :>0:r1=0; 1:r1=0; 2:r1=1; a=2;
4063 :>0:r1=0; 1:r1=1; 2:r1=1; a=1;
29568 :>0:r1=0; 1:r1=1; 2:r1=0; a=2;
21934 :>0:r1=1; 1:r1=0; 2:r1=1; a=1;
246724:>0:r1=0; 1:r1=0; 2:r1=0; a=1;
150423:>0:r1=0; 1:r1=0; 2:r1=1; a=1;
159229:>0:r1=1; 1:r1=0; 2:r1=0; a=1;
121644:>0:r1=0; 1:r1=1; 2:r1=0; a=1;
260688:>0:r1=0; 1:r1=0; 2:r1=0; a=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=1) is NOT validated
Hash=6d848fe72ccaacd544388b134d5053f0
Cycle=SyncdWW Rfe SyncdRW Rfe SyncdRW Rfe SyncdRW Wse
Relax safe134 No
Safe=Wse SyncdRW BCSyncdWW BCSyncdRW
Time safe134 2.16
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe135.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe135
"LwSyncdWW Wse LwSyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=x;}
P0 | P1 ;
li r1,2 | li r1,2 ;
stw r1,0(r2) | stw r1,0(r2) ;
lwsync | lwsync ;
li r3,1 | li r3,1 ;
stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ y=2)
Generated assembler
_litmus_P0_0_: li r11,2
_litmus_P0_1_: stw r11,0(r9)
_litmus_P0_2_: lwsync
_litmus_P0_3_: li r10,1
_litmus_P0_4_: stw r10,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
Test safe135 Allowed
Histogram (3 states)
700405:>x=1; y=2;
603443:>x=1; y=1;
696152:>x=2; y=1;
No
Witnesses
Positive: 0, Negative: 2000000
Condition exists (x=2 /\ y=2) is NOT validated
Hash=829af8195a1482485057a881cab011a8
Cycle=LwSyncdWW Wse LwSyncdWW Wse
Relax safe135 No
Safe=Wse LwSyncdWW
Time safe135 1.26
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe136.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe136
"LwSyncdWW Wse LwSyncdWW Wse LwSyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
li r1,2 | li r1,2 | li r1,2 ;
stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
lwsync | lwsync | lwsync ;
li r3,1 | li r3,1 | li r3,1 ;
stw r3,0(r4) | stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ z=2)
Generated assembler
_litmus_P0_0_: li r10,2
_litmus_P0_1_: stw r10,0(r9)
_litmus_P0_2_: lwsync
_litmus_P0_3_: li r11,1
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: li r10,2
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe136 Allowed
Histogram (7 states)
5415 :>x=1; y=2; z=2;
4229 :>x=2; y=2; z=1;
2480 :>x=2; y=1; z=2;
290527:>x=2; y=1; z=1;
102976:>x=1; y=1; z=1;
308633:>x=1; y=1; z=2;
285740:>x=1; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ z=2) is NOT validated
Hash=20a6a34b6dc3f52d89ffdf88575062ca
Cycle=LwSyncdWW Wse LwSyncdWW Wse LwSyncdWW Wse
Relax safe136 No
Safe=Wse LwSyncdWW
Time safe136 1.77
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe137.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe137
"Rfe SyncdRW Wse LwSyncdWW Wse LwSyncdWW Wse"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | li r1,2 | li r1,2 ;
sync | stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwsync | lwsync | ;
stw r3,0(r4) | li r3,1 | li r3,1 | ;
| stw r3,0(r4) | stw r3,0(r4) | ;
exists (x=2 /\ y=2 /\ z=2 /\ 0:r1=2)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe137 Allowed
Histogram (21 states)
9 :>0:r1=2; x=2; y=2; z=1;
13 :>0:r1=0; x=2; y=2; z=2;
76 :>0:r1=2; x=1; y=2; z=2;
919 :>0:r1=1; x=2; y=1; z=1;
1877 :>0:r1=0; x=1; y=2; z=2;
2887 :>0:r1=2; x=2; y=1; z=2;
12755 :>0:r1=1; x=2; y=1; z=2;
21914 :>0:r1=2; x=2; y=1; z=1;
54 :>0:r1=1; x=1; y=2; z=2;
20546 :>0:r1=0; x=1; y=1; z=2;
152062:>0:r1=0; x=2; y=1; z=1;
61458 :>0:r1=2; x=1; y=1; z=2;
67862 :>0:r1=0; x=1; y=2; z=1;
13971 :>0:r1=0; x=2; y=1; z=2;
211331:>0:r1=2; x=1; y=2; z=1;
170356:>0:r1=2; x=1; y=1; z=1;
118217:>0:r1=1; x=1; y=1; z=2;
62920 :>0:r1=0; x=1; y=1; z=1;
13299 :>0:r1=1; x=1; y=2; z=1;
63854 :>0:r1=1; x=1; y=1; z=1;
3620 :>0:r1=0; x=2; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ z=2 /\ 0:r1=2) is NOT validated
Hash=5d10ce080a9d777423b018ce36e4e5de
Cycle=Rfe SyncdRW Wse LwSyncdWW Wse LwSyncdWW Wse
Relax safe137 No
Safe=Wse LwSyncdWW ACSyncdRW
Time safe137 2.31
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe138.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe138
"SyncdWR Fre LwSyncdWW Wse LwSyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
li r1,1 | li r1,2 | li r1,2 ;
stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
lwsync | lwsync | sync ;
li r3,1 | li r3,1 | lwz r3,0(r4) ;
stw r3,0(r4) | stw r3,0(r4) | ;
exists (y=2 /\ z=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: li r10,1
_litmus_P0_1_: stw r10,0(r9)
_litmus_P0_2_: lwsync
_litmus_P0_3_: li r11,1
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: li r10,2
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r8,2
_litmus_P2_1_: stw r8,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r10,0(r2)
Test safe138 Allowed
Histogram (7 states)
1214 :>2:r3=0; y=1; z=2;
7344 :>2:r3=0; y=2; z=1;
3742 :>2:r3=1; y=2; z=2;
292267:>2:r3=1; y=2; z=1;
147082:>2:r3=1; y=1; z=1;
306340:>2:r3=1; y=1; z=2;
242011:>2:r3=0; y=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 2:r3=0) is NOT validated
Hash=d9622bc66160015a9bfad53625a07803
Cycle=SyncdWR Fre LwSyncdWW Wse LwSyncdWW Wse
Relax safe138 No
Safe=Fre Wse SyncdWR LwSyncdWW
Time safe138 1.67
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe139.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe139
"Rfe SyncdRR Fre LwSyncdWW Wse LwSyncdWW Wse"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | li r1,2 | li r1,2 ;
sync | stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r4) | lwsync | lwsync | ;
| li r3,1 | li r3,1 | ;
| stw r3,0(r4) | stw r3,0(r4) | ;
exists (y=2 /\ z=2 /\ 0:r1=2 /\ 0:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe139 Allowed
Histogram (21 states)
6 :>0:r1=0; 0:r3=0; y=2; z=2;
61 :>0:r1=2; 0:r3=1; y=2; z=2;
12 :>0:r1=2; 0:r3=0; y=2; z=1;
70 :>0:r1=1; 0:r3=1; y=2; z=2;
8436 :>0:r1=1; 0:r3=0; y=1; z=2;
4227 :>0:r1=2; 0:r3=0; y=1; z=2;
18091 :>0:r1=0; 0:r3=0; y=2; z=1;
2816 :>0:r1=0; 0:r3=1; y=2; z=2;
10143 :>0:r1=1; 0:r3=1; y=2; z=1;
5001 :>0:r1=1; 0:r3=0; y=1; z=1;
39931 :>0:r1=0; 0:r3=1; y=1; z=2;
181198:>0:r1=2; 0:r3=1; y=2; z=1;
10818 :>0:r1=0; 0:r3=0; y=1; z=2;
17747 :>0:r1=0; 0:r3=1; y=1; z=1;
168517:>0:r1=2; 0:r3=1; y=1; z=1;
30176 :>0:r1=2; 0:r3=0; y=1; z=1;
91477 :>0:r1=1; 0:r3=1; y=1; z=2;
217484:>0:r1=0; 0:r3=0; y=1; z=1;
96177 :>0:r1=1; 0:r3=1; y=1; z=1;
61201 :>0:r1=2; 0:r3=1; y=1; z=2;
36411 :>0:r1=0; 0:r3=1; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=2 /\ 0:r3=0) is NOT validated
Hash=2981868b40d49c4b8e0f154e85a0d75e
Cycle=Rfe SyncdRR Fre LwSyncdWW Wse LwSyncdWW Wse
Relax safe139 No
Safe=Fre Wse LwSyncdWW ACSyncdRR
Time safe139 2.12
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe140.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe140
"SyncdWW Rfe SyncsRW Rfe LwSyncdRW Wse LwSyncdWW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
sync | lwsync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,2 | li r3,1 | lwsync | sync ;
stw r3,0(r2) | stw r3,0(r4) | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: lwsync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe140 Allowed
Histogram (30 states)
3 :>0:r1=1; 1:r1=0; x=2; y=2; z=2;
132 :>0:r1=0; 1:r1=2; x=2; y=1; z=2;
115 :>0:r1=0; 1:r1=0; x=2; y=2; z=2;
197 :>0:r1=1; 1:r1=0; x=2; y=1; z=2;
115 :>0:r1=1; 1:r1=1; x=2; y=1; z=2;
584 :>0:r1=0; 1:r1=1; x=2; y=2; z=1;
756 :>0:r1=0; 1:r1=1; x=2; y=1; z=2;
633 :>0:r1=1; 1:r1=1; x=2; y=2; z=1;
3597 :>0:r1=0; 1:r1=0; x=1; y=2; z=2;
536 :>0:r1=0; 1:r1=2; x=1; y=2; z=2;
693 :>0:r1=1; 1:r1=2; x=2; y=1; z=2;
1245 :>0:r1=0; 1:r1=1; x=1; y=1; z=2;
35 :>0:r1=0; 1:r1=2; x=2; y=2; z=1;
13924 :>0:r1=0; 1:r1=1; x=1; y=1; z=1;
15550 :>0:r1=0; 1:r1=2; x=2; y=1; z=1;
45664 :>0:r1=0; 1:r1=1; x=2; y=1; z=1;
98013 :>0:r1=0; 1:r1=0; x=2; y=2; z=1;
14657 :>0:r1=1; 1:r1=0; x=2; y=2; z=1;
101917:>0:r1=1; 1:r1=1; x=2; y=1; z=1;
13440 :>0:r1=0; 1:r1=0; x=2; y=1; z=2;
73205 :>0:r1=0; 1:r1=2; x=1; y=2; z=1;
18066 :>0:r1=1; 1:r1=0; x=2; y=1; z=1;
123552:>0:r1=0; 1:r1=2; x=1; y=1; z=2;
148917:>0:r1=0; 1:r1=0; x=1; y=2; z=1;
44938 :>0:r1=0; 1:r1=0; x=2; y=1; z=1;
138366:>0:r1=0; 1:r1=0; x=1; y=1; z=2;
116838:>0:r1=0; 1:r1=2; x=1; y=1; z=1;
22635 :>0:r1=0; 1:r1=0; x=1; y=1; z=1;
1385 :>0:r1=1; 1:r1=2; x=2; y=1; z=1;
292 :>0:r1=0; 1:r1=1; x=1; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2) is NOT validated
Hash=9d3eb83ebe0c9e309f86b05ed940d227
Cycle=SyncdWW Rfe SyncsRW Rfe LwSyncdRW Wse LwSyncdWW Wse
Relax safe140 No
Safe=Wse LwSyncdWW LwSyncdRW BCSyncsRW BCSyncdWW
Time safe140 2.65
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe141.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe141
"SyncdWW Rfe LwSyncdRW Wse LwSyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,2 | li r1,2 ;
lwsync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwsync | sync ;
stw r3,0(r4) | li r3,1 | li r3,1 ;
| stw r3,0(r4) | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stw r8,0(r2)
_litmus_P1_0_: li r10,2
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe141 Allowed
Histogram (7 states)
364 :>0:r1=1; y=1; z=2;
5459 :>0:r1=0; y=2; z=2;
1545 :>0:r1=1; y=2; z=1;
167240:>0:r1=1; y=1; z=1;
156814:>0:r1=0; y=1; z=1;
309875:>0:r1=0; y=1; z=2;
358703:>0:r1=0; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1) is NOT validated
Hash=b37bf479079eb07a550397f23b4f164f
Cycle=SyncdWW Rfe LwSyncdRW Wse LwSyncdWW Wse
Relax safe141 No
Safe=Wse LwSyncdWW LwSyncdRW BCSyncdWW
Time safe141 1.66
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe142.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe142
"SyncdWW Rfe SyncdRW Rfe LwSyncdRW Wse LwSyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
sync | lwsync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | li r3,1 | lwsync | sync ;
stw r3,0(r4) | stw r3,0(r4) | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (a=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: lwsync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe142 Allowed
Histogram (15 states)
1 :>0:r1=1; 1:r1=1; a=2; z=1;
2 :>0:r1=1; 1:r1=1; a=1; z=2;
81 :>0:r1=0; 1:r1=1; a=2; z=2;
71 :>0:r1=1; 1:r1=0; a=2; z=2;
10216 :>0:r1=0; 1:r1=1; a=1; z=2;
2187 :>0:r1=1; 1:r1=0; a=2; z=1;
3315 :>0:r1=1; 1:r1=1; a=1; z=1;
15339 :>0:r1=0; 1:r1=0; a=2; z=2;
30432 :>0:r1=1; 1:r1=0; a=1; z=2;
134151:>0:r1=1; 1:r1=0; a=1; z=1;
80824 :>0:r1=0; 1:r1=1; a=2; z=1;
256755:>0:r1=0; 1:r1=0; a=1; z=2;
132520:>0:r1=0; 1:r1=0; a=1; z=1;
93395 :>0:r1=0; 1:r1=1; a=1; z=1;
240711:>0:r1=0; 1:r1=0; a=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1) is NOT validated
Hash=71f81509812df08bb0101530cb7152ee
Cycle=SyncdWW Rfe SyncdRW Rfe LwSyncdRW Wse LwSyncdWW Wse
Relax safe142 No
Safe=Wse LwSyncdWW LwSyncdRW BCSyncdWW BCSyncdRW
Time safe142 2.26
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe143.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe143
"Rfe SyncdRW Wse LwSyncdWW Wse"
{0:r2=y; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,2 | li r1,2 ;
sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwsync | ;
stw r3,0(r4) | li r3,1 | ;
| stw r3,0(r4) | ;
exists (x=2 /\ y=2 /\ 0:r1=2)
Generated assembler
_litmus_P0_0_: lwz r10,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stw r8,0(r2)
_litmus_P1_0_: li r10,2
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r9,2
_litmus_P2_1_: stw r9,0(r2)
Test safe143 Allowed
Histogram (9 states)
641 :>0:r1=0; x=2; y=2;
39037 :>0:r1=0; x=1; y=2;
115054:>0:r1=1; x=1; y=1;
113471:>0:r1=2; x=1; y=2;
177257:>0:r1=0; x=1; y=1;
263405:>0:r1=2; x=1; y=1;
130186:>0:r1=1; x=1; y=2;
159079:>0:r1=0; x=2; y=1;
1870 :>0:r1=2; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2) is NOT validated
Hash=43266613ae33cc9f77dd3f0ebe5f5de5
Cycle=Rfe SyncdRW Wse LwSyncdWW Wse
Relax safe143 No
Safe=Wse LwSyncdWW ACSyncdRW
Time safe143 1.40
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe144.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe144
"SyncdWR Fre Rfe SyncdRW Wse LwSyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x; 3:r2=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | li r1,2 | li r1,1 ;
sync | stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwsync | sync | ;
stw r3,0(r4) | li r3,1 | lwz r3,0(r4) | ;
| stw r3,0(r4) | | ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
Test safe144 Allowed
Histogram (15 states)
7 :>0:r1=1; 2:r3=1; y=2; z=2;
5 :>0:r1=0; 2:r3=0; y=2; z=2;
31 :>0:r1=1; 2:r3=0; y=1; z=2;
2403 :>0:r1=1; 2:r3=0; y=2; z=1;
5915 :>0:r1=0; 2:r3=1; y=2; z=2;
52371 :>0:r1=1; 2:r3=0; y=1; z=1;
494 :>0:r1=0; 2:r3=0; y=1; z=2;
62745 :>0:r1=0; 2:r3=1; y=1; z=2;
17622 :>0:r1=1; 2:r3=1; y=2; z=1;
41708 :>0:r1=0; 2:r3=1; y=1; z=1;
189112:>0:r1=0; 2:r3=1; y=2; z=1;
236018:>0:r1=1; 2:r3=1; y=1; z=2;
270366:>0:r1=1; 2:r3=1; y=1; z=1;
112822:>0:r1=0; 2:r3=0; y=1; z=1;
8381 :>0:r1=0; 2:r3=0; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 2:r3=0) is NOT validated
Hash=4c0f04ba08d5f5647984e7a5f1e47a5a
Cycle=SyncdWR Fre Rfe SyncdRW Wse LwSyncdWW Wse
Relax safe144 No
Safe=Fre Wse SyncdWR LwSyncdWW ACSyncdRW
Time safe144 2.13
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe145.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe145
"SyncdWW Rfe DpdW Rfe SyncdRW Wse LwSyncdWW Wse"
{0:r2=x; 0:r5=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
xor r3,r1,r1 | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r4,1 | li r3,1 | lwsync | sync ;
stwx r4,r3,r5 | stw r3,0(r4) | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (a=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: xor r11,r7,r7
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stwx r8,r11,r2
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe145 Allowed
Histogram (15 states)
3 :>0:r1=1; 1:r1=0; a=2; z=2;
2 :>0:r1=1; 1:r1=1; a=2; z=1;
9 :>0:r1=1; 1:r1=1; a=1; z=2;
135 :>0:r1=0; 1:r1=1; a=2; z=2;
5355 :>0:r1=1; 1:r1=0; a=2; z=1;
7121 :>0:r1=1; 1:r1=1; a=1; z=1;
4811 :>0:r1=0; 1:r1=0; a=2; z=2;
54877 :>0:r1=1; 1:r1=0; a=1; z=2;
34761 :>0:r1=0; 1:r1=1; a=1; z=2;
211788:>0:r1=0; 1:r1=0; a=2; z=1;
183625:>0:r1=0; 1:r1=0; a=1; z=2;
110081:>0:r1=0; 1:r1=0; a=1; z=1;
109861:>0:r1=1; 1:r1=0; a=1; z=1;
203478:>0:r1=0; 1:r1=1; a=1; z=1;
74093 :>0:r1=0; 1:r1=1; a=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1) is NOT validated
Hash=d3dc9fd6dc1e1b0022a23abb1c7c8940
Cycle=SyncdWW Rfe DpdW Rfe SyncdRW Wse LwSyncdWW Wse
Relax safe145 No
Safe=Wse LwSyncdWW DpdW ACSyncdRW BCSyncdWW
Time safe145 2.22
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe146.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe146
"SyncdWW Rfe DpsW Rfe SyncdRW Wse LwSyncdWW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
xor r3,r1,r1 | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r4,2 | li r3,1 | lwsync | sync ;
stwx r4,r3,r2 | stw r3,0(r4) | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: xor r11,r8,r8
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stwx r9,r11,r2
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe146 Allowed
Histogram (30 states)
2 :>0:r1=1; 1:r1=0; x=2; y=2; z=2;
5 :>0:r1=1; 1:r1=2; x=2; y=2; z=1;
5 :>0:r1=0; 1:r1=2; x=2; y=1; z=2;
9 :>0:r1=0; 1:r1=0; x=2; y=2; z=2;
18 :>0:r1=0; 1:r1=1; x=2; y=2; z=1;
33 :>0:r1=0; 1:r1=1; x=2; y=1; z=2;
263 :>0:r1=1; 1:r1=1; x=2; y=1; z=2;
144 :>0:r1=0; 1:r1=1; x=1; y=2; z=1;
243 :>0:r1=1; 1:r1=0; x=2; y=1; z=2;
272 :>0:r1=1; 1:r1=1; x=2; y=2; z=1;
1132 :>0:r1=0; 1:r1=0; x=1; y=2; z=2;
1752 :>0:r1=0; 1:r1=1; x=1; y=1; z=2;
243 :>0:r1=0; 1:r1=2; x=1; y=2; z=2;
2836 :>0:r1=0; 1:r1=1; x=2; y=1; z=1;
1247 :>0:r1=0; 1:r1=2; x=2; y=1; z=1;
2059 :>0:r1=0; 1:r1=0; x=2; y=1; z=2;
10581 :>0:r1=1; 1:r1=0; x=2; y=2; z=1;
68247 :>0:r1=0; 1:r1=1; x=1; y=1; z=1;
50354 :>0:r1=1; 1:r1=1; x=2; y=1; z=1;
74621 :>0:r1=0; 1:r1=2; x=1; y=2; z=1;
69559 :>0:r1=0; 1:r1=0; x=1; y=1; z=2;
37236 :>0:r1=0; 1:r1=0; x=2; y=2; z=1;
28282 :>0:r1=0; 1:r1=0; x=2; y=1; z=1;
26247 :>0:r1=0; 1:r1=0; x=1; y=1; z=1;
27541 :>0:r1=1; 1:r1=0; x=2; y=1; z=1;
190571:>0:r1=0; 1:r1=2; x=1; y=1; z=1;
171120:>0:r1=0; 1:r1=0; x=1; y=2; z=1;
43446 :>0:r1=1; 1:r1=2; x=2; y=1; z=1;
527 :>0:r1=1; 1:r1=2; x=2; y=1; z=2;
191405:>0:r1=0; 1:r1=2; x=1; y=1; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2) is NOT validated
Hash=eff99738e925f3e80655a6956dd6f2a1
Cycle=SyncdWW Rfe DpsW Rfe SyncdRW Wse LwSyncdWW Wse
Relax safe146 No
Safe=Wse LwSyncdWW DpsW ACSyncdRW BCSyncdWW
Time safe146 2.72
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe147.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe147
"LwSyncdWW Rfe SyncdRW Wse LwSyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,2 | li r1,2 ;
sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwsync | lwsync ;
stw r3,0(r4) | li r3,1 | li r3,1 ;
| stw r3,0(r4) | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stw r8,0(r2)
_litmus_P1_0_: li r10,2
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe147 Allowed
Histogram (7 states)
713 :>0:r1=1; y=2; z=1;
1402 :>0:r1=1; y=1; z=2;
3731 :>0:r1=0; y=2; z=2;
254967:>0:r1=0; y=2; z=1;
318942:>0:r1=0; y=1; z=2;
161423:>0:r1=0; y=1; z=1;
258822:>0:r1=1; y=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1) is NOT validated
Hash=758fe8c3f6764b31c480cd347a754815
Cycle=LwSyncdWW Rfe SyncdRW Wse LwSyncdWW Wse
Relax safe147 No
Safe=Wse LwSyncdWW ACSyncdRW
Time safe147 1.61
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe148.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe148
"SyncdWW Rfe LwSyncdRW Rfe SyncdRW Wse LwSyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
lwsync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | li r3,1 | lwsync | sync ;
stw r3,0(r4) | stw r3,0(r4) | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (a=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe148 Allowed
Histogram (14 states)
2 :>0:r1=1; 1:r1=1; a=1; z=2;
11 :>0:r1=0; 1:r1=1; a=2; z=2;
17 :>0:r1=1; 1:r1=0; a=2; z=2;
3111 :>0:r1=0; 1:r1=1; a=1; z=2;
4835 :>0:r1=1; 1:r1=1; a=1; z=1;
7328 :>0:r1=0; 1:r1=0; a=2; z=2;
1404 :>0:r1=1; 1:r1=0; a=2; z=1;
14694 :>0:r1=1; 1:r1=0; a=1; z=2;
139203:>0:r1=1; 1:r1=0; a=1; z=1;
219314:>0:r1=0; 1:r1=0; a=2; z=1;
178197:>0:r1=0; 1:r1=0; a=1; z=2;
125095:>0:r1=0; 1:r1=0; a=1; z=1;
169868:>0:r1=0; 1:r1=1; a=1; z=1;
136921:>0:r1=0; 1:r1=1; a=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1) is NOT validated
Hash=24697cd1698e3915389d919c553a8788
Cycle=SyncdWW Rfe LwSyncdRW Rfe SyncdRW Wse LwSyncdWW Wse
Relax safe148 No
Safe=Wse LwSyncdWW LwSyncdRW ACSyncdRW BCSyncdWW
Time safe148 2.15
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe149.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe149
"SyncdWW Rfe LwSyncsRW Rfe SyncdRW Wse LwSyncdWW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
lwsync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,2 | li r3,1 | lwsync | sync ;
stw r3,0(r2) | stw r3,0(r4) | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe149 Allowed
Histogram (31 states)
3 :>0:r1=0; 1:r1=2; x=2; y=2; z=1;
4 :>0:r1=0; 1:r1=2; x=2; y=1; z=2;
9 :>0:r1=1; 1:r1=2; x=2; y=2; z=1;
7 :>0:r1=1; 1:r1=0; x=2; y=2; z=2;
51 :>0:r1=0; 1:r1=1; x=2; y=1; z=2;
59 :>0:r1=0; 1:r1=0; x=2; y=2; z=2;
156 :>0:r1=0; 1:r1=1; x=1; y=2; z=1;
324 :>0:r1=1; 1:r1=1; x=2; y=1; z=2;
1421 :>0:r1=0; 1:r1=1; x=1; y=1; z=2;
466 :>0:r1=1; 1:r1=2; x=2; y=1; z=2;
1350 :>0:r1=1; 1:r1=1; x=2; y=2; z=1;
549 :>0:r1=0; 1:r1=2; x=1; y=2; z=2;
31 :>0:r1=0; 1:r1=1; x=2; y=2; z=1;
813 :>0:r1=1; 1:r1=0; x=2; y=1; z=2;
5682 :>0:r1=0; 1:r1=2; x=2; y=1; z=1;
6008 :>0:r1=0; 1:r1=1; x=2; y=1; z=1;
47899 :>0:r1=1; 1:r1=1; x=2; y=1; z=1;
6243 :>0:r1=0; 1:r1=0; x=1; y=2; z=2;
44006 :>0:r1=0; 1:r1=0; x=2; y=2; z=1;
17024 :>0:r1=1; 1:r1=0; x=2; y=2; z=1;
11036 :>0:r1=0; 1:r1=0; x=2; y=1; z=2;
27398 :>0:r1=1; 1:r1=0; x=2; y=1; z=1;
74853 :>0:r1=0; 1:r1=2; x=1; y=2; z=1;
155118:>0:r1=0; 1:r1=0; x=1; y=2; z=1;
32255 :>0:r1=0; 1:r1=0; x=2; y=1; z=1;
62376 :>0:r1=0; 1:r1=1; x=1; y=1; z=1;
172938:>0:r1=0; 1:r1=2; x=1; y=1; z=2;
92192 :>0:r1=0; 1:r1=0; x=1; y=1; z=2;
165199:>0:r1=0; 1:r1=2; x=1; y=1; z=1;
42433 :>0:r1=1; 1:r1=2; x=2; y=1; z=1;
32097 :>0:r1=0; 1:r1=0; x=1; y=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2) is NOT validated
Hash=c89620b01bdcda9612fdcb24b653ed20
Cycle=SyncdWW Rfe LwSyncsRW Rfe SyncdRW Wse LwSyncdWW Wse
Relax safe149 No
Safe=Wse LwSyncsRW LwSyncdWW ACSyncdRW BCSyncdWW
Time safe149 2.77
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe150.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe150
"LwSyncdWW Rfe SyncsRW Rfe SyncdRW Wse LwSyncdWW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,2 | li r3,1 | lwsync | lwsync ;
stw r3,0(r2) | stw r3,0(r4) | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe150 Allowed
Histogram (30 states)
8 :>0:r1=1; 1:r1=0; x=2; y=2; z=2;
32 :>0:r1=0; 1:r1=2; x=1; y=2; z=2;
83 :>0:r1=0; 1:r1=0; x=2; y=2; z=2;
109 :>0:r1=0; 1:r1=1; x=1; y=2; z=1;
17 :>0:r1=0; 1:r1=2; x=2; y=2; z=1;
132 :>0:r1=0; 1:r1=1; x=2; y=2; z=1;
338 :>0:r1=1; 1:r1=1; x=2; y=1; z=2;
319 :>0:r1=0; 1:r1=0; x=1; y=2; z=2;
690 :>0:r1=1; 1:r1=2; x=2; y=1; z=2;
1817 :>0:r1=0; 1:r1=2; x=2; y=1; z=2;
3823 :>0:r1=0; 1:r1=1; x=2; y=1; z=2;
6527 :>0:r1=0; 1:r1=1; x=1; y=1; z=2;
1818 :>0:r1=1; 1:r1=0; x=2; y=1; z=2;
6211 :>0:r1=1; 1:r1=1; x=2; y=2; z=1;
59315 :>0:r1=1; 1:r1=0; x=2; y=2; z=1;
19099 :>0:r1=0; 1:r1=1; x=2; y=1; z=1;
27258 :>0:r1=0; 1:r1=2; x=1; y=2; z=1;
177075:>0:r1=1; 1:r1=1; x=2; y=1; z=1;
130710:>0:r1=0; 1:r1=0; x=2; y=2; z=1;
63309 :>0:r1=0; 1:r1=2; x=1; y=1; z=2;
97343 :>0:r1=0; 1:r1=0; x=1; y=1; z=2;
65455 :>0:r1=0; 1:r1=1; x=1; y=1; z=1;
21121 :>0:r1=0; 1:r1=0; x=1; y=1; z=1;
39320 :>0:r1=0; 1:r1=0; x=2; y=1; z=1;
19756 :>0:r1=1; 1:r1=0; x=2; y=1; z=1;
66734 :>0:r1=0; 1:r1=0; x=2; y=1; z=2;
119297:>0:r1=0; 1:r1=2; x=1; y=1; z=1;
52783 :>0:r1=0; 1:r1=0; x=1; y=2; z=1;
7708 :>0:r1=1; 1:r1=2; x=2; y=1; z=1;
11793 :>0:r1=0; 1:r1=2; x=2; y=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2) is NOT validated
Hash=166daddf33227e12f5cc6dfe707a6ca4
Cycle=LwSyncdWW Rfe SyncsRW Rfe SyncdRW Wse LwSyncdWW Wse
Relax safe150 No
Safe=Wse LwSyncdWW ACSyncsRW ACSyncdRW
Time safe150 2.63
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe151.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe151
"Rfe SyncdRW Rfe SyncdRW Wse LwSyncdWW Wse"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | li r3,1 | lwsync | ;
stw r3,0(r4) | stw r3,0(r4) | li r3,1 | ;
| | stw r3,0(r4) | ;
exists (y=2 /\ z=2 /\ 0:r1=2 /\ 1:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe151 Allowed
Histogram (19 states)
141 :>0:r1=2; 1:r1=0; y=2; z=2;
117 :>0:r1=1; 1:r1=0; y=2; z=2;
2888 :>0:r1=0; 1:r1=1; y=2; z=1;
6412 :>0:r1=1; 1:r1=1; y=1; z=2;
2895 :>0:r1=2; 1:r1=1; y=1; z=2;
1528 :>0:r1=1; 1:r1=1; y=1; z=1;
3096 :>0:r1=1; 1:r1=0; y=2; z=1;
6271 :>0:r1=0; 1:r1=0; y=2; z=2;
21130 :>0:r1=2; 1:r1=1; y=1; z=1;
84367 :>0:r1=2; 1:r1=0; y=2; z=1;
35256 :>0:r1=0; 1:r1=1; y=1; z=2;
117869:>0:r1=2; 1:r1=0; y=1; z=2;
57336 :>0:r1=1; 1:r1=0; y=1; z=2;
52498 :>0:r1=0; 1:r1=0; y=1; z=2;
94887 :>0:r1=0; 1:r1=0; y=2; z=1;
175431:>0:r1=2; 1:r1=0; y=1; z=1;
165700:>0:r1=0; 1:r1=1; y=1; z=1;
95160 :>0:r1=1; 1:r1=0; y=1; z=1;
77018 :>0:r1=0; 1:r1=0; y=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=2 /\ 1:r1=1) is NOT validated
Hash=343a456928f09abf1f5607831a9408cb
Cycle=Rfe SyncdRW Rfe SyncdRW Wse LwSyncdWW Wse
Relax safe151 No
Safe=Wse LwSyncdWW ACSyncdRW
Time safe151 2.06
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe152.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe152
"LwSyncdWW Rfe SyncdRW Rfe SyncdRW Wse LwSyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | li r3,1 | lwsync | lwsync ;
stw r3,0(r4) | stw r3,0(r4) | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (a=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe152 Allowed
Histogram (14 states)
5 :>0:r1=1; 1:r1=1; a=2; z=1;
2 :>0:r1=0; 1:r1=1; a=2; z=2;
22 :>0:r1=1; 1:r1=0; a=2; z=2;
4891 :>0:r1=0; 1:r1=1; a=1; z=2;
5606 :>0:r1=0; 1:r1=0; a=2; z=2;
16423 :>0:r1=1; 1:r1=0; a=2; z=1;
94212 :>0:r1=1; 1:r1=0; a=1; z=2;
214544:>0:r1=0; 1:r1=0; a=2; z=1;
171843:>0:r1=0; 1:r1=0; a=1; z=2;
115477:>0:r1=0; 1:r1=0; a=1; z=1;
198451:>0:r1=1; 1:r1=0; a=1; z=1;
4835 :>0:r1=1; 1:r1=1; a=1; z=1;
152742:>0:r1=0; 1:r1=1; a=1; z=1;
20947 :>0:r1=0; 1:r1=1; a=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1) is NOT validated
Hash=6e9d68ac1f01c39aab04b25d15188d77
Cycle=LwSyncdWW Rfe SyncdRW Rfe SyncdRW Wse LwSyncdWW Wse
Relax safe152 No
Safe=Wse LwSyncdWW ACSyncdRW
Time safe152 2.09
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe153.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe153
"SyncdWW Rfe SyncsRW Rfe DpdR Fre LwSyncdWW Wse"
{0:r2=x; 1:r2=x; 1:r5=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
sync | xor r3,r1,r1 | stw r1,0(r2) | stw r1,0(r2) ;
li r3,2 | lwzx r4,r3,r5 | lwsync | sync ;
stw r3,0(r2) | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r4=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r6,0(r9)
_litmus_P1_1_: xor r11,r6,r6
_litmus_P1_2_: lwzx r7,r11,r2
_litmus_P2_0_: li r11,1
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe153 Allowed
Histogram (31 states)
58 :>0:r1=0; 1:r1=1; 1:r4=0; x=1; z=1;
47 :>0:r1=1; 1:r1=1; 1:r4=1; x=2; z=2;
27 :>0:r1=0; 1:r1=2; 1:r4=0; x=2; z=1;
13 :>0:r1=1; 1:r1=0; 1:r4=0; x=2; z=2;
84 :>0:r1=0; 1:r1=1; 1:r4=0; x=2; z=1;
3 :>0:r1=1; 1:r1=2; 1:r4=0; x=2; z=1;
119 :>0:r1=0; 1:r1=0; 1:r4=0; x=2; z=2;
326 :>0:r1=1; 1:r1=1; 1:r4=0; x=2; z=1;
2302 :>0:r1=1; 1:r1=0; 1:r4=1; x=2; z=2;
2343 :>0:r1=0; 1:r1=2; 1:r4=0; x=1; z=2;
167 :>0:r1=0; 1:r1=2; 1:r4=1; x=2; z=2;
989 :>0:r1=0; 1:r1=1; 1:r4=1; x=1; z=2;
8103 :>0:r1=1; 1:r1=0; 1:r4=0; x=2; z=1;
106101:>0:r1=0; 1:r1=0; 1:r4=0; x=2; z=1;
148639:>0:r1=1; 1:r1=1; 1:r4=1; x=2; z=1;
27703 :>0:r1=0; 1:r1=0; 1:r4=1; x=2; z=2;
19237 :>0:r1=0; 1:r1=2; 1:r4=1; x=2; z=1;
46281 :>0:r1=0; 1:r1=2; 1:r4=0; x=1; z=1;
42978 :>0:r1=0; 1:r1=0; 1:r4=0; x=1; z=2;
29443 :>0:r1=0; 1:r1=0; 1:r4=1; x=2; z=1;
26927 :>0:r1=0; 1:r1=1; 1:r4=1; x=2; z=1;
146134:>0:r1=0; 1:r1=2; 1:r4=1; x=1; z=2;
18763 :>0:r1=0; 1:r1=0; 1:r4=1; x=1; z=1;
1583 :>0:r1=0; 1:r1=1; 1:r4=1; x=2; z=2;
26965 :>0:r1=1; 1:r1=0; 1:r4=1; x=2; z=1;
107592:>0:r1=0; 1:r1=0; 1:r4=1; x=1; z=2;
124520:>0:r1=0; 1:r1=2; 1:r4=1; x=1; z=1;
95002 :>0:r1=0; 1:r1=0; 1:r4=0; x=1; z=1;
5805 :>0:r1=1; 1:r1=2; 1:r4=1; x=2; z=1;
771 :>0:r1=1; 1:r1=2; 1:r4=1; x=2; z=2;
10975 :>0:r1=0; 1:r1=1; 1:r4=1; x=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r4=0) is NOT validated
Hash=537b4506bbb63a9f479354f3ea2a468a
Cycle=SyncdWW Rfe SyncsRW Rfe DpdR Fre LwSyncdWW Wse
Relax safe153 No
Safe=Fre Wse LwSyncdWW DpdR BCSyncsRW BCSyncdWW
Time safe153 2.55
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe154.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe154
"SyncdWW Rfe DpdR Fre LwSyncdWW Wse"
{0:r2=x; 0:r5=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,1 | li r1,2 ;
xor r3,r1,r1 | stw r1,0(r2) | stw r1,0(r2) ;
lwzx r4,r3,r5 | lwsync | sync ;
| li r3,1 | li r3,1 ;
| stw r3,0(r4) | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 0:r4=0)
Generated assembler
_litmus_P0_0_: lwz r6,0(r9)
_litmus_P0_1_: xor r11,r6,r6
_litmus_P0_2_: lwzx r7,r11,r2
_litmus_P1_0_: li r10,1
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe154 Allowed
Histogram (7 states)
2272 :>0:r1=1; 0:r4=0; z=1;
521 :>0:r1=1; 0:r4=1; z=2;
11337 :>0:r1=0; 0:r4=0; z=2;
285750:>0:r1=0; 0:r4=1; z=2;
187326:>0:r1=1; 0:r4=1; z=1;
356821:>0:r1=0; 0:r4=0; z=1;
155973:>0:r1=0; 0:r4=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 0:r4=0) is NOT validated
Hash=5c2152366b5d53b82592d4c390bb26e1
Cycle=SyncdWW Rfe DpdR Fre LwSyncdWW Wse
Relax safe154 No
Safe=Fre Wse LwSyncdWW DpdR BCSyncdWW
Time safe154 1.66
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe155.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe155
"SyncdWW Rfe SyncdRW Rfe DpdR Fre LwSyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r5=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
sync | xor r3,r1,r1 | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwzx r4,r3,r5 | lwsync | sync ;
stw r3,0(r4) | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r4=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r6,0(r9)
_litmus_P1_1_: xor r11,r6,r6
_litmus_P1_2_: lwzx r7,r11,r2
_litmus_P2_0_: li r11,1
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe155 Allowed
Histogram (14 states)
1 :>0:r1=1; 1:r1=1; 1:r4=1; a=2;
126 :>0:r1=1; 1:r1=0; 1:r4=0; a=2;
134 :>0:r1=0; 1:r1=1; 1:r4=0; a=2;
685 :>0:r1=1; 1:r1=1; 1:r4=1; a=1;
1634 :>0:r1=0; 1:r1=1; 1:r4=0; a=1;
12705 :>0:r1=0; 1:r1=0; 1:r4=0; a=2;
104576:>0:r1=1; 1:r1=0; 1:r4=1; a=1;
273686:>0:r1=0; 1:r1=0; 1:r4=0; a=1;
144896:>0:r1=0; 1:r1=1; 1:r4=1; a=1;
210109:>0:r1=0; 1:r1=0; 1:r4=1; a=2;
16635 :>0:r1=1; 1:r1=0; 1:r4=0; a=1;
126648:>0:r1=0; 1:r1=0; 1:r4=1; a=1;
107476:>0:r1=0; 1:r1=1; 1:r4=1; a=2;
689 :>0:r1=1; 1:r1=0; 1:r4=1; a=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r4=0) is NOT validated
Hash=22f23b1e6cb88ec70e61f5fdb4be79b3
Cycle=SyncdWW Rfe SyncdRW Rfe DpdR Fre LwSyncdWW Wse
Relax safe155 No
Safe=Fre Wse LwSyncdWW DpdR BCSyncdWW BCSyncdRW
Time safe155 2.05
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe156.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe156
"SyncdWW Rfe DpsR Fre LwSyncdWW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,2 | li r1,2 ;
xor r3,r1,r1 | stw r1,0(r2) | stw r1,0(r2) ;
lwzx r4,r3,r2 | lwsync | sync ;
| li r3,1 | li r3,1 ;
| stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r4=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r2)
_litmus_P0_1_: xor r11,r7,r7
_litmus_P0_2_: lwzx r9,r11,r2
_litmus_P1_0_: li r10,2
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe156 Allowed
Histogram (18 states)
2 :>0:r1=0; 0:r4=1; x=1; y=2;
24 :>0:r1=0; 0:r4=2; x=1; y=2;
49 :>0:r1=0; 0:r4=1; x=2; y=1;
254 :>0:r1=1; 0:r4=2; x=2; y=1;
122 :>0:r1=0; 0:r4=2; x=1; y=1;
48 :>0:r1=2; 0:r4=1; x=1; y=2;
1280 :>0:r1=2; 0:r4=1; x=1; y=1;
233 :>0:r1=0; 0:r4=1; x=1; y=1;
212 :>0:r1=0; 0:r4=2; x=2; y=1;
366 :>0:r1=1; 0:r4=1; x=1; y=2;
80162 :>0:r1=0; 0:r4=0; x=2; y=1;
10018 :>0:r1=0; 0:r4=0; x=1; y=2;
28085 :>0:r1=2; 0:r4=2; x=2; y=1;
154515:>0:r1=2; 0:r4=2; x=1; y=1;
23177 :>0:r1=1; 0:r4=1; x=2; y=1;
297080:>0:r1=2; 0:r4=2; x=1; y=2;
351023:>0:r1=0; 0:r4=0; x=1; y=1;
53350 :>0:r1=1; 0:r4=1; x=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r4=1) is NOT validated
Hash=24458243569b999f0e1cd35dfed956c9
Cycle=SyncdWW Rfe DpsR Fre LwSyncdWW Wse
Relax safe156 No
Safe=Fre Wse LwSyncdWW DpsR BCSyncdWW
Time safe156 1.67
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe157.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe157
"SyncdWW Rfe SyncdRW Rfe DpsR Fre LwSyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
sync | xor r3,r1,r1 | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwzx r4,r3,r2 | lwsync | sync ;
stw r3,0(r4) | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r4=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r7,0(r2)
_litmus_P1_1_: xor r11,r7,r7
_litmus_P1_2_: lwzx r9,r11,r2
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe157 Allowed
Histogram (33 states)
1 :>0:r1=1; 1:r1=2; 1:r4=2; y=2; z=1;
1 :>0:r1=1; 1:r1=0; 1:r4=2; y=1; z=1;
8 :>0:r1=0; 1:r1=0; 1:r4=2; y=2; z=2;
69 :>0:r1=0; 1:r1=0; 1:r4=2; y=2; z=1;
41 :>0:r1=0; 1:r1=0; 1:r4=2; y=1; z=1;
90 :>0:r1=0; 1:r1=2; 1:r4=1; y=1; z=2;
6 :>0:r1=1; 1:r1=2; 1:r4=1; y=1; z=1;
26 :>0:r1=0; 1:r1=2; 1:r4=1; y=1; z=1;
81 :>0:r1=1; 1:r1=0; 1:r4=0; y=1; z=2;
178 :>0:r1=1; 1:r1=0; 1:r4=0; y=2; z=1;
89 :>0:r1=0; 1:r1=0; 1:r4=1; y=1; z=2;
118 :>0:r1=0; 1:r1=1; 1:r4=2; y=2; z=1;
2679 :>0:r1=1; 1:r1=2; 1:r4=2; y=1; z=2;
1101 :>0:r1=0; 1:r1=1; 1:r4=1; y=2; z=2;
32 :>0:r1=0; 1:r1=1; 1:r4=2; y=2; z=2;
846 :>0:r1=1; 1:r1=1; 1:r4=1; y=1; z=2;
85 :>0:r1=0; 1:r1=0; 1:r4=2; y=1; z=2;
1494 :>0:r1=0; 1:r1=0; 1:r4=0; y=2; z=2;
88 :>0:r1=0; 1:r1=0; 1:r4=1; y=1; z=1;
6540 :>0:r1=0; 1:r1=2; 1:r4=2; y=2; z=2;
52192 :>0:r1=0; 1:r1=1; 1:r4=1; y=2; z=1;
54958 :>0:r1=0; 1:r1=2; 1:r4=2; y=1; z=1;
34839 :>0:r1=0; 1:r1=1; 1:r4=1; y=1; z=2;
114732:>0:r1=0; 1:r1=0; 1:r4=0; y=1; z=2;
19703 :>0:r1=0; 1:r1=1; 1:r4=1; y=1; z=1;
24010 :>0:r1=0; 1:r1=2; 1:r4=2; y=2; z=1;
45733 :>0:r1=1; 1:r1=0; 1:r4=0; y=1; z=1;
153486:>0:r1=1; 1:r1=2; 1:r4=2; y=1; z=1;
250732:>0:r1=0; 1:r1=2; 1:r4=2; y=1; z=2;
70733 :>0:r1=0; 1:r1=0; 1:r4=0; y=2; z=1;
163582:>0:r1=0; 1:r1=0; 1:r4=0; y=1; z=1;
1693 :>0:r1=1; 1:r1=1; 1:r4=1; y=1; z=1;
34 :>0:r1=0; 1:r1=0; 1:r4=1; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r4=1) is NOT validated
Hash=ca5e91d8500d002ba023f21c4bdcc2bc
Cycle=SyncdWW Rfe SyncdRW Rfe DpsR Fre LwSyncdWW Wse
Relax safe157 No
Safe=Fre Wse LwSyncdWW DpsR BCSyncdWW BCSyncdRW
Time safe157 2.69
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe158.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe158
"SyncdWR Fre LwSyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=x;}
P0 | P1 ;
li r1,1 | li r1,2 ;
stw r1,0(r2) | stw r1,0(r2) ;
lwsync | sync ;
li r3,1 | lwz r3,0(r4) ;
stw r3,0(r4) | ;
exists (y=2 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: li r11,1
_litmus_P0_1_: stw r11,0(r9)
_litmus_P0_2_: lwsync
_litmus_P0_3_: li r10,1
_litmus_P0_4_: stw r10,0(r2)
_litmus_P1_0_: li r10,2
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: lwz r8,0(r2)
Test safe158 Allowed
Histogram (3 states)
812618:>1:r3=1; y=2;
246834:>1:r3=0; y=1;
940548:>1:r3=1; y=1;
No
Witnesses
Positive: 0, Negative: 2000000
Condition exists (y=2 /\ 1:r3=0) is NOT validated
Hash=178cdf8fa414f9851e5cbee2c97136b0
Cycle=SyncdWR Fre LwSyncdWW Wse
Relax safe158 No
Safe=Fre Wse SyncdWR LwSyncdWW
Time safe158 1.29
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe159.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe159
"Rfe SyncdRW Wse SyncdWR Fre LwSyncdWW Wse"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | li r1,1 | li r1,2 ;
sync | stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | sync | lwsync | ;
stw r3,0(r4) | lwz r3,0(r4) | li r3,1 | ;
| | stw r3,0(r4) | ;
exists (x=2 /\ z=2 /\ 0:r1=2 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: li r10,2
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: lwz r8,0(r2)
_litmus_P2_0_: li r11,1
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe159 Allowed
Histogram (21 states)
21 :>0:r1=2; 1:r3=0; x=2; z=1;
884 :>0:r1=2; 1:r3=0; x=1; z=2;
562 :>0:r1=1; 1:r3=0; x=1; z=2;
5 :>0:r1=0; 1:r3=0; x=2; z=2;
8736 :>0:r1=2; 1:r3=1; x=2; z=2;
14918 :>0:r1=1; 1:r3=1; x=2; z=2;
5663 :>0:r1=0; 1:r3=0; x=1; z=2;
1775 :>0:r1=1; 1:r3=0; x=1; z=1;
34911 :>0:r1=0; 1:r3=1; x=1; z=2;
35020 :>0:r1=0; 1:r3=1; x=2; z=2;
88035 :>0:r1=2; 1:r3=1; x=2; z=1;
71980 :>0:r1=0; 1:r3=0; x=1; z=1;
119052:>0:r1=2; 1:r3=1; x=1; z=1;
57500 :>0:r1=1; 1:r3=1; x=1; z=2;
149920:>0:r1=2; 1:r3=0; x=1; z=1;
75236 :>0:r1=1; 1:r3=1; x=1; z=1;
76016 :>0:r1=2; 1:r3=1; x=1; z=2;
188121:>0:r1=0; 1:r3=1; x=2; z=1;
53743 :>0:r1=0; 1:r3=1; x=1; z=1;
8034 :>0:r1=1; 1:r3=1; x=2; z=1;
9868 :>0:r1=0; 1:r3=0; x=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=2 /\ 1:r3=0) is NOT validated
Hash=951476cc803847be560779b1fe6bf5d4
Cycle=Rfe SyncdRW Wse SyncdWR Fre LwSyncdWW Wse
Relax safe159 No
Safe=Fre Wse SyncdWR LwSyncdWW ACSyncdRW
Time safe159 2.28
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe160.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe160
"SyncdWR Fre SyncdWR Fre LwSyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
li r1,1 | li r1,1 | li r1,2 ;
stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
sync | lwsync | sync ;
lwz r3,0(r4) | li r3,1 | lwz r3,0(r4) ;
| stw r3,0(r4) | ;
exists (z=2 /\ 0:r3=0 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: li r8,1
_litmus_P0_1_: stw r8,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: lwz r10,0(r2)
_litmus_P1_0_: li r10,1
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r8,2
_litmus_P2_1_: stw r8,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r10,0(r2)
Test safe160 Allowed
Histogram (7 states)
7336 :>0:r3=0; 2:r3=1; z=2;
5620 :>0:r3=0; 2:r3=0; z=1;
1534 :>0:r3=1; 2:r3=0; z=2;
216774:>0:r3=0; 2:r3=1; z=1;
298381:>0:r3=1; 2:r3=1; z=2;
208492:>0:r3=1; 2:r3=0; z=1;
261863:>0:r3=1; 2:r3=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r3=0 /\ 2:r3=0) is NOT validated
Hash=1aec03977a16ccd6a8c5fc1afed64860
Cycle=SyncdWR Fre SyncdWR Fre LwSyncdWW Wse
Relax safe160 No
Safe=Fre Wse SyncdWR LwSyncdWW
Time safe160 1.67
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe161.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe161
"Rfe SyncdRR Fre SyncdWR Fre LwSyncdWW Wse"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | li r1,1 | li r1,2 ;
sync | stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwsync | ;
| lwz r3,0(r4) | li r3,1 | ;
| | stw r3,0(r4) | ;
exists (z=2 /\ 0:r1=2 /\ 0:r3=0 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r10,1
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: lwz r8,0(r2)
_litmus_P2_0_: li r11,1
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe161 Allowed
Histogram (21 states)
15 :>0:r1=2; 0:r3=0; 1:r3=0; z=1;
303 :>0:r1=2; 0:r3=1; 1:r3=0; z=2;
1690 :>0:r1=0; 0:r3=1; 1:r3=0; z=2;
291 :>0:r1=1; 0:r3=1; 1:r3=0; z=2;
5394 :>0:r1=0; 0:r3=0; 1:r3=0; z=1;
2 :>0:r1=0; 0:r3=0; 1:r3=0; z=2;
10077 :>0:r1=1; 0:r3=1; 1:r3=0; z=1;
8612 :>0:r1=2; 0:r3=0; 1:r3=1; z=2;
15718 :>0:r1=1; 0:r3=0; 1:r3=1; z=1;
27938 :>0:r1=0; 0:r3=1; 1:r3=1; z=2;
78534 :>0:r1=2; 0:r3=0; 1:r3=1; z=1;
17653 :>0:r1=1; 0:r3=0; 1:r3=1; z=2;
65120 :>0:r1=1; 0:r3=1; 1:r3=1; z=2;
47187 :>0:r1=0; 0:r3=1; 1:r3=0; z=1;
14771 :>0:r1=0; 0:r3=0; 1:r3=1; z=2;
224114:>0:r1=0; 0:r3=0; 1:r3=1; z=1;
148469:>0:r1=2; 0:r3=1; 1:r3=0; z=1;
28900 :>0:r1=0; 0:r3=1; 1:r3=1; z=1;
112212:>0:r1=1; 0:r3=1; 1:r3=1; z=1;
59724 :>0:r1=2; 0:r3=1; 1:r3=1; z=2;
133276:>0:r1=2; 0:r3=1; 1:r3=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=2 /\ 0:r3=0 /\ 1:r3=0) is NOT validated
Hash=96422fe57c583a0bc83e3bb10e8c20a3
Cycle=Rfe SyncdRR Fre SyncdWR Fre LwSyncdWW Wse
Relax safe161 No
Safe=Fre Wse SyncdWR LwSyncdWW ACSyncdRR
Time safe161 2.10
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe162.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe162
"SyncdWW Rfe SyncsRW Rfe SyncdRR Fre LwSyncdWW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,2 | lwz r3,0(r4) | lwsync | sync ;
stw r3,0(r2) | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r11,1
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe162 Allowed
Histogram (31 states)
2 :>0:r1=1; 1:r1=2; 1:r3=0; x=2; z=1;
10 :>0:r1=1; 1:r1=0; 1:r3=0; x=2; z=2;
17 :>0:r1=0; 1:r1=2; 1:r3=0; x=2; z=1;
32 :>0:r1=1; 1:r1=1; 1:r3=1; x=2; z=2;
40 :>0:r1=0; 1:r1=1; 1:r3=0; x=1; z=1;
226 :>0:r1=0; 1:r1=2; 1:r3=1; x=2; z=2;
1412 :>0:r1=0; 1:r1=1; 1:r3=1; x=2; z=2;
435 :>0:r1=0; 1:r1=2; 1:r3=0; x=1; z=2;
790 :>0:r1=1; 1:r1=2; 1:r3=1; x=2; z=2;
188 :>0:r1=0; 1:r1=1; 1:r3=0; x=2; z=1;
42 :>0:r1=0; 1:r1=0; 1:r3=0; x=2; z=2;
1954 :>0:r1=1; 1:r1=0; 1:r3=1; x=2; z=2;
1850 :>0:r1=0; 1:r1=1; 1:r3=1; x=1; z=2;
309 :>0:r1=1; 1:r1=1; 1:r3=0; x=2; z=1;
33071 :>0:r1=0; 1:r1=0; 1:r3=0; x=1; z=2;
10703 :>0:r1=1; 1:r1=0; 1:r3=0; x=2; z=1;
26786 :>0:r1=1; 1:r1=0; 1:r3=1; x=2; z=1;
123163:>0:r1=1; 1:r1=1; 1:r3=1; x=2; z=1;
27449 :>0:r1=0; 1:r1=2; 1:r3=0; x=1; z=1;
17254 :>0:r1=0; 1:r1=1; 1:r3=1; x=1; z=1;
142121:>0:r1=0; 1:r1=2; 1:r3=1; x=1; z=2;
103964:>0:r1=0; 1:r1=0; 1:r3=0; x=2; z=1;
38589 :>0:r1=0; 1:r1=0; 1:r3=1; x=2; z=1;
26467 :>0:r1=0; 1:r1=0; 1:r3=1; x=2; z=2;
18685 :>0:r1=0; 1:r1=0; 1:r3=1; x=1; z=1;
35359 :>0:r1=0; 1:r1=1; 1:r3=1; x=2; z=1;
111423:>0:r1=0; 1:r1=0; 1:r3=1; x=1; z=2;
149318:>0:r1=0; 1:r1=2; 1:r3=1; x=1; z=1;
96173 :>0:r1=0; 1:r1=0; 1:r3=0; x=1; z=1;
6018 :>0:r1=1; 1:r1=2; 1:r3=1; x=2; z=1;
26150 :>0:r1=0; 1:r1=2; 1:r3=1; x=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0) is NOT validated
Hash=405c8d879853641580659d12d62221dc
Cycle=SyncdWW Rfe SyncsRW Rfe SyncdRR Fre LwSyncdWW Wse
Relax safe162 No
Safe=Fre Wse SyncdRR LwSyncdWW BCSyncsRW BCSyncdWW
Time safe162 2.64
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe163.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe163
"SyncdWW Rfe SyncdRR Fre LwSyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,1 | li r1,2 ;
sync | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r4) | lwsync | sync ;
| li r3,1 | li r3,1 ;
| stw r3,0(r4) | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 0:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r10,1
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe163 Allowed
Histogram (7 states)
307 :>0:r1=1; 0:r3=0; z=1;
832 :>0:r1=1; 0:r3=1; z=2;
2924 :>0:r1=0; 0:r3=0; z=2;
210886:>0:r1=0; 0:r3=1; z=1;
264263:>0:r1=0; 0:r3=1; z=2;
289159:>0:r1=0; 0:r3=0; z=1;
231629:>0:r1=1; 0:r3=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 0:r3=0) is NOT validated
Hash=6fec6f975d1f22822ec3af560a31a82f
Cycle=SyncdWW Rfe SyncdRR Fre LwSyncdWW Wse
Relax safe163 No
Safe=Fre Wse SyncdRR LwSyncdWW BCSyncdWW
Time safe163 1.67
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe164.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe164
"SyncdWW Rfe SyncdRW Rfe SyncdRR Fre LwSyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r4) | lwsync | sync ;
stw r3,0(r4) | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r11,1
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe164 Allowed
Histogram (14 states)
1 :>0:r1=1; 1:r1=1; 1:r3=1; a=2;
2 :>0:r1=0; 1:r1=1; 1:r3=0; a=2;
102 :>0:r1=1; 1:r1=0; 1:r3=0; a=2;
882 :>0:r1=1; 1:r1=1; 1:r3=1; a=1;
6370 :>0:r1=0; 1:r1=0; 1:r3=0; a=2;
355 :>0:r1=0; 1:r1=1; 1:r3=0; a=1;
8739 :>0:r1=1; 1:r1=0; 1:r3=0; a=1;
114789:>0:r1=1; 1:r1=0; 1:r3=1; a=1;
112849:>0:r1=0; 1:r1=1; 1:r3=1; a=2;
178469:>0:r1=0; 1:r1=0; 1:r3=1; a=1;
222941:>0:r1=0; 1:r1=0; 1:r3=1; a=2;
216157:>0:r1=0; 1:r1=0; 1:r3=0; a=1;
137610:>0:r1=0; 1:r1=1; 1:r3=1; a=1;
734 :>0:r1=1; 1:r1=0; 1:r3=1; a=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=0) is NOT validated
Hash=a899dc3fcccc58b9b9db78d5639009f5
Cycle=SyncdWW Rfe SyncdRW Rfe SyncdRR Fre LwSyncdWW Wse
Relax safe164 No
Safe=Fre Wse SyncdRR LwSyncdWW BCSyncdWW BCSyncdRW
Time safe164 2.06
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe165.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe165
"SyncdWR Fre SyncsWR Fre LwSyncdWW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
li r1,1 | li r1,2 | li r1,2 ;
stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
sync | lwsync | sync ;
lwz r3,0(r2) | li r3,1 | lwz r3,0(r4) ;
| stw r3,0(r4) | ;
exists (x=2 /\ y=2 /\ 0:r3=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: li r9,1
_litmus_P0_1_: stw r9,0(r2)
_litmus_P0_2_: sync
_litmus_P0_3_: lwz r10,0(r2)
_litmus_P1_0_: li r10,2
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r8,2
_litmus_P2_1_: stw r8,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r10,0(r2)
Test safe165 Allowed
Histogram (13 states)
12 :>0:r3=2; 2:r3=1; x=2; y=1;
1720 :>0:r3=2; 2:r3=2; x=2; y=2;
170 :>0:r3=1; 2:r3=2; x=1; y=2;
14740 :>0:r3=1; 2:r3=0; x=2; y=1;
37195 :>0:r3=1; 2:r3=2; x=1; y=1;
61693 :>0:r3=1; 2:r3=0; x=1; y=1;
44932 :>0:r3=1; 2:r3=2; x=2; y=2;
47525 :>0:r3=2; 2:r3=2; x=2; y=1;
42865 :>0:r3=2; 2:r3=0; x=2; y=1;
63311 :>0:r3=1; 2:r3=1; x=2; y=1;
316311:>0:r3=1; 2:r3=1; x=1; y=2;
273503:>0:r3=1; 2:r3=2; x=2; y=1;
96023 :>0:r3=1; 2:r3=1; x=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r3=1 /\ 2:r3=0) is NOT validated
Hash=c2358315f3b0a52cdef1288bea12e53f
Cycle=SyncdWR Fre SyncsWR Fre LwSyncdWW Wse
Relax safe165 No
Safe=Fre Wse SyncsWR SyncdWR LwSyncdWW
Time safe165 1.62
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe166.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe166
"Rfe SyncdRR Fre SyncsWR Fre LwSyncdWW Wse"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | li r1,2 | li r1,2 ;
sync | stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwsync | ;
| lwz r3,0(r2) | li r3,1 | ;
| | stw r3,0(r4) | ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 1:r3=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: lwz r10,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe166 Allowed
Histogram (38 states)
7 :>0:r1=0; 0:r3=0; 1:r3=1; x=2; y=2;
15 :>0:r1=1; 0:r3=2; 1:r3=2; x=2; y=2;
49 :>0:r1=0; 0:r3=1; 1:r3=1; x=2; y=2;
29 :>0:r1=2; 0:r3=0; 1:r3=1; x=2; y=1;
27 :>0:r1=2; 0:r3=2; 1:r3=2; x=2; y=2;
2 :>0:r1=0; 0:r3=1; 1:r3=2; x=2; y=1;
284 :>0:r1=0; 0:r3=0; 1:r3=2; x=2; y=2;
3 :>0:r1=2; 0:r3=1; 1:r3=2; x=2; y=1;
233 :>0:r1=2; 0:r3=0; 1:r3=2; x=2; y=1;
256 :>0:r1=2; 0:r3=0; 1:r3=1; x=1; y=1;
987 :>0:r1=2; 0:r3=2; 1:r3=1; x=2; y=2;
251 :>0:r1=2; 0:r3=2; 1:r3=1; x=1; y=2;
3489 :>0:r1=1; 0:r3=2; 1:r3=1; x=1; y=2;
1850 :>0:r1=0; 0:r3=0; 1:r3=1; x=1; y=2;
1283 :>0:r1=2; 0:r3=2; 1:r3=1; x=1; y=1;
428 :>0:r1=0; 0:r3=2; 1:r3=2; x=2; y=2;
10962 :>0:r1=0; 0:r3=0; 1:r3=1; x=2; y=1;
33628 :>0:r1=2; 0:r3=1; 1:r3=1; x=2; y=1;
4405 :>0:r1=0; 0:r3=2; 1:r3=1; x=1; y=2;
510 :>0:r1=1; 0:r3=2; 1:r3=1; x=2; y=2;
32592 :>0:r1=1; 0:r3=2; 1:r3=2; x=2; y=1;
5765 :>0:r1=0; 0:r3=2; 1:r3=1; x=2; y=2;
57204 :>0:r1=1; 0:r3=1; 1:r3=1; x=1; y=1;
7343 :>0:r1=0; 0:r3=2; 1:r3=1; x=1; y=1;
101304:>0:r1=1; 0:r3=2; 1:r3=1; x=2; y=1;
59302 :>0:r1=0; 0:r3=0; 1:r3=2; x=2; y=1;
81078 :>0:r1=1; 0:r3=1; 1:r3=1; x=1; y=2;
22613 :>0:r1=0; 0:r3=1; 1:r3=1; x=2; y=1;
34497 :>0:r1=2; 0:r3=1; 1:r3=1; x=1; y=1;
12382 :>0:r1=0; 0:r3=2; 1:r3=2; x=2; y=1;
71695 :>0:r1=2; 0:r3=1; 1:r3=1; x=1; y=2;
96961 :>0:r1=2; 0:r3=2; 1:r3=2; x=2; y=1;
6768 :>0:r1=0; 0:r3=1; 1:r3=1; x=1; y=1;
181740:>0:r1=2; 0:r3=2; 1:r3=1; x=2; y=1;
16802 :>0:r1=0; 0:r3=2; 1:r3=1; x=2; y=1;
17256 :>0:r1=0; 0:r3=1; 1:r3=1; x=1; y=2;
135881:>0:r1=0; 0:r3=0; 1:r3=1; x=1; y=1;
119 :>0:r1=1; 0:r3=2; 1:r3=1; x=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 1:r3=1) is NOT validated
Hash=59cab10e78cf3f775511d95c46b8d379
Cycle=Rfe SyncdRR Fre SyncsWR Fre LwSyncdWW Wse
Relax safe166 No
Safe=Fre Wse SyncsWR LwSyncdWW ACSyncdRR
Time safe166 2.49
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe167.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe167
"SyncdWW Rfe SyncsRR Fre LwSyncdWW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,2 | li r1,2 ;
sync | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r2) | lwsync | sync ;
| li r3,1 | li r3,1 ;
| stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r10,2
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe167 Allowed
Histogram (18 states)
2 :>0:r1=0; 0:r3=1; x=1; y=2;
335 :>0:r1=1; 0:r3=1; x=1; y=2;
827 :>0:r1=0; 0:r3=2; x=1; y=2;
3263 :>0:r1=2; 0:r3=1; x=1; y=2;
6054 :>0:r1=1; 0:r3=1; x=2; y=1;
14144 :>0:r1=0; 0:r3=1; x=2; y=1;
3575 :>0:r1=0; 0:r3=2; x=1; y=1;
18614 :>0:r1=0; 0:r3=0; x=1; y=2;
41931 :>0:r1=0; 0:r3=2; x=2; y=1;
57762 :>0:r1=2; 0:r3=1; x=1; y=1;
44332 :>0:r1=1; 0:r3=1; x=1; y=1;
23665 :>0:r1=1; 0:r3=2; x=2; y=1;
26239 :>0:r1=2; 0:r3=2; x=1; y=1;
21428 :>0:r1=2; 0:r3=2; x=2; y=1;
63125 :>0:r1=0; 0:r3=0; x=2; y=1;
307695:>0:r1=2; 0:r3=2; x=1; y=2;
347613:>0:r1=0; 0:r3=0; x=1; y=1;
19396 :>0:r1=0; 0:r3=1; x=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1) is NOT validated
Hash=bcab45714b99827f920ae61801c309bd
Cycle=SyncdWW Rfe SyncsRR Fre LwSyncdWW Wse
Relax safe167 No
Safe=Fre Wse SyncsRR LwSyncdWW BCSyncdWW
Time safe167 1.74
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe168.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe168
"SyncdWW Rfe SyncdRW Rfe SyncsRR Fre LwSyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r2) | lwsync | sync ;
stw r3,0(r4) | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r9,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe168 Allowed
Histogram (39 states)
1 :>0:r1=1; 1:r1=0; 1:r3=2; y=1; z=2;
23 :>0:r1=1; 1:r1=0; 1:r3=1; y=2; z=1;
3 :>0:r1=1; 1:r1=1; 1:r3=2; y=2; z=1;
4 :>0:r1=1; 1:r1=2; 1:r3=2; y=2; z=1;
32 :>0:r1=0; 1:r1=0; 1:r3=1; y=2; z=2;
408 :>0:r1=0; 1:r1=0; 1:r3=2; y=2; z=2;
61 :>0:r1=1; 1:r1=0; 1:r3=0; y=1; z=2;
83 :>0:r1=0; 1:r1=1; 1:r3=1; y=2; z=2;
315 :>0:r1=0; 1:r1=1; 1:r3=2; y=2; z=2;
449 :>0:r1=0; 1:r1=0; 1:r3=0; y=2; z=2;
1715 :>0:r1=0; 1:r1=2; 1:r3=2; y=2; z=2;
514 :>0:r1=1; 1:r1=0; 1:r3=2; y=2; z=1;
1020 :>0:r1=1; 1:r1=0; 1:r3=1; y=1; z=1;
602 :>0:r1=1; 1:r1=0; 1:r3=0; y=2; z=1;
1498 :>0:r1=1; 1:r1=2; 1:r3=2; y=1; z=2;
2172 :>0:r1=0; 1:r1=0; 1:r3=1; y=1; z=2;
42067 :>0:r1=0; 1:r1=2; 1:r3=1; y=1; z=2;
9997 :>0:r1=0; 1:r1=0; 1:r3=1; y=2; z=1;
4731 :>0:r1=1; 1:r1=2; 1:r3=1; y=1; z=1;
55332 :>0:r1=1; 1:r1=0; 1:r3=0; y=1; z=1;
12026 :>0:r1=1; 1:r1=0; 1:r3=2; y=1; z=1;
29188 :>0:r1=0; 1:r1=1; 1:r3=2; y=2; z=1;
27977 :>0:r1=0; 1:r1=0; 1:r3=1; y=1; z=1;
10749 :>0:r1=0; 1:r1=1; 1:r3=1; y=2; z=1;
1637 :>0:r1=0; 1:r1=0; 1:r3=2; y=1; z=2;
46227 :>0:r1=0; 1:r1=0; 1:r3=0; y=2; z=1;
10011 :>0:r1=0; 1:r1=0; 1:r3=2; y=1; z=1;
20367 :>0:r1=0; 1:r1=2; 1:r3=1; y=1; z=1;
103107:>0:r1=1; 1:r1=2; 1:r3=2; y=1; z=1;
45611 :>0:r1=0; 1:r1=2; 1:r3=2; y=2; z=1;
45348 :>0:r1=0; 1:r1=1; 1:r3=1; y=1; z=1;
45034 :>0:r1=0; 1:r1=0; 1:r3=0; y=1; z=2;
33446 :>0:r1=0; 1:r1=2; 1:r3=2; y=1; z=1;
188498:>0:r1=0; 1:r1=2; 1:r3=2; y=1; z=2;
36976 :>0:r1=0; 1:r1=0; 1:r3=2; y=2; z=1;
202739:>0:r1=0; 1:r1=0; 1:r3=0; y=1; z=1;
1622 :>0:r1=1; 1:r1=1; 1:r3=1; y=1; z=1;
818 :>0:r1=1; 1:r1=1; 1:r3=1; y=1; z=2;
17592 :>0:r1=0; 1:r1=1; 1:r3=1; y=1; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1) is NOT validated
Hash=7a841253d074818e43e40c3ce89357c3
Cycle=SyncdWW Rfe SyncdRW Rfe SyncsRR Fre LwSyncdWW Wse
Relax safe168 No
Safe=Fre Wse SyncsRR LwSyncdWW BCSyncdWW BCSyncdRW
Time safe168 2.77
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe169.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe169
"SyncdWW Rfe SyncsRW Rfe LwSyncdRR Fre LwSyncdWW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
sync | lwsync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,2 | lwz r3,0(r4) | lwsync | sync ;
stw r3,0(r2) | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: lwsync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r11,1
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe169 Allowed
Histogram (31 states)
4 :>0:r1=1; 1:r1=2; 1:r3=0; x=2; z=1;
10 :>0:r1=1; 1:r1=1; 1:r3=1; x=2; z=2;
31 :>0:r1=1; 1:r1=0; 1:r3=0; x=2; z=2;
30 :>0:r1=0; 1:r1=2; 1:r3=0; x=2; z=1;
145 :>0:r1=0; 1:r1=1; 1:r3=0; x=2; z=1;
61 :>0:r1=0; 1:r1=2; 1:r3=1; x=2; z=2;
58 :>0:r1=0; 1:r1=1; 1:r3=0; x=1; z=1;
203 :>0:r1=0; 1:r1=0; 1:r3=0; x=2; z=2;
513 :>0:r1=0; 1:r1=1; 1:r3=1; x=2; z=2;
823 :>0:r1=1; 1:r1=1; 1:r3=0; x=2; z=1;
805 :>0:r1=0; 1:r1=1; 1:r3=1; x=1; z=2;
776 :>0:r1=1; 1:r1=2; 1:r3=1; x=2; z=2;
8552 :>0:r1=1; 1:r1=0; 1:r3=0; x=2; z=1;
20554 :>0:r1=0; 1:r1=0; 1:r3=1; x=2; z=2;
44527 :>0:r1=1; 1:r1=0; 1:r3=1; x=2; z=1;
48069 :>0:r1=0; 1:r1=0; 1:r3=0; x=2; z=1;
512 :>0:r1=1; 1:r1=0; 1:r3=1; x=2; z=2;
4429 :>0:r1=0; 1:r1=2; 1:r3=0; x=1; z=2;
52909 :>0:r1=0; 1:r1=0; 1:r3=0; x=1; z=2;
29886 :>0:r1=0; 1:r1=0; 1:r3=1; x=2; z=1;
12580 :>0:r1=0; 1:r1=1; 1:r3=1; x=1; z=1;
46466 :>0:r1=0; 1:r1=1; 1:r3=1; x=2; z=1;
149455:>0:r1=0; 1:r1=2; 1:r3=1; x=1; z=2;
113699:>0:r1=0; 1:r1=2; 1:r3=1; x=1; z=1;
15627 :>0:r1=0; 1:r1=0; 1:r3=1; x=1; z=1;
73743 :>0:r1=1; 1:r1=1; 1:r3=1; x=2; z=1;
100150:>0:r1=0; 1:r1=0; 1:r3=1; x=1; z=2;
81719 :>0:r1=0; 1:r1=2; 1:r3=0; x=1; z=1;
151257:>0:r1=0; 1:r1=0; 1:r3=0; x=1; z=1;
5630 :>0:r1=1; 1:r1=2; 1:r3=1; x=2; z=1;
36777 :>0:r1=0; 1:r1=2; 1:r3=1; x=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0) is NOT validated
Hash=71e799b698550e0a3cb5926a67f16a4c
Cycle=SyncdWW Rfe SyncsRW Rfe LwSyncdRR Fre LwSyncdWW Wse
Relax safe169 No
Safe=Fre Wse LwSyncdWW LwSyncdRR BCSyncsRW BCSyncdWW
Time safe169 2.61
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe170.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe170
"SyncdWW Rfe LwSyncdRR Fre LwSyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,1 | li r1,2 ;
lwsync | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r4) | lwsync | sync ;
| li r3,1 | li r3,1 ;
| stw r3,0(r4) | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 0:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r10,1
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe170 Allowed
Histogram (7 states)
842 :>0:r1=1; 0:r3=0; z=1;
722 :>0:r1=1; 0:r3=1; z=2;
8517 :>0:r1=0; 0:r3=0; z=2;
330815:>0:r1=0; 0:r3=0; z=1;
288048:>0:r1=0; 0:r3=1; z=2;
133706:>0:r1=0; 0:r3=1; z=1;
237350:>0:r1=1; 0:r3=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 0:r3=0) is NOT validated
Hash=fdffba0232356e4d4b6a0fc4e716f085
Cycle=SyncdWW Rfe LwSyncdRR Fre LwSyncdWW Wse
Relax safe170 No
Safe=Fre Wse LwSyncdWW LwSyncdRR BCSyncdWW
Time safe170 1.63
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe171.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe171
"SyncdWW Rfe SyncdRW Rfe LwSyncdRR Fre LwSyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
sync | lwsync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r4) | lwsync | sync ;
stw r3,0(r4) | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: lwsync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r11,1
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe171 Allowed
Histogram (13 states)
108 :>0:r1=0; 1:r1=1; 1:r3=0; a=2;
720 :>0:r1=1; 1:r1=0; 1:r3=1; a=2;
129 :>0:r1=1; 1:r1=0; 1:r3=0; a=2;
627 :>0:r1=1; 1:r1=1; 1:r3=1; a=1;
15123 :>0:r1=1; 1:r1=0; 1:r3=0; a=1;
14502 :>0:r1=0; 1:r1=0; 1:r3=0; a=2;
108725:>0:r1=1; 1:r1=0; 1:r3=1; a=1;
102933:>0:r1=0; 1:r1=1; 1:r3=1; a=2;
1864 :>0:r1=0; 1:r1=1; 1:r3=0; a=1;
222562:>0:r1=0; 1:r1=0; 1:r3=1; a=2;
260151:>0:r1=0; 1:r1=0; 1:r3=0; a=1;
130380:>0:r1=0; 1:r1=1; 1:r3=1; a=1;
142176:>0:r1=0; 1:r1=0; 1:r3=1; a=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=0) is NOT validated
Hash=70e5111ddb52bf07006f9c0f7372d0a9
Cycle=SyncdWW Rfe SyncdRW Rfe LwSyncdRR Fre LwSyncdWW Wse
Relax safe171 No
Safe=Fre Wse LwSyncdWW LwSyncdRR BCSyncdWW BCSyncdRW
Time safe171 2.08
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe172.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe172
"SyncdWW Rfe LwSyncsRR Fre LwSyncdWW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,2 | li r1,2 ;
lwsync | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r2) | lwsync | sync ;
| li r3,1 | li r3,1 ;
| stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r10,2
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe172 Allowed
Histogram (17 states)
2 :>0:r1=0; 0:r3=1; x=2; y=1;
58 :>0:r1=0; 0:r3=2; x=2; y=1;
163 :>0:r1=2; 0:r3=1; x=1; y=1;
54 :>0:r1=1; 0:r3=2; x=2; y=1;
111 :>0:r1=0; 0:r3=2; x=1; y=2;
77 :>0:r1=2; 0:r3=1; x=1; y=2;
290 :>0:r1=1; 0:r3=1; x=1; y=2;
6420 :>0:r1=0; 0:r3=1; x=1; y=1;
1126 :>0:r1=0; 0:r3=2; x=1; y=1;
13908 :>0:r1=0; 0:r3=0; x=1; y=2;
28522 :>0:r1=2; 0:r3=2; x=2; y=1;
149610:>0:r1=2; 0:r3=2; x=1; y=1;
19646 :>0:r1=1; 0:r3=1; x=2; y=1;
87652 :>0:r1=0; 0:r3=0; x=2; y=1;
299044:>0:r1=2; 0:r3=2; x=1; y=2;
334603:>0:r1=0; 0:r3=0; x=1; y=1;
58714 :>0:r1=1; 0:r3=1; x=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1) is NOT validated
Hash=4064015b76d7fde89d69b355a68b0d48
Cycle=SyncdWW Rfe LwSyncsRR Fre LwSyncdWW Wse
Relax safe172 No
Safe=Fre Wse LwSyncsRR LwSyncdWW BCSyncdWW
Time safe172 1.71
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe173.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe173
"SyncdWW Rfe SyncdRW Rfe LwSyncsRR Fre LwSyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
sync | lwsync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r2) | lwsync | sync ;
stw r3,0(r4) | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: lwsync
_litmus_P1_2_: lwz r9,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe173 Allowed
Histogram (34 states)
9 :>0:r1=0; 1:r1=1; 1:r3=2; y=2; z=2;
3 :>0:r1=0; 1:r1=0; 1:r3=2; y=2; z=2;
9 :>0:r1=1; 1:r1=2; 1:r3=1; y=1; z=1;
13 :>0:r1=1; 1:r1=0; 1:r3=1; y=1; z=1;
2 :>0:r1=1; 1:r1=2; 1:r3=2; y=2; z=1;
69 :>0:r1=1; 1:r1=0; 1:r3=0; y=1; z=2;
392 :>0:r1=0; 1:r1=2; 1:r3=1; y=1; z=2;
82 :>0:r1=0; 1:r1=0; 1:r3=1; y=1; z=2;
525 :>0:r1=0; 1:r1=1; 1:r3=1; y=2; z=2;
669 :>0:r1=1; 1:r1=0; 1:r3=0; y=2; z=1;
113 :>0:r1=0; 1:r1=2; 1:r3=1; y=1; z=1;
110 :>0:r1=0; 1:r1=1; 1:r3=2; y=2; z=1;
304 :>0:r1=0; 1:r1=0; 1:r3=1; y=1; z=1;
844 :>0:r1=1; 1:r1=1; 1:r3=1; y=1; z=2;
1732 :>0:r1=0; 1:r1=0; 1:r3=0; y=2; z=2;
1631 :>0:r1=1; 1:r1=2; 1:r3=2; y=1; z=2;
140 :>0:r1=0; 1:r1=0; 1:r3=2; y=1; z=2;
3506 :>0:r1=0; 1:r1=2; 1:r3=2; y=2; z=2;
149 :>0:r1=0; 1:r1=0; 1:r3=2; y=2; z=1;
807 :>0:r1=0; 1:r1=0; 1:r3=2; y=1; z=1;
1503 :>0:r1=1; 1:r1=0; 1:r3=2; y=1; z=1;
30369 :>0:r1=0; 1:r1=2; 1:r3=2; y=2; z=1;
39422 :>0:r1=0; 1:r1=1; 1:r3=1; y=2; z=1;
24254 :>0:r1=0; 1:r1=1; 1:r3=1; y=1; z=1;
82238 :>0:r1=0; 1:r1=0; 1:r3=0; y=1; z=2;
28393 :>0:r1=0; 1:r1=1; 1:r3=1; y=1; z=2;
140733:>0:r1=1; 1:r1=2; 1:r3=2; y=1; z=1;
52698 :>0:r1=1; 1:r1=0; 1:r3=0; y=1; z=1;
48019 :>0:r1=0; 1:r1=2; 1:r3=2; y=1; z=1;
245556:>0:r1=0; 1:r1=2; 1:r3=2; y=1; z=2;
89523 :>0:r1=0; 1:r1=0; 1:r3=0; y=2; z=1;
204403:>0:r1=0; 1:r1=0; 1:r3=0; y=1; z=1;
1691 :>0:r1=1; 1:r1=1; 1:r3=1; y=1; z=1;
89 :>0:r1=0; 1:r1=0; 1:r3=1; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1) is NOT validated
Hash=620af7b0a5b97810f2f580042c3c2203
Cycle=SyncdWW Rfe SyncdRW Rfe LwSyncsRR Fre LwSyncdWW Wse
Relax safe173 No
Safe=Fre Wse LwSyncsRR LwSyncdWW BCSyncdWW BCSyncdRW
Time safe173 2.75
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe174.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe174
"SyncdWR Fre Rfe SyncsRR Fre LwSyncdWW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=x; 3:r2=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | li r1,2 | li r1,1 ;
sync | stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r2) | lwsync | sync | ;
| li r3,1 | lwz r3,0(r4) | ;
| stw r3,0(r4) | | ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
Test safe174 Allowed
Histogram (53 states)
1 :>0:r1=0; 0:r3=2; 2:r3=2; x=1; y=2;
17 :>0:r1=0; 0:r3=0; 2:r3=2; x=1; y=2;
2040 :>0:r1=1; 0:r3=1; 2:r3=0; x=2; y=1;
32 :>0:r1=1; 0:r3=1; 2:r3=2; x=1; y=2;
388 :>0:r1=0; 0:r3=2; 2:r3=1; x=1; y=2;
1646 :>0:r1=0; 0:r3=1; 2:r3=0; x=2; y=1;
5844 :>0:r1=2; 0:r3=2; 2:r3=2; x=1; y=2;
3936 :>0:r1=0; 0:r3=2; 2:r3=1; x=2; y=1;
11460 :>0:r1=0; 0:r3=2; 2:r3=0; x=2; y=1;
376 :>0:r1=0; 0:r3=1; 2:r3=1; x=1; y=2;
2338 :>0:r1=0; 0:r3=2; 2:r3=2; x=1; y=1;
517 :>0:r1=2; 0:r3=1; 2:r3=2; x=1; y=2;
7999 :>0:r1=0; 0:r3=1; 2:r3=1; x=2; y=1;
3567 :>0:r1=2; 0:r3=1; 2:r3=2; x=1; y=1;
1312 :>0:r1=0; 0:r3=1; 2:r3=2; x=1; y=1;
779 :>0:r1=0; 0:r3=2; 2:r3=0; x=1; y=1;
95 :>0:r1=0; 0:r3=1; 2:r3=2; x=2; y=2;
325 :>0:r1=0; 0:r3=2; 2:r3=1; x=1; y=1;
5293 :>0:r1=0; 0:r3=1; 2:r3=1; x=1; y=1;
10172 :>0:r1=1; 0:r3=2; 2:r3=0; x=2; y=1;
1834 :>0:r1=2; 0:r3=2; 2:r3=0; x=1; y=1;
4061 :>0:r1=0; 0:r3=1; 2:r3=0; x=1; y=1;
5249 :>0:r1=0; 0:r3=0; 2:r3=2; x=1; y=1;
1498 :>0:r1=2; 0:r3=1; 2:r3=0; x=1; y=1;
507 :>0:r1=0; 0:r3=2; 2:r3=2; x=2; y=2;
21107 :>0:r1=1; 0:r3=1; 2:r3=1; x=2; y=1;
6908 :>0:r1=2; 0:r3=2; 2:r3=2; x=1; y=1;
10445 :>0:r1=1; 0:r3=1; 2:r3=0; x=1; y=1;
56393 :>0:r1=2; 0:r3=1; 2:r3=1; x=1; y=2;
20400 :>0:r1=2; 0:r3=2; 2:r3=0; x=2; y=1;
38480 :>0:r1=1; 0:r3=2; 2:r3=2; x=2; y=2;
3733 :>0:r1=0; 0:r3=0; 2:r3=1; x=2; y=1;
5445 :>0:r1=1; 0:r3=1; 2:r3=2; x=2; y=2;
4819 :>0:r1=2; 0:r3=2; 2:r3=1; x=1; y=1;
26797 :>0:r1=1; 0:r3=2; 2:r3=1; x=2; y=1;
1758 :>0:r1=0; 0:r3=1; 2:r3=2; x=2; y=1;
29064 :>0:r1=1; 0:r3=2; 2:r3=2; x=2; y=1;
1733 :>0:r1=1; 0:r3=1; 2:r3=2; x=1; y=1;
11505 :>0:r1=1; 0:r3=1; 2:r3=1; x=1; y=1;
25036 :>0:r1=0; 0:r3=0; 2:r3=1; x=1; y=2;
9928 :>0:r1=0; 0:r3=2; 2:r3=2; x=2; y=1;
163957:>0:r1=0; 0:r3=0; 2:r3=2; x=2; y=1;
29624 :>0:r1=1; 0:r3=1; 2:r3=2; x=2; y=1;
38900 :>0:r1=2; 0:r3=2; 2:r3=1; x=1; y=2;
14627 :>0:r1=0; 0:r3=0; 2:r3=0; x=1; y=1;
100466:>0:r1=2; 0:r3=2; 2:r3=2; x=2; y=2;
124021:>0:r1=1; 0:r3=1; 2:r3=1; x=1; y=2;
33345 :>0:r1=0; 0:r3=0; 2:r3=2; x=2; y=2;
80057 :>0:r1=2; 0:r3=2; 2:r3=2; x=2; y=1;
8111 :>0:r1=2; 0:r3=1; 2:r3=1; x=1; y=1;
19951 :>0:r1=0; 0:r3=0; 2:r3=0; x=2; y=1;
18720 :>0:r1=0; 0:r3=0; 2:r3=1; x=1; y=1;
23384 :>0:r1=2; 0:r3=2; 2:r3=1; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r3=0) is NOT validated
Hash=b1d28f1d90fc9d6000ac8f62b6e427c4
Cycle=SyncdWR Fre Rfe SyncsRR Fre LwSyncdWW Wse
Relax safe174 No
Safe=Fre Wse SyncdWR LwSyncdWW ACSyncsRR
Time safe174 2.79
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe175.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe175
"SyncdWW Rfe DpdW Rfe SyncsRR Fre LwSyncdWW Wse"
{0:r2=x; 0:r5=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
xor r3,r1,r1 | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r4,1 | lwz r3,0(r2) | lwsync | sync ;
stwx r4,r3,r5 | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: xor r11,r7,r7
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stwx r8,r11,r2
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r9,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe175 Allowed
Histogram (40 states)
4 :>0:r1=1; 1:r1=0; 1:r3=2; y=1; z=2;
2 :>0:r1=1; 1:r1=1; 1:r3=1; y=2; z=1;
27 :>0:r1=1; 1:r1=2; 1:r3=2; y=2; z=1;
287 :>0:r1=1; 1:r1=2; 1:r3=2; y=1; z=2;
114 :>0:r1=1; 1:r1=0; 1:r3=0; y=1; z=2;
545 :>0:r1=0; 1:r1=0; 1:r3=2; y=2; z=2;
43 :>0:r1=1; 1:r1=1; 1:r3=2; y=2; z=1;
169 :>0:r1=0; 1:r1=0; 1:r3=1; y=2; z=2;
148 :>0:r1=1; 1:r1=0; 1:r3=1; y=2; z=1;
4922 :>0:r1=1; 1:r1=0; 1:r3=1; y=1; z=1;
1158 :>0:r1=1; 1:r1=0; 1:r3=2; y=2; z=1;
588 :>0:r1=0; 1:r1=0; 1:r3=2; y=1; z=2;
579 :>0:r1=0; 1:r1=0; 1:r3=0; y=2; z=2;
1715 :>0:r1=1; 1:r1=0; 1:r3=0; y=2; z=1;
8494 :>0:r1=1; 1:r1=2; 1:r3=1; y=1; z=1;
2028 :>0:r1=0; 1:r1=1; 1:r3=1; y=2; z=2;
6925 :>0:r1=0; 1:r1=1; 1:r3=2; y=2; z=2;
52713 :>0:r1=0; 1:r1=1; 1:r3=1; y=1; z=2;
26065 :>0:r1=0; 1:r1=0; 1:r3=0; y=1; z=2;
31963 :>0:r1=0; 1:r1=0; 1:r3=2; y=2; z=1;
102204:>0:r1=1; 1:r1=2; 1:r3=2; y=1; z=1;
12643 :>0:r1=1; 1:r1=0; 1:r3=2; y=1; z=1;
8032 :>0:r1=0; 1:r1=0; 1:r3=1; y=2; z=1;
17588 :>0:r1=0; 1:r1=2; 1:r3=2; y=2; z=2;
37920 :>0:r1=1; 1:r1=0; 1:r3=0; y=1; z=1;
96616 :>0:r1=0; 1:r1=2; 1:r3=1; y=1; z=2;
56948 :>0:r1=0; 1:r1=1; 1:r3=1; y=2; z=1;
74023 :>0:r1=0; 1:r1=0; 1:r3=0; y=2; z=1;
13650 :>0:r1=0; 1:r1=2; 1:r3=1; y=1; z=1;
68289 :>0:r1=0; 1:r1=2; 1:r3=2; y=2; z=1;
26452 :>0:r1=0; 1:r1=0; 1:r3=1; y=1; z=1;
10726 :>0:r1=0; 1:r1=2; 1:r3=2; y=1; z=1;
13517 :>0:r1=0; 1:r1=1; 1:r3=1; y=1; z=1;
7132 :>0:r1=0; 1:r1=0; 1:r3=2; y=1; z=1;
89023 :>0:r1=0; 1:r1=2; 1:r3=2; y=1; z=2;
59248 :>0:r1=0; 1:r1=1; 1:r3=2; y=2; z=1;
164019:>0:r1=0; 1:r1=0; 1:r3=0; y=1; z=1;
1560 :>0:r1=1; 1:r1=1; 1:r3=1; y=1; z=1;
885 :>0:r1=1; 1:r1=1; 1:r3=1; y=1; z=2;
1036 :>0:r1=0; 1:r1=0; 1:r3=1; y=1; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1) is NOT validated
Hash=5f5a951aa9430ddfe982b8950d922586
Cycle=SyncdWW Rfe DpdW Rfe SyncsRR Fre LwSyncdWW Wse
Relax safe175 No
Safe=Fre Wse LwSyncdWW DpdW ACSyncsRR BCSyncdWW
Time safe175 2.72
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe176.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe176
"LwSyncdWW Rfe SyncsRR Fre LwSyncdWW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,2 | li r1,2 ;
sync | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r2) | lwsync | lwsync ;
| li r3,1 | li r3,1 ;
| stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r10,2
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe176 Allowed
Histogram (18 states)
8 :>0:r1=0; 0:r3=1; x=1; y=2;
787 :>0:r1=1; 0:r3=1; x=1; y=2;
841 :>0:r1=0; 0:r3=2; x=1; y=2;
14967 :>0:r1=2; 0:r3=1; x=1; y=2;
32884 :>0:r1=0; 0:r3=0; x=1; y=2;
7352 :>0:r1=0; 0:r3=1; x=1; y=1;
5464 :>0:r1=0; 0:r3=1; x=2; y=1;
109081:>0:r1=1; 0:r3=2; x=2; y=1;
3164 :>0:r1=0; 0:r3=2; x=1; y=1;
23699 :>0:r1=1; 0:r3=1; x=1; y=1;
9052 :>0:r1=0; 0:r3=2; x=2; y=1;
17545 :>0:r1=2; 0:r3=2; x=1; y=1;
133788:>0:r1=2; 0:r3=2; x=2; y=1;
290581:>0:r1=0; 0:r3=0; x=1; y=1;
7510 :>0:r1=1; 0:r3=1; x=2; y=1;
292057:>0:r1=2; 0:r3=2; x=1; y=2;
20632 :>0:r1=0; 0:r3=0; x=2; y=1;
30588 :>0:r1=2; 0:r3=1; x=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1) is NOT validated
Hash=e052494afd0f32ccad2994f057330e8f
Cycle=LwSyncdWW Rfe SyncsRR Fre LwSyncdWW Wse
Relax safe176 No
Safe=Fre Wse LwSyncdWW ACSyncsRR
Time safe176 1.67
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe177.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe177
"SyncdWW Rfe LwSyncdRW Rfe SyncsRR Fre LwSyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
lwsync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r2) | lwsync | sync ;
stw r3,0(r4) | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r9,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe177 Allowed
Histogram (41 states)
1 :>0:r1=1; 1:r1=0; 1:r3=2; y=1; z=2;
1 :>0:r1=1; 1:r1=2; 1:r3=1; y=1; z=2;
5 :>0:r1=1; 1:r1=1; 1:r3=1; y=2; z=1;
52 :>0:r1=1; 1:r1=1; 1:r3=2; y=2; z=1;
215 :>0:r1=1; 1:r1=0; 1:r3=0; y=2; z=1;
156 :>0:r1=1; 1:r1=0; 1:r3=1; y=2; z=1;
226 :>0:r1=1; 1:r1=2; 1:r3=2; y=2; z=1;
790 :>0:r1=1; 1:r1=1; 1:r3=1; y=1; z=2;
551 :>0:r1=1; 1:r1=0; 1:r3=2; y=2; z=1;
1115 :>0:r1=0; 1:r1=0; 1:r3=2; y=2; z=2;
101 :>0:r1=1; 1:r1=0; 1:r3=0; y=1; z=2;
2684 :>0:r1=0; 1:r1=0; 1:r3=1; y=1; z=2;
2303 :>0:r1=0; 1:r1=1; 1:r3=1; y=2; z=2;
974 :>0:r1=1; 1:r1=2; 1:r3=2; y=1; z=2;
6700 :>0:r1=0; 1:r1=1; 1:r3=2; y=2; z=2;
23188 :>0:r1=1; 1:r1=2; 1:r3=1; y=1; z=1;
10279 :>0:r1=0; 1:r1=2; 1:r3=2; y=2; z=2;
3133 :>0:r1=1; 1:r1=0; 1:r3=1; y=1; z=1;
275 :>0:r1=0; 1:r1=0; 1:r3=1; y=2; z=2;
1747 :>0:r1=0; 1:r1=0; 1:r3=0; y=2; z=2;
59956 :>0:r1=0; 1:r1=1; 1:r3=1; y=2; z=1;
60126 :>0:r1=0; 1:r1=2; 1:r3=1; y=1; z=2;
1190 :>0:r1=0; 1:r1=0; 1:r3=2; y=1; z=2;
4000 :>0:r1=0; 1:r1=0; 1:r3=2; y=1; z=1;
72958 :>0:r1=1; 1:r1=0; 1:r3=0; y=1; z=1;
70210 :>0:r1=0; 1:r1=1; 1:r3=1; y=1; z=2;
16373 :>0:r1=0; 1:r1=0; 1:r3=1; y=1; z=1;
23907 :>0:r1=0; 1:r1=2; 1:r3=1; y=1; z=1;
70964 :>0:r1=0; 1:r1=1; 1:r3=2; y=2; z=1;
17834 :>0:r1=0; 1:r1=0; 1:r3=2; y=2; z=1;
15274 :>0:r1=0; 1:r1=0; 1:r3=1; y=2; z=1;
36992 :>0:r1=0; 1:r1=1; 1:r3=1; y=1; z=1;
16966 :>0:r1=0; 1:r1=2; 1:r3=2; y=1; z=1;
40898 :>0:r1=1; 1:r1=2; 1:r3=2; y=1; z=1;
72864 :>0:r1=0; 1:r1=0; 1:r3=0; y=2; z=1;
87150 :>0:r1=0; 1:r1=0; 1:r3=0; y=1; z=2;
25189 :>0:r1=1; 1:r1=0; 1:r3=2; y=1; z=1;
112085:>0:r1=0; 1:r1=2; 1:r3=2; y=1; z=2;
105836:>0:r1=0; 1:r1=0; 1:r3=0; y=1; z=1;
5587 :>0:r1=1; 1:r1=1; 1:r3=1; y=1; z=1;
29145 :>0:r1=0; 1:r1=2; 1:r3=2; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1) is NOT validated
Hash=c40a1d98e18929e78ae73e5e71e56b79
Cycle=SyncdWW Rfe LwSyncdRW Rfe SyncsRR Fre LwSyncdWW Wse
Relax safe177 No
Safe=Fre Wse LwSyncdWW LwSyncdRW ACSyncsRR BCSyncdWW
Time safe177 2.81
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe178.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe178
"Rfe SyncdRW Rfe SyncsRR Fre LwSyncdWW Wse"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r2) | lwsync | ;
stw r3,0(r4) | | li r3,1 | ;
| | stw r3,0(r4) | ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r9,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe178 Allowed
Histogram (53 states)
1 :>0:r1=1; 1:r1=0; 1:r3=1; x=1; y=1;
7 :>0:r1=0; 1:r1=0; 1:r3=1; x=2; y=2;
53 :>0:r1=0; 1:r1=1; 1:r3=1; x=2; y=2;
206 :>0:r1=0; 1:r1=0; 1:r3=2; x=2; y=2;
3 :>0:r1=1; 1:r1=0; 1:r3=1; x=1; y=2;
119 :>0:r1=0; 1:r1=0; 1:r3=0; x=2; y=2;
44 :>0:r1=2; 1:r1=0; 1:r3=2; x=1; y=2;
44 :>0:r1=1; 1:r1=0; 1:r3=2; x=1; y=2;
74 :>0:r1=1; 1:r1=1; 1:r3=1; x=1; y=1;
339 :>0:r1=0; 1:r1=1; 1:r3=2; x=2; y=2;
339 :>0:r1=1; 1:r1=2; 1:r3=1; x=1; y=1;
623 :>0:r1=0; 1:r1=0; 1:r3=2; x=1; y=2;
7073 :>0:r1=1; 1:r1=1; 1:r3=1; x=1; y=2;
1194 :>0:r1=2; 1:r1=0; 1:r3=0; x=1; y=2;
4024 :>0:r1=2; 1:r1=0; 1:r3=2; x=2; y=1;
2369 :>0:r1=0; 1:r1=2; 1:r3=2; x=2; y=2;
938 :>0:r1=0; 1:r1=0; 1:r3=1; x=1; y=2;
848 :>0:r1=2; 1:r1=1; 1:r3=1; x=2; y=1;
673 :>0:r1=2; 1:r1=2; 1:r3=1; x=1; y=2;
2151 :>0:r1=2; 1:r1=0; 1:r3=1; x=2; y=1;
1731 :>0:r1=2; 1:r1=1; 1:r3=2; x=2; y=1;
2590 :>0:r1=2; 1:r1=2; 1:r3=2; x=2; y=1;
1861 :>0:r1=1; 1:r1=0; 1:r3=0; x=1; y=2;
15545 :>0:r1=1; 1:r1=2; 1:r3=1; x=1; y=2;
16101 :>0:r1=2; 1:r1=2; 1:r3=1; x=1; y=1;
2385 :>0:r1=1; 1:r1=0; 1:r3=2; x=1; y=1;
16320 :>0:r1=0; 1:r1=0; 1:r3=1; x=2; y=1;
19318 :>0:r1=0; 1:r1=1; 1:r3=1; x=1; y=2;
33357 :>0:r1=0; 1:r1=1; 1:r3=1; x=2; y=1;
2675 :>0:r1=0; 1:r1=0; 1:r3=2; x=1; y=1;
8794 :>0:r1=2; 1:r1=1; 1:r3=1; x=1; y=1;
51041 :>0:r1=1; 1:r1=2; 1:r3=2; x=1; y=2;
61080 :>0:r1=0; 1:r1=1; 1:r3=2; x=2; y=1;
11211 :>0:r1=0; 1:r1=2; 1:r3=1; x=1; y=1;
13487 :>0:r1=2; 1:r1=0; 1:r3=1; x=1; y=1;
48556 :>0:r1=2; 1:r1=0; 1:r3=2; x=1; y=1;
20220 :>0:r1=2; 1:r1=0; 1:r3=0; x=2; y=1;
28742 :>0:r1=0; 1:r1=0; 1:r3=2; x=2; y=1;
17049 :>0:r1=1; 1:r1=2; 1:r3=2; x=1; y=1;
12100 :>0:r1=0; 1:r1=2; 1:r3=2; x=1; y=1;
74041 :>0:r1=2; 1:r1=2; 1:r3=2; x=1; y=2;
10685 :>0:r1=0; 1:r1=1; 1:r3=1; x=1; y=1;
41319 :>0:r1=0; 1:r1=0; 1:r3=0; x=2; y=1;
18322 :>0:r1=0; 1:r1=2; 1:r3=2; x=1; y=2;
17641 :>0:r1=0; 1:r1=0; 1:r3=1; x=1; y=1;
85102 :>0:r1=0; 1:r1=0; 1:r3=0; x=1; y=1;
192125:>0:r1=2; 1:r1=0; 1:r3=0; x=1; y=1;
28323 :>0:r1=0; 1:r1=2; 1:r3=1; x=1; y=2;
24289 :>0:r1=2; 1:r1=2; 1:r3=2; x=1; y=1;
38618 :>0:r1=0; 1:r1=0; 1:r3=0; x=1; y=2;
294 :>0:r1=2; 1:r1=1; 1:r3=1; x=1; y=2;
47201 :>0:r1=0; 1:r1=2; 1:r3=2; x=2; y=1;
16755 :>0:r1=1; 1:r1=0; 1:r3=0; x=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=1) is NOT validated
Hash=a0450a93ecfe4cacc2890ce16b2abf80
Cycle=Rfe SyncdRW Rfe SyncsRR Fre LwSyncdWW Wse
Relax safe178 No
Safe=Fre Wse LwSyncdWW ACSyncsRR ACSyncdRW
Time safe178 2.79
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe179.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe179
"LwSyncdWW Rfe SyncdRW Rfe SyncsRR Fre LwSyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,2 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r2) | lwsync | lwsync ;
stw r3,0(r4) | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r9,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe179 Allowed
Histogram (40 states)
4 :>0:r1=1; 1:r1=0; 1:r3=2; y=1; z=2;
2 :>0:r1=1; 1:r1=1; 1:r3=2; y=2; z=1;
26 :>0:r1=0; 1:r1=0; 1:r3=1; y=2; z=2;
37 :>0:r1=0; 1:r1=1; 1:r3=1; y=2; z=2;
25 :>0:r1=1; 1:r1=2; 1:r3=1; y=1; z=2;
13 :>0:r1=1; 1:r1=2; 1:r3=2; y=2; z=1;
157 :>0:r1=1; 1:r1=0; 1:r3=1; y=2; z=1;
392 :>0:r1=0; 1:r1=0; 1:r3=0; y=2; z=2;
391 :>0:r1=0; 1:r1=0; 1:r3=2; y=2; z=2;
959 :>0:r1=0; 1:r1=0; 1:r3=2; y=1; z=2;
363 :>0:r1=1; 1:r1=0; 1:r3=0; y=1; z=2;
1092 :>0:r1=1; 1:r1=2; 1:r3=2; y=1; z=2;
2293 :>0:r1=0; 1:r1=0; 1:r3=1; y=1; z=2;
503 :>0:r1=0; 1:r1=1; 1:r3=2; y=2; z=2;
2724 :>0:r1=0; 1:r1=2; 1:r3=2; y=2; z=2;
835 :>0:r1=1; 1:r1=1; 1:r3=1; y=1; z=2;
963 :>0:r1=1; 1:r1=0; 1:r3=0; y=2; z=1;
6100 :>0:r1=1; 1:r1=0; 1:r3=1; y=1; z=1;
1711 :>0:r1=1; 1:r1=0; 1:r3=2; y=2; z=1;
25921 :>0:r1=0; 1:r1=1; 1:r3=2; y=2; z=1;
3559 :>0:r1=0; 1:r1=1; 1:r3=1; y=2; z=1;
65593 :>0:r1=0; 1:r1=2; 1:r3=1; y=1; z=2;
27254 :>0:r1=0; 1:r1=1; 1:r3=1; y=1; z=2;
31719 :>0:r1=0; 1:r1=0; 1:r3=2; y=2; z=1;
7249 :>0:r1=0; 1:r1=0; 1:r3=1; y=2; z=1;
8805 :>0:r1=1; 1:r1=2; 1:r3=1; y=1; z=1;
26329 :>0:r1=0; 1:r1=0; 1:r3=1; y=1; z=1;
20753 :>0:r1=0; 1:r1=2; 1:r3=2; y=1; z=1;
7546 :>0:r1=0; 1:r1=0; 1:r3=2; y=1; z=1;
21350 :>0:r1=0; 1:r1=2; 1:r3=1; y=1; z=1;
25644 :>0:r1=0; 1:r1=0; 1:r3=0; y=1; z=2;
69221 :>0:r1=1; 1:r1=0; 1:r3=0; y=1; z=1;
127309:>0:r1=1; 1:r1=2; 1:r3=2; y=1; z=1;
55974 :>0:r1=0; 1:r1=2; 1:r3=2; y=2; z=1;
196212:>0:r1=0; 1:r1=0; 1:r3=0; y=1; z=1;
25781 :>0:r1=1; 1:r1=0; 1:r3=2; y=1; z=1;
158643:>0:r1=0; 1:r1=2; 1:r3=2; y=1; z=2;
32542 :>0:r1=0; 1:r1=0; 1:r3=0; y=2; z=1;
2229 :>0:r1=1; 1:r1=1; 1:r3=1; y=1; z=1;
41777 :>0:r1=0; 1:r1=1; 1:r3=1; y=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1) is NOT validated
Hash=3f800b9916dc7d0a6c179bea1322d8f6
Cycle=LwSyncdWW Rfe SyncdRW Rfe SyncsRR Fre LwSyncdWW Wse
Relax safe179 No
Safe=Fre Wse LwSyncdWW ACSyncsRR ACSyncdRW
Time safe179 2.86
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe180.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe180
"Rfe SyncdRR Fre LwSyncdWW Wse"
{0:r2=y; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,1 | li r1,2 ;
sync | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r4) | lwsync | ;
| li r3,1 | ;
| stw r3,0(r4) | ;
exists (y=2 /\ 0:r1=2 /\ 0:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r10,1
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r9,2
_litmus_P2_1_: stw r9,0(r2)
Test safe180 Allowed
Histogram (9 states)
417 :>0:r1=2; 0:r3=0; y=1;
4318 :>0:r1=0; 0:r3=0; y=2;
24900 :>0:r1=0; 0:r3=1; y=2;
113556:>0:r1=2; 0:r3=1; y=2;
50591 :>0:r1=0; 0:r3=1; y=1;
219031:>0:r1=2; 0:r3=1; y=1;
147714:>0:r1=1; 0:r3=1; y=2;
288209:>0:r1=0; 0:r3=0; y=1;
151264:>0:r1=1; 0:r3=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=2 /\ 0:r3=0) is NOT validated
Hash=e9f2b52a1da8f7a34023ef2949c1f106
Cycle=Rfe SyncdRR Fre LwSyncdWW Wse
Relax safe180 No
Safe=Fre Wse LwSyncdWW ACSyncdRR
Time safe180 1.45
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe181.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe181
"SyncdWR Fre Rfe SyncdRR Fre LwSyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x; 3:r2=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | li r1,2 | li r1,1 ;
sync | stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r4) | lwsync | sync | ;
| li r3,1 | lwz r3,0(r4) | ;
| stw r3,0(r4) | | ;
exists (z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
Test safe181 Allowed
Histogram (15 states)
12 :>0:r1=0; 0:r3=0; 2:r3=0; z=2;
99 :>0:r1=1; 0:r3=0; 2:r3=1; z=2;
524 :>0:r1=1; 0:r3=0; 2:r3=0; z=1;
129 :>0:r1=1; 0:r3=1; 2:r3=0; z=2;
3123 :>0:r1=0; 0:r3=1; 2:r3=0; z=2;
187380:>0:r1=1; 0:r3=1; 2:r3=1; z=2;
32591 :>0:r1=0; 0:r3=0; 2:r3=0; z=1;
18420 :>0:r1=0; 0:r3=0; 2:r3=1; z=2;
28424 :>0:r1=1; 0:r3=0; 2:r3=1; z=1;
66748 :>0:r1=0; 0:r3=1; 2:r3=0; z=1;
100708:>0:r1=0; 0:r3=1; 2:r3=1; z=2;
126947:>0:r1=0; 0:r3=0; 2:r3=1; z=1;
239841:>0:r1=1; 0:r3=1; 2:r3=1; z=1;
78523 :>0:r1=1; 0:r3=1; 2:r3=0; z=1;
116531:>0:r1=0; 0:r3=1; 2:r3=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r3=0) is NOT validated
Hash=8ada59d987c72cec57d835f2f9afe6d6
Cycle=SyncdWR Fre Rfe SyncdRR Fre LwSyncdWW Wse
Relax safe181 No
Safe=Fre Wse SyncdWR LwSyncdWW ACSyncdRR
Time safe181 1.93
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe182.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe182
"SyncdWW Rfe DpdW Rfe SyncdRR Fre LwSyncdWW Wse"
{0:r2=x; 0:r5=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
xor r3,r1,r1 | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r4,1 | lwz r3,0(r4) | lwsync | sync ;
stwx r4,r3,r5 | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: xor r11,r7,r7
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stwx r8,r11,r2
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r11,1
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe182 Allowed
Histogram (14 states)
12 :>0:r1=1; 1:r1=1; 1:r3=0; a=1;
26 :>0:r1=0; 1:r1=1; 1:r3=0; a=2;
114 :>0:r1=1; 1:r1=0; 1:r3=0; a=2;
543 :>0:r1=1; 1:r1=0; 1:r3=1; a=2;
7051 :>0:r1=0; 1:r1=0; 1:r3=0; a=2;
2722 :>0:r1=1; 1:r1=1; 1:r3=1; a=1;
1797 :>0:r1=0; 1:r1=1; 1:r3=0; a=1;
9803 :>0:r1=1; 1:r1=0; 1:r3=0; a=1;
117338:>0:r1=1; 1:r1=0; 1:r3=1; a=1;
180288:>0:r1=0; 1:r1=1; 1:r3=1; a=2;
116716:>0:r1=0; 1:r1=0; 1:r3=1; a=1;
243815:>0:r1=0; 1:r1=0; 1:r3=0; a=1;
155784:>0:r1=0; 1:r1=1; 1:r3=1; a=1;
163991:>0:r1=0; 1:r1=0; 1:r3=1; a=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=0) is NOT validated
Hash=1d7f6dd9c466e8eab51d045532118d07
Cycle=SyncdWW Rfe DpdW Rfe SyncdRR Fre LwSyncdWW Wse
Relax safe182 No
Safe=Fre Wse LwSyncdWW DpdW ACSyncdRR BCSyncdWW
Time safe182 2.12
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe183.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe183
"SyncdWW Rfe DpsW Rfe SyncdRR Fre LwSyncdWW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
xor r3,r1,r1 | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r4,2 | lwz r3,0(r4) | lwsync | sync ;
stwx r4,r3,r2 | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: xor r11,r8,r8
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stwx r9,r11,r2
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r11,1
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe183 Allowed
Histogram (31 states)
13 :>0:r1=0; 1:r1=0; 1:r3=0; x=2; z=2;
4 :>0:r1=0; 1:r1=2; 1:r3=0; x=2; z=1;
8 :>0:r1=0; 1:r1=2; 1:r3=1; x=2; z=2;
27 :>0:r1=0; 1:r1=1; 1:r3=1; x=2; z=2;
5 :>0:r1=1; 1:r1=0; 1:r3=0; x=2; z=2;
16 :>0:r1=1; 1:r1=1; 1:r3=1; x=2; z=2;
33 :>0:r1=0; 1:r1=1; 1:r3=0; x=2; z=1;
38 :>0:r1=1; 1:r1=2; 1:r3=0; x=2; z=1;
460 :>0:r1=1; 1:r1=1; 1:r3=0; x=2; z=1;
302 :>0:r1=0; 1:r1=1; 1:r3=0; x=1; z=1;
1668 :>0:r1=1; 1:r1=0; 1:r3=1; x=2; z=2;
1718 :>0:r1=0; 1:r1=1; 1:r3=1; x=1; z=2;
2853 :>0:r1=0; 1:r1=1; 1:r3=1; x=2; z=1;
12949 :>0:r1=0; 1:r1=0; 1:r3=1; x=2; z=2;
14884 :>0:r1=1; 1:r1=0; 1:r3=0; x=2; z=1;
15215 :>0:r1=1; 1:r1=1; 1:r3=1; x=2; z=1;
1929 :>0:r1=0; 1:r1=2; 1:r3=0; x=1; z=2;
3492 :>0:r1=0; 1:r1=2; 1:r3=1; x=2; z=1;
16880 :>0:r1=0; 1:r1=0; 1:r3=1; x=1; z=1;
125152:>0:r1=0; 1:r1=1; 1:r3=1; x=1; z=1;
16380 :>0:r1=0; 1:r1=0; 1:r3=1; x=2; z=1;
231862:>0:r1=0; 1:r1=2; 1:r3=1; x=1; z=2;
43499 :>0:r1=0; 1:r1=2; 1:r3=0; x=1; z=1;
155658:>0:r1=0; 1:r1=0; 1:r3=0; x=1; z=1;
11779 :>0:r1=1; 1:r1=0; 1:r3=1; x=2; z=1;
39853 :>0:r1=0; 1:r1=0; 1:r3=1; x=1; z=2;
194933:>0:r1=0; 1:r1=2; 1:r3=1; x=1; z=1;
42585 :>0:r1=0; 1:r1=0; 1:r3=0; x=2; z=1;
37100 :>0:r1=1; 1:r1=2; 1:r3=1; x=2; z=1;
789 :>0:r1=1; 1:r1=2; 1:r3=1; x=2; z=2;
27916 :>0:r1=0; 1:r1=0; 1:r3=0; x=1; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0) is NOT validated
Hash=0bb4d02945266bb5a73a663cb71c7ab1
Cycle=SyncdWW Rfe DpsW Rfe SyncdRR Fre LwSyncdWW Wse
Relax safe183 No
Safe=Fre Wse LwSyncdWW DpsW ACSyncdRR BCSyncdWW
Time safe183 2.60
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe184.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe184
"LwSyncdWW Rfe SyncdRR Fre LwSyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,1 | li r1,2 ;
sync | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r4) | lwsync | lwsync ;
| li r3,1 | li r3,1 ;
| stw r3,0(r4) | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 0:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r10,1
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe184 Allowed
Histogram (7 states)
4431 :>0:r1=1; 0:r3=1; z=2;
3030 :>0:r1=1; 0:r3=0; z=1;
2236 :>0:r1=0; 0:r3=0; z=2;
127112:>0:r1=0; 0:r3=1; z=1;
280636:>0:r1=0; 0:r3=1; z=2;
300021:>0:r1=0; 0:r3=0; z=1;
282534:>0:r1=1; 0:r3=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 0:r3=0) is NOT validated
Hash=2f9d11f569e82f01e12b9c2a1a22b49a
Cycle=LwSyncdWW Rfe SyncdRR Fre LwSyncdWW Wse
Relax safe184 No
Safe=Fre Wse LwSyncdWW ACSyncdRR
Time safe184 1.63
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe185.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe185
"SyncdWW Rfe LwSyncdRW Rfe SyncdRR Fre LwSyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
lwsync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r4) | lwsync | sync ;
stw r3,0(r4) | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r11,1
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe185 Allowed
Histogram (14 states)
5 :>0:r1=0; 1:r1=1; 1:r3=0; a=2;
4 :>0:r1=1; 1:r1=1; 1:r3=0; a=1;
885 :>0:r1=0; 1:r1=1; 1:r3=0; a=1;
91 :>0:r1=1; 1:r1=0; 1:r3=0; a=2;
2040 :>0:r1=1; 1:r1=1; 1:r3=1; a=1;
484 :>0:r1=1; 1:r1=0; 1:r3=1; a=2;
5082 :>0:r1=0; 1:r1=0; 1:r3=0; a=2;
9723 :>0:r1=1; 1:r1=0; 1:r3=0; a=1;
107675:>0:r1=1; 1:r1=0; 1:r3=1; a=1;
143473:>0:r1=0; 1:r1=0; 1:r3=1; a=1;
222033:>0:r1=0; 1:r1=0; 1:r3=0; a=1;
165285:>0:r1=0; 1:r1=1; 1:r3=1; a=1;
167730:>0:r1=0; 1:r1=1; 1:r3=1; a=2;
175490:>0:r1=0; 1:r1=0; 1:r3=1; a=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=0) is NOT validated
Hash=eab68d2a417ceb9846c0fef8ab6a2aaf
Cycle=SyncdWW Rfe LwSyncdRW Rfe SyncdRR Fre LwSyncdWW Wse
Relax safe185 No
Safe=Fre Wse LwSyncdWW LwSyncdRW ACSyncdRR BCSyncdWW
Time safe185 2.10
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe186.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe186
"SyncdWW Rfe LwSyncsRW Rfe SyncdRR Fre LwSyncdWW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
lwsync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,2 | lwz r3,0(r4) | lwsync | sync ;
stw r3,0(r2) | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r11,1
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe186 Allowed
Histogram (31 states)
3 :>0:r1=0; 1:r1=2; 1:r3=0; x=2; z=1;
9 :>0:r1=1; 1:r1=1; 1:r3=1; x=2; z=2;
9 :>0:r1=1; 1:r1=2; 1:r3=0; x=2; z=1;
9 :>0:r1=1; 1:r1=0; 1:r3=0; x=2; z=2;
14 :>0:r1=0; 1:r1=2; 1:r3=1; x=2; z=2;
19 :>0:r1=0; 1:r1=1; 1:r3=0; x=2; z=1;
152 :>0:r1=0; 1:r1=1; 1:r3=1; x=2; z=2;
104 :>0:r1=0; 1:r1=2; 1:r3=0; x=1; z=2;
136 :>0:r1=0; 1:r1=0; 1:r3=0; x=2; z=2;
378 :>0:r1=1; 1:r1=0; 1:r3=1; x=2; z=2;
1255 :>0:r1=1; 1:r1=1; 1:r3=0; x=2; z=1;
736 :>0:r1=1; 1:r1=2; 1:r3=1; x=2; z=2;
2488 :>0:r1=0; 1:r1=2; 1:r3=1; x=2; z=1;
3298 :>0:r1=0; 1:r1=0; 1:r3=1; x=2; z=2;
4035 :>0:r1=0; 1:r1=0; 1:r3=0; x=1; z=2;
3759 :>0:r1=0; 1:r1=1; 1:r3=1; x=1; z=2;
2468 :>0:r1=0; 1:r1=1; 1:r3=1; x=2; z=1;
63142 :>0:r1=0; 1:r1=0; 1:r3=0; x=2; z=1;
17807 :>0:r1=1; 1:r1=0; 1:r3=0; x=2; z=1;
67342 :>0:r1=0; 1:r1=0; 1:r3=1; x=1; z=2;
22901 :>0:r1=0; 1:r1=0; 1:r3=1; x=2; z=1;
64896 :>0:r1=0; 1:r1=2; 1:r3=0; x=1; z=1;
60151 :>0:r1=0; 1:r1=1; 1:r3=1; x=1; z=1;
54429 :>0:r1=1; 1:r1=1; 1:r3=1; x=2; z=1;
11247 :>0:r1=0; 1:r1=0; 1:r3=1; x=1; z=1;
51367 :>0:r1=1; 1:r1=0; 1:r3=1; x=2; z=1;
160227:>0:r1=0; 1:r1=2; 1:r3=1; x=1; z=2;
194407:>0:r1=0; 1:r1=2; 1:r3=1; x=1; z=1;
181877:>0:r1=0; 1:r1=0; 1:r3=0; x=1; z=1;
31162 :>0:r1=1; 1:r1=2; 1:r3=1; x=2; z=1;
173 :>0:r1=0; 1:r1=1; 1:r3=0; x=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0) is NOT validated
Hash=1c09f94d19764fb339d3210c4b3fe365
Cycle=SyncdWW Rfe LwSyncsRW Rfe SyncdRR Fre LwSyncdWW Wse
Relax safe186 No
Safe=Fre Wse LwSyncsRW LwSyncdWW ACSyncdRR BCSyncdWW
Time safe186 2.68
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe187.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe187
"LwSyncdWW Rfe SyncsRW Rfe SyncdRR Fre LwSyncdWW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,2 | lwz r3,0(r4) | lwsync | lwsync ;
stw r3,0(r2) | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r11,1
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe187 Allowed
Histogram (31 states)
2 :>0:r1=1; 1:r1=2; 1:r3=0; x=2; z=1;
19 :>0:r1=0; 1:r1=2; 1:r3=0; x=2; z=1;
34 :>0:r1=0; 1:r1=1; 1:r3=0; x=1; z=1;
36 :>0:r1=1; 1:r1=0; 1:r3=0; x=2; z=2;
93 :>0:r1=1; 1:r1=1; 1:r3=1; x=2; z=2;
1063 :>0:r1=1; 1:r1=0; 1:r3=1; x=2; z=2;
790 :>0:r1=1; 1:r1=2; 1:r3=1; x=2; z=2;
1617 :>0:r1=1; 1:r1=1; 1:r3=0; x=2; z=1;
62 :>0:r1=0; 1:r1=2; 1:r3=0; x=1; z=2;
2625 :>0:r1=0; 1:r1=0; 1:r3=0; x=2; z=2;
269 :>0:r1=0; 1:r1=1; 1:r3=0; x=2; z=1;
12553 :>0:r1=0; 1:r1=1; 1:r3=1; x=1; z=2;
1060 :>0:r1=0; 1:r1=2; 1:r3=1; x=2; z=2;
2093 :>0:r1=0; 1:r1=1; 1:r3=1; x=2; z=2;
5428 :>0:r1=0; 1:r1=0; 1:r3=0; x=1; z=2;
20103 :>0:r1=0; 1:r1=1; 1:r3=1; x=2; z=1;
16219 :>0:r1=0; 1:r1=2; 1:r3=1; x=2; z=1;
18552 :>0:r1=1; 1:r1=0; 1:r3=0; x=2; z=1;
14343 :>0:r1=1; 1:r1=0; 1:r3=1; x=2; z=1;
37763 :>0:r1=0; 1:r1=1; 1:r3=1; x=1; z=1;
95044 :>0:r1=0; 1:r1=0; 1:r3=0; x=2; z=1;
171869:>0:r1=1; 1:r1=1; 1:r3=1; x=2; z=1;
110359:>0:r1=0; 1:r1=2; 1:r3=1; x=1; z=2;
19657 :>0:r1=0; 1:r1=0; 1:r3=1; x=1; z=1;
28163 :>0:r1=0; 1:r1=0; 1:r3=1; x=2; z=2;
128372:>0:r1=0; 1:r1=2; 1:r3=1; x=1; z=1;
38645 :>0:r1=0; 1:r1=0; 1:r3=1; x=2; z=1;
102357:>0:r1=0; 1:r1=0; 1:r3=1; x=1; z=2;
117072:>0:r1=0; 1:r1=0; 1:r3=0; x=1; z=1;
9391 :>0:r1=1; 1:r1=2; 1:r3=1; x=2; z=1;
44347 :>0:r1=0; 1:r1=2; 1:r3=0; x=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0) is NOT validated
Hash=7de5c2acfeb44860558ddc9c4f10ebce
Cycle=LwSyncdWW Rfe SyncsRW Rfe SyncdRR Fre LwSyncdWW Wse
Relax safe187 No
Safe=Fre Wse LwSyncdWW ACSyncsRW ACSyncdRR
Time safe187 2.60
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe188.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe188
"Rfe SyncdRW Rfe SyncdRR Fre LwSyncdWW Wse"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r4) | lwsync | ;
stw r3,0(r4) | | li r3,1 | ;
| | stw r3,0(r4) | ;
exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r11,1
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe188 Allowed
Histogram (20 states)
8 :>0:r1=2; 1:r1=1; 1:r3=0; z=1;
903 :>0:r1=1; 1:r1=0; 1:r3=0; z=2;
3890 :>0:r1=0; 1:r1=1; 1:r3=0; z=1;
1815 :>0:r1=2; 1:r1=0; 1:r3=0; z=2;
4697 :>0:r1=1; 1:r1=0; 1:r3=0; z=1;
11314 :>0:r1=0; 1:r1=0; 1:r3=0; z=2;
28557 :>0:r1=2; 1:r1=1; 1:r3=1; z=1;
31311 :>0:r1=0; 1:r1=0; 1:r3=1; z=2;
40162 :>0:r1=0; 1:r1=0; 1:r3=0; z=1;
45044 :>0:r1=0; 1:r1=1; 1:r3=1; z=2;
104111:>0:r1=1; 1:r1=0; 1:r3=1; z=1;
85886 :>0:r1=2; 1:r1=0; 1:r3=1; z=2;
48057 :>0:r1=0; 1:r1=0; 1:r3=1; z=1;
160227:>0:r1=2; 1:r1=0; 1:r3=1; z=1;
50984 :>0:r1=1; 1:r1=0; 1:r3=1; z=2;
180078:>0:r1=0; 1:r1=1; 1:r3=1; z=1;
186415:>0:r1=2; 1:r1=0; 1:r3=0; z=1;
4590 :>0:r1=1; 1:r1=1; 1:r3=1; z=1;
5202 :>0:r1=2; 1:r1=1; 1:r3=1; z=2;
6749 :>0:r1=1; 1:r1=1; 1:r3=1; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=0) is NOT validated
Hash=df00d819f007b8d9fdfaa5788560cc29
Cycle=Rfe SyncdRW Rfe SyncdRR Fre LwSyncdWW Wse
Relax safe188 No
Safe=Fre Wse LwSyncdWW ACSyncdRW ACSyncdRR
Time safe188 2.00
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe189.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe189
"LwSyncdWW Rfe SyncdRW Rfe SyncdRR Fre LwSyncdWW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r4) | lwsync | lwsync ;
stw r3,0(r4) | | li r3,1 | li r3,1 ;
| | stw r3,0(r4) | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r11,1
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe189 Allowed
Histogram (15 states)
4 :>0:r1=1; 1:r1=1; 1:r3=1; a=2;
9 :>0:r1=0; 1:r1=1; 1:r3=0; a=2;
8 :>0:r1=1; 1:r1=1; 1:r3=0; a=1;
940 :>0:r1=1; 1:r1=0; 1:r3=0; a=2;
5616 :>0:r1=0; 1:r1=1; 1:r3=0; a=1;
15241 :>0:r1=0; 1:r1=0; 1:r3=0; a=2;
60426 :>0:r1=0; 1:r1=1; 1:r3=1; a=2;
5468 :>0:r1=1; 1:r1=1; 1:r3=1; a=1;
48012 :>0:r1=1; 1:r1=0; 1:r3=0; a=1;
182566:>0:r1=1; 1:r1=0; 1:r3=1; a=1;
175042:>0:r1=0; 1:r1=0; 1:r3=0; a=1;
241157:>0:r1=0; 1:r1=0; 1:r3=1; a=2;
120492:>0:r1=0; 1:r1=0; 1:r3=1; a=1;
139816:>0:r1=0; 1:r1=1; 1:r3=1; a=1;
5203 :>0:r1=1; 1:r1=0; 1:r3=1; a=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=0) is NOT validated
Hash=fed007f15341a4af8fc5d979acb5f3bd
Cycle=LwSyncdWW Rfe SyncdRW Rfe SyncdRR Fre LwSyncdWW Wse
Relax safe189 No
Safe=Fre Wse LwSyncdWW ACSyncdRW ACSyncdRR
Time safe189 2.08
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe190.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe190
"SyncdWW Rfe DpdR Fre SyncsWW Rfe LwSyncdRW Wse"
{0:r2=x; 0:r5=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | stw r1,0(r2) | lwsync | stw r1,0(r2) ;
lwzx r4,r3,r5 | sync | li r3,1 | sync ;
| li r3,2 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r2) | | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r4=0 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r6,0(r9)
_litmus_P0_1_: xor r11,r6,r6
_litmus_P0_2_: lwzx r7,r11,r2
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe190 Allowed
Histogram (32 states)
4 :>0:r1=0; 0:r4=1; 2:r1=1; y=2; z=2;
14 :>0:r1=1; 0:r4=1; 2:r1=0; y=2; z=2;
4 :>0:r1=1; 0:r4=0; 2:r1=0; y=2; z=2;
28 :>0:r1=1; 0:r4=0; 2:r1=2; y=2; z=1;
79 :>0:r1=1; 0:r4=0; 2:r1=1; y=2; z=1;
147 :>0:r1=0; 0:r4=1; 2:r1=2; y=2; z=2;
52 :>0:r1=1; 0:r4=2; 2:r1=1; y=2; z=2;
20 :>0:r1=0; 0:r4=1; 2:r1=1; y=2; z=1;
26 :>0:r1=1; 0:r4=1; 2:r1=1; y=2; z=1;
97 :>0:r1=1; 0:r4=2; 2:r1=2; y=2; z=2;
283 :>0:r1=0; 0:r4=0; 2:r1=2; y=2; z=2;
1612 :>0:r1=1; 0:r4=0; 2:r1=0; y=2; z=1;
1989 :>0:r1=1; 0:r4=1; 2:r1=2; y=2; z=1;
17199 :>0:r1=0; 0:r4=0; 2:r1=1; y=2; z=2;
9884 :>0:r1=0; 0:r4=2; 2:r1=2; y=2; z=2;
7147 :>0:r1=0; 0:r4=0; 2:r1=2; y=2; z=1;
10266 :>0:r1=0; 0:r4=2; 2:r1=1; y=2; z=2;
19722 :>0:r1=1; 0:r4=1; 2:r1=0; y=2; z=1;
15717 :>0:r1=0; 0:r4=1; 2:r1=0; y=2; z=1;
96380 :>0:r1=0; 0:r4=0; 2:r1=0; y=2; z=1;
59328 :>0:r1=0; 0:r4=0; 2:r1=0; y=2; z=2;
3307 :>0:r1=0; 0:r4=2; 2:r1=0; y=2; z=1;
89525 :>0:r1=0; 0:r4=1; 2:r1=0; y=2; z=2;
44945 :>0:r1=0; 0:r4=2; 2:r1=1; y=2; z=1;
40607 :>0:r1=1; 0:r4=2; 2:r1=0; y=2; z=1;
157082:>0:r1=0; 0:r4=2; 2:r1=2; y=2; z=1;
98253 :>0:r1=0; 0:r4=0; 2:r1=1; y=2; z=1;
102175:>0:r1=0; 0:r4=2; 2:r1=0; y=2; z=2;
127744:>0:r1=1; 0:r4=2; 2:r1=2; y=2; z=1;
70504 :>0:r1=1; 0:r4=2; 2:r1=1; y=2; z=1;
1799 :>0:r1=1; 0:r4=2; 2:r1=0; y=2; z=2;
24061 :>0:r1=0; 0:r4=1; 2:r1=2; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r4=0 /\ 2:r1=2) is NOT validated
Hash=0b35b1ba2f6d5e2eee9d3fbe723fa847
Cycle=SyncdWW Rfe DpdR Fre SyncsWW Rfe LwSyncdRW Wse
Relax safe190 No
Safe=Fre Wse LwSyncdRW DpdR BCSyncsWW BCSyncdWW
Time safe190 2.59
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe191.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe191
"SyncdWR Fre SyncsWW Rfe LwSyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
li r1,1 | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | lwsync | stw r1,0(r2) ;
sync | li r3,1 | sync ;
li r3,2 | stw r3,0(r4) | lwz r3,0(r4) ;
stw r3,0(r2) | | ;
exists (x=2 /\ y=2 /\ 1:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: li r9,1
_litmus_P0_1_: stw r9,0(r2)
_litmus_P0_2_: sync
_litmus_P0_3_: li r11,2
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r10,0(r9)
_litmus_P1_1_: lwsync
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stw r8,0(r2)
_litmus_P2_0_: li r8,2
_litmus_P2_1_: stw r8,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r10,0(r2)
Test safe191 Allowed
Histogram (15 states)
3 :>1:r1=1; 2:r3=1; x=2; y=2;
260 :>1:r1=1; 2:r3=1; x=2; y=1;
231 :>1:r1=0; 2:r3=0; x=2; y=2;
33726 :>1:r1=1; 2:r3=2; x=2; y=2;
47059 :>1:r1=2; 2:r3=1; x=2; y=1;
11526 :>1:r1=2; 2:r3=0; x=2; y=1;
5075 :>1:r1=0; 2:r3=2; x=2; y=1;
30317 :>1:r1=1; 2:r3=0; x=2; y=1;
10128 :>1:r1=0; 2:r3=1; x=2; y=2;
60147 :>1:r1=0; 2:r3=1; x=2; y=1;
102821:>1:r1=0; 2:r3=0; x=2; y=1;
221174:>1:r1=2; 2:r3=2; x=2; y=1;
316826:>1:r1=0; 2:r3=2; x=2; y=2;
42989 :>1:r1=2; 2:r3=2; x=2; y=2;
117718:>1:r1=1; 2:r3=2; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 1:r1=2 /\ 2:r3=0) is NOT validated
Hash=271aacfad83f5abd0c1776fa4367749e
Cycle=SyncdWR Fre SyncsWW Rfe LwSyncdRW Wse
Relax safe191 No
Safe=Fre Wse SyncdWR LwSyncdRW BCSyncsWW
Time safe191 1.63
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe192.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe192
"SyncdWW Rfe SyncdRR Fre SyncsWW Rfe LwSyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | lwsync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | li r3,1 | sync ;
| li r3,2 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r2) | | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe192 Allowed
Histogram (31 states)
1 :>0:r1=1; 0:r3=0; 2:r1=1; y=2; z=1;
4 :>0:r1=1; 0:r3=1; 2:r1=0; y=2; z=2;
1 :>0:r1=1; 0:r3=0; 2:r1=0; y=2; z=2;
4 :>0:r1=1; 0:r3=1; 2:r1=1; y=2; z=1;
19 :>0:r1=0; 0:r3=1; 2:r1=1; y=2; z=1;
3 :>0:r1=0; 0:r3=1; 2:r1=1; y=2; z=2;
103 :>0:r1=1; 0:r3=2; 2:r1=2; y=2; z=2;
39 :>0:r1=0; 0:r3=0; 2:r1=2; y=2; z=2;
30 :>0:r1=0; 0:r3=1; 2:r1=2; y=2; z=2;
193 :>0:r1=1; 0:r3=2; 2:r1=1; y=2; z=2;
442 :>0:r1=1; 0:r3=1; 2:r1=2; y=2; z=1;
6033 :>0:r1=0; 0:r3=0; 2:r1=2; y=2; z=1;
476 :>0:r1=1; 0:r3=0; 2:r1=0; y=2; z=1;
43969 :>0:r1=0; 0:r3=2; 2:r1=1; y=2; z=2;
17559 :>0:r1=1; 0:r3=1; 2:r1=0; y=2; z=1;
26003 :>0:r1=0; 0:r3=2; 2:r1=2; y=2; z=2;
3478 :>0:r1=0; 0:r3=0; 2:r1=1; y=2; z=2;
18261 :>0:r1=0; 0:r3=1; 2:r1=2; y=2; z=1;
31868 :>0:r1=0; 0:r3=1; 2:r1=0; y=2; z=1;
78495 :>0:r1=0; 0:r3=0; 2:r1=1; y=2; z=1;
114345:>0:r1=0; 0:r3=2; 2:r1=2; y=2; z=1;
78967 :>0:r1=0; 0:r3=2; 2:r1=0; y=2; z=2;
131187:>0:r1=0; 0:r3=1; 2:r1=0; y=2; z=2;
84819 :>0:r1=0; 0:r3=0; 2:r1=0; y=2; z=2;
20157 :>0:r1=1; 0:r3=2; 2:r1=2; y=2; z=1;
12446 :>0:r1=0; 0:r3=2; 2:r1=0; y=2; z=1;
92163 :>0:r1=0; 0:r3=0; 2:r1=0; y=2; z=1;
27248 :>0:r1=1; 0:r3=2; 2:r1=1; y=2; z=1;
133318:>0:r1=1; 0:r3=2; 2:r1=0; y=2; z=1;
2748 :>0:r1=1; 0:r3=2; 2:r1=0; y=2; z=2;
75621 :>0:r1=0; 0:r3=2; 2:r1=1; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2) is NOT validated
Hash=cb6d1f195ebda7f397ba44ef4be96c43
Cycle=SyncdWW Rfe SyncdRR Fre SyncsWW Rfe LwSyncdRW Wse
Relax safe192 No
Safe=Fre Wse SyncdRR LwSyncdRW BCSyncsWW BCSyncdWW
Time safe192 2.57
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe193.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe193
"SyncdWW Rfe LwSyncdRR Fre SyncsWW Rfe LwSyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
lwsync | stw r1,0(r2) | lwsync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | li r3,1 | sync ;
| li r3,2 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r2) | | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe193 Allowed
Histogram (32 states)
2 :>0:r1=1; 0:r3=0; 2:r1=0; y=2; z=2;
1 :>0:r1=1; 0:r3=0; 2:r1=2; y=2; z=1;
11 :>0:r1=0; 0:r3=1; 2:r1=1; y=2; z=2;
10 :>0:r1=1; 0:r3=0; 2:r1=1; y=2; z=1;
7 :>0:r1=1; 0:r3=1; 2:r1=1; y=2; z=1;
13 :>0:r1=1; 0:r3=1; 2:r1=0; y=2; z=2;
47 :>0:r1=0; 0:r3=1; 2:r1=2; y=2; z=2;
34 :>0:r1=0; 0:r3=1; 2:r1=1; y=2; z=1;
419 :>0:r1=1; 0:r3=1; 2:r1=2; y=2; z=1;
231 :>0:r1=1; 0:r3=2; 2:r1=2; y=2; z=2;
361 :>0:r1=0; 0:r3=0; 2:r1=2; y=2; z=2;
322 :>0:r1=1; 0:r3=2; 2:r1=1; y=2; z=2;
1172 :>0:r1=1; 0:r3=0; 2:r1=0; y=2; z=1;
2792 :>0:r1=0; 0:r3=0; 2:r1=1; y=2; z=2;
42996 :>0:r1=0; 0:r3=2; 2:r1=1; y=2; z=2;
49651 :>0:r1=0; 0:r3=0; 2:r1=1; y=2; z=1;
87868 :>0:r1=1; 0:r3=1; 2:r1=0; y=2; z=1;
28683 :>0:r1=0; 0:r3=1; 2:r1=0; y=2; z=1;
19920 :>0:r1=0; 0:r3=1; 2:r1=2; y=2; z=1;
114755:>0:r1=0; 0:r3=2; 2:r1=2; y=2; z=1;
76733 :>0:r1=0; 0:r3=0; 2:r1=2; y=2; z=1;
8927 :>0:r1=0; 0:r3=2; 2:r1=0; y=2; z=1;
51802 :>0:r1=0; 0:r3=2; 2:r1=1; y=2; z=1;
59078 :>0:r1=0; 0:r3=1; 2:r1=0; y=2; z=2;
43706 :>0:r1=0; 0:r3=2; 2:r1=2; y=2; z=2;
36633 :>0:r1=1; 0:r3=2; 2:r1=0; y=2; z=1;
130221:>0:r1=0; 0:r3=2; 2:r1=0; y=2; z=2;
88919 :>0:r1=0; 0:r3=0; 2:r1=0; y=2; z=1;
51286 :>0:r1=1; 0:r3=2; 2:r1=2; y=2; z=1;
30068 :>0:r1=1; 0:r3=2; 2:r1=1; y=2; z=1;
3987 :>0:r1=1; 0:r3=2; 2:r1=0; y=2; z=2;
69345 :>0:r1=0; 0:r3=0; 2:r1=0; y=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2) is NOT validated
Hash=e7513e7495df306757c1e31e89860966
Cycle=SyncdWW Rfe LwSyncdRR Fre SyncsWW Rfe LwSyncdRW Wse
Relax safe193 No
Safe=Fre Wse LwSyncdRW LwSyncdRR BCSyncsWW BCSyncdWW
Time safe193 2.56
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe194.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe194
"Rfe SyncdRR Fre SyncsWW Rfe LwSyncdRW Wse"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | lwsync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | li r3,1 | ;
| li r3,2 | stw r3,0(r4) | ;
| stw r3,0(r2) | | ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe194 Allowed
Histogram (45 states)
1 :>0:r1=1; 0:r3=1; 2:r1=1; x=2; y=1;
1 :>0:r1=0; 0:r3=1; 2:r1=1; x=2; y=2;
1 :>0:r1=2; 0:r3=1; 2:r1=1; x=2; y=2;
1 :>0:r1=1; 0:r3=1; 2:r1=1; x=2; y=2;
9 :>0:r1=0; 0:r3=1; 2:r1=1; x=2; y=1;
9 :>0:r1=0; 0:r3=1; 2:r1=2; x=2; y=2;
24 :>0:r1=0; 0:r3=0; 2:r1=2; x=2; y=2;
60 :>0:r1=2; 0:r3=0; 2:r1=2; x=2; y=1;
179 :>0:r1=0; 0:r3=0; 2:r1=1; x=2; y=2;
20 :>0:r1=2; 0:r3=1; 2:r1=1; x=2; y=1;
219 :>0:r1=1; 0:r3=0; 2:r1=0; x=2; y=1;
457 :>0:r1=2; 0:r3=0; 2:r1=0; x=2; y=2;
1106 :>0:r1=1; 0:r3=2; 2:r1=1; x=2; y=2;
1700 :>0:r1=2; 0:r3=0; 2:r1=1; x=2; y=1;
3423 :>0:r1=2; 0:r3=2; 2:r1=2; x=2; y=2;
17102 :>0:r1=2; 0:r3=1; 2:r1=0; x=2; y=2;
5581 :>0:r1=1; 0:r3=2; 2:r1=2; x=2; y=2;
22778 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; y=2;
914 :>0:r1=2; 0:r3=2; 2:r1=1; x=2; y=2;
39538 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; y=2;
12552 :>0:r1=1; 0:r3=0; 2:r1=0; x=2; y=2;
25671 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; y=2;
10176 :>0:r1=0; 0:r3=2; 2:r1=1; x=2; y=1;
7099 :>0:r1=2; 0:r3=1; 2:r1=2; x=2; y=1;
4400 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; y=1;
8171 :>0:r1=0; 0:r3=2; 2:r1=1; x=2; y=2;
1429 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; y=2;
43652 :>0:r1=0; 0:r3=2; 2:r1=2; x=2; y=2;
41052 :>0:r1=2; 0:r3=1; 2:r1=0; x=2; y=1;
9918 :>0:r1=0; 0:r3=1; 2:r1=2; x=2; y=1;
37691 :>0:r1=1; 0:r3=2; 2:r1=2; x=2; y=1;
63642 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; y=1;
15751 :>0:r1=1; 0:r3=2; 2:r1=1; x=2; y=1;
88910 :>0:r1=2; 0:r3=2; 2:r1=1; x=2; y=1;
18789 :>0:r1=0; 0:r3=0; 2:r1=2; x=2; y=1;
16183 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; y=2;
134536:>0:r1=0; 0:r3=0; 2:r1=1; x=2; y=1;
21794 :>0:r1=2; 0:r3=2; 2:r1=0; x=2; y=1;
38675 :>0:r1=0; 0:r3=2; 2:r1=2; x=2; y=1;
102741:>0:r1=2; 0:r3=2; 2:r1=0; x=2; y=2;
8947 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; y=1;
132323:>0:r1=2; 0:r3=2; 2:r1=2; x=2; y=1;
698 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; y=1;
53276 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; y=1;
8801 :>0:r1=2; 0:r3=0; 2:r1=0; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=2) is NOT validated
Hash=6cdc989a5603072918d7e7b07dbab266
Cycle=Rfe SyncdRR Fre SyncsWW Rfe LwSyncdRW Wse
Relax safe194 No
Safe=Fre Wse LwSyncdRW ACSyncdRR BCSyncsWW
Time safe194 2.54
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe195.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe195
"LwSyncdWW Rfe SyncdRR Fre SyncsWW Rfe LwSyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | lwsync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | li r3,1 | lwsync ;
| li r3,2 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r2) | | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe195 Allowed
Histogram (31 states)
7 :>0:r1=1; 0:r3=0; 2:r1=1; y=2; z=1;
1 :>0:r1=0; 0:r3=1; 2:r1=1; y=2; z=2;
18 :>0:r1=1; 0:r3=1; 2:r1=1; y=2; z=1;
270 :>0:r1=1; 0:r3=2; 2:r1=1; y=2; z=2;
14 :>0:r1=0; 0:r3=1; 2:r1=1; y=2; z=1;
86 :>0:r1=0; 0:r3=0; 2:r1=2; y=2; z=2;
79 :>0:r1=0; 0:r3=1; 2:r1=2; y=2; z=2;
328 :>0:r1=1; 0:r3=2; 2:r1=2; y=2; z=2;
606 :>0:r1=1; 0:r3=1; 2:r1=0; y=2; z=2;
8677 :>0:r1=0; 0:r3=0; 2:r1=1; y=2; z=2;
95 :>0:r1=1; 0:r3=0; 2:r1=0; y=2; z=2;
1010 :>0:r1=1; 0:r3=1; 2:r1=2; y=2; z=1;
25774 :>0:r1=1; 0:r3=1; 2:r1=0; y=2; z=1;
1889 :>0:r1=1; 0:r3=0; 2:r1=0; y=2; z=1;
9311 :>0:r1=0; 0:r3=2; 2:r1=2; y=2; z=2;
30081 :>0:r1=0; 0:r3=0; 2:r1=0; y=2; z=2;
17229 :>0:r1=0; 0:r3=1; 2:r1=2; y=2; z=1;
8915 :>0:r1=0; 0:r3=2; 2:r1=1; y=2; z=2;
9160 :>0:r1=0; 0:r3=2; 2:r1=0; y=2; z=1;
120894:>0:r1=0; 0:r3=2; 2:r1=0; y=2; z=2;
85346 :>0:r1=0; 0:r3=0; 2:r1=1; y=2; z=1;
26723 :>0:r1=0; 0:r3=1; 2:r1=0; y=2; z=1;
129210:>0:r1=0; 0:r3=2; 2:r1=2; y=2; z=1;
51766 :>0:r1=0; 0:r3=2; 2:r1=1; y=2; z=1;
101199:>0:r1=1; 0:r3=2; 2:r1=2; y=2; z=1;
85417 :>0:r1=0; 0:r3=1; 2:r1=0; y=2; z=2;
108288:>0:r1=0; 0:r3=0; 2:r1=0; y=2; z=1;
71416 :>0:r1=1; 0:r3=2; 2:r1=1; y=2; z=1;
97803 :>0:r1=1; 0:r3=2; 2:r1=0; y=2; z=1;
4662 :>0:r1=1; 0:r3=2; 2:r1=0; y=2; z=2;
3726 :>0:r1=0; 0:r3=0; 2:r1=2; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2) is NOT validated
Hash=6067ffcdc2ea611a8528262a89efb16d
Cycle=LwSyncdWW Rfe SyncdRR Fre SyncsWW Rfe LwSyncdRW Wse
Relax safe195 No
Safe=Fre Wse LwSyncdWW LwSyncdRW ACSyncdRR BCSyncsWW
Time safe195 2.56
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe196.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe196
"SyncdWW Rfe SyncsRW Rfe LwSyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | lwsync | stw r1,0(r2) ;
li r3,2 | li r3,1 | sync ;
stw r3,0(r2) | stw r3,0(r4) | li r3,1 ;
| | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r10,0(r9)
_litmus_P1_1_: lwsync
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stw r8,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe196 Allowed
Histogram (13 states)
210 :>0:r1=1; 1:r1=0; x=2; y=2;
1258 :>0:r1=1; 1:r1=2; x=2; y=1;
29586 :>0:r1=0; 1:r1=2; x=1; y=2;
5593 :>0:r1=0; 1:r1=2; x=2; y=1;
9365 :>0:r1=0; 1:r1=0; x=2; y=2;
27666 :>0:r1=0; 1:r1=1; x=2; y=1;
25227 :>0:r1=1; 1:r1=1; x=2; y=1;
160537:>0:r1=0; 1:r1=0; x=2; y=1;
206507:>0:r1=0; 1:r1=2; x=1; y=1;
104858:>0:r1=1; 1:r1=0; x=2; y=1;
345239:>0:r1=0; 1:r1=0; x=1; y=2;
10324 :>0:r1=0; 1:r1=1; x=1; y=1;
73630 :>0:r1=0; 1:r1=0; x=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2) is NOT validated
Hash=50abf1f01ded8aa844652be644c6689f
Cycle=SyncdWW Rfe SyncsRW Rfe LwSyncdRW Wse
Relax safe196 No
Safe=Wse LwSyncdRW BCSyncsRW BCSyncdWW
Time safe196 1.55
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe197.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe197
"SyncdWR Fre SyncdWW Rfe SyncsRW Rfe LwSyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
li r1,1 | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | sync | lwsync | stw r1,0(r2) ;
sync | li r3,2 | li r3,1 | sync ;
li r3,1 | stw r3,0(r2) | stw r3,0(r4) | lwz r3,0(r4) ;
stw r3,0(r4) | | | ;
exists (y=2 /\ z=2 /\ 1:r1=1 /\ 2:r1=2 /\ 3:r3=0)
Generated assembler
_litmus_P0_0_: li r11,1
_litmus_P0_1_: stw r11,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r10,1
_litmus_P0_4_: stw r10,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r10,2
_litmus_P3_1_: stw r10,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: lwz r8,0(r2)
Test safe197 Allowed
Histogram (30 states)
4 :>1:r1=1; 2:r1=0; 3:r3=0; y=2; z=2;
6 :>1:r1=1; 2:r1=2; 3:r3=1; y=2; z=2;
48 :>1:r1=1; 2:r1=1; 3:r3=0; y=2; z=1;
53 :>1:r1=0; 2:r1=2; 3:r3=1; y=2; z=2;
89 :>1:r1=0; 2:r1=2; 3:r3=0; y=2; z=1;
268 :>1:r1=0; 2:r1=1; 3:r3=0; y=2; z=1;
151 :>1:r1=0; 2:r1=0; 3:r3=0; y=2; z=2;
270 :>1:r1=0; 2:r1=1; 3:r3=0; y=1; z=1;
370 :>1:r1=0; 2:r1=2; 3:r3=0; y=1; z=2;
1489 :>1:r1=0; 2:r1=1; 3:r3=1; y=2; z=2;
1470 :>1:r1=1; 2:r1=2; 3:r3=1; y=2; z=1;
439 :>1:r1=0; 2:r1=1; 3:r3=1; y=1; z=2;
3577 :>1:r1=1; 2:r1=0; 3:r3=0; y=2; z=1;
36076 :>1:r1=1; 2:r1=1; 3:r3=1; y=2; z=1;
10005 :>1:r1=0; 2:r1=0; 3:r3=0; y=1; z=2;
13740 :>1:r1=1; 2:r1=0; 3:r3=1; y=2; z=1;
52877 :>1:r1=0; 2:r1=2; 3:r3=0; y=1; z=1;
27660 :>1:r1=0; 2:r1=2; 3:r3=1; y=2; z=1;
50495 :>1:r1=0; 2:r1=0; 3:r3=0; y=2; z=1;
14662 :>1:r1=0; 2:r1=1; 3:r3=1; y=1; z=1;
44738 :>1:r1=0; 2:r1=1; 3:r3=1; y=2; z=1;
145427:>1:r1=0; 2:r1=0; 3:r3=1; y=2; z=2;
151037:>1:r1=0; 2:r1=0; 3:r3=0; y=1; z=1;
82310 :>1:r1=0; 2:r1=2; 3:r3=1; y=1; z=2;
119907:>1:r1=0; 2:r1=2; 3:r3=1; y=1; z=1;
137065:>1:r1=0; 2:r1=0; 3:r3=1; y=1; z=2;
19362 :>1:r1=0; 2:r1=0; 3:r3=1; y=1; z=1;
56775 :>1:r1=0; 2:r1=0; 3:r3=1; y=2; z=1;
27492 :>1:r1=1; 2:r1=0; 3:r3=1; y=2; z=2;
2138 :>1:r1=1; 2:r1=1; 3:r3=1; y=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 1:r1=1 /\ 2:r1=2 /\ 3:r3=0) is NOT validated
Hash=1738871bfa844acbb45afdcf192a62b9
Cycle=SyncdWR Fre SyncdWW Rfe SyncsRW Rfe LwSyncdRW Wse
Relax safe197 No
Safe=Fre Wse SyncdWR LwSyncdRW BCSyncsRW BCSyncdWW
Time safe197 2.56
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe198.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe198
"SyncdWW Rfe SyncdRW Rfe SyncsRW Rfe LwSyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | sync | lwsync | stw r1,0(r2) ;
li r3,1 | li r3,2 | li r3,1 | sync ;
stw r3,0(r4) | stw r3,0(r2) | stw r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe198 Allowed
Histogram (29 states)
2 :>0:r1=1; 1:r1=1; 2:r1=1; y=2; z=1;
80 :>0:r1=1; 1:r1=0; 2:r1=1; y=2; z=1;
42 :>0:r1=1; 1:r1=0; 2:r1=2; y=2; z=1;
116 :>0:r1=1; 1:r1=0; 2:r1=1; y=1; z=1;
300 :>0:r1=0; 1:r1=0; 2:r1=2; y=2; z=2;
146 :>0:r1=1; 1:r1=0; 2:r1=2; y=1; z=2;
3262 :>0:r1=0; 1:r1=0; 2:r1=1; y=2; z=2;
19 :>0:r1=0; 1:r1=1; 2:r1=2; y=2; z=2;
620 :>0:r1=0; 1:r1=0; 2:r1=1; y=1; z=2;
1837 :>0:r1=1; 1:r1=0; 2:r1=0; y=1; z=2;
3234 :>0:r1=0; 1:r1=1; 2:r1=1; y=2; z=2;
2600 :>0:r1=0; 1:r1=1; 2:r1=2; y=2; z=1;
22143 :>0:r1=1; 1:r1=0; 2:r1=0; y=2; z=1;
24502 :>0:r1=1; 1:r1=0; 2:r1=2; y=1; z=1;
38886 :>0:r1=0; 1:r1=1; 2:r1=1; y=2; z=1;
61550 :>0:r1=0; 1:r1=0; 2:r1=1; y=2; z=1;
123749:>0:r1=1; 1:r1=0; 2:r1=0; y=1; z=1;
31148 :>0:r1=0; 1:r1=1; 2:r1=0; y=2; z=1;
39254 :>0:r1=0; 1:r1=0; 2:r1=2; y=2; z=1;
136838:>0:r1=0; 1:r1=0; 2:r1=0; y=2; z=2;
34784 :>0:r1=0; 1:r1=0; 2:r1=0; y=1; z=1;
65200 :>0:r1=0; 1:r1=0; 2:r1=2; y=1; z=2;
89877 :>0:r1=0; 1:r1=0; 2:r1=0; y=2; z=1;
134882:>0:r1=0; 1:r1=0; 2:r1=0; y=1; z=2;
147980:>0:r1=0; 1:r1=0; 2:r1=2; y=1; z=1;
17947 :>0:r1=0; 1:r1=0; 2:r1=1; y=1; z=1;
1271 :>0:r1=1; 1:r1=1; 2:r1=0; y=2; z=1;
185 :>0:r1=1; 1:r1=1; 2:r1=0; y=2; z=2;
17546 :>0:r1=0; 1:r1=1; 2:r1=0; y=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2) is NOT validated
Hash=99d652047051d5c186180ea56434ccb7
Cycle=SyncdWW Rfe SyncdRW Rfe SyncsRW Rfe LwSyncdRW Wse
Relax safe198 No
Safe=Wse LwSyncdRW BCSyncsRW BCSyncdWW BCSyncdRW
Time safe198 2.50
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe199.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe199
"SyncdWW Rfe LwSyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=x;}
P0 | P1 ;
lwz r1,0(r2) | li r1,2 ;
lwsync | stw r1,0(r2) ;
li r3,1 | sync ;
stw r3,0(r4) | li r3,1 ;
| stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
Test safe199 Allowed
Histogram (3 states)
885742:>0:r1=0; y=2;
86918 :>0:r1=1; y=1;
1027340:>0:r1=0; y=1;
No
Witnesses
Positive: 0, Negative: 2000000
Condition exists (y=2 /\ 0:r1=1) is NOT validated
Hash=17d6d7836001f8735bf9f1252d4e04e8
Cycle=SyncdWW Rfe LwSyncdRW Wse
Relax safe199 No
Safe=Wse LwSyncdRW BCSyncdWW
Time safe199 1.25
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe200.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe200
"SyncdWW Rfe LwSyncdRW Wse SyncdWW Rfe LwSyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
lwsync | stw r1,0(r2) | lwsync | stw r1,0(r2) ;
li r3,1 | sync | li r3,1 | sync ;
stw r3,0(r4) | li r3,1 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (a=2 /\ y=2 /\ 0:r1=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe200 Allowed
Histogram (15 states)
2 :>0:r1=1; 2:r1=0; a=2; y=2;
4 :>0:r1=0; 2:r1=1; a=2; y=2;
6 :>0:r1=1; 2:r1=1; a=1; y=2;
5 :>0:r1=1; 2:r1=1; a=2; y=1;
29756 :>0:r1=1; 2:r1=1; a=1; y=1;
2977 :>0:r1=0; 2:r1=1; a=2; y=1;
8004 :>0:r1=1; 2:r1=0; a=1; y=2;
6599 :>0:r1=1; 2:r1=0; a=2; y=1;
113864:>0:r1=0; 2:r1=0; a=2; y=2;
194037:>0:r1=0; 2:r1=0; a=1; y=2;
122431:>0:r1=1; 2:r1=0; a=1; y=1;
139401:>0:r1=0; 2:r1=0; a=1; y=1;
137682:>0:r1=0; 2:r1=1; a=1; y=1;
2464 :>0:r1=0; 2:r1=1; a=1; y=2;
242768:>0:r1=0; 2:r1=0; a=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ y=2 /\ 0:r1=1 /\ 2:r1=1) is NOT validated
Hash=1a0b063b6e2a39918aebb2640efed231
Cycle=SyncdWW Rfe LwSyncdRW Wse SyncdWW Rfe LwSyncdRW Wse
Relax safe200 No
Safe=Wse LwSyncdRW BCSyncdWW
Time safe200 2.17
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe201.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe201
"Rfe SyncdRW Wse SyncdWW Rfe LwSyncdRW Wse"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | lwsync | stw r1,0(r2) ;
li r3,1 | sync | li r3,1 | ;
stw r3,0(r4) | li r3,1 | stw r3,0(r4) | ;
| stw r3,0(r4) | | ;
exists (x=2 /\ z=2 /\ 0:r1=2 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe201 Allowed
Histogram (20 states)
36 :>0:r1=1; 2:r1=1; x=1; z=2;
6 :>0:r1=2; 2:r1=1; x=2; z=1;
789 :>0:r1=0; 2:r1=1; x=1; z=2;
56 :>0:r1=2; 2:r1=1; x=1; z=2;
1240 :>0:r1=0; 2:r1=1; x=2; z=1;
6541 :>0:r1=2; 2:r1=0; x=2; z=2;
4343 :>0:r1=1; 2:r1=1; x=1; z=1;
7664 :>0:r1=1; 2:r1=0; x=2; z=1;
19257 :>0:r1=1; 2:r1=0; x=2; z=2;
25532 :>0:r1=0; 2:r1=0; x=1; z=2;
42964 :>0:r1=2; 2:r1=0; x=2; z=1;
15096 :>0:r1=0; 2:r1=0; x=2; z=2;
26890 :>0:r1=0; 2:r1=1; x=1; z=1;
120007:>0:r1=1; 2:r1=0; x=1; z=1;
82921 :>0:r1=2; 2:r1=0; x=1; z=2;
193378:>0:r1=0; 2:r1=0; x=2; z=1;
145761:>0:r1=2; 2:r1=1; x=1; z=1;
170430:>0:r1=2; 2:r1=0; x=1; z=1;
85226 :>0:r1=1; 2:r1=0; x=1; z=2;
51863 :>0:r1=0; 2:r1=0; x=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=2 /\ 2:r1=1) is NOT validated
Hash=6f855fb6608a1672adbc9d6f3dab255e
Cycle=Rfe SyncdRW Wse SyncdWW Rfe LwSyncdRW Wse
Relax safe201 No
Safe=Wse LwSyncdRW ACSyncdRW BCSyncdWW
Time safe201 2.24
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe202.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe202
"LwSyncdWW Rfe SyncdRW Wse SyncdWW Rfe LwSyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | lwsync | stw r1,0(r2) ;
li r3,1 | sync | li r3,1 | lwsync ;
stw r3,0(r4) | li r3,1 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (a=2 /\ y=2 /\ 0:r1=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe202 Allowed
Histogram (14 states)
3 :>0:r1=1; 2:r1=1; a=1; y=2;
5 :>0:r1=1; 2:r1=0; a=2; y=2;
43 :>0:r1=1; 2:r1=1; a=2; y=1;
8362 :>0:r1=1; 2:r1=0; a=1; y=2;
7026 :>0:r1=0; 2:r1=1; a=2; y=1;
10344 :>0:r1=1; 2:r1=0; a=2; y=1;
22602 :>0:r1=1; 2:r1=1; a=1; y=1;
208112:>0:r1=1; 2:r1=0; a=1; y=1;
83972 :>0:r1=0; 2:r1=0; a=2; y=2;
115104:>0:r1=0; 2:r1=0; a=1; y=2;
116921:>0:r1=0; 2:r1=0; a=1; y=1;
148460:>0:r1=0; 2:r1=1; a=1; y=1;
4016 :>0:r1=0; 2:r1=1; a=1; y=2;
275030:>0:r1=0; 2:r1=0; a=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ y=2 /\ 0:r1=1 /\ 2:r1=1) is NOT validated
Hash=5b17e4b5f83aabba170969c52e8b5a0c
Cycle=LwSyncdWW Rfe SyncdRW Wse SyncdWW Rfe LwSyncdRW Wse
Relax safe202 No
Safe=Wse LwSyncdWW LwSyncdRW ACSyncdRW BCSyncdWW
Time safe202 2.13
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe203.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe203
"SyncdWW Rfe DpdR Fre SyncdWW Rfe LwSyncdRW Wse"
{0:r2=x; 0:r5=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | stw r1,0(r2) | lwsync | stw r1,0(r2) ;
lwzx r4,r3,r5 | sync | li r3,1 | sync ;
| li r3,1 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 0:r4=0 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r6,0(r9)
_litmus_P0_1_: xor r11,r6,r6
_litmus_P0_2_: lwzx r7,r11,r2
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe203 Allowed
Histogram (14 states)
3 :>0:r1=1; 0:r4=0; 2:r1=0; a=2;
10 :>0:r1=0; 0:r4=0; 2:r1=1; a=2;
18 :>0:r1=1; 0:r4=0; 2:r1=1; a=1;
2996 :>0:r1=1; 0:r4=1; 2:r1=0; a=2;
2158 :>0:r1=0; 0:r4=1; 2:r1=1; a=2;
18255 :>0:r1=1; 0:r4=1; 2:r1=1; a=1;
16134 :>0:r1=0; 0:r4=0; 2:r1=1; a=1;
10051 :>0:r1=1; 0:r4=0; 2:r1=0; a=1;
50813 :>0:r1=0; 0:r4=0; 2:r1=0; a=2;
156716:>0:r1=0; 0:r4=1; 2:r1=1; a=1;
100136:>0:r1=1; 0:r4=1; 2:r1=0; a=1;
144961:>0:r1=0; 0:r4=1; 2:r1=0; a=1;
276049:>0:r1=0; 0:r4=0; 2:r1=0; a=1;
221700:>0:r1=0; 0:r4=1; 2:r1=0; a=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 0:r4=0 /\ 2:r1=1) is NOT validated
Hash=aa9974d1eab5413e103e6a1e75e35ca5
Cycle=SyncdWW Rfe DpdR Fre SyncdWW Rfe LwSyncdRW Wse
Relax safe203 No
Safe=Fre Wse LwSyncdRW DpdR BCSyncdWW
Time safe203 2.24
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe204.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe204
"SyncdWW Rfe DpsR Fre SyncdWW Rfe LwSyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | stw r1,0(r2) | lwsync | stw r1,0(r2) ;
lwzx r4,r3,r2 | sync | li r3,1 | sync ;
| li r3,1 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r4=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r2)
_litmus_P0_1_: xor r11,r7,r7
_litmus_P0_2_: lwzx r9,r11,r2
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe204 Allowed
Histogram (25 states)
1 :>0:r1=0; 0:r4=2; 2:r1=0; x=2; z=1;
6 :>0:r1=1; 0:r4=1; 2:r1=0; x=2; z=2;
1 :>0:r1=0; 0:r4=1; 2:r1=0; x=1; z=1;
2 :>0:r1=1; 0:r4=1; 2:r1=1; x=2; z=1;
8 :>0:r1=1; 0:r4=1; 2:r1=1; x=1; z=2;
4 :>0:r1=0; 0:r4=2; 2:r1=0; x=1; z=1;
18 :>0:r1=2; 0:r4=2; 2:r1=0; x=2; z=2;
21 :>0:r1=0; 0:r4=0; 2:r1=1; x=2; z=1;
72 :>0:r1=2; 0:r4=2; 2:r1=1; x=2; z=1;
385 :>0:r1=0; 0:r4=0; 2:r1=1; x=1; z=2;
2654 :>0:r1=0; 0:r4=0; 2:r1=0; x=2; z=2;
81 :>0:r1=0; 0:r4=2; 2:r1=0; x=1; z=2;
3261 :>0:r1=1; 0:r4=1; 2:r1=1; x=1; z=1;
9428 :>0:r1=2; 0:r4=2; 2:r1=1; x=1; z=2;
21460 :>0:r1=0; 0:r4=0; 2:r1=1; x=1; z=1;
44718 :>0:r1=1; 0:r4=1; 2:r1=0; x=2; z=1;
109981:>0:r1=2; 0:r4=2; 2:r1=0; x=1; z=2;
55323 :>0:r1=2; 0:r4=2; 2:r1=0; x=1; z=1;
44676 :>0:r1=2; 0:r4=2; 2:r1=0; x=2; z=1;
153796:>0:r1=2; 0:r4=2; 2:r1=1; x=1; z=1;
82443 :>0:r1=0; 0:r4=0; 2:r1=0; x=2; z=1;
269472:>0:r1=0; 0:r4=0; 2:r1=0; x=1; z=2;
49206 :>0:r1=1; 0:r4=1; 2:r1=0; x=1; z=1;
1781 :>0:r1=1; 0:r4=1; 2:r1=0; x=1; z=2;
151202:>0:r1=0; 0:r4=0; 2:r1=0; x=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r4=1 /\ 2:r1=1) is NOT validated
Hash=941c69d6731cd97af6225eef83ff9e02
Cycle=SyncdWW Rfe DpsR Fre SyncdWW Rfe LwSyncdRW Wse
Relax safe204 No
Safe=Fre Wse LwSyncdRW DpsR BCSyncdWW
Time safe204 2.34
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe205.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe205
"SyncdWR Fre SyncdWW Rfe LwSyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
li r1,1 | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | lwsync | stw r1,0(r2) ;
sync | li r3,1 | sync ;
li r3,1 | stw r3,0(r4) | lwz r3,0(r4) ;
stw r3,0(r4) | | ;
exists (z=2 /\ 1:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: li r10,1
_litmus_P0_1_: stw r10,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r11,1
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r10,0(r9)
_litmus_P1_1_: lwsync
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stw r8,0(r2)
_litmus_P2_0_: li r8,2
_litmus_P2_1_: stw r8,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r10,0(r2)
Test safe205 Allowed
Histogram (7 states)
1109 :>1:r1=1; 2:r3=0; z=1;
1199 :>1:r1=1; 2:r3=1; z=2;
2891 :>1:r1=0; 2:r3=0; z=2;
255314:>1:r1=0; 2:r3=1; z=1;
312460:>1:r1=0; 2:r3=1; z=2;
181821:>1:r1=1; 2:r3=1; z=1;
245206:>1:r1=0; 2:r3=0; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 1:r1=1 /\ 2:r3=0) is NOT validated
Hash=89ebdd933ef34034a6e1e61a70c79088
Cycle=SyncdWR Fre SyncdWW Rfe LwSyncdRW Wse
Relax safe205 No
Safe=Fre Wse SyncdWR LwSyncdRW BCSyncdWW
Time safe205 1.66
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe206.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe206
"SyncdWW Rfe SyncdRR Fre SyncdWW Rfe LwSyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | lwsync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | li r3,1 | sync ;
| li r3,1 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe206 Allowed
Histogram (15 states)
1 :>0:r1=1; 0:r3=0; 2:r1=1; a=1;
2 :>0:r1=1; 0:r3=1; 2:r1=1; a=2;
1 :>0:r1=1; 0:r3=0; 2:r1=0; a=2;
2 :>0:r1=0; 0:r3=0; 2:r1=1; a=2;
2398 :>0:r1=1; 0:r3=0; 2:r1=0; a=1;
384 :>0:r1=0; 0:r3=1; 2:r1=1; a=2;
3965 :>0:r1=1; 0:r3=1; 2:r1=0; a=2;
453 :>0:r1=0; 0:r3=0; 2:r1=1; a=1;
30286 :>0:r1=1; 0:r3=1; 2:r1=1; a=1;
64930 :>0:r1=0; 0:r3=0; 2:r1=0; a=2;
235970:>0:r1=0; 0:r3=1; 2:r1=0; a=2;
131061:>0:r1=0; 0:r3=1; 2:r1=1; a=1;
149563:>0:r1=1; 0:r3=1; 2:r1=0; a=1;
195461:>0:r1=0; 0:r3=0; 2:r1=0; a=1;
185523:>0:r1=0; 0:r3=1; 2:r1=0; a=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1) is NOT validated
Hash=16152e9406b5f0779deb7a138ad409ab
Cycle=SyncdWW Rfe SyncdRR Fre SyncdWW Rfe LwSyncdRW Wse
Relax safe206 No
Safe=Fre Wse SyncdRR LwSyncdRW BCSyncdWW
Time safe206 2.24
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe207.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe207
"SyncdWW Rfe SyncsRR Fre SyncdWW Rfe LwSyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | lwsync | stw r1,0(r2) ;
lwz r3,0(r2) | sync | li r3,1 | sync ;
| li r3,1 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe207 Allowed
Histogram (41 states)
1 :>0:r1=1; 0:r3=1; 2:r1=1; x=2; z=1;
1 :>0:r1=0; 0:r3=1; 2:r1=1; x=2; z=1;
2 :>0:r1=2; 0:r3=1; 2:r1=1; x=1; z=2;
3 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; z=2;
6 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; z=2;
4 :>0:r1=1; 0:r3=2; 2:r1=1; x=2; z=1;
17 :>0:r1=0; 0:r3=2; 2:r1=1; x=2; z=1;
23 :>0:r1=2; 0:r3=2; 2:r1=0; x=2; z=2;
18 :>0:r1=0; 0:r3=2; 2:r1=1; x=1; z=2;
33 :>0:r1=2; 0:r3=2; 2:r1=1; x=2; z=1;
7 :>0:r1=1; 0:r3=1; 2:r1=1; x=1; z=2;
14 :>0:r1=0; 0:r3=0; 2:r1=1; x=2; z=1;
33 :>0:r1=0; 0:r3=1; 2:r1=1; x=1; z=1;
71 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; z=2;
25 :>0:r1=0; 0:r3=0; 2:r1=1; x=1; z=2;
627 :>0:r1=0; 0:r3=2; 2:r1=1; x=1; z=1;
423 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; z=2;
2548 :>0:r1=1; 0:r3=1; 2:r1=1; x=1; z=1;
7862 :>0:r1=2; 0:r3=1; 2:r1=0; x=1; z=2;
2547 :>0:r1=2; 0:r3=2; 2:r1=1; x=1; z=2;
14482 :>0:r1=2; 0:r3=1; 2:r1=1; x=1; z=1;
1332 :>0:r1=0; 0:r3=1; 2:r1=0; x=1; z=2;
13910 :>0:r1=0; 0:r3=0; 2:r1=1; x=1; z=1;
2684 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; z=2;
42234 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; z=1;
13664 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; z=1;
27119 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; z=1;
101943:>0:r1=2; 0:r3=2; 2:r1=0; x=1; z=2;
42839 :>0:r1=2; 0:r3=2; 2:r1=0; x=2; z=1;
48348 :>0:r1=0; 0:r3=2; 2:r1=0; x=1; z=2;
10036 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; z=1;
8551 :>0:r1=0; 0:r3=2; 2:r1=0; x=1; z=1;
54238 :>0:r1=2; 0:r3=2; 2:r1=0; x=1; z=1;
23881 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; z=1;
124733:>0:r1=2; 0:r3=2; 2:r1=1; x=1; z=1;
21064 :>0:r1=2; 0:r3=1; 2:r1=0; x=1; z=1;
231001:>0:r1=0; 0:r3=0; 2:r1=0; x=1; z=2;
137827:>0:r1=0; 0:r3=0; 2:r1=0; x=1; z=1;
56921 :>0:r1=1; 0:r3=1; 2:r1=0; x=1; z=1;
1690 :>0:r1=1; 0:r3=1; 2:r1=0; x=1; z=2;
7238 :>0:r1=0; 0:r3=1; 2:r1=0; x=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1) is NOT validated
Hash=5c938ce6f3563bedf38fb2f66ee33c06
Cycle=SyncdWW Rfe SyncsRR Fre SyncdWW Rfe LwSyncdRW Wse
Relax safe207 No
Safe=Fre Wse SyncsRR LwSyncdRW BCSyncdWW
Time safe207 2.70
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe208.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe208
"SyncdWW Rfe LwSyncdRR Fre SyncdWW Rfe LwSyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
lwsync | stw r1,0(r2) | lwsync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | li r3,1 | sync ;
| li r3,1 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe208 Allowed
Histogram (15 states)
1 :>0:r1=1; 0:r3=0; 2:r1=0; a=2;
6 :>0:r1=1; 0:r3=0; 2:r1=1; a=1;
3 :>0:r1=1; 0:r3=1; 2:r1=1; a=2;
45 :>0:r1=0; 0:r3=0; 2:r1=1; a=2;
4054 :>0:r1=1; 0:r3=1; 2:r1=1; a=1;
1024 :>0:r1=1; 0:r3=1; 2:r1=0; a=2;
5052 :>0:r1=0; 0:r3=1; 2:r1=1; a=2;
6882 :>0:r1=1; 0:r3=0; 2:r1=0; a=1;
120163:>0:r1=1; 0:r3=1; 2:r1=0; a=1;
223215:>0:r1=0; 0:r3=1; 2:r1=0; a=2;
84707 :>0:r1=0; 0:r3=1; 2:r1=0; a=1;
243853:>0:r1=0; 0:r3=0; 2:r1=0; a=1;
148804:>0:r1=0; 0:r3=1; 2:r1=1; a=1;
23788 :>0:r1=0; 0:r3=0; 2:r1=1; a=1;
138403:>0:r1=0; 0:r3=0; 2:r1=0; a=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1) is NOT validated
Hash=016234ce2d52781d2a02349e41ac4bfd
Cycle=SyncdWW Rfe LwSyncdRR Fre SyncdWW Rfe LwSyncdRW Wse
Relax safe208 No
Safe=Fre Wse LwSyncdRW LwSyncdRR BCSyncdWW
Time safe208 2.10
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe209.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe209
"SyncdWW Rfe LwSyncsRR Fre SyncdWW Rfe LwSyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
lwsync | stw r1,0(r2) | lwsync | stw r1,0(r2) ;
lwz r3,0(r2) | sync | li r3,1 | sync ;
| li r3,1 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe209 Allowed
Histogram (36 states)
1 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; z=2;
2 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; z=2;
17 :>0:r1=1; 0:r3=1; 2:r1=1; x=2; z=1;
25 :>0:r1=0; 0:r3=1; 2:r1=1; x=1; z=1;
34 :>0:r1=0; 0:r3=0; 2:r1=1; x=1; z=2;
11 :>0:r1=1; 0:r3=1; 2:r1=1; x=1; z=2;
88 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; z=1;
11 :>0:r1=0; 0:r3=2; 2:r1=1; x=1; z=2;
82 :>0:r1=2; 0:r3=2; 2:r1=0; x=2; z=2;
66 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; z=2;
13 :>0:r1=2; 0:r3=1; 2:r1=0; x=1; z=2;
35 :>0:r1=0; 0:r3=0; 2:r1=1; x=2; z=1;
61 :>0:r1=0; 0:r3=1; 2:r1=0; x=1; z=2;
56 :>0:r1=2; 0:r3=1; 2:r1=0; x=1; z=1;
642 :>0:r1=0; 0:r3=2; 2:r1=0; x=1; z=1;
50 :>0:r1=2; 0:r3=2; 2:r1=1; x=2; z=1;
1257 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; z=1;
66 :>0:r1=2; 0:r3=1; 2:r1=1; x=1; z=1;
409 :>0:r1=0; 0:r3=2; 2:r1=0; x=1; z=2;
273 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; z=1;
3578 :>0:r1=2; 0:r3=2; 2:r1=1; x=1; z=2;
882 :>0:r1=0; 0:r3=1; 2:r1=0; x=1; z=1;
7556 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; z=2;
102 :>0:r1=0; 0:r3=2; 2:r1=1; x=1; z=1;
80418 :>0:r1=2; 0:r3=2; 2:r1=0; x=2; z=1;
6971 :>0:r1=0; 0:r3=0; 2:r1=1; x=1; z=1;
6683 :>0:r1=1; 0:r3=1; 2:r1=1; x=1; z=1;
78326 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; z=1;
142997:>0:r1=2; 0:r3=2; 2:r1=1; x=1; z=1;
62496 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; z=1;
278214:>0:r1=0; 0:r3=0; 2:r1=0; x=1; z=2;
38070 :>0:r1=2; 0:r3=2; 2:r1=0; x=1; z=1;
117343:>0:r1=2; 0:r3=2; 2:r1=0; x=1; z=2;
21595 :>0:r1=1; 0:r3=1; 2:r1=0; x=1; z=1;
3975 :>0:r1=1; 0:r3=1; 2:r1=0; x=1; z=2;
147595:>0:r1=0; 0:r3=0; 2:r1=0; x=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1) is NOT validated
Hash=731cfe58acb421f10a5e463650d8b142
Cycle=SyncdWW Rfe LwSyncsRR Fre SyncdWW Rfe LwSyncdRW Wse
Relax safe209 No
Safe=Fre Wse LwSyncsRR LwSyncdRW BCSyncdWW
Time safe209 2.75
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe210.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe210
"LwSyncdWW Rfe SyncsRR Fre SyncdWW Rfe LwSyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | lwsync | stw r1,0(r2) ;
lwz r3,0(r2) | sync | li r3,1 | lwsync ;
| li r3,1 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe210 Allowed
Histogram (41 states)
1 :>0:r1=0; 0:r3=1; 2:r1=1; x=2; z=1;
14 :>0:r1=0; 0:r3=2; 2:r1=1; x=2; z=1;
10 :>0:r1=0; 0:r3=0; 2:r1=1; x=2; z=1;
38 :>0:r1=2; 0:r3=1; 2:r1=1; x=1; z=2;
186 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; z=2;
14 :>0:r1=0; 0:r3=0; 2:r1=1; x=1; z=2;
14 :>0:r1=1; 0:r3=2; 2:r1=1; x=2; z=1;
20 :>0:r1=0; 0:r3=2; 2:r1=1; x=1; z=2;
8 :>0:r1=1; 0:r3=1; 2:r1=1; x=2; z=1;
91 :>0:r1=0; 0:r3=1; 2:r1=1; x=1; z=1;
449 :>0:r1=2; 0:r3=2; 2:r1=1; x=2; z=1;
14 :>0:r1=1; 0:r3=1; 2:r1=1; x=1; z=2;
192 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; z=2;
605 :>0:r1=0; 0:r3=2; 2:r1=1; x=1; z=1;
290 :>0:r1=2; 0:r3=2; 2:r1=0; x=2; z=2;
1467 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; z=2;
21882 :>0:r1=1; 0:r3=1; 2:r1=1; x=1; z=1;
3356 :>0:r1=2; 0:r3=2; 2:r1=1; x=1; z=2;
678 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; z=2;
22965 :>0:r1=0; 0:r3=0; 2:r1=1; x=1; z=1;
21786 :>0:r1=2; 0:r3=1; 2:r1=0; x=1; z=2;
4572 :>0:r1=0; 0:r3=1; 2:r1=0; x=1; z=2;
18297 :>0:r1=2; 0:r3=1; 2:r1=1; x=1; z=1;
64892 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; z=1;
16511 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; z=1;
9714 :>0:r1=0; 0:r3=1; 2:r1=0; x=1; z=1;
29403 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; z=1;
6758 :>0:r1=0; 0:r3=2; 2:r1=0; x=1; z=1;
82967 :>0:r1=2; 0:r3=2; 2:r1=1; x=1; z=1;
13707 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; z=1;
172481:>0:r1=0; 0:r3=0; 2:r1=0; x=1; z=2;
34331 :>0:r1=2; 0:r3=2; 2:r1=0; x=1; z=1;
44028 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; z=1;
17320 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; z=2;
107973:>0:r1=2; 0:r3=2; 2:r1=0; x=1; z=2;
24757 :>0:r1=2; 0:r3=1; 2:r1=0; x=1; z=1;
145634:>0:r1=0; 0:r3=0; 2:r1=0; x=1; z=1;
22796 :>0:r1=1; 0:r3=1; 2:r1=0; x=1; z=1;
65854 :>0:r1=2; 0:r3=2; 2:r1=0; x=2; z=1;
7560 :>0:r1=1; 0:r3=1; 2:r1=0; x=1; z=2;
36365 :>0:r1=0; 0:r3=2; 2:r1=0; x=1; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1) is NOT validated
Hash=17fd51844f0dca763775424bb7f1cb59
Cycle=LwSyncdWW Rfe SyncsRR Fre SyncdWW Rfe LwSyncdRW Wse
Relax safe210 No
Safe=Fre Wse LwSyncdWW LwSyncdRW ACSyncsRR BCSyncdWW
Time safe210 2.77
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe211.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe211
"Rfe SyncdRR Fre SyncdWW Rfe LwSyncdRW Wse"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | lwsync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | li r3,1 | ;
| li r3,1 | stw r3,0(r4) | ;
| stw r3,0(r4) | | ;
exists (z=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe211 Allowed
Histogram (20 states)
12 :>0:r1=1; 0:r3=1; 2:r1=1; z=2;
6 :>0:r1=2; 0:r3=0; 2:r1=1; z=1;
17 :>0:r1=2; 0:r3=1; 2:r1=1; z=2;
1251 :>0:r1=0; 0:r3=0; 2:r1=1; z=1;
4560 :>0:r1=1; 0:r3=1; 2:r1=1; z=1;
641 :>0:r1=0; 0:r3=1; 2:r1=1; z=2;
10358 :>0:r1=2; 0:r3=0; 2:r1=0; z=2;
33266 :>0:r1=0; 0:r3=1; 2:r1=1; z=1;
21872 :>0:r1=1; 0:r3=0; 2:r1=0; z=2;
14268 :>0:r1=0; 0:r3=0; 2:r1=0; z=2;
45328 :>0:r1=2; 0:r3=0; 2:r1=0; z=1;
26238 :>0:r1=0; 0:r3=1; 2:r1=0; z=2;
21295 :>0:r1=1; 0:r3=0; 2:r1=0; z=1;
130217:>0:r1=2; 0:r3=1; 2:r1=0; z=1;
93355 :>0:r1=1; 0:r3=1; 2:r1=0; z=2;
122956:>0:r1=2; 0:r3=1; 2:r1=1; z=1;
228697:>0:r1=0; 0:r3=0; 2:r1=0; z=1;
144912:>0:r1=1; 0:r3=1; 2:r1=0; z=1;
63937 :>0:r1=2; 0:r3=1; 2:r1=0; z=2;
36814 :>0:r1=0; 0:r3=1; 2:r1=0; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1) is NOT validated
Hash=1e7d8bf7b5ceaa0f4a831ec8ebe34df5
Cycle=Rfe SyncdRR Fre SyncdWW Rfe LwSyncdRW Wse
Relax safe211 No
Safe=Fre Wse LwSyncdRW ACSyncdRR BCSyncdWW
Time safe211 2.05
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe212.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe212
"LwSyncdWW Rfe SyncdRR Fre SyncdWW Rfe LwSyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | lwsync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | li r3,1 | lwsync ;
| li r3,1 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe212 Allowed
Histogram (15 states)
5 :>0:r1=0; 0:r3=0; 2:r1=1; a=2;
9 :>0:r1=1; 0:r3=0; 2:r1=0; a=2;
3 :>0:r1=1; 0:r3=0; 2:r1=1; a=1;
16 :>0:r1=1; 0:r3=1; 2:r1=1; a=2;
9615 :>0:r1=1; 0:r3=0; 2:r1=0; a=1;
4356 :>0:r1=0; 0:r3=1; 2:r1=1; a=2;
10863 :>0:r1=0; 0:r3=0; 2:r1=1; a=1;
38851 :>0:r1=1; 0:r3=1; 2:r1=1; a=1;
78048 :>0:r1=0; 0:r3=1; 2:r1=1; a=1;
59434 :>0:r1=0; 0:r3=0; 2:r1=0; a=2;
220939:>0:r1=1; 0:r3=1; 2:r1=0; a=1;
288592:>0:r1=0; 0:r3=1; 2:r1=0; a=2;
93301 :>0:r1=0; 0:r3=1; 2:r1=0; a=1;
184253:>0:r1=0; 0:r3=0; 2:r1=0; a=1;
11715 :>0:r1=1; 0:r3=1; 2:r1=0; a=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1) is NOT validated
Hash=b934830cf9b68095de1d2e77070367fe
Cycle=LwSyncdWW Rfe SyncdRR Fre SyncdWW Rfe LwSyncdRW Wse
Relax safe212 No
Safe=Fre Wse LwSyncdWW LwSyncdRW ACSyncdRR BCSyncdWW
Time safe212 2.12
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe213.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe213
"SyncdWR Fre SyncsWW Rfe SyncdRW Rfe LwSyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
li r1,1 | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | sync | lwsync | stw r1,0(r2) ;
sync | li r3,1 | li r3,1 | sync ;
li r3,2 | stw r3,0(r4) | stw r3,0(r4) | lwz r3,0(r4) ;
stw r3,0(r2) | | | ;
exists (x=2 /\ z=2 /\ 1:r1=2 /\ 2:r1=1 /\ 3:r3=0)
Generated assembler
_litmus_P0_0_: li r9,1
_litmus_P0_1_: stw r9,0(r2)
_litmus_P0_2_: sync
_litmus_P0_3_: li r11,2
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r10,2
_litmus_P3_1_: stw r10,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: lwz r8,0(r2)
Test safe213 Allowed
Histogram (31 states)
1 :>1:r1=0; 2:r1=1; 3:r3=0; x=2; z=2;
1 :>1:r1=2; 2:r1=0; 3:r3=0; x=2; z=2;
2 :>1:r1=1; 2:r1=1; 3:r3=1; x=2; z=1;
7 :>1:r1=2; 2:r1=1; 3:r3=1; x=2; z=1;
33 :>1:r1=0; 2:r1=1; 3:r3=1; x=2; z=2;
8 :>1:r1=2; 2:r1=1; 3:r3=2; x=2; z=2;
102 :>1:r1=1; 2:r1=1; 3:r3=0; x=2; z=1;
46 :>1:r1=1; 2:r1=0; 3:r3=0; x=2; z=2;
20 :>1:r1=1; 2:r1=0; 3:r3=1; x=2; z=1;
540 :>1:r1=0; 2:r1=1; 3:r3=2; x=2; z=2;
22 :>1:r1=1; 2:r1=0; 3:r3=1; x=2; z=2;
9 :>1:r1=1; 2:r1=1; 3:r3=2; x=2; z=2;
1202 :>1:r1=2; 2:r1=0; 3:r3=0; x=2; z=1;
2156 :>1:r1=2; 2:r1=0; 3:r3=1; x=2; z=2;
6684 :>1:r1=2; 2:r1=1; 3:r3=2; x=2; z=1;
1153 :>1:r1=0; 2:r1=0; 3:r3=0; x=2; z=2;
22173 :>1:r1=1; 2:r1=0; 3:r3=0; x=2; z=1;
3653 :>1:r1=1; 2:r1=1; 3:r3=2; x=2; z=1;
15804 :>1:r1=0; 2:r1=0; 3:r3=1; x=2; z=2;
156603:>1:r1=0; 2:r1=0; 3:r3=0; x=2; z=1;
126754:>1:r1=0; 2:r1=0; 3:r3=2; x=2; z=2;
53522 :>1:r1=0; 2:r1=1; 3:r3=0; x=2; z=1;
149376:>1:r1=2; 2:r1=0; 3:r3=2; x=2; z=1;
14767 :>1:r1=0; 2:r1=0; 3:r3=2; x=2; z=1;
72160 :>1:r1=0; 2:r1=0; 3:r3=1; x=2; z=1;
100203:>1:r1=0; 2:r1=1; 3:r3=1; x=2; z=1;
93796 :>1:r1=1; 2:r1=0; 3:r3=2; x=2; z=2;
60474 :>1:r1=1; 2:r1=0; 3:r3=2; x=2; z=1;
48358 :>1:r1=0; 2:r1=1; 3:r3=2; x=2; z=1;
13620 :>1:r1=2; 2:r1=0; 3:r3=1; x=2; z=1;
56751 :>1:r1=2; 2:r1=0; 3:r3=2; x=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 1:r1=2 /\ 2:r1=1 /\ 3:r3=0) is NOT validated
Hash=bcdd4747ab8b3e1edeb3b392a7fca0e1
Cycle=SyncdWR Fre SyncsWW Rfe SyncdRW Rfe LwSyncdRW Wse
Relax safe213 No
Safe=Fre Wse SyncdWR LwSyncdRW BCSyncsWW BCSyncdRW
Time safe213 2.46
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe214.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe214
"SyncdWW Rfe SyncsRW Rfe SyncdRW Rfe LwSyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | sync | lwsync | stw r1,0(r2) ;
li r3,2 | li r3,1 | li r3,1 | sync ;
stw r3,0(r2) | stw r3,0(r4) | stw r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe214 Allowed
Histogram (30 states)
13 :>0:r1=0; 1:r1=1; 2:r1=1; x=1; z=1;
35 :>0:r1=0; 1:r1=0; 2:r1=1; x=2; z=2;
8 :>0:r1=0; 1:r1=2; 2:r1=1; x=2; z=1;
8 :>0:r1=1; 1:r1=0; 2:r1=1; x=2; z=2;
102 :>0:r1=1; 1:r1=2; 2:r1=0; x=2; z=2;
329 :>0:r1=1; 1:r1=1; 2:r1=1; x=2; z=1;
45 :>0:r1=0; 1:r1=1; 2:r1=1; x=2; z=1;
99 :>0:r1=1; 1:r1=1; 2:r1=0; x=2; z=2;
4051 :>0:r1=1; 1:r1=2; 2:r1=0; x=2; z=1;
417 :>0:r1=0; 1:r1=2; 2:r1=0; x=2; z=2;
808 :>0:r1=0; 1:r1=1; 2:r1=0; x=2; z=2;
42 :>0:r1=0; 1:r1=2; 2:r1=1; x=1; z=2;
2469 :>0:r1=0; 1:r1=1; 2:r1=0; x=1; z=2;
19090 :>0:r1=1; 1:r1=0; 2:r1=1; x=2; z=1;
2788 :>0:r1=1; 1:r1=0; 2:r1=0; x=2; z=2;
11757 :>0:r1=0; 1:r1=2; 2:r1=1; x=1; z=1;
80615 :>0:r1=0; 1:r1=0; 2:r1=1; x=2; z=1;
5895 :>0:r1=0; 1:r1=0; 2:r1=1; x=1; z=2;
27420 :>0:r1=1; 1:r1=0; 2:r1=0; x=2; z=1;
45184 :>0:r1=0; 1:r1=2; 2:r1=0; x=2; z=1;
59160 :>0:r1=0; 1:r1=1; 2:r1=0; x=2; z=1;
49522 :>0:r1=1; 1:r1=1; 2:r1=0; x=2; z=1;
78791 :>0:r1=0; 1:r1=0; 2:r1=0; x=2; z=1;
121726:>0:r1=0; 1:r1=2; 2:r1=0; x=1; z=2;
170650:>0:r1=0; 1:r1=0; 2:r1=0; x=1; z=2;
136848:>0:r1=0; 1:r1=2; 2:r1=0; x=1; z=1;
37622 :>0:r1=0; 1:r1=0; 2:r1=0; x=1; z=1;
27848 :>0:r1=0; 1:r1=1; 2:r1=0; x=1; z=1;
30668 :>0:r1=0; 1:r1=0; 2:r1=0; x=2; z=2;
85990 :>0:r1=0; 1:r1=0; 2:r1=1; x=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1) is NOT validated
Hash=061906f64def837addb2c6abff10f790
Cycle=SyncdWW Rfe SyncsRW Rfe SyncdRW Rfe LwSyncdRW Wse
Relax safe214 No
Safe=Wse LwSyncdRW BCSyncsRW BCSyncdWW BCSyncdRW
Time safe214 2.60
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe215.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe215
"SyncdWW Rfe SyncdRW Rfe LwSyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | lwsync | stw r1,0(r2) ;
li r3,1 | li r3,1 | sync ;
stw r3,0(r4) | stw r3,0(r4) | li r3,1 ;
| | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 1:r1=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stw r8,0(r2)
_litmus_P1_0_: lwz r10,0(r9)
_litmus_P1_1_: lwsync
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stw r8,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe215 Allowed
Histogram (7 states)
560 :>0:r1=1; 1:r1=0; z=2;
286 :>0:r1=1; 1:r1=1; z=1;
2187 :>0:r1=0; 1:r1=1; z=2;
111360:>0:r1=1; 1:r1=0; z=1;
324598:>0:r1=0; 1:r1=0; z=2;
175132:>0:r1=0; 1:r1=1; z=1;
385877:>0:r1=0; 1:r1=0; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 1:r1=1) is NOT validated
Hash=fcd040c8731703fc13f815c7504ac333
Cycle=SyncdWW Rfe SyncdRW Rfe LwSyncdRW Wse
Relax safe215 No
Safe=Wse LwSyncdRW BCSyncdWW BCSyncdRW
Time safe215 1.64
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe216.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe216
"SyncdWR Fre SyncdWW Rfe SyncdRW Rfe LwSyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
li r1,1 | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | sync | lwsync | stw r1,0(r2) ;
sync | li r3,1 | li r3,1 | sync ;
li r3,1 | stw r3,0(r4) | stw r3,0(r4) | lwz r3,0(r4) ;
stw r3,0(r4) | | | ;
exists (a=2 /\ 1:r1=1 /\ 2:r1=1 /\ 3:r3=0)
Generated assembler
_litmus_P0_0_: li r11,1
_litmus_P0_1_: stw r11,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r10,1
_litmus_P0_4_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r10,2
_litmus_P3_1_: stw r10,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: lwz r8,0(r2)
Test safe216 Allowed
Histogram (15 states)
3 :>1:r1=1; 2:r1=0; 3:r3=0; a=2;
18 :>1:r1=1; 2:r1=1; 3:r3=0; a=1;
40 :>1:r1=1; 2:r1=1; 3:r3=1; a=2;
207 :>1:r1=1; 2:r1=1; 3:r3=1; a=1;
804 :>1:r1=1; 2:r1=0; 3:r3=0; a=1;
72 :>1:r1=0; 2:r1=1; 3:r3=0; a=2;
2827 :>1:r1=0; 2:r1=1; 3:r3=1; a=2;
22163 :>1:r1=0; 2:r1=1; 3:r3=0; a=1;
113277:>1:r1=0; 2:r1=1; 3:r3=1; a=1;
189378:>1:r1=0; 2:r1=0; 3:r3=0; a=1;
272928:>1:r1=0; 2:r1=0; 3:r3=1; a=2;
199397:>1:r1=0; 2:r1=0; 3:r3=1; a=1;
99206 :>1:r1=1; 2:r1=0; 3:r3=1; a=1;
81701 :>1:r1=1; 2:r1=0; 3:r3=1; a=2;
17979 :>1:r1=0; 2:r1=0; 3:r3=0; a=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 1:r1=1 /\ 2:r1=1 /\ 3:r3=0) is NOT validated
Hash=ef71a80632757465230b7e71938be5ea
Cycle=SyncdWR Fre SyncdWW Rfe SyncdRW Rfe LwSyncdRW Wse
Relax safe216 No
Safe=Fre Wse SyncdWR LwSyncdRW BCSyncdWW BCSyncdRW
Time safe216 2.04
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe217.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe217
"SyncdWW Rfe SyncdRW Rfe SyncdRW Rfe LwSyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | sync | lwsync | stw r1,0(r2) ;
li r3,1 | li r3,1 | li r3,1 | sync ;
stw r3,0(r4) | stw r3,0(r4) | stw r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe217 Allowed
Histogram (15 states)
4 :>0:r1=0; 1:r1=1; 2:r1=1; a=2;
4 :>0:r1=1; 1:r1=0; 2:r1=1; a=2;
2 :>0:r1=1; 1:r1=1; 2:r1=0; a=2;
6 :>0:r1=1; 1:r1=1; 2:r1=1; a=1;
2047 :>0:r1=1; 1:r1=1; 2:r1=0; a=1;
6133 :>0:r1=0; 1:r1=0; 2:r1=1; a=2;
2959 :>0:r1=0; 1:r1=1; 2:r1=1; a=1;
49971 :>0:r1=0; 1:r1=1; 2:r1=0; a=2;
21477 :>0:r1=1; 1:r1=0; 2:r1=1; a=1;
2322 :>0:r1=1; 1:r1=0; 2:r1=0; a=2;
189740:>0:r1=0; 1:r1=0; 2:r1=1; a=1;
237102:>0:r1=0; 1:r1=0; 2:r1=0; a=1;
98010 :>0:r1=1; 1:r1=0; 2:r1=0; a=1;
136227:>0:r1=0; 1:r1=1; 2:r1=0; a=1;
253996:>0:r1=0; 1:r1=0; 2:r1=0; a=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=1) is NOT validated
Hash=6135b155e2e77bdd647d81c16ab79ab8
Cycle=SyncdWW Rfe SyncdRW Rfe SyncdRW Rfe LwSyncdRW Wse
Relax safe217 No
Safe=Wse LwSyncdRW BCSyncdWW BCSyncdRW
Time safe217 2.18
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe218.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe218
"Rfe SyncdRW Wse Rfe SyncdRW Wse"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
li r3,1 | | li r3,1 | ;
stw r3,0(r4) | | stw r3,0(r4) | ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: li r9,2
_litmus_P1_1_: stw r9,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe218 Allowed
Histogram (27 states)
10 :>0:r1=0; 2:r1=1; x=1; y=2;
21 :>0:r1=1; 2:r1=0; x=2; y=1;
117 :>0:r1=2; 2:r1=1; x=2; y=1;
141 :>0:r1=2; 2:r1=2; x=2; y=1;
25 :>0:r1=2; 2:r1=0; x=2; y=2;
156 :>0:r1=0; 2:r1=1; x=2; y=2;
169 :>0:r1=1; 2:r1=0; x=2; y=2;
24 :>0:r1=0; 2:r1=2; x=2; y=2;
12938 :>0:r1=2; 2:r1=1; x=1; y=1;
5187 :>0:r1=2; 2:r1=0; x=2; y=1;
1367 :>0:r1=2; 2:r1=2; x=1; y=2;
919 :>0:r1=1; 2:r1=2; x=1; y=2;
2162 :>0:r1=0; 2:r1=0; x=2; y=2;
27089 :>0:r1=0; 2:r1=1; x=1; y=1;
19797 :>0:r1=0; 2:r1=0; x=2; y=1;
107225:>0:r1=1; 2:r1=0; x=1; y=2;
57083 :>0:r1=1; 2:r1=0; x=1; y=1;
79963 :>0:r1=2; 2:r1=0; x=1; y=2;
74158 :>0:r1=0; 2:r1=2; x=1; y=1;
24111 :>0:r1=0; 2:r1=0; x=1; y=2;
89581 :>0:r1=0; 2:r1=1; x=2; y=1;
28619 :>0:r1=0; 2:r1=2; x=1; y=2;
10748 :>0:r1=0; 2:r1=0; x=1; y=1;
212410:>0:r1=2; 2:r1=2; x=1; y=1;
90278 :>0:r1=2; 2:r1=0; x=1; y=1;
103825:>0:r1=0; 2:r1=2; x=2; y=1;
51877 :>0:r1=1; 2:r1=2; x=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 2:r1=2) is NOT validated
Hash=c0bbd742ae8d7b1814d567c2ea1f747c
Cycle=Rfe SyncdRW Wse Rfe SyncdRW Wse
Relax safe218 No
Safe=Wse ACSyncdRW
Time safe218 1.93
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe219.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe219
"LwSyncdWW Rfe SyncdRW Wse Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
li r3,1 | | li r3,1 | lwsync ;
stw r3,0(r4) | | stw r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: li r9,2
_litmus_P1_1_: stw r9,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe219 Allowed
Histogram (21 states)
1 :>0:r1=1; 2:r1=1; y=2; z=1;
2 :>0:r1=1; 2:r1=2; y=2; z=1;
4 :>0:r1=1; 2:r1=0; y=2; z=2;
4 :>0:r1=1; 2:r1=2; y=1; z=2;
152 :>0:r1=0; 2:r1=1; y=1; z=2;
206 :>0:r1=0; 2:r1=2; y=2; z=2;
649 :>0:r1=1; 2:r1=0; y=2; z=1;
2203 :>0:r1=0; 2:r1=2; y=1; z=2;
14000 :>0:r1=0; 2:r1=0; y=2; z=2;
27297 :>0:r1=1; 2:r1=1; y=1; z=1;
56479 :>0:r1=0; 2:r1=0; y=1; z=1;
107181:>0:r1=0; 2:r1=1; y=1; z=1;
17542 :>0:r1=0; 2:r1=0; y=2; z=1;
59479 :>0:r1=0; 2:r1=2; y=2; z=1;
56048 :>0:r1=1; 2:r1=0; y=1; z=1;
222811:>0:r1=0; 2:r1=2; y=1; z=1;
190782:>0:r1=0; 2:r1=0; y=1; z=2;
69496 :>0:r1=0; 2:r1=1; y=2; z=1;
173901:>0:r1=1; 2:r1=2; y=1; z=1;
1027 :>0:r1=1; 2:r1=0; y=1; z=2;
736 :>0:r1=0; 2:r1=1; y=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 2:r1=2) is NOT validated
Hash=5ff80d1e174af861097b08525b4e77f4
Cycle=LwSyncdWW Rfe SyncdRW Wse Rfe SyncdRW Wse
Relax safe219 No
Safe=Wse LwSyncdWW ACSyncdRW
Time safe219 2.07
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe220.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe220
"SyncdWW Rfe SyncsRW Rfe DpdW Wsi Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r5=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | xor r3,r1,r1 | sync | stw r1,0(r2) ;
li r3,2 | li r4,1 | li r3,1 | sync ;
stw r3,0(r2) | stwx r4,r3,r5 | stw r3,0(r4) | li r3,1 ;
| li r6,2 | | stw r3,0(r4) ;
| stw r6,0(r5) | | ;
exists (x=2 /\ y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r6,0(r9)
_litmus_P1_1_: xor r10,r6,r6
_litmus_P1_2_: li r11,1
_litmus_P1_3_: stwx r11,r10,r2
_litmus_P1_4_: li r7,2
_litmus_P1_5_: stw r7,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe220 Allowed
Histogram (31 states)
7 :>0:r1=0; 1:r1=2; 2:r1=2; x=2; y=2; z=1;
1 :>0:r1=0; 1:r1=2; 2:r1=1; x=1; y=2; z=1;
5 :>0:r1=1; 1:r1=0; 2:r1=2; x=2; y=2; z=2;
17 :>0:r1=0; 1:r1=1; 2:r1=2; x=1; y=2; z=1;
60 :>0:r1=1; 1:r1=2; 2:r1=0; x=2; y=2; z=2;
52 :>0:r1=1; 1:r1=1; 2:r1=0; x=2; y=2; z=2;
26 :>0:r1=0; 1:r1=0; 2:r1=2; x=2; y=2; z=2;
274 :>0:r1=0; 1:r1=1; 2:r1=0; x=2; y=2; z=2;
315 :>0:r1=0; 1:r1=2; 2:r1=0; x=2; y=2; z=2;
514 :>0:r1=0; 1:r1=1; 2:r1=2; x=2; y=2; z=1;
1766 :>0:r1=1; 1:r1=0; 2:r1=0; x=2; y=2; z=2;
3356 :>0:r1=1; 1:r1=2; 2:r1=0; x=2; y=2; z=1;
178 :>0:r1=0; 1:r1=2; 2:r1=2; x=1; y=2; z=2;
3912 :>0:r1=1; 1:r1=1; 2:r1=2; x=2; y=2; z=1;
18146 :>0:r1=0; 1:r1=0; 2:r1=2; x=1; y=2; z=2;
79680 :>0:r1=1; 1:r1=1; 2:r1=0; x=2; y=2; z=1;
28033 :>0:r1=0; 1:r1=2; 2:r1=0; x=2; y=2; z=1;
31430 :>0:r1=1; 1:r1=0; 2:r1=2; x=2; y=2; z=1;
16527 :>0:r1=1; 1:r1=0; 2:r1=0; x=2; y=2; z=1;
948 :>0:r1=0; 1:r1=1; 2:r1=0; x=1; y=2; z=2;
79418 :>0:r1=0; 1:r1=2; 2:r1=2; x=1; y=2; z=1;
108048:>0:r1=0; 1:r1=0; 2:r1=2; x=1; y=2; z=1;
154207:>0:r1=0; 1:r1=0; 2:r1=2; x=2; y=2; z=1;
25846 :>0:r1=0; 1:r1=0; 2:r1=0; x=1; y=2; z=1;
38415 :>0:r1=0; 1:r1=0; 2:r1=0; x=2; y=2; z=1;
9837 :>0:r1=0; 1:r1=1; 2:r1=0; x=1; y=2; z=1;
114958:>0:r1=0; 1:r1=2; 2:r1=0; x=1; y=2; z=1;
157847:>0:r1=0; 1:r1=0; 2:r1=0; x=1; y=2; z=2;
21531 :>0:r1=0; 1:r1=1; 2:r1=0; x=2; y=2; z=1;
58421 :>0:r1=0; 1:r1=0; 2:r1=0; x=2; y=2; z=2;
46225 :>0:r1=0; 1:r1=2; 2:r1=0; x=1; y=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=2) is NOT validated
Hash=6a6972e69903a89b33991c438bcd2538
Cycle=SyncdWW Rfe SyncsRW Rfe DpdW Wsi Rfe SyncdRW Wse
Relax safe220 No
Safe=Wsi Wse DpdW ACSyncdRW BCSyncsRW BCSyncdWW
Time safe220 2.88
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe221.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe221
"SyncdWW Rfe DpdW Wsi Rfe SyncdRW Wse"
{0:r2=x; 0:r5=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | sync | stw r1,0(r2) ;
li r4,1 | li r3,1 | sync ;
stwx r4,r3,r5 | stw r3,0(r4) | li r3,1 ;
li r6,2 | | stw r3,0(r4) ;
stw r6,0(r5) | | ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2)
Generated assembler
_litmus_P0_0_: lwz r6,0(r9)
_litmus_P0_1_: xor r10,r6,r6
_litmus_P0_2_: li r11,1
_litmus_P0_3_: stwx r11,r10,r2
_litmus_P0_4_: li r7,2
_litmus_P0_5_: stw r7,0(r2)
_litmus_P1_0_: lwz r10,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stw r8,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe221 Allowed
Histogram (8 states)
158 :>0:r1=1; 1:r1=0; y=2; z=2;
639 :>0:r1=0; 1:r1=2; y=2; z=2;
111 :>0:r1=0; 1:r1=1; y=2; z=1;
1584 :>0:r1=1; 1:r1=2; y=2; z=1;
154441:>0:r1=0; 1:r1=0; y=2; z=2;
169652:>0:r1=1; 1:r1=0; y=2; z=1;
330627:>0:r1=0; 1:r1=2; y=2; z=1;
342788:>0:r1=0; 1:r1=0; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2) is NOT validated
Hash=dc14e018ec62f18457a24d7baa2ca91d
Cycle=SyncdWW Rfe DpdW Wsi Rfe SyncdRW Wse
Relax safe221 No
Safe=Wsi Wse DpdW ACSyncdRW BCSyncdWW
Time safe221 1.76
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe222.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe222
"SyncdWW Rfe SyncdRW Rfe DpdW Wsi Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r5=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | xor r3,r1,r1 | sync | stw r1,0(r2) ;
li r3,1 | li r4,1 | li r3,1 | sync ;
stw r3,0(r4) | stwx r4,r3,r5 | stw r3,0(r4) | li r3,1 ;
| li r6,2 | | stw r3,0(r4) ;
| stw r6,0(r5) | | ;
exists (a=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r6,0(r9)
_litmus_P1_1_: xor r10,r6,r6
_litmus_P1_2_: li r11,1
_litmus_P1_3_: stwx r11,r10,r2
_litmus_P1_4_: li r7,2
_litmus_P1_5_: stw r7,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe222 Allowed
Histogram (17 states)
1 :>0:r1=1; 1:r1=1; 2:r1=2; a=1; z=2;
1 :>0:r1=1; 1:r1=0; 2:r1=1; a=1; z=2;
3 :>0:r1=1; 1:r1=0; 2:r1=2; a=2; z=2;
2 :>0:r1=0; 1:r1=0; 2:r1=1; a=2; z=2;
13 :>0:r1=0; 1:r1=1; 2:r1=2; a=2; z=2;
14 :>0:r1=0; 1:r1=0; 2:r1=1; a=1; z=2;
1727 :>0:r1=1; 1:r1=0; 2:r1=0; a=2; z=2;
1840 :>0:r1=1; 1:r1=1; 2:r1=0; a=1; z=2;
34288 :>0:r1=1; 1:r1=0; 2:r1=2; a=1; z=2;
9204 :>0:r1=0; 1:r1=1; 2:r1=2; a=1; z=2;
9088 :>0:r1=0; 1:r1=0; 2:r1=2; a=2; z=2;
47020 :>0:r1=0; 1:r1=1; 2:r1=0; a=2; z=2;
79285 :>0:r1=1; 1:r1=0; 2:r1=0; a=1; z=2;
205457:>0:r1=0; 1:r1=0; 2:r1=0; a=2; z=2;
186538:>0:r1=0; 1:r1=0; 2:r1=0; a=1; z=2;
162975:>0:r1=0; 1:r1=1; 2:r1=0; a=1; z=2;
262544:>0:r1=0; 1:r1=0; 2:r1=2; a=1; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2) is NOT validated
Hash=0ccb1e944a16e2fb08c494b8e37dae96
Cycle=SyncdWW Rfe SyncdRW Rfe DpdW Wsi Rfe SyncdRW Wse
Relax safe222 No
Safe=Wsi Wse DpdW ACSyncdRW BCSyncdWW BCSyncdRW
Time safe222 2.37
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe223.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe223
"SyncdWW Rfe DpdR Fre Rfe SyncdRW Wse"
{0:r2=x; 0:r5=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwzx r4,r3,r5 | | li r3,1 | sync ;
| | stw r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 0:r4=0 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r6,0(r9)
_litmus_P0_1_: xor r11,r6,r6
_litmus_P0_2_: lwzx r7,r11,r2
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe223 Allowed
Histogram (15 states)
1 :>0:r1=1; 0:r4=0; 2:r1=0; z=2;
8 :>0:r1=1; 0:r4=0; 2:r1=1; z=1;
62 :>0:r1=1; 0:r4=1; 2:r1=1; z=2;
776 :>0:r1=0; 0:r4=0; 2:r1=1; z=2;
14530 :>0:r1=0; 0:r4=1; 2:r1=1; z=2;
2788 :>0:r1=1; 0:r4=0; 2:r1=0; z=1;
9259 :>0:r1=0; 0:r4=0; 2:r1=0; z=2;
35500 :>0:r1=0; 0:r4=1; 2:r1=0; z=1;
136802:>0:r1=0; 0:r4=0; 2:r1=1; z=1;
225884:>0:r1=0; 0:r4=1; 2:r1=0; z=2;
229089:>0:r1=0; 0:r4=1; 2:r1=1; z=1;
149895:>0:r1=1; 0:r4=1; 2:r1=1; z=1;
118290:>0:r1=1; 0:r4=1; 2:r1=0; z=1;
2203 :>0:r1=1; 0:r4=1; 2:r1=0; z=2;
74913 :>0:r1=0; 0:r4=0; 2:r1=0; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 0:r4=0 /\ 2:r1=1) is NOT validated
Hash=02e8a2e1f837cde9f74c29b8a9f2c8af
Cycle=SyncdWW Rfe DpdR Fre Rfe SyncdRW Wse
Relax safe223 No
Safe=Fre Wse DpdR ACSyncdRW BCSyncdWW
Time safe223 1.91
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe224.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe224
"SyncdWW Rfe DpsR Fre Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwzx r4,r3,r2 | | li r3,1 | sync ;
| | stw r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r4=1 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r7,0(r2)
_litmus_P0_1_: xor r11,r7,r7
_litmus_P0_2_: lwzx r9,r11,r2
_litmus_P1_0_: li r9,2
_litmus_P1_1_: stw r9,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe224 Allowed
Histogram (49 states)
3 :>0:r1=0; 0:r4=1; 2:r1=0; x=2; y=1;
6 :>0:r1=0; 0:r4=2; 2:r1=1; x=2; y=1;
3 :>0:r1=1; 0:r4=1; 2:r1=0; x=2; y=2;
1 :>0:r1=0; 0:r4=2; 2:r1=0; x=2; y=2;
1 :>0:r1=0; 0:r4=2; 2:r1=2; x=1; y=2;
16 :>0:r1=2; 0:r4=1; 2:r1=0; x=1; y=1;
3 :>0:r1=1; 0:r4=2; 2:r1=0; x=2; y=1;
31 :>0:r1=1; 0:r4=2; 2:r1=2; x=2; y=1;
7 :>0:r1=0; 0:r4=1; 2:r1=1; x=2; y=1;
16 :>0:r1=0; 0:r4=2; 2:r1=2; x=2; y=1;
7 :>0:r1=0; 0:r4=1; 2:r1=0; x=1; y=2;
30 :>0:r1=0; 0:r4=1; 2:r1=2; x=1; y=1;
7 :>0:r1=2; 0:r4=2; 2:r1=0; x=2; y=2;
22 :>0:r1=0; 0:r4=1; 2:r1=1; x=1; y=1;
10 :>0:r1=2; 0:r4=1; 2:r1=0; x=1; y=2;
16 :>0:r1=0; 0:r4=2; 2:r1=0; x=1; y=2;
44 :>0:r1=2; 0:r4=1; 2:r1=1; x=1; y=1;
132 :>0:r1=2; 0:r4=1; 2:r1=2; x=1; y=1;
47 :>0:r1=1; 0:r4=2; 2:r1=1; x=2; y=1;
10 :>0:r1=0; 0:r4=2; 2:r1=1; x=1; y=1;
79 :>0:r1=0; 0:r4=2; 2:r1=2; x=1; y=1;
24 :>0:r1=0; 0:r4=2; 2:r1=0; x=2; y=1;
1648 :>0:r1=1; 0:r4=1; 2:r1=2; x=2; y=1;
34 :>0:r1=1; 0:r4=1; 2:r1=2; x=1; y=2;
27 :>0:r1=0; 0:r4=2; 2:r1=0; x=1; y=1;
2398 :>0:r1=0; 0:r4=0; 2:r1=0; x=2; y=2;
481 :>0:r1=0; 0:r4=0; 2:r1=2; x=1; y=2;
5303 :>0:r1=2; 0:r4=2; 2:r1=1; x=1; y=1;
26 :>0:r1=0; 0:r4=1; 2:r1=0; x=1; y=1;
7567 :>0:r1=1; 0:r4=1; 2:r1=0; x=1; y=2;
9621 :>0:r1=2; 0:r4=2; 2:r1=1; x=2; y=1;
7432 :>0:r1=0; 0:r4=0; 2:r1=2; x=2; y=1;
21057 :>0:r1=0; 0:r4=0; 2:r1=1; x=1; y=1;
106679:>0:r1=2; 0:r4=2; 2:r1=2; x=1; y=2;
38346 :>0:r1=0; 0:r4=0; 2:r1=0; x=2; y=1;
32087 :>0:r1=1; 0:r4=1; 2:r1=1; x=1; y=1;
18526 :>0:r1=1; 0:r4=1; 2:r1=2; x=1; y=1;
204218:>0:r1=0; 0:r4=0; 2:r1=0; x=1; y=2;
31865 :>0:r1=1; 0:r4=1; 2:r1=0; x=1; y=1;
24772 :>0:r1=1; 0:r4=1; 2:r1=0; x=2; y=1;
15017 :>0:r1=1; 0:r4=1; 2:r1=1; x=2; y=1;
27204 :>0:r1=2; 0:r4=2; 2:r1=0; x=2; y=1;
63159 :>0:r1=2; 0:r4=2; 2:r1=0; x=1; y=2;
16823 :>0:r1=2; 0:r4=2; 2:r1=0; x=1; y=1;
98095 :>0:r1=0; 0:r4=0; 2:r1=2; x=1; y=1;
9284 :>0:r1=2; 0:r4=2; 2:r1=2; x=2; y=1;
157146:>0:r1=2; 0:r4=2; 2:r1=2; x=1; y=1;
94043 :>0:r1=0; 0:r4=0; 2:r1=0; x=1; y=1;
6627 :>0:r1=0; 0:r4=0; 2:r1=1; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r4=1 /\ 2:r1=2) is NOT validated
Hash=c370440de83962c1c370a1890f1db2d2
Cycle=SyncdWW Rfe DpsR Fre Rfe SyncdRW Wse
Relax safe224 No
Safe=Fre Wse DpsR ACSyncdRW BCSyncdWW
Time safe224 2.77
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe225.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe225
"SyncdWR Fre Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=x; 2:r2=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,2 | li r1,1 ;
sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | sync | ;
stw r3,0(r4) | lwz r3,0(r4) | ;
exists (y=2 /\ 0:r1=1 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stw r8,0(r2)
_litmus_P1_0_: li r8,2
_litmus_P1_1_: stw r8,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: lwz r10,0(r2)
_litmus_P2_0_: li r9,1
_litmus_P2_1_: stw r9,0(r2)
Test safe225 Allowed
Histogram (7 states)
186 :>0:r1=0; 1:r3=0; y=2;
20655 :>0:r1=1; 1:r3=1; y=2;
45632 :>0:r1=1; 1:r3=0; y=1;
93303 :>0:r1=0; 1:r3=0; y=1;
128655:>0:r1=0; 1:r3=1; y=1;
278794:>0:r1=0; 1:r3=1; y=2;
432775:>0:r1=1; 1:r3=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 1:r3=0) is NOT validated
Hash=66262ac3a0f8bbf8e10ef5488f99a590
Cycle=SyncdWR Fre Rfe SyncdRW Wse
Relax safe225 No
Safe=Fre Wse SyncdWR ACSyncdRW
Time safe225 1.42
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe226.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe226
"SyncdWR Fre SyncdWR Fre Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
li r1,1 | li r1,1 | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | stw r1,0(r2) | sync | stw r1,0(r2) ;
sync | | li r3,1 | sync ;
lwz r3,0(r4) | | stw r3,0(r4) | lwz r3,0(r4) ;
exists (z=2 /\ 0:r3=0 /\ 2:r1=1 /\ 3:r3=0)
Generated assembler
_litmus_P0_0_: li r10,1
_litmus_P0_1_: stw r10,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r10,2
_litmus_P3_1_: stw r10,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: lwz r8,0(r2)
Test safe226 Allowed
Histogram (15 states)
3 :>0:r3=0; 2:r1=0; 3:r3=0; z=2;
250 :>0:r3=0; 2:r1=1; 3:r3=1; z=2;
143 :>0:r3=1; 2:r1=1; 3:r3=0; z=2;
121 :>0:r3=0; 2:r1=1; 3:r3=0; z=1;
2965 :>0:r3=0; 2:r1=0; 3:r3=0; z=1;
43471 :>0:r3=1; 2:r1=1; 3:r3=1; z=2;
36972 :>0:r3=0; 2:r1=1; 3:r3=1; z=1;
145460:>0:r3=1; 2:r1=0; 3:r3=0; z=1;
50558 :>0:r3=0; 2:r1=0; 3:r3=1; z=1;
12502 :>0:r3=0; 2:r1=0; 3:r3=1; z=2;
230070:>0:r3=1; 2:r1=0; 3:r3=1; z=2;
25942 :>0:r3=1; 2:r1=0; 3:r3=1; z=1;
156589:>0:r3=1; 2:r1=1; 3:r3=0; z=1;
7950 :>0:r3=1; 2:r1=0; 3:r3=0; z=2;
287004:>0:r3=1; 2:r1=1; 3:r3=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r3=0 /\ 2:r1=1 /\ 3:r3=0) is NOT validated
Hash=d3e40b5cd53b1d117b5fc3437b8de93c
Cycle=SyncdWR Fre SyncdWR Fre Rfe SyncdRW Wse
Relax safe226 No
Safe=Fre Wse SyncdWR ACSyncdRW
Time safe226 2.03
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe227.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe227
"SyncdWW Rfe SyncdRR Fre Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | | li r3,1 | sync ;
| | stw r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe227 Allowed
Histogram (15 states)
1 :>0:r1=1; 0:r3=0; 2:r1=0; z=2;
11 :>0:r1=1; 0:r3=0; 2:r1=1; z=1;
834 :>0:r1=1; 0:r3=0; 2:r1=0; z=1;
15 :>0:r1=1; 0:r3=1; 2:r1=1; z=2;
74 :>0:r1=0; 0:r3=0; 2:r1=1; z=2;
11483 :>0:r1=0; 0:r3=1; 2:r1=1; z=2;
78810 :>0:r1=0; 0:r3=0; 2:r1=1; z=1;
8290 :>0:r1=0; 0:r3=0; 2:r1=0; z=2;
64682 :>0:r1=0; 0:r3=1; 2:r1=0; z=1;
210327:>0:r1=0; 0:r3=1; 2:r1=0; z=2;
107937:>0:r1=0; 0:r3=0; 2:r1=0; z=1;
121752:>0:r1=1; 0:r3=1; 2:r1=1; z=1;
75409 :>0:r1=1; 0:r3=1; 2:r1=0; z=1;
2069 :>0:r1=1; 0:r3=1; 2:r1=0; z=2;
318306:>0:r1=0; 0:r3=1; 2:r1=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1) is NOT validated
Hash=052bb774a6d3b8f6f3ea35c780788624
Cycle=SyncdWW Rfe SyncdRR Fre Rfe SyncdRW Wse
Relax safe227 No
Safe=Fre Wse SyncdRR ACSyncdRW BCSyncdWW
Time safe227 1.94
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe228.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe228
"SyncdWR Fre SyncsWR Fre Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y; 3:r4=x;}
P0 | P1 | P2 | P3 ;
li r1,1 | li r1,2 | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | stw r1,0(r2) | sync | stw r1,0(r2) ;
sync | | li r3,1 | sync ;
lwz r3,0(r2) | | stw r3,0(r4) | lwz r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r3=1 /\ 2:r1=2 /\ 3:r3=0)
Generated assembler
_litmus_P0_0_: li r9,1
_litmus_P0_1_: stw r9,0(r2)
_litmus_P0_2_: sync
_litmus_P0_3_: lwz r10,0(r2)
_litmus_P1_0_: li r9,2
_litmus_P1_1_: stw r9,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r10,2
_litmus_P3_1_: stw r10,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: lwz r8,0(r2)
Test safe228 Allowed
Histogram (42 states)
2 :>0:r3=1; 2:r1=0; 3:r3=0; x=2; y=2;
2 :>0:r3=1; 2:r1=1; 3:r3=1; x=2; y=2;
23 :>0:r3=1; 2:r1=0; 3:r3=0; x=1; y=2;
3 :>0:r3=2; 2:r1=2; 3:r3=1; x=2; y=1;
10 :>0:r3=2; 2:r1=0; 3:r3=0; x=2; y=2;
2 :>0:r3=2; 2:r1=1; 3:r3=2; x=2; y=2;
9 :>0:r3=2; 2:r1=1; 3:r3=1; x=2; y=1;
4 :>0:r3=2; 2:r1=0; 3:r3=1; x=2; y=1;
192 :>0:r3=1; 2:r1=2; 3:r3=2; x=1; y=2;
149 :>0:r3=2; 2:r1=2; 3:r3=2; x=2; y=2;
44 :>0:r3=2; 2:r1=1; 3:r3=2; x=2; y=1;
1682 :>0:r3=1; 2:r1=2; 3:r3=0; x=2; y=1;
676 :>0:r3=1; 2:r1=0; 3:r3=1; x=2; y=2;
2289 :>0:r3=1; 2:r1=1; 3:r3=1; x=1; y=2;
1026 :>0:r3=1; 2:r1=0; 3:r3=0; x=2; y=1;
13566 :>0:r3=1; 2:r1=1; 3:r3=0; x=2; y=1;
10835 :>0:r3=1; 2:r1=0; 3:r3=2; x=1; y=2;
11663 :>0:r3=2; 2:r1=2; 3:r3=0; x=2; y=1;
4591 :>0:r3=1; 2:r1=1; 3:r3=2; x=2; y=2;
22437 :>0:r3=1; 2:r1=1; 3:r3=0; x=1; y=1;
21797 :>0:r3=2; 2:r1=2; 3:r3=2; x=2; y=1;
22380 :>0:r3=1; 2:r1=1; 3:r3=2; x=1; y=1;
12159 :>0:r3=2; 2:r1=0; 3:r3=0; x=2; y=1;
33952 :>0:r3=1; 2:r1=2; 3:r3=2; x=1; y=1;
1007 :>0:r3=1; 2:r1=0; 3:r3=2; x=2; y=1;
8033 :>0:r3=1; 2:r1=0; 3:r3=2; x=1; y=1;
55894 :>0:r3=1; 2:r1=1; 3:r3=1; x=1; y=1;
18202 :>0:r3=1; 2:r1=2; 3:r3=1; x=2; y=1;
33881 :>0:r3=1; 2:r1=0; 3:r3=2; x=2; y=2;
140579:>0:r3=1; 2:r1=2; 3:r3=2; x=2; y=1;
10386 :>0:r3=1; 2:r1=2; 3:r3=0; x=1; y=1;
14538 :>0:r3=1; 2:r1=0; 3:r3=0; x=1; y=1;
75081 :>0:r3=1; 2:r1=2; 3:r3=1; x=1; y=1;
6745 :>0:r3=2; 2:r1=0; 3:r3=2; x=2; y=1;
3364 :>0:r3=1; 2:r1=0; 3:r3=1; x=2; y=1;
88118 :>0:r3=2; 2:r1=0; 3:r3=2; x=2; y=2;
70593 :>0:r3=1; 2:r1=1; 3:r3=2; x=2; y=1;
13858 :>0:r3=1; 2:r1=0; 3:r3=1; x=1; y=1;
145032:>0:r3=1; 2:r1=2; 3:r3=1; x=1; y=2;
94267 :>0:r3=1; 2:r1=0; 3:r3=1; x=1; y=2;
1984 :>0:r3=1; 2:r1=2; 3:r3=2; x=2; y=2;
58945 :>0:r3=1; 2:r1=1; 3:r3=1; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r3=1 /\ 2:r1=2 /\ 3:r3=0) is NOT validated
Hash=1158a67c1bbfbb12cc8938243aa69908
Cycle=SyncdWR Fre SyncsWR Fre Rfe SyncdRW Wse
Relax safe228 No
Safe=Fre Wse SyncsWR SyncdWR ACSyncdRW
Time safe228 2.68
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe229.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe229
"SyncdWW Rfe SyncsRR Fre Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r2) | | li r3,1 | sync ;
| | stw r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r9,2
_litmus_P1_1_: stw r9,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe229 Allowed
Histogram (51 states)
2 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; y=2;
47 :>0:r1=1; 0:r3=1; 2:r1=2; x=1; y=2;
114 :>0:r1=2; 0:r3=1; 2:r1=2; x=1; y=2;
90 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; y=2;
172 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; y=2;
840 :>0:r1=1; 0:r3=1; 2:r1=0; x=1; y=2;
1185 :>0:r1=0; 0:r3=1; 2:r1=0; x=1; y=2;
38 :>0:r1=0; 0:r3=2; 2:r1=2; x=1; y=2;
995 :>0:r1=0; 0:r3=1; 2:r1=2; x=2; y=1;
790 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; y=1;
1803 :>0:r1=1; 0:r3=2; 2:r1=1; x=2; y=1;
476 :>0:r1=0; 0:r3=2; 2:r1=1; x=1; y=1;
317 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; y=2;
947 :>0:r1=2; 0:r3=2; 2:r1=1; x=1; y=1;
1412 :>0:r1=2; 0:r3=1; 2:r1=0; x=1; y=2;
697 :>0:r1=1; 0:r3=1; 2:r1=2; x=2; y=1;
1360 :>0:r1=0; 0:r3=0; 2:r1=2; x=1; y=2;
6790 :>0:r1=1; 0:r3=2; 2:r1=2; x=2; y=1;
1320 :>0:r1=0; 0:r3=2; 2:r1=0; x=1; y=1;
3337 :>0:r1=2; 0:r3=2; 2:r1=0; x=1; y=1;
19030 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; y=1;
14059 :>0:r1=2; 0:r3=2; 2:r1=2; x=2; y=1;
8416 :>0:r1=2; 0:r3=2; 2:r1=1; x=2; y=1;
4054 :>0:r1=0; 0:r3=1; 2:r1=0; x=1; y=1;
18001 :>0:r1=1; 0:r3=1; 2:r1=0; x=1; y=1;
3348 :>0:r1=0; 0:r3=1; 2:r1=1; x=2; y=1;
10259 :>0:r1=0; 0:r3=1; 2:r1=1; x=1; y=1;
7983 :>0:r1=0; 0:r3=2; 2:r1=2; x=2; y=1;
392 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; y=1;
14007 :>0:r1=2; 0:r3=1; 2:r1=2; x=1; y=1;
1637 :>0:r1=1; 0:r3=1; 2:r1=1; x=2; y=1;
5098 :>0:r1=0; 0:r3=2; 2:r1=2; x=1; y=1;
12069 :>0:r1=0; 0:r3=2; 2:r1=1; x=2; y=1;
2875 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; y=1;
11597 :>0:r1=0; 0:r3=1; 2:r1=2; x=1; y=1;
18660 :>0:r1=2; 0:r3=1; 2:r1=0; x=1; y=1;
20245 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; y=1;
11008 :>0:r1=2; 0:r3=1; 2:r1=1; x=1; y=1;
7385 :>0:r1=0; 0:r3=0; 2:r1=1; x=1; y=1;
13454 :>0:r1=1; 0:r3=1; 2:r1=2; x=1; y=1;
6221 :>0:r1=0; 0:r3=0; 2:r1=2; x=2; y=1;
6923 :>0:r1=0; 0:r3=0; 2:r1=1; x=2; y=1;
58195 :>0:r1=0; 0:r3=2; 2:r1=0; x=1; y=2;
46819 :>0:r1=2; 0:r3=2; 2:r1=0; x=1; y=2;
30027 :>0:r1=1; 0:r3=1; 2:r1=1; x=1; y=1;
160790:>0:r1=2; 0:r3=2; 2:r1=2; x=1; y=1;
90942 :>0:r1=0; 0:r3=0; 2:r1=0; x=1; y=1;
85664 :>0:r1=2; 0:r3=2; 2:r1=2; x=1; y=2;
159413:>0:r1=0; 0:r3=0; 2:r1=0; x=1; y=2;
113770:>0:r1=0; 0:r3=0; 2:r1=2; x=1; y=1;
14927 :>0:r1=2; 0:r3=2; 2:r1=0; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=2) is NOT validated
Hash=b72897f5aadd8a660463b422dfe312e7
Cycle=SyncdWW Rfe SyncsRR Fre Rfe SyncdRW Wse
Relax safe229 No
Safe=Fre Wse SyncsRR ACSyncdRW BCSyncdWW
Time safe229 2.98
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe230.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe230
"SyncdWW Rfe LwSyncdRR Fre Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
lwsync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | | li r3,1 | sync ;
| | stw r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe230 Allowed
Histogram (15 states)
2 :>0:r1=1; 0:r3=0; 2:r1=0; z=2;
36 :>0:r1=1; 0:r3=1; 2:r1=1; z=2;
49 :>0:r1=1; 0:r3=0; 2:r1=1; z=1;
1163 :>0:r1=0; 0:r3=0; 2:r1=1; z=2;
4479 :>0:r1=1; 0:r3=0; 2:r1=0; z=1;
25597 :>0:r1=0; 0:r3=1; 2:r1=1; z=2;
149724:>0:r1=0; 0:r3=0; 2:r1=1; z=1;
82940 :>0:r1=1; 0:r3=1; 2:r1=0; z=1;
73233 :>0:r1=0; 0:r3=0; 2:r1=0; z=1;
39900 :>0:r1=0; 0:r3=1; 2:r1=0; z=1;
170184:>0:r1=0; 0:r3=1; 2:r1=0; z=2;
242588:>0:r1=0; 0:r3=1; 2:r1=1; z=1;
130767:>0:r1=1; 0:r3=1; 2:r1=1; z=1;
1770 :>0:r1=1; 0:r3=1; 2:r1=0; z=2;
77568 :>0:r1=0; 0:r3=0; 2:r1=0; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1) is NOT validated
Hash=16098d3f006fa3eb41feae0669590b60
Cycle=SyncdWW Rfe LwSyncdRR Fre Rfe SyncdRW Wse
Relax safe230 No
Safe=Fre Wse LwSyncdRR ACSyncdRW BCSyncdWW
Time safe230 1.87
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe231.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe231
"SyncdWW Rfe LwSyncsRR Fre Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
lwsync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r2) | | li r3,1 | sync ;
| | stw r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r9,2
_litmus_P1_1_: stw r9,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe231 Allowed
Histogram (48 states)
1 :>0:r1=2; 0:r3=1; 2:r1=2; x=1; y=2;
2 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; y=2;
3 :>0:r1=0; 0:r3=1; 2:r1=2; x=2; y=1;
27 :>0:r1=0; 0:r3=1; 2:r1=0; x=1; y=2;
8 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; y=1;
37 :>0:r1=1; 0:r3=1; 2:r1=2; x=1; y=2;
61 :>0:r1=2; 0:r3=1; 2:r1=1; x=1; y=1;
36 :>0:r1=1; 0:r3=2; 2:r1=2; x=2; y=1;
33 :>0:r1=0; 0:r3=2; 2:r1=0; x=1; y=1;
84 :>0:r1=1; 0:r3=2; 2:r1=1; x=2; y=1;
22 :>0:r1=2; 0:r3=1; 2:r1=0; x=1; y=2;
140 :>0:r1=0; 0:r3=2; 2:r1=2; x=2; y=1;
60 :>0:r1=2; 0:r3=1; 2:r1=0; x=1; y=1;
80 :>0:r1=0; 0:r3=2; 2:r1=1; x=1; y=1;
113 :>0:r1=2; 0:r3=1; 2:r1=2; x=1; y=1;
110 :>0:r1=0; 0:r3=2; 2:r1=1; x=2; y=1;
401 :>0:r1=0; 0:r3=1; 2:r1=2; x=1; y=1;
24 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; y=1;
652 :>0:r1=0; 0:r3=1; 2:r1=1; x=1; y=1;
13 :>0:r1=0; 0:r3=1; 2:r1=1; x=2; y=1;
223 :>0:r1=0; 0:r3=2; 2:r1=0; x=1; y=2;
162 :>0:r1=0; 0:r3=1; 2:r1=0; x=1; y=1;
2104 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; y=2;
254 :>0:r1=0; 0:r3=2; 2:r1=2; x=1; y=1;
115 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; y=1;
2083 :>0:r1=1; 0:r3=1; 2:r1=0; x=1; y=2;
6396 :>0:r1=0; 0:r3=0; 2:r1=2; x=2; y=1;
3382 :>0:r1=1; 0:r3=1; 2:r1=1; x=2; y=1;
1504 :>0:r1=0; 0:r3=0; 2:r1=2; x=1; y=2;
5690 :>0:r1=1; 0:r3=1; 2:r1=2; x=2; y=1;
19051 :>0:r1=2; 0:r3=2; 2:r1=2; x=2; y=1;
6306 :>0:r1=2; 0:r3=2; 2:r1=0; x=2; y=1;
15420 :>0:r1=0; 0:r3=0; 2:r1=1; x=1; y=1;
8963 :>0:r1=0; 0:r3=0; 2:r1=1; x=2; y=1;
5313 :>0:r1=2; 0:r3=2; 2:r1=1; x=2; y=1;
54495 :>0:r1=2; 0:r3=2; 2:r1=2; x=1; y=2;
19744 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; y=1;
8870 :>0:r1=2; 0:r3=2; 2:r1=0; x=1; y=1;
31137 :>0:r1=2; 0:r3=2; 2:r1=1; x=1; y=1;
112237:>0:r1=2; 0:r3=2; 2:r1=0; x=1; y=2;
29589 :>0:r1=1; 0:r3=1; 2:r1=2; x=1; y=1;
7542 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; y=1;
7545 :>0:r1=1; 0:r3=1; 2:r1=0; x=1; y=1;
176711:>0:r1=0; 0:r3=0; 2:r1=2; x=1; y=1;
209723:>0:r1=2; 0:r3=2; 2:r1=2; x=1; y=1;
117346:>0:r1=0; 0:r3=0; 2:r1=0; x=1; y=2;
70605 :>0:r1=0; 0:r3=0; 2:r1=0; x=1; y=1;
75583 :>0:r1=1; 0:r3=1; 2:r1=1; x=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=2) is NOT validated
Hash=d9deef436d1009a834b259a683fc6212
Cycle=SyncdWW Rfe LwSyncsRR Fre Rfe SyncdRW Wse
Relax safe231 No
Safe=Fre Wse LwSyncsRR ACSyncdRW BCSyncdWW
Time safe231 2.84
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe232.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe232
"LwSyncdWW Rfe SyncsRR Fre Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r2) | | li r3,1 | lwsync ;
| | stw r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r9,2
_litmus_P1_1_: stw r9,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe232 Allowed
Histogram (53 states)
393 :>0:r1=2; 0:r3=2; 2:r1=0; x=2; y=2;
59 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; y=2;
23 :>0:r1=0; 0:r3=2; 2:r1=2; x=1; y=2;
175 :>0:r1=1; 0:r3=1; 2:r1=2; x=1; y=2;
95 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; y=2;
87 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; y=2;
169 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; y=2;
299 :>0:r1=0; 0:r3=2; 2:r1=1; x=1; y=1;
1493 :>0:r1=0; 0:r3=1; 2:r1=2; x=1; y=1;
2257 :>0:r1=2; 0:r3=1; 2:r1=2; x=1; y=2;
687 :>0:r1=0; 0:r3=1; 2:r1=0; x=1; y=2;
2379 :>0:r1=1; 0:r3=1; 2:r1=2; x=2; y=1;
1800 :>0:r1=0; 0:r3=1; 2:r1=2; x=2; y=1;
290 :>0:r1=0; 0:r3=0; 2:r1=2; x=1; y=2;
1228 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; y=1;
1570 :>0:r1=0; 0:r3=2; 2:r1=2; x=1; y=1;
8394 :>0:r1=2; 0:r3=1; 2:r1=0; x=1; y=1;
2976 :>0:r1=0; 0:r3=2; 2:r1=1; x=2; y=1;
9674 :>0:r1=2; 0:r3=1; 2:r1=1; x=1; y=1;
21129 :>0:r1=2; 0:r3=1; 2:r1=0; x=1; y=2;
5653 :>0:r1=0; 0:r3=1; 2:r1=1; x=2; y=1;
3271 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; y=1;
4787 :>0:r1=2; 0:r3=2; 2:r1=0; x=1; y=1;
640 :>0:r1=0; 0:r3=2; 2:r1=0; x=1; y=1;
22334 :>0:r1=1; 0:r3=2; 2:r1=1; x=2; y=1;
3242 :>0:r1=0; 0:r3=1; 2:r1=0; x=1; y=1;
7077 :>0:r1=0; 0:r3=0; 2:r1=1; x=2; y=1;
15508 :>0:r1=1; 0:r3=1; 2:r1=0; x=1; y=1;
24199 :>0:r1=1; 0:r3=1; 2:r1=1; x=2; y=1;
26931 :>0:r1=1; 0:r3=2; 2:r1=2; x=2; y=1;
15073 :>0:r1=2; 0:r3=2; 2:r1=1; x=2; y=1;
6686 :>0:r1=0; 0:r3=2; 2:r1=2; x=2; y=1;
707 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; y=2;
3379 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; y=1;
26245 :>0:r1=1; 0:r3=1; 2:r1=0; x=1; y=2;
49952 :>0:r1=2; 0:r3=2; 2:r1=2; x=2; y=1;
64196 :>0:r1=0; 0:r3=2; 2:r1=0; x=1; y=2;
5206 :>0:r1=0; 0:r3=1; 2:r1=1; x=1; y=1;
20482 :>0:r1=1; 0:r3=1; 2:r1=2; x=1; y=1;
50456 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; y=1;
61664 :>0:r1=0; 0:r3=0; 2:r1=0; x=1; y=1;
38043 :>0:r1=2; 0:r3=1; 2:r1=2; x=1; y=1;
971 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; y=1;
58854 :>0:r1=2; 0:r3=2; 2:r1=2; x=1; y=2;
40501 :>0:r1=0; 0:r3=0; 2:r1=1; x=1; y=1;
28061 :>0:r1=1; 0:r3=1; 2:r1=1; x=1; y=1;
61639 :>0:r1=0; 0:r3=0; 2:r1=0; x=1; y=2;
92024 :>0:r1=0; 0:r3=0; 2:r1=2; x=1; y=1;
7866 :>0:r1=2; 0:r3=2; 2:r1=0; x=2; y=1;
143113:>0:r1=2; 0:r3=2; 2:r1=2; x=1; y=1;
49219 :>0:r1=2; 0:r3=2; 2:r1=0; x=1; y=2;
5705 :>0:r1=0; 0:r3=0; 2:r1=2; x=2; y=1;
1139 :>0:r1=2; 0:r3=2; 2:r1=1; x=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=2) is NOT validated
Hash=5c4a6065a16c64257bdbaa8aa09345cf
Cycle=LwSyncdWW Rfe SyncsRR Fre Rfe SyncdRW Wse
Relax safe232 No
Safe=Fre Wse LwSyncdWW ACSyncsRR ACSyncdRW
Time safe232 2.84
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe233.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe233
"Rfe SyncdRR Fre Rfe SyncdRW Wse"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | | li r3,1 | ;
| | stw r3,0(r4) | ;
exists (y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe233 Allowed
Histogram (21 states)
82 :>0:r1=1; 0:r3=0; 2:r1=0; y=1;
90 :>0:r1=2; 0:r3=0; 2:r1=0; y=2;
49 :>0:r1=0; 0:r3=0; 2:r1=1; y=2;
432 :>0:r1=2; 0:r3=0; 2:r1=1; y=1;
5303 :>0:r1=2; 0:r3=0; 2:r1=0; y=1;
5187 :>0:r1=1; 0:r3=0; 2:r1=0; y=2;
1203 :>0:r1=2; 0:r3=1; 2:r1=1; y=2;
73838 :>0:r1=2; 0:r3=1; 2:r1=0; y=2;
757 :>0:r1=1; 0:r3=1; 2:r1=1; y=2;
20025 :>0:r1=0; 0:r3=0; 2:r1=0; y=2;
62138 :>0:r1=1; 0:r3=1; 2:r1=0; y=1;
94277 :>0:r1=0; 0:r3=0; 2:r1=0; y=1;
28663 :>0:r1=0; 0:r3=1; 2:r1=0; y=2;
283377:>0:r1=2; 0:r3=1; 2:r1=1; y=1;
16321 :>0:r1=0; 0:r3=1; 2:r1=1; y=2;
10664 :>0:r1=0; 0:r3=1; 2:r1=0; y=1;
69632 :>0:r1=2; 0:r3=1; 2:r1=0; y=1;
58168 :>0:r1=0; 0:r3=1; 2:r1=1; y=1;
58985 :>0:r1=1; 0:r3=1; 2:r1=0; y=2;
146315:>0:r1=0; 0:r3=0; 2:r1=1; y=1;
64494 :>0:r1=1; 0:r3=1; 2:r1=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1) is NOT validated
Hash=27431054ced87c95442e6b61f29bb46f
Cycle=Rfe SyncdRR Fre Rfe SyncdRW Wse
Relax safe233 No
Safe=Fre Wse ACSyncdRW ACSyncdRR
Time safe233 1.81
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe234.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe234
"LwSyncdWW Rfe SyncdRR Fre Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | | li r3,1 | lwsync ;
| | stw r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe234 Allowed
Histogram (14 states)
1 :>0:r1=1; 0:r3=0; 2:r1=0; z=2;
311 :>0:r1=0; 0:r3=0; 2:r1=1; z=2;
111 :>0:r1=1; 0:r3=1; 2:r1=1; z=2;
2407 :>0:r1=1; 0:r3=0; 2:r1=0; z=1;
19077 :>0:r1=0; 0:r3=1; 2:r1=1; z=2;
38399 :>0:r1=0; 0:r3=0; 2:r1=0; z=1;
22551 :>0:r1=0; 0:r3=0; 2:r1=0; z=2;
41943 :>0:r1=0; 0:r3=1; 2:r1=0; z=1;
206266:>0:r1=0; 0:r3=1; 2:r1=0; z=2;
75116 :>0:r1=0; 0:r3=0; 2:r1=1; z=1;
229123:>0:r1=1; 0:r3=1; 2:r1=1; z=1;
94473 :>0:r1=1; 0:r3=1; 2:r1=0; z=1;
5145 :>0:r1=1; 0:r3=1; 2:r1=0; z=2;
265077:>0:r1=0; 0:r3=1; 2:r1=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1) is NOT validated
Hash=0a21d67be5373c1ce03ea57fd67c6f84
Cycle=LwSyncdWW Rfe SyncdRR Fre Rfe SyncdRW Wse
Relax safe234 No
Safe=Fre Wse LwSyncdWW ACSyncdRW ACSyncdRR
Time safe234 1.92
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe235.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe235
"SyncdWW Rfe SyncsRW Rfe DpdR Fri Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r5=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | xor r3,r1,r1 | sync | stw r1,0(r2) ;
li r3,2 | lwzx r4,r3,r5 | li r3,1 | sync ;
stw r3,0(r2) | li r6,1 | stw r3,0(r4) | li r3,1 ;
| stw r6,0(r5) | | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r4=0 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r5,0(r9)
_litmus_P1_1_: xor r10,r5,r5
_litmus_P1_2_: lwzx r6,r10,r2
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe235 Allowed
Histogram (30 states)
5 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; x=2; z=2;
26 :>0:r1=0; 1:r1=2; 1:r4=0; 2:r1=1; x=2; z=1;
9 :>0:r1=1; 1:r1=1; 1:r4=0; 2:r1=0; x=2; z=2;
100 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=1; x=1; z=1;
351 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=1; x=2; z=1;
51 :>0:r1=0; 1:r1=2; 1:r4=0; 2:r1=1; x=1; z=2;
1 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=1; x=2; z=2;
135 :>0:r1=0; 1:r1=2; 1:r4=0; 2:r1=0; x=2; z=2;
70 :>0:r1=1; 1:r1=2; 1:r4=0; 2:r1=0; x=2; z=2;
707 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=0; x=2; z=2;
237 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; x=2; z=2;
1871 :>0:r1=1; 1:r1=1; 1:r4=0; 2:r1=1; x=2; z=1;
1430 :>0:r1=1; 1:r1=2; 1:r4=0; 2:r1=0; x=2; z=1;
11339 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; x=2; z=2;
1245 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; x=1; z=2;
45836 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=1; x=2; z=1;
56603 :>0:r1=1; 1:r1=1; 1:r4=0; 2:r1=0; x=2; z=1;
21618 :>0:r1=0; 1:r1=2; 1:r4=0; 2:r1=1; x=1; z=1;
59460 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; x=2; z=1;
95532 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; x=1; z=1;
52449 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; x=2; z=1;
128175:>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; x=1; z=2;
15637 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=0; x=1; z=1;
29860 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=0; x=2; z=1;
180896:>0:r1=0; 1:r1=2; 1:r4=0; 2:r1=0; x=1; z=1;
161194:>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; x=2; z=1;
69946 :>0:r1=0; 1:r1=2; 1:r4=0; 2:r1=0; x=1; z=2;
50267 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; x=1; z=1;
12974 :>0:r1=0; 1:r1=2; 1:r4=0; 2:r1=0; x=2; z=1;
1976 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=0; x=1; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r4=0 /\ 2:r1=1) is NOT validated
Hash=3f106896581423bfc3c6ca41678eb24f
Cycle=SyncdWW Rfe SyncsRW Rfe DpdR Fri Rfe SyncdRW Wse
Relax safe235 No
Safe=Fri Wse DpdR ACSyncdRW BCSyncsRW BCSyncdWW
Time safe235 2.73
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe236.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe236
"SyncdWW Rfe DpdR Fri Rfe SyncdRW Wse"
{0:r2=x; 0:r5=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | sync | stw r1,0(r2) ;
lwzx r4,r3,r5 | li r3,1 | sync ;
li r6,1 | stw r3,0(r4) | li r3,1 ;
stw r6,0(r5) | | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 0:r4=0 /\ 1:r1=1)
Generated assembler
_litmus_P0_0_: lwz r5,0(r9)
_litmus_P0_1_: xor r10,r5,r5
_litmus_P0_2_: lwzx r6,r10,r2
_litmus_P0_3_: li r11,1
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r10,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stw r8,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe236 Allowed
Histogram (7 states)
411 :>0:r1=1; 0:r4=0; 1:r1=0; z=2;
5148 :>0:r1=0; 0:r4=0; 1:r1=1; z=2;
1524 :>0:r1=1; 0:r4=0; 1:r1=1; z=1;
147420:>0:r1=1; 0:r4=0; 1:r1=0; z=1;
290683:>0:r1=0; 0:r4=0; 1:r1=0; z=2;
245203:>0:r1=0; 0:r4=0; 1:r1=0; z=1;
309611:>0:r1=0; 0:r4=0; 1:r1=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 0:r4=0 /\ 1:r1=1) is NOT validated
Hash=8136433834e96d46f31604e5b12b9b0d
Cycle=SyncdWW Rfe DpdR Fri Rfe SyncdRW Wse
Relax safe236 No
Safe=Fri Wse DpdR ACSyncdRW BCSyncdWW
Time safe236 1.54
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe237.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe237
"SyncdWW Rfe SyncdRW Rfe DpdR Fri Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r5=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | xor r3,r1,r1 | sync | stw r1,0(r2) ;
li r3,1 | lwzx r4,r3,r5 | li r3,1 | sync ;
stw r3,0(r4) | li r6,1 | stw r3,0(r4) | li r3,1 ;
| stw r6,0(r5) | | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r4=0 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r5,0(r9)
_litmus_P1_1_: xor r10,r5,r5
_litmus_P1_2_: lwzx r6,r10,r2
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe237 Allowed
Histogram (14 states)
4 :>0:r1=1; 1:r1=1; 1:r4=0; 2:r1=0; a=2;
2 :>0:r1=1; 1:r1=1; 1:r4=0; 2:r1=1; a=1;
6 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=1; a=2;
1735 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=1; a=1;
1402 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; a=2;
767 :>0:r1=1; 1:r1=1; 1:r4=0; 2:r1=0; a=1;
1655 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; a=2;
64746 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=1; a=1;
114855:>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; a=1;
186269:>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; a=2;
223926:>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; a=1;
246738:>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; a=1;
128097:>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=0; a=1;
29798 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=0; a=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r4=0 /\ 2:r1=1) is NOT validated
Hash=ec34386b77d1a4e2c741a20bee8d6c73
Cycle=SyncdWW Rfe SyncdRW Rfe DpdR Fri Rfe SyncdRW Wse
Relax safe237 No
Safe=Fri Wse DpdR ACSyncdRW BCSyncdWW BCSyncdRW
Time safe237 2.06
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe238.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe238
"SyncdWW Rfe DpsR Fri Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | sync | stw r1,0(r2) ;
lwzx r4,r3,r2 | li r3,1 | sync ;
li r5,2 | stw r3,0(r4) | li r3,1 ;
stw r5,0(r2) | | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r4=1 /\ 1:r1=2)
Generated assembler
_litmus_P0_0_: lwz r6,0(r2)
_litmus_P0_1_: xor r10,r6,r6
_litmus_P0_2_: lwzx r9,r10,r2
_litmus_P0_3_: li r11,2
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r10,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stw r8,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe238 Allowed
Histogram (16 states)
4 :>0:r1=0; 0:r4=1; 1:r1=1; x=2; y=1;
11 :>0:r1=0; 0:r4=1; 1:r1=0; x=2; y=2;
35 :>0:r1=0; 0:r4=1; 1:r1=0; x=2; y=1;
570 :>0:r1=1; 0:r4=1; 1:r1=0; x=2; y=2;
4273 :>0:r1=0; 0:r4=0; 1:r1=0; x=2; y=2;
3583 :>0:r1=0; 0:r4=0; 1:r1=2; x=1; y=2;
5553 :>0:r1=1; 0:r4=1; 1:r1=2; x=2; y=1;
44675 :>0:r1=1; 0:r4=1; 1:r1=1; x=2; y=1;
5207 :>0:r1=0; 0:r4=0; 1:r1=2; x=2; y=1;
24650 :>0:r1=0; 0:r4=0; 1:r1=1; x=2; y=1;
55770 :>0:r1=1; 0:r4=1; 1:r1=0; x=2; y=1;
271363:>0:r1=0; 0:r4=0; 1:r1=0; x=1; y=2;
61807 :>0:r1=0; 0:r4=0; 1:r1=1; x=1; y=1;
45470 :>0:r1=0; 0:r4=0; 1:r1=0; x=1; y=1;
371168:>0:r1=0; 0:r4=0; 1:r1=2; x=1; y=1;
105861:>0:r1=0; 0:r4=0; 1:r1=0; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r4=1 /\ 1:r1=2) is NOT validated
Hash=f1914d83ccd0bc976fd9a7266a9f96fd
Cycle=SyncdWW Rfe DpsR Fri Rfe SyncdRW Wse
Relax safe238 No
Safe=Fri Wse DpsR ACSyncdRW BCSyncdWW
Time safe238 1.82
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe239.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe239
"SyncdWW Rfe SyncdRW Rfe DpsR Fri Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | xor r3,r1,r1 | sync | stw r1,0(r2) ;
li r3,1 | lwzx r4,r3,r2 | li r3,1 | sync ;
stw r3,0(r4) | li r5,2 | stw r3,0(r4) | li r3,1 ;
| stw r5,0(r2) | | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r4=1 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r6,0(r2)
_litmus_P1_1_: xor r10,r6,r6
_litmus_P1_2_: lwzx r9,r10,r2
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe239 Allowed
Histogram (32 states)
1 :>0:r1=0; 1:r1=0; 1:r4=1; 2:r1=2; y=2; z=1;
5 :>0:r1=0; 1:r1=0; 1:r4=1; 2:r1=0; y=2; z=2;
1 :>0:r1=1; 1:r1=1; 1:r4=1; 2:r1=1; y=2; z=1;
6 :>0:r1=0; 1:r1=0; 1:r4=1; 2:r1=0; y=2; z=1;
16 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=2; y=1; z=2;
35 :>0:r1=0; 1:r1=1; 1:r4=1; 2:r1=2; y=2; z=2;
5 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=2; y=2; z=2;
58 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=2; y=2; z=1;
61 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; y=2; z=2;
252 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; y=1; z=2;
227 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=1; y=2; z=1;
1399 :>0:r1=0; 1:r1=1; 1:r4=1; 2:r1=1; y=2; z=2;
855 :>0:r1=1; 1:r1=1; 1:r4=1; 2:r1=0; y=2; z=1;
442 :>0:r1=1; 1:r1=1; 1:r4=1; 2:r1=0; y=2; z=2;
156 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; y=1; z=2;
3606 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; y=2; z=1;
1903 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=1; y=1; z=1;
11351 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=2; y=1; z=2;
13041 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; y=2; z=1;
53867 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=2; y=1; z=1;
2847 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=2; y=2; z=1;
10155 :>0:r1=0; 1:r1=1; 1:r4=1; 2:r1=2; y=2; z=1;
117058:>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; y=1; z=1;
72412 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; y=1; z=1;
45824 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; y=2; z=1;
126337:>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; y=1; z=2;
26233 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; y=1; z=1;
89479 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; y=2; z=2;
73463 :>0:r1=0; 1:r1=1; 1:r4=1; 2:r1=1; y=2; z=1;
264449:>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=2; y=1; z=1;
29767 :>0:r1=0; 1:r1=1; 1:r4=1; 2:r1=0; y=2; z=2;
54689 :>0:r1=0; 1:r1=1; 1:r4=1; 2:r1=0; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r4=1 /\ 2:r1=2) is NOT validated
Hash=a2b99f1707a26be5fc86558b33901dfd
Cycle=SyncdWW Rfe SyncdRW Rfe DpsR Fri Rfe SyncdRW Wse
Relax safe239 No
Safe=Fri Wse DpsR ACSyncdRW BCSyncdWW BCSyncdRW
Time safe239 2.84
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe240.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe240
"SyncdWR Fre SyncsWW Rfe DpdW Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r5=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
li r1,1 | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | xor r3,r1,r1 | sync | stw r1,0(r2) ;
sync | li r4,1 | li r3,1 | sync ;
li r3,2 | stwx r4,r3,r5 | stw r3,0(r4) | lwz r3,0(r4) ;
stw r3,0(r2) | | | ;
exists (x=2 /\ z=2 /\ 1:r1=2 /\ 2:r1=1 /\ 3:r3=0)
Generated assembler
_litmus_P0_0_: li r9,1
_litmus_P0_1_: stw r9,0(r2)
_litmus_P0_2_: sync
_litmus_P0_3_: li r11,2
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: xor r11,r7,r7
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stwx r8,r11,r2
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r10,2
_litmus_P3_1_: stw r10,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: lwz r8,0(r2)
Test safe240 Allowed
Histogram (32 states)
15 :>1:r1=2; 2:r1=1; 3:r3=0; x=2; z=1;
3 :>1:r1=1; 2:r1=1; 3:r3=1; x=2; z=1;
16 :>1:r1=1; 2:r1=1; 3:r3=2; x=2; z=2;
84 :>1:r1=1; 2:r1=1; 3:r3=0; x=2; z=1;
3 :>1:r1=2; 2:r1=0; 3:r3=0; x=2; z=2;
12 :>1:r1=1; 2:r1=0; 3:r3=1; x=2; z=2;
12 :>1:r1=0; 2:r1=1; 3:r3=0; x=2; z=2;
19 :>1:r1=2; 2:r1=1; 3:r3=1; x=2; z=1;
26 :>1:r1=1; 2:r1=0; 3:r3=1; x=2; z=1;
88 :>1:r1=2; 2:r1=1; 3:r3=2; x=2; z=2;
120 :>1:r1=0; 2:r1=1; 3:r3=1; x=2; z=2;
1638 :>1:r1=2; 2:r1=0; 3:r3=1; x=2; z=2;
12496 :>1:r1=2; 2:r1=0; 3:r3=0; x=2; z=1;
8207 :>1:r1=1; 2:r1=1; 3:r3=2; x=2; z=1;
25763 :>1:r1=0; 2:r1=1; 3:r3=2; x=2; z=2;
3088 :>1:r1=0; 2:r1=0; 3:r3=0; x=2; z=2;
109 :>1:r1=1; 2:r1=0; 3:r3=0; x=2; z=2;
43044 :>1:r1=2; 2:r1=1; 3:r3=2; x=2; z=1;
40206 :>1:r1=0; 2:r1=1; 3:r3=0; x=2; z=1;
60627 :>1:r1=0; 2:r1=0; 3:r3=2; x=2; z=2;
7904 :>1:r1=0; 2:r1=0; 3:r3=2; x=2; z=1;
90040 :>1:r1=2; 2:r1=0; 3:r3=2; x=2; z=2;
20873 :>1:r1=2; 2:r1=0; 3:r3=1; x=2; z=1;
17775 :>1:r1=0; 2:r1=0; 3:r3=1; x=2; z=1;
36330 :>1:r1=0; 2:r1=0; 3:r3=1; x=2; z=2;
104794:>1:r1=0; 2:r1=1; 3:r3=1; x=2; z=1;
95184 :>1:r1=1; 2:r1=0; 3:r3=0; x=2; z=1;
22898 :>1:r1=1; 2:r1=0; 3:r3=2; x=2; z=1;
91176 :>1:r1=0; 2:r1=1; 3:r3=2; x=2; z=1;
88743 :>1:r1=0; 2:r1=0; 3:r3=0; x=2; z=1;
80437 :>1:r1=1; 2:r1=0; 3:r3=2; x=2; z=2;
148270:>1:r1=2; 2:r1=0; 3:r3=2; x=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 1:r1=2 /\ 2:r1=1 /\ 3:r3=0) is NOT validated
Hash=6d76e3574b50ebba100a8682553306e2
Cycle=SyncdWR Fre SyncsWW Rfe DpdW Rfe SyncdRW Wse
Relax safe240 No
Safe=Fre Wse SyncdWR DpdW ACSyncdRW BCSyncsWW
Time safe240 2.55
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe241.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe241
"SyncdWW Rfe SyncsRW Rfe DpdW Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r5=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | xor r3,r1,r1 | sync | stw r1,0(r2) ;
li r3,2 | li r4,1 | li r3,1 | sync ;
stw r3,0(r2) | stwx r4,r3,r5 | stw r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: xor r11,r7,r7
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stwx r8,r11,r2
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe241 Allowed
Histogram (31 states)
1 :>0:r1=1; 1:r1=2; 2:r1=1; x=2; z=1;
44 :>0:r1=0; 1:r1=0; 2:r1=1; x=2; z=2;
9 :>0:r1=0; 1:r1=2; 2:r1=1; x=2; z=1;
10 :>0:r1=1; 1:r1=0; 2:r1=1; x=2; z=2;
152 :>0:r1=1; 1:r1=1; 2:r1=1; x=2; z=1;
27 :>0:r1=0; 1:r1=1; 2:r1=1; x=1; z=1;
92 :>0:r1=1; 1:r1=2; 2:r1=0; x=2; z=2;
104 :>0:r1=0; 1:r1=2; 2:r1=1; x=1; z=2;
61 :>0:r1=0; 1:r1=1; 2:r1=1; x=2; z=1;
136 :>0:r1=0; 1:r1=2; 2:r1=0; x=2; z=2;
72 :>0:r1=1; 1:r1=1; 2:r1=0; x=2; z=2;
1499 :>0:r1=1; 1:r1=0; 2:r1=0; x=2; z=2;
1252 :>0:r1=0; 1:r1=1; 2:r1=0; x=2; z=2;
4736 :>0:r1=1; 1:r1=2; 2:r1=0; x=2; z=1;
1526 :>0:r1=0; 1:r1=1; 2:r1=0; x=1; z=2;
7494 :>0:r1=1; 1:r1=0; 2:r1=1; x=2; z=1;
24096 :>0:r1=0; 1:r1=0; 2:r1=1; x=1; z=2;
93926 :>0:r1=0; 1:r1=0; 2:r1=1; x=2; z=1;
146681:>0:r1=1; 1:r1=1; 2:r1=0; x=2; z=1;
37574 :>0:r1=0; 1:r1=0; 2:r1=0; x=2; z=2;
36234 :>0:r1=0; 1:r1=2; 2:r1=1; x=1; z=1;
29012 :>0:r1=0; 1:r1=1; 2:r1=0; x=2; z=1;
30505 :>0:r1=1; 1:r1=0; 2:r1=0; x=2; z=1;
159547:>0:r1=0; 1:r1=2; 2:r1=0; x=1; z=1;
121836:>0:r1=0; 1:r1=0; 2:r1=1; x=1; z=1;
41506 :>0:r1=0; 1:r1=0; 2:r1=0; x=2; z=1;
112707:>0:r1=0; 1:r1=2; 2:r1=0; x=1; z=2;
29358 :>0:r1=0; 1:r1=0; 2:r1=0; x=1; z=1;
93720 :>0:r1=0; 1:r1=0; 2:r1=0; x=1; z=2;
18544 :>0:r1=0; 1:r1=2; 2:r1=0; x=2; z=1;
7539 :>0:r1=0; 1:r1=1; 2:r1=0; x=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1) is NOT validated
Hash=b235c43d2d325765882837d1ddc506ff
Cycle=SyncdWW Rfe SyncsRW Rfe DpdW Rfe SyncdRW Wse
Relax safe241 No
Safe=Wse DpdW ACSyncdRW BCSyncsRW BCSyncdWW
Time safe241 2.61
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe242.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe242
"SyncdWW Rfe DpdW Rfe SyncdRW Wse"
{0:r2=x; 0:r5=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | sync | stw r1,0(r2) ;
li r4,1 | li r3,1 | sync ;
stwx r4,r3,r5 | stw r3,0(r4) | li r3,1 ;
| | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 1:r1=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: xor r11,r7,r7
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stwx r8,r11,r2
_litmus_P1_0_: lwz r10,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stw r8,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe242 Allowed
Histogram (7 states)
434 :>0:r1=1; 1:r1=0; z=2;
2230 :>0:r1=1; 1:r1=1; z=1;
1340 :>0:r1=0; 1:r1=1; z=2;
168743:>0:r1=0; 1:r1=0; z=2;
278215:>0:r1=0; 1:r1=0; z=1;
334711:>0:r1=0; 1:r1=1; z=1;
214327:>0:r1=1; 1:r1=0; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 1:r1=1) is NOT validated
Hash=6a8491d5c491f38ec50a780429dd65a1
Cycle=SyncdWW Rfe DpdW Rfe SyncdRW Wse
Relax safe242 No
Safe=Wse DpdW ACSyncdRW BCSyncdWW
Time safe242 1.61
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe243.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe243
"SyncdWR Fre SyncdWW Rfe DpdW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r5=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
li r1,1 | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | xor r3,r1,r1 | sync | stw r1,0(r2) ;
sync | li r4,1 | li r3,1 | sync ;
li r3,1 | stwx r4,r3,r5 | stw r3,0(r4) | lwz r3,0(r4) ;
stw r3,0(r4) | | | ;
exists (a=2 /\ 1:r1=1 /\ 2:r1=1 /\ 3:r3=0)
Generated assembler
_litmus_P0_0_: li r11,1
_litmus_P0_1_: stw r11,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r10,1
_litmus_P0_4_: stw r10,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: xor r11,r7,r7
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stwx r8,r11,r2
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r10,2
_litmus_P3_1_: stw r10,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: lwz r8,0(r2)
Test safe243 Allowed
Histogram (15 states)
8 :>1:r1=0; 2:r1=1; 3:r3=0; a=2;
5 :>1:r1=1; 2:r1=0; 3:r3=0; a=2;
17 :>1:r1=1; 2:r1=1; 3:r3=0; a=1;
638 :>1:r1=1; 2:r1=0; 3:r3=0; a=1;
386 :>1:r1=1; 2:r1=1; 3:r3=1; a=1;
64 :>1:r1=1; 2:r1=1; 3:r3=1; a=2;
5379 :>1:r1=0; 2:r1=1; 3:r3=1; a=2;
5757 :>1:r1=0; 2:r1=0; 3:r3=0; a=2;
38670 :>1:r1=0; 2:r1=1; 3:r3=0; a=1;
241861:>1:r1=0; 2:r1=0; 3:r3=1; a=2;
208123:>1:r1=0; 2:r1=1; 3:r3=1; a=1;
152064:>1:r1=0; 2:r1=0; 3:r3=1; a=1;
173262:>1:r1=0; 2:r1=0; 3:r3=0; a=1;
104116:>1:r1=1; 2:r1=0; 3:r3=1; a=1;
69650 :>1:r1=1; 2:r1=0; 3:r3=1; a=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 1:r1=1 /\ 2:r1=1 /\ 3:r3=0) is NOT validated
Hash=32164d7eca1eb1dfdeab420b96cc618c
Cycle=SyncdWR Fre SyncdWW Rfe DpdW Rfe SyncdRW Wse
Relax safe243 No
Safe=Fre Wse SyncdWR DpdW ACSyncdRW BCSyncdWW
Time safe243 2.08
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe244.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe244
"SyncdWW Rfe SyncdRW Rfe DpdW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r5=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | xor r3,r1,r1 | sync | stw r1,0(r2) ;
li r3,1 | li r4,1 | li r3,1 | sync ;
stw r3,0(r4) | stwx r4,r3,r5 | stw r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: xor r11,r7,r7
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stwx r8,r11,r2
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe244 Allowed
Histogram (14 states)
3 :>0:r1=1; 1:r1=1; 2:r1=1; a=1;
7 :>0:r1=1; 1:r1=0; 2:r1=1; a=2;
23 :>0:r1=0; 1:r1=1; 2:r1=1; a=2;
723 :>0:r1=1; 1:r1=0; 2:r1=0; a=2;
1047 :>0:r1=1; 1:r1=1; 2:r1=0; a=1;
12329 :>0:r1=0; 1:r1=1; 2:r1=1; a=1;
66774 :>0:r1=1; 1:r1=0; 2:r1=1; a=1;
18115 :>0:r1=0; 1:r1=0; 2:r1=1; a=2;
101072:>0:r1=1; 1:r1=0; 2:r1=0; a=1;
233659:>0:r1=0; 1:r1=0; 2:r1=0; a=2;
116419:>0:r1=0; 1:r1=0; 2:r1=0; a=1;
294247:>0:r1=0; 1:r1=0; 2:r1=1; a=1;
128135:>0:r1=0; 1:r1=1; 2:r1=0; a=1;
27447 :>0:r1=0; 1:r1=1; 2:r1=0; a=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=1) is NOT validated
Hash=47af8b0189a5dcd47b819359e8f09a6a
Cycle=SyncdWW Rfe SyncdRW Rfe DpdW Rfe SyncdRW Wse
Relax safe244 No
Safe=Wse DpdW ACSyncdRW BCSyncdWW BCSyncdRW
Time safe244 2.05
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe245.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe245
"SyncdWW Rfe DpsW Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | sync | stw r1,0(r2) ;
li r4,2 | li r3,1 | sync ;
stwx r4,r3,r2 | stw r3,0(r4) | li r3,1 ;
| | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: xor r11,r8,r8
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stwx r9,r11,r2
_litmus_P1_0_: lwz r10,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stw r8,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe245 Allowed
Histogram (13 states)
76 :>0:r1=1; 1:r1=0; x=2; y=2;
1959 :>0:r1=0; 1:r1=2; x=2; y=1;
10706 :>0:r1=1; 1:r1=2; x=2; y=1;
8650 :>0:r1=0; 1:r1=1; x=2; y=1;
6026 :>0:r1=0; 1:r1=0; x=2; y=2;
8928 :>0:r1=0; 1:r1=2; x=1; y=2;
97274 :>0:r1=0; 1:r1=0; x=2; y=1;
73496 :>0:r1=0; 1:r1=0; x=1; y=1;
19127 :>0:r1=1; 1:r1=1; x=2; y=1;
361408:>0:r1=0; 1:r1=2; x=1; y=1;
107548:>0:r1=1; 1:r1=0; x=2; y=1;
257737:>0:r1=0; 1:r1=0; x=1; y=2;
47065 :>0:r1=0; 1:r1=1; x=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2) is NOT validated
Hash=28981b0b82f7966c548dea70e0bb6040
Cycle=SyncdWW Rfe DpsW Rfe SyncdRW Wse
Relax safe245 No
Safe=Wse DpsW ACSyncdRW BCSyncdWW
Time safe245 1.55
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe246.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe246
"SyncdWR Fre SyncdWW Rfe DpsW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
li r1,1 | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | xor r3,r1,r1 | sync | stw r1,0(r2) ;
sync | li r4,2 | li r3,1 | sync ;
li r3,1 | stwx r4,r3,r2 | stw r3,0(r4) | lwz r3,0(r4) ;
stw r3,0(r4) | | | ;
exists (y=2 /\ z=2 /\ 1:r1=1 /\ 2:r1=2 /\ 3:r3=0)
Generated assembler
_litmus_P0_0_: li r11,1
_litmus_P0_1_: stw r11,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r10,1
_litmus_P0_4_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: xor r11,r8,r8
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stwx r9,r11,r2
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r10,2
_litmus_P3_1_: stw r10,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: lwz r8,0(r2)
Test safe246 Allowed
Histogram (30 states)
4 :>1:r1=0; 2:r1=2; 3:r3=0; y=2; z=1;
2 :>1:r1=1; 2:r1=1; 3:r3=0; y=2; z=1;
2 :>1:r1=1; 2:r1=0; 3:r3=0; y=2; z=2;
1 :>1:r1=1; 2:r1=2; 3:r3=0; y=2; z=1;
16 :>1:r1=1; 2:r1=2; 3:r3=1; y=2; z=2;
10 :>1:r1=0; 2:r1=0; 3:r3=0; y=2; z=2;
29 :>1:r1=0; 2:r1=1; 3:r3=1; y=2; z=2;
154 :>1:r1=1; 2:r1=1; 3:r3=1; y=2; z=2;
168 :>1:r1=0; 2:r1=1; 3:r3=1; y=1; z=2;
162 :>1:r1=0; 2:r1=1; 3:r3=0; y=2; z=1;
4168 :>1:r1=0; 2:r1=1; 3:r3=1; y=2; z=1;
1360 :>1:r1=0; 2:r1=0; 3:r3=0; y=2; z=1;
39 :>1:r1=0; 2:r1=2; 3:r3=0; y=1; z=2;
1114 :>1:r1=0; 2:r1=2; 3:r3=1; y=2; z=1;
5321 :>1:r1=0; 2:r1=2; 3:r3=1; y=1; z=2;
1265 :>1:r1=0; 2:r1=0; 3:r3=0; y=1; z=2;
6225 :>1:r1=0; 2:r1=1; 3:r3=0; y=1; z=1;
24109 :>1:r1=1; 2:r1=2; 3:r3=1; y=2; z=1;
20386 :>1:r1=1; 2:r1=0; 3:r3=1; y=2; z=1;
252231:>1:r1=0; 2:r1=2; 3:r3=0; y=1; z=1;
31438 :>1:r1=0; 2:r1=0; 3:r3=1; y=2; z=2;
20375 :>1:r1=0; 2:r1=0; 3:r3=1; y=2; z=1;
76074 :>1:r1=0; 2:r1=0; 3:r3=0; y=1; z=1;
22547 :>1:r1=0; 2:r1=0; 3:r3=1; y=1; z=1;
198497:>1:r1=0; 2:r1=0; 3:r3=1; y=1; z=2;
81811 :>1:r1=0; 2:r1=1; 3:r3=1; y=1; z=1;
216034:>1:r1=0; 2:r1=2; 3:r3=1; y=1; z=1;
267 :>1:r1=1; 2:r1=0; 3:r3=0; y=2; z=1;
8282 :>1:r1=1; 2:r1=0; 3:r3=1; y=2; z=2;
27909 :>1:r1=1; 2:r1=1; 3:r3=1; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 1:r1=1 /\ 2:r1=2 /\ 3:r3=0) is NOT validated
Hash=ad515a1e50ef7c4a5bfc5717e1b21149
Cycle=SyncdWR Fre SyncdWW Rfe DpsW Rfe SyncdRW Wse
Relax safe246 No
Safe=Fre Wse SyncdWR DpsW ACSyncdRW BCSyncdWW
Time safe246 2.54
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe247.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe247
"SyncdWW Rfe SyncdRW Rfe DpsW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | xor r3,r1,r1 | sync | stw r1,0(r2) ;
li r3,1 | li r4,2 | li r3,1 | sync ;
stw r3,0(r4) | stwx r4,r3,r2 | stw r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: xor r11,r8,r8
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stwx r9,r11,r2
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe247 Allowed
Histogram (30 states)
7 :>0:r1=1; 1:r1=1; 2:r1=1; y=2; z=1;
34 :>0:r1=0; 1:r1=0; 2:r1=1; y=2; z=2;
6 :>0:r1=1; 1:r1=1; 2:r1=2; y=2; z=1;
12 :>0:r1=1; 1:r1=0; 2:r1=2; y=1; z=2;
6 :>0:r1=1; 1:r1=0; 2:r1=2; y=2; z=1;
38 :>0:r1=0; 1:r1=1; 2:r1=2; y=2; z=2;
97 :>0:r1=1; 1:r1=1; 2:r1=0; y=2; z=2;
554 :>0:r1=0; 1:r1=1; 2:r1=1; y=2; z=2;
91 :>0:r1=1; 1:r1=0; 2:r1=1; y=2; z=1;
9 :>0:r1=0; 1:r1=0; 2:r1=2; y=2; z=2;
1808 :>0:r1=1; 1:r1=0; 2:r1=0; y=1; z=2;
1875 :>0:r1=1; 1:r1=0; 2:r1=1; y=1; z=1;
10593 :>0:r1=1; 1:r1=0; 2:r1=0; y=2; z=1;
2390 :>0:r1=0; 1:r1=0; 2:r1=1; y=2; z=1;
3200 :>0:r1=0; 1:r1=0; 2:r1=2; y=2; z=1;
27318 :>0:r1=0; 1:r1=0; 2:r1=0; y=2; z=2;
64474 :>0:r1=1; 1:r1=0; 2:r1=0; y=1; z=1;
59069 :>0:r1=1; 1:r1=0; 2:r1=2; y=1; z=1;
43489 :>0:r1=0; 1:r1=0; 2:r1=0; y=2; z=1;
78729 :>0:r1=0; 1:r1=0; 2:r1=1; y=1; z=1;
51988 :>0:r1=0; 1:r1=0; 2:r1=0; y=1; z=1;
15435 :>0:r1=0; 1:r1=0; 2:r1=2; y=1; z=2;
57014 :>0:r1=0; 1:r1=1; 2:r1=1; y=2; z=1;
51253 :>0:r1=0; 1:r1=1; 2:r1=0; y=2; z=1;
193051:>0:r1=0; 1:r1=0; 2:r1=0; y=1; z=2;
62922 :>0:r1=0; 1:r1=1; 2:r1=2; y=2; z=1;
262710:>0:r1=0; 1:r1=0; 2:r1=2; y=1; z=1;
1149 :>0:r1=1; 1:r1=1; 2:r1=0; y=2; z=1;
10316 :>0:r1=0; 1:r1=1; 2:r1=0; y=2; z=2;
363 :>0:r1=0; 1:r1=0; 2:r1=1; y=1; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2) is NOT validated
Hash=87dde3c87152b25a6585114cde574a9e
Cycle=SyncdWW Rfe SyncdRW Rfe DpsW Rfe SyncdRW Wse
Relax safe247 No
Safe=Wse DpsW ACSyncdRW BCSyncdWW BCSyncdRW
Time safe247 2.55
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe248.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe248
"LwSyncdWW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=x;}
P0 | P1 ;
lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) ;
li r3,1 | lwsync ;
stw r3,0(r4) | li r3,1 ;
| stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
Test safe248 Allowed
Histogram (3 states)
976110:>0:r1=0; y=1;
731016:>0:r1=1; y=1;
292874:>0:r1=0; y=2;
No
Witnesses
Positive: 0, Negative: 2000000
Condition exists (y=2 /\ 0:r1=1) is NOT validated
Hash=2881bffb32bf655dc84dbea89d76b6d0
Cycle=LwSyncdWW Rfe SyncdRW Wse
Relax safe248 No
Safe=Wse LwSyncdWW ACSyncdRW
Time safe248 1.23
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe249.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe249
"LwSyncdWW Rfe SyncdRW Wse LwSyncdWW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
li r3,1 | lwsync | li r3,1 | lwsync ;
stw r3,0(r4) | li r3,1 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (a=2 /\ y=2 /\ 0:r1=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe249 Allowed
Histogram (15 states)
4 :>0:r1=1; 2:r1=1; a=2; y=1;
9 :>0:r1=0; 2:r1=1; a=2; y=2;
2 :>0:r1=1; 2:r1=1; a=1; y=2;
5 :>0:r1=1; 2:r1=0; a=2; y=2;
2389 :>0:r1=0; 2:r1=1; a=2; y=1;
5268 :>0:r1=1; 2:r1=0; a=1; y=2;
45819 :>0:r1=0; 2:r1=0; a=2; y=2;
8353 :>0:r1=1; 2:r1=0; a=2; y=1;
138141:>0:r1=0; 2:r1=0; a=1; y=2;
132030:>0:r1=0; 2:r1=0; a=1; y=1;
209951:>0:r1=0; 2:r1=0; a=2; y=1;
59273 :>0:r1=1; 2:r1=1; a=1; y=1;
185082:>0:r1=0; 2:r1=1; a=1; y=1;
4387 :>0:r1=0; 2:r1=1; a=1; y=2;
209287:>0:r1=1; 2:r1=0; a=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ y=2 /\ 0:r1=1 /\ 2:r1=1) is NOT validated
Hash=0bc222c638f1ef91426f8fa127dd7b1a
Cycle=LwSyncdWW Rfe SyncdRW Wse LwSyncdWW Rfe SyncdRW Wse
Relax safe249 No
Safe=Wse LwSyncdWW ACSyncdRW
Time safe249 2.15
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe250.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe250
"SyncdWW Rfe DpdR Fre LwSyncdWW Rfe SyncdRW Wse"
{0:r2=x; 0:r5=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwzx r4,r3,r5 | lwsync | li r3,1 | sync ;
| li r3,1 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 0:r4=0 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r6,0(r9)
_litmus_P0_1_: xor r11,r6,r6
_litmus_P0_2_: lwzx r7,r11,r2
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe250 Allowed
Histogram (14 states)
5 :>0:r1=1; 0:r4=1; 2:r1=1; a=2;
19 :>0:r1=1; 0:r4=0; 2:r1=1; a=1;
68 :>0:r1=0; 0:r4=0; 2:r1=1; a=2;
3942 :>0:r1=0; 0:r4=1; 2:r1=1; a=2;
1493 :>0:r1=1; 0:r4=1; 2:r1=0; a=2;
7206 :>0:r1=1; 0:r4=0; 2:r1=0; a=1;
19034 :>0:r1=1; 0:r4=1; 2:r1=1; a=1;
58874 :>0:r1=0; 0:r4=0; 2:r1=1; a=1;
106327:>0:r1=0; 0:r4=0; 2:r1=0; a=2;
121181:>0:r1=1; 0:r4=1; 2:r1=0; a=1;
180151:>0:r1=0; 0:r4=1; 2:r1=1; a=1;
89405 :>0:r1=0; 0:r4=1; 2:r1=0; a=1;
236158:>0:r1=0; 0:r4=0; 2:r1=0; a=1;
176137:>0:r1=0; 0:r4=1; 2:r1=0; a=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 0:r4=0 /\ 2:r1=1) is NOT validated
Hash=002e5e26a59b20faa4c7a647fe282f3b
Cycle=SyncdWW Rfe DpdR Fre LwSyncdWW Rfe SyncdRW Wse
Relax safe250 No
Safe=Fre Wse LwSyncdWW DpdR ACSyncdRW BCSyncdWW
Time safe250 2.10
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe251.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe251
"SyncdWW Rfe DpsR Fre LwSyncdWW Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwzx r4,r3,r2 | lwsync | li r3,1 | sync ;
| li r3,1 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r4=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r2)
_litmus_P0_1_: xor r11,r7,r7
_litmus_P0_2_: lwzx r9,r11,r2
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe251 Allowed
Histogram (28 states)
4 :>0:r1=0; 0:r4=1; 2:r1=0; x=1; z=1;
6 :>0:r1=0; 0:r4=2; 2:r1=1; x=1; z=1;
1 :>0:r1=0; 0:r4=1; 2:r1=0; x=1; z=2;
11 :>0:r1=2; 0:r4=2; 2:r1=0; x=2; z=2;
7 :>0:r1=0; 0:r4=2; 2:r1=0; x=1; z=1;
35 :>0:r1=0; 0:r4=1; 2:r1=0; x=2; z=1;
108 :>0:r1=1; 0:r4=1; 2:r1=1; x=2; z=1;
17 :>0:r1=1; 0:r4=1; 2:r1=0; x=2; z=2;
6 :>0:r1=1; 0:r4=1; 2:r1=1; x=1; z=2;
260 :>0:r1=0; 0:r4=0; 2:r1=1; x=1; z=2;
19 :>0:r1=0; 0:r4=1; 2:r1=1; x=1; z=1;
954 :>0:r1=0; 0:r4=0; 2:r1=0; x=2; z=2;
117 :>0:r1=0; 0:r4=0; 2:r1=1; x=2; z=1;
3027 :>0:r1=2; 0:r4=2; 2:r1=1; x=2; z=1;
132 :>0:r1=0; 0:r4=2; 2:r1=0; x=1; z=2;
3819 :>0:r1=2; 0:r4=2; 2:r1=1; x=1; z=2;
75536 :>0:r1=1; 0:r4=1; 2:r1=0; x=2; z=1;
44849 :>0:r1=1; 0:r4=1; 2:r1=1; x=1; z=1;
78034 :>0:r1=0; 0:r4=0; 2:r1=1; x=1; z=1;
220548:>0:r1=2; 0:r4=2; 2:r1=1; x=1; z=1;
168721:>0:r1=2; 0:r4=2; 2:r1=0; x=1; z=2;
58252 :>0:r1=2; 0:r4=2; 2:r1=0; x=1; z=1;
31757 :>0:r1=0; 0:r4=0; 2:r1=0; x=2; z=1;
159729:>0:r1=0; 0:r4=0; 2:r1=0; x=1; z=1;
22495 :>0:r1=1; 0:r4=1; 2:r1=0; x=1; z=1;
28718 :>0:r1=2; 0:r4=2; 2:r1=0; x=2; z=1;
2241 :>0:r1=1; 0:r4=1; 2:r1=0; x=1; z=2;
100597:>0:r1=0; 0:r4=0; 2:r1=0; x=1; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r4=1 /\ 2:r1=1) is NOT validated
Hash=2cecb71e8666bace31e2b613a00c3ef6
Cycle=SyncdWW Rfe DpsR Fre LwSyncdWW Rfe SyncdRW Wse
Relax safe251 No
Safe=Fre Wse LwSyncdWW DpsR ACSyncdRW BCSyncdWW
Time safe251 2.34
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe252.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe252
"SyncdWR Fre LwSyncdWW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
li r1,1 | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | sync | stw r1,0(r2) ;
lwsync | li r3,1 | sync ;
li r3,1 | stw r3,0(r4) | lwz r3,0(r4) ;
stw r3,0(r4) | | ;
exists (z=2 /\ 1:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: li r10,1
_litmus_P0_1_: stw r10,0(r9)
_litmus_P0_2_: lwsync
_litmus_P0_3_: li r11,1
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r10,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stw r8,0(r2)
_litmus_P2_0_: li r8,2
_litmus_P2_1_: stw r8,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r10,0(r2)
Test safe252 Allowed
Histogram (7 states)
9568 :>1:r1=1; 2:r3=0; z=1;
759 :>1:r1=0; 2:r3=0; z=2;
217220:>1:r1=1; 2:r3=1; z=1;
323802:>1:r1=0; 2:r3=1; z=1;
245943:>1:r1=0; 2:r3=1; z=2;
592 :>1:r1=1; 2:r3=1; z=2;
202116:>1:r1=0; 2:r3=0; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 1:r1=1 /\ 2:r3=0) is NOT validated
Hash=175edc23fd8544a4ed2d0e878dd28802
Cycle=SyncdWR Fre LwSyncdWW Rfe SyncdRW Wse
Relax safe252 No
Safe=Fre Wse SyncdWR LwSyncdWW ACSyncdRW
Time safe252 1.63
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe253.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe253
"SyncdWW Rfe SyncdRR Fre LwSyncdWW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | lwsync | li r3,1 | sync ;
| li r3,1 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe253 Allowed
Histogram (14 states)
13 :>0:r1=0; 0:r3=0; 2:r1=1; a=2;
4 :>0:r1=1; 0:r3=0; 2:r1=1; a=1;
3 :>0:r1=1; 0:r3=1; 2:r1=1; a=2;
2997 :>0:r1=0; 0:r3=1; 2:r1=1; a=2;
38709 :>0:r1=0; 0:r3=0; 2:r1=1; a=1;
2568 :>0:r1=1; 0:r3=0; 2:r1=0; a=1;
1222 :>0:r1=1; 0:r3=1; 2:r1=0; a=2;
60774 :>0:r1=1; 0:r3=1; 2:r1=1; a=1;
121145:>0:r1=1; 0:r3=1; 2:r1=0; a=1;
196698:>0:r1=0; 0:r3=1; 2:r1=1; a=1;
226936:>0:r1=0; 0:r3=1; 2:r1=0; a=2;
126801:>0:r1=0; 0:r3=1; 2:r1=0; a=1;
204156:>0:r1=0; 0:r3=0; 2:r1=0; a=1;
17974 :>0:r1=0; 0:r3=0; 2:r1=0; a=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1) is NOT validated
Hash=b62eebfdd57bebb7f45d56b9861ec18d
Cycle=SyncdWW Rfe SyncdRR Fre LwSyncdWW Rfe SyncdRW Wse
Relax safe253 No
Safe=Fre Wse SyncdRR LwSyncdWW ACSyncdRW BCSyncdWW
Time safe253 2.06
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe254.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe254
"SyncdWW Rfe SyncsRR Fre LwSyncdWW Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r2) | lwsync | li r3,1 | sync ;
| li r3,1 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe254 Allowed
Histogram (39 states)
8 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; z=2;
1 :>0:r1=1; 0:r3=1; 2:r1=1; x=1; z=2;
2 :>0:r1=1; 0:r3=1; 2:r1=1; x=2; z=1;
13 :>0:r1=1; 0:r3=2; 2:r1=1; x=2; z=1;
11 :>0:r1=2; 0:r3=2; 2:r1=0; x=2; z=2;
21 :>0:r1=0; 0:r3=2; 2:r1=1; x=2; z=1;
16 :>0:r1=0; 0:r3=2; 2:r1=1; x=1; z=2;
1393 :>0:r1=2; 0:r3=2; 2:r1=1; x=2; z=1;
1 :>0:r1=0; 0:r3=1; 2:r1=1; x=2; z=1;
47 :>0:r1=0; 0:r3=0; 2:r1=1; x=2; z=1;
57 :>0:r1=0; 0:r3=0; 2:r1=1; x=1; z=2;
69 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; z=2;
686 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; z=2;
462 :>0:r1=0; 0:r3=1; 2:r1=1; x=1; z=1;
1099 :>0:r1=2; 0:r3=2; 2:r1=1; x=1; z=2;
2187 :>0:r1=0; 0:r3=1; 2:r1=0; x=1; z=2;
5890 :>0:r1=2; 0:r3=1; 2:r1=0; x=1; z=2;
7070 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; z=1;
44960 :>0:r1=2; 0:r3=1; 2:r1=1; x=1; z=1;
30948 :>0:r1=0; 0:r3=0; 2:r1=1; x=1; z=1;
30439 :>0:r1=0; 0:r3=2; 2:r1=0; x=1; z=2;
23917 :>0:r1=1; 0:r3=1; 2:r1=1; x=1; z=1;
17887 :>0:r1=0; 0:r3=1; 2:r1=0; x=1; z=1;
1583 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; z=2;
7417 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; z=1;
23871 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; z=1;
79330 :>0:r1=2; 0:r3=2; 2:r1=0; x=1; z=2;
157113:>0:r1=2; 0:r3=2; 2:r1=1; x=1; z=1;
47770 :>0:r1=2; 0:r3=2; 2:r1=0; x=2; z=1;
26497 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; z=1;
25464 :>0:r1=2; 0:r3=1; 2:r1=0; x=1; z=1;
29613 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; z=1;
125362:>0:r1=0; 0:r3=0; 2:r1=0; x=1; z=2;
12632 :>0:r1=0; 0:r3=2; 2:r1=0; x=1; z=1;
43628 :>0:r1=2; 0:r3=2; 2:r1=0; x=1; z=1;
192258:>0:r1=0; 0:r3=0; 2:r1=0; x=1; z=1;
57185 :>0:r1=1; 0:r3=1; 2:r1=0; x=1; z=1;
1426 :>0:r1=1; 0:r3=1; 2:r1=0; x=1; z=2;
1667 :>0:r1=0; 0:r3=2; 2:r1=1; x=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1) is NOT validated
Hash=fba2ac615ade841b9bdb76f6f4b463b5
Cycle=SyncdWW Rfe SyncsRR Fre LwSyncdWW Rfe SyncdRW Wse
Relax safe254 No
Safe=Fre Wse SyncsRR LwSyncdWW ACSyncdRW BCSyncdWW
Time safe254 2.73
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe255.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe255
"SyncdWW Rfe LwSyncdRR Fre LwSyncdWW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
lwsync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | lwsync | li r3,1 | sync ;
| li r3,1 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe255 Allowed
Histogram (15 states)
1 :>0:r1=1; 0:r3=1; 2:r1=1; a=2;
1 :>0:r1=1; 0:r3=0; 2:r1=0; a=2;
16 :>0:r1=0; 0:r3=0; 2:r1=1; a=2;
167 :>0:r1=1; 0:r3=0; 2:r1=1; a=1;
756 :>0:r1=1; 0:r3=1; 2:r1=0; a=2;
1330 :>0:r1=0; 0:r3=1; 2:r1=1; a=2;
2543 :>0:r1=1; 0:r3=0; 2:r1=0; a=1;
5054 :>0:r1=0; 0:r3=0; 2:r1=1; a=1;
166121:>0:r1=0; 0:r3=1; 2:r1=1; a=1;
124556:>0:r1=1; 0:r3=1; 2:r1=0; a=1;
158759:>0:r1=0; 0:r3=1; 2:r1=0; a=2;
21627 :>0:r1=1; 0:r3=1; 2:r1=1; a=1;
183353:>0:r1=0; 0:r3=1; 2:r1=0; a=1;
220232:>0:r1=0; 0:r3=0; 2:r1=0; a=1;
115484:>0:r1=0; 0:r3=0; 2:r1=0; a=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1) is NOT validated
Hash=ae0bd6c6212d6c4f15e4af73a1ff1e64
Cycle=SyncdWW Rfe LwSyncdRR Fre LwSyncdWW Rfe SyncdRW Wse
Relax safe255 No
Safe=Fre Wse LwSyncdWW LwSyncdRR ACSyncdRW BCSyncdWW
Time safe255 2.12
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe256.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe256
"SyncdWW Rfe LwSyncsRR Fre LwSyncdWW Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
lwsync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r2) | lwsync | li r3,1 | sync ;
| li r3,1 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe256 Allowed
Histogram (36 states)
1 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; z=2;
5 :>0:r1=1; 0:r3=1; 2:r1=1; x=1; z=2;
1 :>0:r1=0; 0:r3=1; 2:r1=1; x=1; z=2;
11 :>0:r1=2; 0:r3=2; 2:r1=0; x=2; z=2;
14 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; z=2;
26 :>0:r1=0; 0:r3=2; 2:r1=1; x=1; z=2;
13 :>0:r1=0; 0:r3=1; 2:r1=0; x=1; z=2;
20 :>0:r1=1; 0:r3=1; 2:r1=1; x=2; z=1;
30 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; z=1;
28 :>0:r1=0; 0:r3=0; 2:r1=1; x=2; z=1;
3 :>0:r1=2; 0:r3=1; 2:r1=0; x=1; z=2;
140 :>0:r1=2; 0:r3=1; 2:r1=0; x=1; z=1;
169 :>0:r1=2; 0:r3=2; 2:r1=1; x=2; z=1;
354 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; z=1;
491 :>0:r1=0; 0:r3=2; 2:r1=1; x=1; z=1;
79 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; z=1;
225 :>0:r1=0; 0:r3=2; 2:r1=0; x=1; z=2;
484 :>0:r1=2; 0:r3=1; 2:r1=1; x=1; z=1;
787 :>0:r1=0; 0:r3=2; 2:r1=0; x=1; z=1;
818 :>0:r1=0; 0:r3=1; 2:r1=0; x=1; z=1;
220 :>0:r1=0; 0:r3=0; 2:r1=1; x=1; z=2;
4946 :>0:r1=1; 0:r3=1; 2:r1=1; x=1; z=1;
92 :>0:r1=0; 0:r3=1; 2:r1=1; x=1; z=1;
5457 :>0:r1=2; 0:r3=2; 2:r1=1; x=1; z=2;
1588 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; z=2;
43323 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; z=1;
87905 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; z=1;
35637 :>0:r1=0; 0:r3=0; 2:r1=1; x=1; z=1;
202143:>0:r1=2; 0:r3=2; 2:r1=1; x=1; z=1;
53010 :>0:r1=2; 0:r3=2; 2:r1=0; x=2; z=1;
74048 :>0:r1=2; 0:r3=2; 2:r1=0; x=1; z=2;
51985 :>0:r1=2; 0:r3=2; 2:r1=0; x=1; z=1;
188049:>0:r1=0; 0:r3=0; 2:r1=0; x=1; z=1;
43566 :>0:r1=1; 0:r3=1; 2:r1=0; x=1; z=1;
1562 :>0:r1=1; 0:r3=1; 2:r1=0; x=1; z=2;
202770:>0:r1=0; 0:r3=0; 2:r1=0; x=1; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1) is NOT validated
Hash=756e4f292ec557012189e1f1dfdcf3c5
Cycle=SyncdWW Rfe LwSyncsRR Fre LwSyncdWW Rfe SyncdRW Wse
Relax safe256 No
Safe=Fre Wse LwSyncsRR LwSyncdWW ACSyncdRW BCSyncdWW
Time safe256 2.68
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe257.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe257
"LwSyncdWW Rfe SyncsRR Fre LwSyncdWW Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r2) | lwsync | li r3,1 | lwsync ;
| li r3,1 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe257 Allowed
Histogram (41 states)
2 :>0:r1=1; 0:r3=1; 2:r1=1; x=1; z=2;
3 :>0:r1=2; 0:r3=1; 2:r1=1; x=1; z=2;
25 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; z=2;
8 :>0:r1=0; 0:r3=1; 2:r1=1; x=2; z=1;
27 :>0:r1=0; 0:r3=0; 2:r1=1; x=1; z=2;
61 :>0:r1=2; 0:r3=2; 2:r1=0; x=2; z=2;
23 :>0:r1=0; 0:r3=2; 2:r1=1; x=1; z=2;
50 :>0:r1=0; 0:r3=0; 2:r1=1; x=2; z=1;
13 :>0:r1=1; 0:r3=1; 2:r1=1; x=2; z=1;
46 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; z=2;
210 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; z=2;
150 :>0:r1=1; 0:r3=2; 2:r1=1; x=2; z=1;
86 :>0:r1=0; 0:r3=2; 2:r1=1; x=2; z=1;
337 :>0:r1=0; 0:r3=1; 2:r1=1; x=1; z=1;
2509 :>0:r1=2; 0:r3=2; 2:r1=1; x=2; z=1;
2392 :>0:r1=0; 0:r3=1; 2:r1=0; x=1; z=2;
1191 :>0:r1=2; 0:r3=2; 2:r1=1; x=1; z=2;
17329 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; z=1;
8656 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; z=2;
19905 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; z=1;
55734 :>0:r1=2; 0:r3=2; 2:r1=0; x=1; z=2;
42351 :>0:r1=0; 0:r3=0; 2:r1=1; x=1; z=1;
596 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; z=2;
15293 :>0:r1=0; 0:r3=1; 2:r1=0; x=1; z=1;
13585 :>0:r1=2; 0:r3=1; 2:r1=0; x=1; z=2;
27130 :>0:r1=1; 0:r3=1; 2:r1=1; x=1; z=1;
9100 :>0:r1=0; 0:r3=2; 2:r1=0; x=1; z=1;
54792 :>0:r1=2; 0:r3=1; 2:r1=1; x=1; z=1;
40836 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; z=1;
66993 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; z=1;
28225 :>0:r1=2; 0:r3=1; 2:r1=0; x=1; z=1;
98029 :>0:r1=2; 0:r3=2; 2:r1=1; x=1; z=1;
38963 :>0:r1=0; 0:r3=2; 2:r1=0; x=1; z=2;
39827 :>0:r1=2; 0:r3=2; 2:r1=0; x=1; z=1;
10646 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; z=1;
126937:>0:r1=0; 0:r3=0; 2:r1=0; x=1; z=2;
162424:>0:r1=0; 0:r3=0; 2:r1=0; x=1; z=1;
15982 :>0:r1=1; 0:r3=1; 2:r1=0; x=1; z=1;
94760 :>0:r1=2; 0:r3=2; 2:r1=0; x=2; z=1;
3461 :>0:r1=1; 0:r3=1; 2:r1=0; x=1; z=2;
1313 :>0:r1=0; 0:r3=2; 2:r1=1; x=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1) is NOT validated
Hash=c086a1af0898a70b9e88cb79fc2fde3f
Cycle=LwSyncdWW Rfe SyncsRR Fre LwSyncdWW Rfe SyncdRW Wse
Relax safe257 No
Safe=Fre Wse LwSyncdWW ACSyncsRR ACSyncdRW
Time safe257 2.77
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe258.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe258
"Rfe SyncdRR Fre LwSyncdWW Rfe SyncdRW Wse"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | lwsync | li r3,1 | ;
| li r3,1 | stw r3,0(r4) | ;
| stw r3,0(r4) | | ;
exists (z=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe258 Allowed
Histogram (21 states)
1 :>0:r1=0; 0:r3=0; 2:r1=1; z=2;
6 :>0:r1=2; 0:r3=1; 2:r1=1; z=2;
14 :>0:r1=2; 0:r3=0; 2:r1=1; z=1;
8 :>0:r1=1; 0:r3=1; 2:r1=1; z=2;
672 :>0:r1=0; 0:r3=1; 2:r1=1; z=2;
863 :>0:r1=0; 0:r3=0; 2:r1=1; z=1;
3165 :>0:r1=1; 0:r3=0; 2:r1=0; z=1;
1700 :>0:r1=2; 0:r3=0; 2:r1=0; z=2;
5533 :>0:r1=1; 0:r3=1; 2:r1=1; z=1;
57034 :>0:r1=0; 0:r3=1; 2:r1=1; z=1;
57537 :>0:r1=0; 0:r3=1; 2:r1=0; z=2;
46498 :>0:r1=1; 0:r3=1; 2:r1=0; z=2;
40305 :>0:r1=2; 0:r3=0; 2:r1=0; z=1;
8060 :>0:r1=1; 0:r3=0; 2:r1=0; z=2;
55493 :>0:r1=0; 0:r3=0; 2:r1=0; z=2;
202674:>0:r1=2; 0:r3=1; 2:r1=0; z=1;
39493 :>0:r1=0; 0:r3=1; 2:r1=0; z=1;
232100:>0:r1=0; 0:r3=0; 2:r1=0; z=1;
109221:>0:r1=1; 0:r3=1; 2:r1=0; z=1;
25455 :>0:r1=2; 0:r3=1; 2:r1=0; z=2;
114168:>0:r1=2; 0:r3=1; 2:r1=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1) is NOT validated
Hash=7db2e1dac51c82ca3ed303649892c198
Cycle=Rfe SyncdRR Fre LwSyncdWW Rfe SyncdRW Wse
Relax safe258 No
Safe=Fre Wse LwSyncdWW ACSyncdRW ACSyncdRR
Time safe258 2.01
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe259.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe259
"LwSyncdWW Rfe SyncdRR Fre LwSyncdWW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | lwsync | li r3,1 | lwsync ;
| li r3,1 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe259 Allowed
Histogram (15 states)
3 :>0:r1=0; 0:r3=0; 2:r1=1; a=2;
3 :>0:r1=1; 0:r3=1; 2:r1=1; a=2;
23 :>0:r1=1; 0:r3=0; 2:r1=1; a=1;
16 :>0:r1=1; 0:r3=0; 2:r1=0; a=2;
5781 :>0:r1=0; 0:r3=1; 2:r1=1; a=2;
8356 :>0:r1=1; 0:r3=1; 2:r1=0; a=2;
33882 :>0:r1=1; 0:r3=1; 2:r1=1; a=1;
21630 :>0:r1=0; 0:r3=0; 2:r1=1; a=1;
11216 :>0:r1=1; 0:r3=0; 2:r1=0; a=1;
178066:>0:r1=0; 0:r3=0; 2:r1=0; a=1;
223563:>0:r1=1; 0:r3=1; 2:r1=0; a=1;
162739:>0:r1=0; 0:r3=1; 2:r1=1; a=1;
101112:>0:r1=0; 0:r3=1; 2:r1=0; a=1;
79535 :>0:r1=0; 0:r3=0; 2:r1=0; a=2;
174075:>0:r1=0; 0:r3=1; 2:r1=0; a=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1) is NOT validated
Hash=176e53c34621194da1fef8db4600d90a
Cycle=LwSyncdWW Rfe SyncdRR Fre LwSyncdWW Rfe SyncdRW Wse
Relax safe259 No
Safe=Fre Wse LwSyncdWW ACSyncdRW ACSyncdRR
Time safe259 2.15
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe260.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe260
"SyncdWR Fre SyncsWW Rfe LwSyncdRW Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
li r1,1 | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | lwsync | sync | stw r1,0(r2) ;
sync | li r3,1 | li r3,1 | sync ;
li r3,2 | stw r3,0(r4) | stw r3,0(r4) | lwz r3,0(r4) ;
stw r3,0(r2) | | | ;
exists (x=2 /\ z=2 /\ 1:r1=2 /\ 2:r1=1 /\ 3:r3=0)
Generated assembler
_litmus_P0_0_: li r9,1
_litmus_P0_1_: stw r9,0(r2)
_litmus_P0_2_: sync
_litmus_P0_3_: li r11,2
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: lwsync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r10,2
_litmus_P3_1_: stw r10,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: lwz r8,0(r2)
Test safe260 Allowed
Histogram (31 states)
10 :>1:r1=2; 2:r1=1; 3:r3=0; x=2; z=1;
22 :>1:r1=2; 2:r1=1; 3:r3=1; x=2; z=1;
10 :>1:r1=1; 2:r1=1; 3:r3=2; x=2; z=2;
7 :>1:r1=1; 2:r1=1; 3:r3=1; x=2; z=1;
2 :>1:r1=0; 2:r1=1; 3:r3=0; x=2; z=2;
36 :>1:r1=1; 2:r1=0; 3:r3=0; x=2; z=2;
15 :>1:r1=0; 2:r1=1; 3:r3=1; x=2; z=2;
35 :>1:r1=2; 2:r1=1; 3:r3=2; x=2; z=2;
14 :>1:r1=1; 2:r1=0; 3:r3=1; x=2; z=2;
37 :>1:r1=1; 2:r1=1; 3:r3=0; x=2; z=1;
42 :>1:r1=1; 2:r1=0; 3:r3=1; x=2; z=1;
8732 :>1:r1=2; 2:r1=0; 3:r3=0; x=2; z=1;
1339 :>1:r1=2; 2:r1=0; 3:r3=1; x=2; z=2;
5842 :>1:r1=0; 2:r1=1; 3:r3=2; x=2; z=2;
6280 :>1:r1=1; 2:r1=1; 3:r3=2; x=2; z=1;
2433 :>1:r1=0; 2:r1=0; 3:r3=0; x=2; z=2;
31389 :>1:r1=0; 2:r1=1; 3:r3=0; x=2; z=1;
27493 :>1:r1=2; 2:r1=0; 3:r3=1; x=2; z=1;
27568 :>1:r1=0; 2:r1=0; 3:r3=1; x=2; z=1;
76218 :>1:r1=1; 2:r1=0; 3:r3=2; x=2; z=2;
35431 :>1:r1=0; 2:r1=0; 3:r3=1; x=2; z=2;
76527 :>1:r1=2; 2:r1=0; 3:r3=2; x=2; z=2;
89990 :>1:r1=1; 2:r1=0; 3:r3=0; x=2; z=1;
12349 :>1:r1=0; 2:r1=0; 3:r3=2; x=2; z=1;
169544:>1:r1=2; 2:r1=0; 3:r3=2; x=2; z=1;
110705:>1:r1=0; 2:r1=1; 3:r3=1; x=2; z=1;
51623 :>1:r1=0; 2:r1=0; 3:r3=2; x=2; z=2;
26569 :>1:r1=1; 2:r1=0; 3:r3=2; x=2; z=1;
81152 :>1:r1=0; 2:r1=1; 3:r3=2; x=2; z=1;
119873:>1:r1=0; 2:r1=0; 3:r3=0; x=2; z=1;
38713 :>1:r1=2; 2:r1=1; 3:r3=2; x=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 1:r1=2 /\ 2:r1=1 /\ 3:r3=0) is NOT validated
Hash=9a0f5d7741ca687b8870d1ba8d3a4458
Cycle=SyncdWR Fre SyncsWW Rfe LwSyncdRW Rfe SyncdRW Wse
Relax safe260 No
Safe=Fre Wse SyncdWR LwSyncdRW ACSyncdRW BCSyncsWW
Time safe260 2.61
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe261.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe261
"SyncdWW Rfe SyncsRW Rfe LwSyncdRW Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | lwsync | sync | stw r1,0(r2) ;
li r3,2 | li r3,1 | li r3,1 | sync ;
stw r3,0(r2) | stw r3,0(r4) | stw r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: lwsync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe261 Allowed
Histogram (29 states)
1 :>0:r1=0; 1:r1=0; 2:r1=1; x=2; z=2;
13 :>0:r1=0; 1:r1=1; 2:r1=1; x=1; z=1;
5 :>0:r1=0; 1:r1=2; 2:r1=1; x=2; z=1;
38 :>0:r1=0; 1:r1=2; 2:r1=1; x=1; z=2;
34 :>0:r1=1; 1:r1=2; 2:r1=0; x=2; z=2;
94 :>0:r1=0; 1:r1=1; 2:r1=1; x=2; z=1;
25 :>0:r1=1; 1:r1=1; 2:r1=0; x=2; z=2;
196 :>0:r1=0; 1:r1=2; 2:r1=0; x=2; z=2;
1293 :>0:r1=1; 1:r1=2; 2:r1=0; x=2; z=1;
873 :>0:r1=0; 1:r1=1; 2:r1=0; x=2; z=2;
1365 :>0:r1=0; 1:r1=1; 2:r1=0; x=1; z=2;
2027 :>0:r1=1; 1:r1=1; 2:r1=1; x=2; z=1;
1175 :>0:r1=0; 1:r1=0; 2:r1=1; x=1; z=2;
14793 :>0:r1=0; 1:r1=1; 2:r1=0; x=1; z=1;
60831 :>0:r1=0; 1:r1=2; 2:r1=0; x=1; z=2;
24634 :>0:r1=0; 1:r1=1; 2:r1=0; x=2; z=1;
28322 :>0:r1=0; 1:r1=2; 2:r1=1; x=1; z=1;
72647 :>0:r1=1; 1:r1=1; 2:r1=0; x=2; z=1;
79610 :>0:r1=0; 1:r1=0; 2:r1=0; x=2; z=1;
35766 :>0:r1=1; 1:r1=0; 2:r1=1; x=2; z=1;
81858 :>0:r1=0; 1:r1=0; 2:r1=1; x=1; z=1;
47793 :>0:r1=0; 1:r1=0; 2:r1=0; x=1; z=1;
11775 :>0:r1=0; 1:r1=2; 2:r1=0; x=2; z=1;
24304 :>0:r1=0; 1:r1=0; 2:r1=0; x=2; z=2;
135755:>0:r1=0; 1:r1=0; 2:r1=0; x=1; z=2;
168188:>0:r1=0; 1:r1=2; 2:r1=0; x=1; z=1;
55569 :>0:r1=1; 1:r1=0; 2:r1=0; x=2; z=1;
508 :>0:r1=1; 1:r1=0; 2:r1=0; x=2; z=2;
150508:>0:r1=0; 1:r1=0; 2:r1=1; x=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1) is NOT validated
Hash=9df0079181b56777bf8b447ee9ab7b5a
Cycle=SyncdWW Rfe SyncsRW Rfe LwSyncdRW Rfe SyncdRW Wse
Relax safe261 No
Safe=Wse LwSyncdRW ACSyncdRW BCSyncsRW BCSyncdWW
Time safe261 2.58
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe262.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe262
"SyncdWW Rfe LwSyncdRW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
lwsync | sync | stw r1,0(r2) ;
li r3,1 | li r3,1 | sync ;
stw r3,0(r4) | stw r3,0(r4) | li r3,1 ;
| | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 1:r1=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stw r8,0(r2)
_litmus_P1_0_: lwz r10,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stw r8,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe262 Allowed
Histogram (7 states)
1111 :>0:r1=0; 1:r1=1; z=2;
398 :>0:r1=1; 1:r1=0; z=2;
1062 :>0:r1=1; 1:r1=1; z=1;
219352:>0:r1=1; 1:r1=0; z=1;
192503:>0:r1=0; 1:r1=0; z=2;
304573:>0:r1=0; 1:r1=0; z=1;
281001:>0:r1=0; 1:r1=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 1:r1=1) is NOT validated
Hash=65b9b4572c5dbad2eda73a8def19dcf7
Cycle=SyncdWW Rfe LwSyncdRW Rfe SyncdRW Wse
Relax safe262 No
Safe=Wse LwSyncdRW ACSyncdRW BCSyncdWW
Time safe262 1.63
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe263.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe263
"SyncdWR Fre SyncdWW Rfe LwSyncdRW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
li r1,1 | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | lwsync | sync | stw r1,0(r2) ;
sync | li r3,1 | li r3,1 | sync ;
li r3,1 | stw r3,0(r4) | stw r3,0(r4) | lwz r3,0(r4) ;
stw r3,0(r4) | | | ;
exists (a=2 /\ 1:r1=1 /\ 2:r1=1 /\ 3:r3=0)
Generated assembler
_litmus_P0_0_: li r11,1
_litmus_P0_1_: stw r11,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r10,1
_litmus_P0_4_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: lwsync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r10,2
_litmus_P3_1_: stw r10,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: lwz r8,0(r2)
Test safe263 Allowed
Histogram (15 states)
5 :>1:r1=1; 2:r1=0; 3:r3=0; a=2;
25 :>1:r1=0; 2:r1=1; 3:r3=0; a=2;
183 :>1:r1=1; 2:r1=1; 3:r3=1; a=2;
38 :>1:r1=1; 2:r1=1; 3:r3=0; a=1;
2522 :>1:r1=1; 2:r1=1; 3:r3=1; a=1;
4147 :>1:r1=0; 2:r1=1; 3:r3=1; a=2;
9753 :>1:r1=0; 2:r1=0; 3:r3=0; a=2;
45929 :>1:r1=0; 2:r1=1; 3:r3=0; a=1;
104033:>1:r1=1; 2:r1=0; 3:r3=1; a=1;
3698 :>1:r1=1; 2:r1=0; 3:r3=0; a=1;
241942:>1:r1=0; 2:r1=0; 3:r3=1; a=2;
184774:>1:r1=0; 2:r1=1; 3:r3=1; a=1;
168055:>1:r1=0; 2:r1=0; 3:r3=1; a=1;
192290:>1:r1=0; 2:r1=0; 3:r3=0; a=1;
42606 :>1:r1=1; 2:r1=0; 3:r3=1; a=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 1:r1=1 /\ 2:r1=1 /\ 3:r3=0) is NOT validated
Hash=790185bafe6b1acd694ab9c5c25785c3
Cycle=SyncdWR Fre SyncdWW Rfe LwSyncdRW Rfe SyncdRW Wse
Relax safe263 No
Safe=Fre Wse SyncdWR LwSyncdRW ACSyncdRW BCSyncdWW
Time safe263 2.11
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe264.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe264
"SyncdWW Rfe SyncdRW Rfe LwSyncdRW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | lwsync | sync | stw r1,0(r2) ;
li r3,1 | li r3,1 | li r3,1 | sync ;
stw r3,0(r4) | stw r3,0(r4) | stw r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: lwsync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe264 Allowed
Histogram (13 states)
5 :>0:r1=1; 1:r1=1; 2:r1=1; a=1;
8 :>0:r1=0; 1:r1=1; 2:r1=1; a=2;
847 :>0:r1=1; 1:r1=0; 2:r1=0; a=2;
3110 :>0:r1=0; 1:r1=0; 2:r1=1; a=2;
859 :>0:r1=1; 1:r1=1; 2:r1=0; a=1;
34703 :>0:r1=0; 1:r1=1; 2:r1=0; a=2;
62563 :>0:r1=1; 1:r1=0; 2:r1=1; a=1;
132396:>0:r1=0; 1:r1=1; 2:r1=0; a=1;
157745:>0:r1=0; 1:r1=0; 2:r1=0; a=1;
227580:>0:r1=0; 1:r1=0; 2:r1=0; a=2;
270892:>0:r1=0; 1:r1=0; 2:r1=1; a=1;
10877 :>0:r1=0; 1:r1=1; 2:r1=1; a=1;
98415 :>0:r1=1; 1:r1=0; 2:r1=0; a=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=1) is NOT validated
Hash=5c76b8f96fb5b0d0e83be1381e6e4c9a
Cycle=SyncdWW Rfe SyncdRW Rfe LwSyncdRW Rfe SyncdRW Wse
Relax safe264 No
Safe=Wse LwSyncdRW ACSyncdRW BCSyncdWW BCSyncdRW
Time safe264 2.04
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe265.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe265
"SyncdWW Rfe DpdR Fre LwSyncsWW Rfe SyncdRW Wse"
{0:r2=x; 0:r5=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwzx r4,r3,r5 | lwsync | li r3,1 | sync ;
| li r3,2 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r2) | | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r4=0 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r6,0(r9)
_litmus_P0_1_: xor r11,r6,r6
_litmus_P0_2_: lwzx r7,r11,r2
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe265 Allowed
Histogram (28 states)
1 :>0:r1=1; 0:r4=2; 2:r1=1; y=2; z=2;
1 :>0:r1=1; 0:r4=0; 2:r1=0; y=2; z=2;
9 :>0:r1=0; 0:r4=1; 2:r1=2; y=2; z=2;
16 :>0:r1=1; 0:r4=2; 2:r1=2; y=2; z=2;
287 :>0:r1=1; 0:r4=1; 2:r1=2; y=2; z=1;
92 :>0:r1=0; 0:r4=2; 2:r1=1; y=2; z=2;
91 :>0:r1=1; 0:r4=0; 2:r1=1; y=2; z=1;
168 :>0:r1=1; 0:r4=0; 2:r1=2; y=2; z=1;
151 :>0:r1=0; 0:r4=0; 2:r1=1; y=2; z=2;
13158 :>0:r1=0; 0:r4=0; 2:r1=0; y=2; z=2;
8768 :>0:r1=0; 0:r4=2; 2:r1=2; y=2; z=2;
568 :>0:r1=0; 0:r4=0; 2:r1=2; y=2; z=2;
7357 :>0:r1=0; 0:r4=1; 2:r1=0; y=2; z=2;
3825 :>0:r1=1; 0:r4=0; 2:r1=0; y=2; z=1;
15657 :>0:r1=0; 0:r4=0; 2:r1=1; y=2; z=1;
4609 :>0:r1=0; 0:r4=1; 2:r1=2; y=2; z=1;
3415 :>0:r1=0; 0:r4=2; 2:r1=1; y=2; z=1;
4990 :>0:r1=1; 0:r4=1; 2:r1=0; y=2; z=1;
110969:>0:r1=0; 0:r4=0; 2:r1=2; y=2; z=1;
8470 :>0:r1=0; 0:r4=1; 2:r1=0; y=2; z=1;
72086 :>0:r1=1; 0:r4=2; 2:r1=0; y=2; z=1;
247435:>0:r1=0; 0:r4=2; 2:r1=2; y=2; z=1;
188342:>0:r1=0; 0:r4=2; 2:r1=0; y=2; z=2;
130478:>0:r1=0; 0:r4=0; 2:r1=0; y=2; z=1;
127903:>0:r1=1; 0:r4=2; 2:r1=2; y=2; z=1;
2485 :>0:r1=1; 0:r4=2; 2:r1=1; y=2; z=1;
3185 :>0:r1=1; 0:r4=2; 2:r1=0; y=2; z=2;
45484 :>0:r1=0; 0:r4=2; 2:r1=0; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r4=0 /\ 2:r1=2) is NOT validated
Hash=c461b402ad766f168a3f9ba24e14d613
Cycle=SyncdWW Rfe DpdR Fre LwSyncsWW Rfe SyncdRW Wse
Relax safe265 No
Safe=Fre Wse LwSyncsWW DpdR ACSyncdRW BCSyncdWW
Time safe265 2.48
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe266.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe266
"SyncdWR Fre LwSyncsWW Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
li r1,1 | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | sync | stw r1,0(r2) ;
lwsync | li r3,1 | sync ;
li r3,2 | stw r3,0(r4) | lwz r3,0(r4) ;
stw r3,0(r2) | | ;
exists (x=2 /\ y=2 /\ 1:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: li r9,1
_litmus_P0_1_: stw r9,0(r2)
_litmus_P0_2_: lwsync
_litmus_P0_3_: li r11,2
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r10,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stw r8,0(r2)
_litmus_P2_0_: li r8,2
_litmus_P2_1_: stw r8,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r10,0(r2)
Test safe266 Allowed
Histogram (14 states)
4 :>1:r1=1; 2:r3=1; x=2; y=1;
118 :>1:r1=0; 2:r3=0; x=2; y=2;
120 :>1:r1=0; 2:r3=1; x=2; y=2;
7696 :>1:r1=2; 2:r3=1; x=2; y=1;
6314 :>1:r1=1; 2:r3=2; x=2; y=1;
131 :>1:r1=1; 2:r3=2; x=2; y=2;
25242 :>1:r1=2; 2:r3=0; x=2; y=1;
8902 :>1:r1=1; 2:r3=0; x=2; y=1;
60248 :>1:r1=0; 2:r3=1; x=2; y=1;
54854 :>1:r1=0; 2:r3=2; x=2; y=1;
386710:>1:r1=2; 2:r3=2; x=2; y=1;
301560:>1:r1=0; 2:r3=2; x=2; y=2;
31160 :>1:r1=2; 2:r3=2; x=2; y=2;
116941:>1:r1=0; 2:r3=0; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 1:r1=2 /\ 2:r3=0) is NOT validated
Hash=0ffa0377661af86f7564b0c8332a53a6
Cycle=SyncdWR Fre LwSyncsWW Rfe SyncdRW Wse
Relax safe266 No
Safe=Fre Wse SyncdWR LwSyncsWW ACSyncdRW
Time safe266 1.62
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe267.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe267
"SyncdWW Rfe SyncdRR Fre LwSyncsWW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | lwsync | li r3,1 | sync ;
| li r3,2 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r2) | | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe267 Allowed
Histogram (27 states)
3 :>0:r1=1; 0:r3=1; 2:r1=1; y=2; z=1;
1 :>0:r1=0; 0:r3=1; 2:r1=1; y=2; z=1;
3 :>0:r1=1; 0:r3=0; 2:r1=0; y=2; z=2;
28 :>0:r1=1; 0:r3=2; 2:r1=2; y=2; z=2;
4 :>0:r1=0; 0:r3=1; 2:r1=2; y=2; z=2;
66 :>0:r1=1; 0:r3=1; 2:r1=2; y=2; z=1;
176 :>0:r1=0; 0:r3=2; 2:r1=1; y=2; z=2;
171 :>0:r1=0; 0:r3=0; 2:r1=1; y=2; z=2;
301 :>0:r1=1; 0:r3=0; 2:r1=0; y=2; z=1;
652 :>0:r1=1; 0:r3=1; 2:r1=0; y=2; z=1;
2966 :>0:r1=1; 0:r3=2; 2:r1=1; y=2; z=1;
13844 :>0:r1=0; 0:r3=0; 2:r1=0; y=2; z=2;
6057 :>0:r1=0; 0:r3=1; 2:r1=0; y=2; z=2;
3268 :>0:r1=0; 0:r3=2; 2:r1=1; y=2; z=1;
27650 :>0:r1=0; 0:r3=2; 2:r1=2; y=2; z=2;
95572 :>0:r1=1; 0:r3=2; 2:r1=0; y=2; z=1;
15428 :>0:r1=0; 0:r3=0; 2:r1=1; y=2; z=1;
4079 :>0:r1=0; 0:r3=1; 2:r1=0; y=2; z=1;
2945 :>0:r1=0; 0:r3=1; 2:r1=2; y=2; z=1;
84528 :>0:r1=0; 0:r3=0; 2:r1=0; y=2; z=1;
45956 :>0:r1=0; 0:r3=2; 2:r1=0; y=2; z=1;
251552:>0:r1=0; 0:r3=2; 2:r1=2; y=2; z=1;
205440:>0:r1=0; 0:r3=2; 2:r1=0; y=2; z=2;
104487:>0:r1=0; 0:r3=0; 2:r1=2; y=2; z=1;
132059:>0:r1=1; 0:r3=2; 2:r1=2; y=2; z=1;
2210 :>0:r1=1; 0:r3=2; 2:r1=0; y=2; z=2;
554 :>0:r1=0; 0:r3=0; 2:r1=2; y=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2) is NOT validated
Hash=16e3956a887b67b93b3392559e5c8a2b
Cycle=SyncdWW Rfe SyncdRR Fre LwSyncsWW Rfe SyncdRW Wse
Relax safe267 No
Safe=Fre Wse SyncdRR LwSyncsWW ACSyncdRW BCSyncdWW
Time safe267 2.53
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe268.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe268
"SyncdWW Rfe LwSyncdRR Fre LwSyncsWW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
lwsync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | lwsync | li r3,1 | sync ;
| li r3,2 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r2) | | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe268 Allowed
Histogram (29 states)
1 :>0:r1=1; 0:r3=0; 2:r1=0; y=2; z=2;
4 :>0:r1=1; 0:r3=0; 2:r1=1; y=2; z=1;
1 :>0:r1=0; 0:r3=1; 2:r1=1; y=2; z=2;
9 :>0:r1=0; 0:r3=1; 2:r1=2; y=2; z=2;
2 :>0:r1=0; 0:r3=1; 2:r1=1; y=2; z=1;
30 :>0:r1=1; 0:r3=2; 2:r1=2; y=2; z=2;
562 :>0:r1=0; 0:r3=2; 2:r1=1; y=2; z=2;
227 :>0:r1=0; 0:r3=0; 2:r1=1; y=2; z=2;
7 :>0:r1=1; 0:r3=0; 2:r1=2; y=2; z=1;
28 :>0:r1=1; 0:r3=1; 2:r1=2; y=2; z=1;
1794 :>0:r1=0; 0:r3=0; 2:r1=2; y=2; z=2;
3867 :>0:r1=1; 0:r3=2; 2:r1=1; y=2; z=1;
3268 :>0:r1=1; 0:r3=0; 2:r1=0; y=2; z=1;
5228 :>0:r1=1; 0:r3=1; 2:r1=0; y=2; z=1;
1907 :>0:r1=0; 0:r3=1; 2:r1=2; y=2; z=1;
78004 :>0:r1=0; 0:r3=0; 2:r1=0; y=2; z=2;
12059 :>0:r1=0; 0:r3=1; 2:r1=0; y=2; z=1;
11880 :>0:r1=0; 0:r3=1; 2:r1=0; y=2; z=2;
1961 :>0:r1=0; 0:r3=2; 2:r1=1; y=2; z=1;
16831 :>0:r1=0; 0:r3=0; 2:r1=1; y=2; z=1;
153681:>0:r1=0; 0:r3=2; 2:r1=0; y=2; z=2;
209678:>0:r1=0; 0:r3=2; 2:r1=2; y=2; z=1;
88815 :>0:r1=0; 0:r3=0; 2:r1=0; y=2; z=1;
37433 :>0:r1=0; 0:r3=2; 2:r1=0; y=2; z=1;
146087:>0:r1=0; 0:r3=0; 2:r1=2; y=2; z=1;
110311:>0:r1=1; 0:r3=2; 2:r1=2; y=2; z=1;
70953 :>0:r1=1; 0:r3=2; 2:r1=0; y=2; z=1;
1764 :>0:r1=1; 0:r3=2; 2:r1=0; y=2; z=2;
43608 :>0:r1=0; 0:r3=2; 2:r1=2; y=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2) is NOT validated
Hash=fae490aee1a90f027b595783a898bca4
Cycle=SyncdWW Rfe LwSyncdRR Fre LwSyncsWW Rfe SyncdRW Wse
Relax safe268 No
Safe=Fre Wse LwSyncsWW LwSyncdRR ACSyncdRW BCSyncdWW
Time safe268 2.48
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe269.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe269
"Rfe SyncdRR Fre LwSyncsWW Rfe SyncdRW Wse"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | lwsync | li r3,1 | ;
| li r3,2 | stw r3,0(r4) | ;
| stw r3,0(r2) | | ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe269 Allowed
Histogram (40 states)
5 :>0:r1=0; 0:r3=1; 2:r1=2; x=2; y=2;
20 :>0:r1=0; 0:r3=0; 2:r1=1; x=2; y=2;
4 :>0:r1=1; 0:r3=2; 2:r1=1; x=2; y=2;
1 :>0:r1=0; 0:r3=1; 2:r1=1; x=2; y=1;
9 :>0:r1=2; 0:r3=2; 2:r1=1; x=2; y=2;
69 :>0:r1=0; 0:r3=0; 2:r1=2; x=2; y=2;
5346 :>0:r1=1; 0:r3=0; 2:r1=0; x=2; y=2;
45 :>0:r1=2; 0:r3=0; 2:r1=0; x=2; y=2;
408 :>0:r1=2; 0:r3=1; 2:r1=0; x=2; y=2;
588 :>0:r1=1; 0:r3=2; 2:r1=2; x=2; y=2;
127 :>0:r1=0; 0:r3=2; 2:r1=1; x=2; y=2;
811 :>0:r1=2; 0:r3=2; 2:r1=2; x=2; y=2;
145 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; y=1;
128 :>0:r1=2; 0:r3=0; 2:r1=1; x=2; y=1;
51 :>0:r1=1; 0:r3=0; 2:r1=0; x=2; y=1;
510 :>0:r1=2; 0:r3=0; 2:r1=2; x=2; y=1;
2031 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; y=2;
892 :>0:r1=2; 0:r3=1; 2:r1=2; x=2; y=1;
4239 :>0:r1=2; 0:r3=0; 2:r1=0; x=2; y=1;
4041 :>0:r1=2; 0:r3=1; 2:r1=0; x=2; y=1;
6622 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; y=1;
11382 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; y=2;
7691 :>0:r1=0; 0:r3=1; 2:r1=2; x=2; y=1;
21006 :>0:r1=0; 0:r3=2; 2:r1=2; x=2; y=2;
7582 :>0:r1=0; 0:r3=2; 2:r1=1; x=2; y=1;
13345 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; y=2;
1313 :>0:r1=1; 0:r3=2; 2:r1=1; x=2; y=1;
63535 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; y=2;
9403 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; y=1;
8510 :>0:r1=2; 0:r3=2; 2:r1=1; x=2; y=1;
16003 :>0:r1=0; 0:r3=0; 2:r1=1; x=2; y=1;
56498 :>0:r1=1; 0:r3=2; 2:r1=2; x=2; y=1;
113088:>0:r1=0; 0:r3=2; 2:r1=2; x=2; y=1;
12987 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; y=2;
103149:>0:r1=0; 0:r3=0; 2:r1=2; x=2; y=1;
54116 :>0:r1=2; 0:r3=2; 2:r1=0; x=2; y=1;
105496:>0:r1=2; 0:r3=2; 2:r1=0; x=2; y=2;
29075 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; y=1;
54813 :>0:r1=0; 0:r3=0; 2:r1=0; x=2; y=1;
284916:>0:r1=2; 0:r3=2; 2:r1=2; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=2) is NOT validated
Hash=04f49acd4b9090fbac7da8f0e955c843
Cycle=Rfe SyncdRR Fre LwSyncsWW Rfe SyncdRW Wse
Relax safe269 No
Safe=Fre Wse LwSyncsWW ACSyncdRW ACSyncdRR
Time safe269 2.58
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe270.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe270
"LwSyncdWW Rfe SyncdRR Fre LwSyncsWW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | lwsync | li r3,1 | lwsync ;
| li r3,2 | stw r3,0(r4) | li r3,1 ;
| stw r3,0(r2) | | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe270 Allowed
Histogram (29 states)
1 :>0:r1=1; 0:r3=2; 2:r1=1; y=2; z=2;
1 :>0:r1=0; 0:r3=1; 2:r1=2; y=2; z=2;
4 :>0:r1=1; 0:r3=1; 2:r1=0; y=2; z=2;
3 :>0:r1=0; 0:r3=1; 2:r1=1; y=2; z=1;
1 :>0:r1=1; 0:r3=0; 2:r1=1; y=2; z=1;
10 :>0:r1=1; 0:r3=0; 2:r1=0; y=2; z=2;
31 :>0:r1=1; 0:r3=2; 2:r1=2; y=2; z=2;
745 :>0:r1=0; 0:r3=0; 2:r1=2; y=2; z=2;
121 :>0:r1=1; 0:r3=1; 2:r1=2; y=2; z=1;
343 :>0:r1=0; 0:r3=2; 2:r1=1; y=2; z=2;
4126 :>0:r1=1; 0:r3=2; 2:r1=1; y=2; z=1;
1247 :>0:r1=1; 0:r3=0; 2:r1=0; y=2; z=1;
18511 :>0:r1=0; 0:r3=1; 2:r1=0; y=2; z=2;
4024 :>0:r1=0; 0:r3=2; 2:r1=1; y=2; z=1;
23437 :>0:r1=0; 0:r3=2; 2:r1=2; y=2; z=2;
4360 :>0:r1=1; 0:r3=1; 2:r1=0; y=2; z=1;
8704 :>0:r1=0; 0:r3=1; 2:r1=0; y=2; z=1;
26747 :>0:r1=0; 0:r3=0; 2:r1=0; y=2; z=2;
3116 :>0:r1=0; 0:r3=1; 2:r1=2; y=2; z=1;
189 :>0:r1=0; 0:r3=0; 2:r1=1; y=2; z=2;
171283:>0:r1=0; 0:r3=2; 2:r1=0; y=2; z=2;
25365 :>0:r1=0; 0:r3=0; 2:r1=1; y=2; z=1;
97630 :>0:r1=1; 0:r3=2; 2:r1=0; y=2; z=1;
88170 :>0:r1=0; 0:r3=0; 2:r1=2; y=2; z=1;
48987 :>0:r1=0; 0:r3=2; 2:r1=0; y=2; z=1;
196758:>0:r1=0; 0:r3=2; 2:r1=2; y=2; z=1;
183425:>0:r1=1; 0:r3=2; 2:r1=2; y=2; z=1;
3803 :>0:r1=1; 0:r3=2; 2:r1=0; y=2; z=2;
88858 :>0:r1=0; 0:r3=0; 2:r1=0; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2) is NOT validated
Hash=d5692f07527a1f579e99263501039a02
Cycle=LwSyncdWW Rfe SyncdRR Fre LwSyncsWW Rfe SyncdRW Wse
Relax safe270 No
Safe=Fre Wse LwSyncsWW LwSyncdWW ACSyncdRW ACSyncdRR
Time safe270 2.53
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe271.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe271
"SyncdWW Rfe LwSyncsRW Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
lwsync | sync | stw r1,0(r2) ;
li r3,2 | li r3,1 | sync ;
stw r3,0(r2) | stw r3,0(r4) | li r3,1 ;
| | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r10,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stw r8,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe271 Allowed
Histogram (13 states)
69 :>0:r1=1; 1:r1=0; x=2; y=2;
3437 :>0:r1=0; 1:r1=0; x=2; y=2;
13033 :>0:r1=0; 1:r1=2; x=1; y=2;
9848 :>0:r1=1; 1:r1=2; x=2; y=1;
1787 :>0:r1=0; 1:r1=2; x=2; y=1;
54198 :>0:r1=0; 1:r1=1; x=1; y=1;
20484 :>0:r1=1; 1:r1=1; x=2; y=1;
269562:>0:r1=0; 1:r1=0; x=1; y=2;
10837 :>0:r1=0; 1:r1=1; x=2; y=1;
107010:>0:r1=0; 1:r1=0; x=2; y=1;
64132 :>0:r1=0; 1:r1=0; x=1; y=1;
359356:>0:r1=0; 1:r1=2; x=1; y=1;
86247 :>0:r1=1; 1:r1=0; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2) is NOT validated
Hash=b9215df5a1d7ea0c7321081fb1199812
Cycle=SyncdWW Rfe LwSyncsRW Rfe SyncdRW Wse
Relax safe271 No
Safe=Wse LwSyncsRW ACSyncdRW BCSyncdWW
Time safe271 1.58
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe272.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe272
"SyncdWR Fre SyncdWW Rfe LwSyncsRW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
li r1,1 | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | lwsync | sync | stw r1,0(r2) ;
sync | li r3,2 | li r3,1 | sync ;
li r3,1 | stw r3,0(r2) | stw r3,0(r4) | lwz r3,0(r4) ;
stw r3,0(r4) | | | ;
exists (y=2 /\ z=2 /\ 1:r1=1 /\ 2:r1=2 /\ 3:r3=0)
Generated assembler
_litmus_P0_0_: li r11,1
_litmus_P0_1_: stw r11,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r10,1
_litmus_P0_4_: stw r10,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: lwsync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r10,2
_litmus_P3_1_: stw r10,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: lwz r8,0(r2)
Test safe272 Allowed
Histogram (30 states)
3 :>1:r1=0; 2:r1=2; 3:r3=1; y=2; z=2;
1 :>1:r1=1; 2:r1=2; 3:r3=0; y=2; z=1;
2 :>1:r1=1; 2:r1=1; 3:r3=0; y=2; z=1;
11 :>1:r1=1; 2:r1=2; 3:r3=1; y=2; z=2;
37 :>1:r1=0; 2:r1=2; 3:r3=0; y=1; z=2;
21 :>1:r1=0; 2:r1=2; 3:r3=0; y=2; z=1;
246 :>1:r1=0; 2:r1=1; 3:r3=1; y=1; z=2;
21 :>1:r1=0; 2:r1=1; 3:r3=1; y=2; z=2;
4 :>1:r1=0; 2:r1=0; 3:r3=0; y=2; z=2;
75 :>1:r1=1; 2:r1=1; 3:r3=1; y=2; z=2;
258 :>1:r1=1; 2:r1=0; 3:r3=0; y=2; z=1;
126 :>1:r1=0; 2:r1=1; 3:r3=0; y=2; z=1;
4669 :>1:r1=0; 2:r1=1; 3:r3=0; y=1; z=1;
1143 :>1:r1=0; 2:r1=0; 3:r3=0; y=1; z=2;
5127 :>1:r1=0; 2:r1=1; 3:r3=1; y=2; z=1;
5058 :>1:r1=1; 2:r1=0; 3:r3=1; y=2; z=2;
26261 :>1:r1=1; 2:r1=1; 3:r3=1; y=2; z=1;
20033 :>1:r1=1; 2:r1=2; 3:r3=1; y=2; z=1;
1202 :>1:r1=0; 2:r1=2; 3:r3=1; y=2; z=1;
27929 :>1:r1=0; 2:r1=0; 3:r3=1; y=2; z=2;
931 :>1:r1=0; 2:r1=0; 3:r3=0; y=2; z=1;
22970 :>1:r1=0; 2:r1=0; 3:r3=1; y=2; z=1;
4911 :>1:r1=0; 2:r1=2; 3:r3=1; y=1; z=2;
67438 :>1:r1=0; 2:r1=0; 3:r3=0; y=1; z=1;
23853 :>1:r1=0; 2:r1=0; 3:r3=1; y=1; z=1;
21015 :>1:r1=1; 2:r1=0; 3:r3=1; y=2; z=1;
221326:>1:r1=0; 2:r1=2; 3:r3=1; y=1; z=1;
256882:>1:r1=0; 2:r1=2; 3:r3=0; y=1; z=1;
202184:>1:r1=0; 2:r1=0; 3:r3=1; y=1; z=2;
86263 :>1:r1=0; 2:r1=1; 3:r3=1; y=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 1:r1=1 /\ 2:r1=2 /\ 3:r3=0) is NOT validated
Hash=4144caa79b6d9ee07d3304074547e588
Cycle=SyncdWR Fre SyncdWW Rfe LwSyncsRW Rfe SyncdRW Wse
Relax safe272 No
Safe=Fre Wse SyncdWR LwSyncsRW ACSyncdRW BCSyncdWW
Time safe272 2.70
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe273.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe273
"SyncdWW Rfe SyncdRW Rfe LwSyncsRW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | lwsync | sync | stw r1,0(r2) ;
li r3,1 | li r3,2 | li r3,1 | sync ;
stw r3,0(r4) | stw r3,0(r2) | stw r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: lwsync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe273 Allowed
Histogram (27 states)
34 :>0:r1=0; 1:r1=0; 2:r1=1; y=2; z=2;
7 :>0:r1=0; 1:r1=0; 2:r1=2; y=2; z=2;
20 :>0:r1=1; 1:r1=0; 2:r1=1; y=2; z=1;
26 :>0:r1=0; 1:r1=1; 2:r1=2; y=2; z=2;
197 :>0:r1=0; 1:r1=0; 2:r1=1; y=1; z=2;
32 :>0:r1=1; 1:r1=0; 2:r1=2; y=1; z=2;
77 :>0:r1=1; 1:r1=1; 2:r1=0; y=2; z=2;
638 :>0:r1=0; 1:r1=1; 2:r1=1; y=2; z=2;
990 :>0:r1=1; 1:r1=0; 2:r1=1; y=1; z=1;
1743 :>0:r1=1; 1:r1=0; 2:r1=0; y=1; z=2;
4176 :>0:r1=0; 1:r1=0; 2:r1=2; y=2; z=1;
36444 :>0:r1=0; 1:r1=1; 2:r1=2; y=2; z=1;
4090 :>0:r1=1; 1:r1=0; 2:r1=0; y=2; z=1;
34059 :>0:r1=0; 1:r1=0; 2:r1=2; y=1; z=2;
29033 :>0:r1=0; 1:r1=0; 2:r1=0; y=2; z=1;
19214 :>0:r1=0; 1:r1=0; 2:r1=0; y=2; z=2;
33519 :>0:r1=0; 1:r1=1; 2:r1=1; y=2; z=1;
72797 :>0:r1=0; 1:r1=0; 2:r1=1; y=1; z=1;
97954 :>0:r1=1; 1:r1=0; 2:r1=2; y=1; z=1;
46725 :>0:r1=0; 1:r1=0; 2:r1=0; y=1; z=1;
93086 :>0:r1=1; 1:r1=0; 2:r1=0; y=1; z=1;
51554 :>0:r1=0; 1:r1=1; 2:r1=0; y=2; z=1;
215464:>0:r1=0; 1:r1=0; 2:r1=0; y=1; z=2;
244345:>0:r1=0; 1:r1=0; 2:r1=2; y=1; z=1;
469 :>0:r1=1; 1:r1=1; 2:r1=0; y=2; z=1;
10833 :>0:r1=0; 1:r1=1; 2:r1=0; y=2; z=2;
2474 :>0:r1=0; 1:r1=0; 2:r1=1; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2) is NOT validated
Hash=d5f4207d7b79f2fd64aa28df29b232da
Cycle=SyncdWW Rfe SyncdRW Rfe LwSyncsRW Rfe SyncdRW Wse
Relax safe273 No
Safe=Wse LwSyncsRW ACSyncdRW BCSyncdWW BCSyncdRW
Time safe273 2.53
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe274.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe274
"SyncdWR Fre Rfe SyncsRW Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=x; 3:r2=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,1 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,2 | li r3,1 | sync | ;
stw r3,0(r2) | stw r3,0(r4) | lwz r3,0(r4) | ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
Test safe274 Allowed
Histogram (45 states)
2 :>0:r1=0; 1:r1=1; 2:r3=1; x=2; y=2;
13 :>0:r1=0; 1:r1=2; 2:r3=2; x=1; y=2;
16 :>0:r1=1; 1:r1=0; 2:r3=0; x=2; y=2;
242 :>0:r1=1; 1:r1=2; 2:r3=0; x=2; y=1;
444 :>0:r1=0; 1:r1=0; 2:r3=0; x=2; y=2;
6586 :>0:r1=1; 1:r1=1; 2:r3=1; x=2; y=2;
451 :>0:r1=0; 1:r1=2; 2:r3=2; x=2; y=2;
868 :>0:r1=0; 1:r1=1; 2:r3=2; x=2; y=2;
9372 :>0:r1=1; 1:r1=2; 2:r3=1; x=2; y=1;
687 :>0:r1=1; 1:r1=2; 2:r3=2; x=2; y=2;
3337 :>0:r1=0; 1:r1=2; 2:r3=2; x=1; y=1;
330 :>0:r1=0; 1:r1=0; 2:r3=0; x=1; y=2;
800 :>0:r1=0; 1:r1=1; 2:r3=2; x=1; y=1;
24507 :>0:r1=1; 1:r1=1; 2:r3=0; x=2; y=1;
5037 :>0:r1=0; 1:r1=0; 2:r3=1; x=2; y=2;
44251 :>0:r1=1; 1:r1=0; 2:r3=1; x=2; y=2;
14823 :>0:r1=1; 1:r1=2; 2:r3=2; x=2; y=1;
9251 :>0:r1=0; 1:r1=0; 2:r3=0; x=1; y=1;
786 :>0:r1=1; 1:r1=0; 2:r3=2; x=2; y=1;
1745 :>0:r1=0; 1:r1=0; 2:r3=2; x=1; y=2;
19602 :>0:r1=0; 1:r1=2; 2:r3=0; x=2; y=1;
7065 :>0:r1=0; 1:r1=2; 2:r3=1; x=2; y=1;
22703 :>0:r1=1; 1:r1=0; 2:r3=1; x=2; y=1;
35044 :>0:r1=0; 1:r1=2; 2:r3=1; x=1; y=2;
8799 :>0:r1=0; 1:r1=1; 2:r3=0; x=1; y=1;
3067 :>0:r1=0; 1:r1=0; 2:r3=2; x=1; y=1;
18117 :>0:r1=1; 1:r1=0; 2:r3=0; x=2; y=1;
37820 :>0:r1=0; 1:r1=2; 2:r3=1; x=1; y=1;
55676 :>0:r1=0; 1:r1=0; 2:r3=2; x=2; y=2;
41151 :>0:r1=0; 1:r1=0; 2:r3=1; x=1; y=2;
7849 :>0:r1=0; 1:r1=0; 2:r3=2; x=2; y=1;
20101 :>0:r1=0; 1:r1=1; 2:r3=1; x=2; y=1;
83925 :>0:r1=1; 1:r1=0; 2:r3=2; x=2; y=2;
89553 :>0:r1=1; 1:r1=1; 2:r3=2; x=2; y=1;
29351 :>0:r1=0; 1:r1=0; 2:r3=0; x=2; y=1;
8632 :>0:r1=0; 1:r1=2; 2:r3=2; x=2; y=1;
6286 :>0:r1=0; 1:r1=1; 2:r3=2; x=2; y=1;
13537 :>0:r1=0; 1:r1=0; 2:r3=1; x=2; y=1;
13137 :>0:r1=0; 1:r1=1; 2:r3=0; x=2; y=1;
139873:>0:r1=0; 1:r1=1; 2:r3=1; x=1; y=1;
68454 :>0:r1=1; 1:r1=1; 2:r3=1; x=2; y=1;
4473 :>0:r1=0; 1:r1=0; 2:r3=1; x=1; y=1;
11149 :>0:r1=0; 1:r1=2; 2:r3=0; x=1; y=1;
13461 :>0:r1=0; 1:r1=1; 2:r3=1; x=1; y=2;
117627:>0:r1=1; 1:r1=1; 2:r3=2; x=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r3=0) is NOT validated
Hash=4e4ed0ece41624eaae51c19e4f765358
Cycle=SyncdWR Fre Rfe SyncsRW Rfe SyncdRW Wse
Relax safe274 No
Safe=Fre Wse SyncdWR ACSyncsRW ACSyncdRW
Time safe274 2.71
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe275.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe275
"SyncdWW Rfe DpdR Fri Rfe SyncsRW Rfe SyncdRW Wse"
{0:r2=x; 0:r5=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | sync | sync | stw r1,0(r2) ;
lwzx r4,r3,r5 | li r3,2 | li r3,1 | sync ;
li r6,1 | stw r3,0(r2) | stw r3,0(r4) | li r3,1 ;
stw r6,0(r5) | | | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r4=0 /\ 1:r1=1 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r5,0(r9)
_litmus_P0_1_: xor r10,r5,r5
_litmus_P0_2_: lwzx r6,r10,r2
_litmus_P0_3_: li r11,1
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe275 Allowed
Histogram (40 states)
1 :>0:r1=1; 0:r4=0; 1:r1=1; 2:r1=2; y=2; z=1;
2 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; y=1; z=2;
1 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=0; y=1; z=2;
32 :>0:r1=1; 0:r4=2; 1:r1=0; 2:r1=2; y=1; z=2;
4 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=2; y=2; z=2;
15 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=2; y=2; z=1;
20 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=2; y=2; z=2;
27 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=2; y=1; z=2;
8 :>0:r1=0; 0:r4=2; 1:r1=0; 2:r1=1; y=1; z=2;
84 :>0:r1=1; 0:r4=0; 1:r1=1; 2:r1=1; y=2; z=1;
307 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; y=2; z=2;
102 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=1; y=2; z=1;
663 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; y=1; z=1;
1971 :>0:r1=1; 0:r4=2; 1:r1=0; 2:r1=1; y=1; z=1;
12 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=1; y=1; z=1;
11706 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=1; y=2; z=2;
5775 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=0; y=2; z=1;
1055 :>0:r1=1; 0:r4=2; 1:r1=0; 2:r1=0; y=1; z=2;
1204 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=2; y=1; z=1;
5595 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=2; y=2; z=1;
10202 :>0:r1=0; 0:r4=2; 1:r1=0; 2:r1=2; y=1; z=2;
28911 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=0; y=1; z=1;
6084 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=2; y=2; z=1;
30561 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; y=2; z=2;
12667 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; y=2; z=1;
17434 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; y=1; z=1;
99283 :>0:r1=1; 0:r4=2; 1:r1=0; 2:r1=0; y=1; z=1;
24915 :>0:r1=1; 0:r4=2; 1:r1=0; 2:r1=2; y=1; z=1;
86332 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; y=1; z=2;
12489 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; y=2; z=1;
56162 :>0:r1=0; 0:r4=2; 1:r1=0; 2:r1=0; y=1; z=1;
60462 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; y=2; z=2;
34859 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=2; y=1; z=1;
45530 :>0:r1=0; 0:r4=2; 1:r1=0; 2:r1=1; y=1; z=1;
66240 :>0:r1=0; 0:r4=2; 1:r1=0; 2:r1=0; y=1; z=2;
177517:>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=1; y=2; z=1;
177939:>0:r1=0; 0:r4=2; 1:r1=0; 2:r1=2; y=1; z=1;
593 :>0:r1=1; 0:r4=0; 1:r1=1; 2:r1=0; y=2; z=1;
9 :>0:r1=1; 0:r4=0; 1:r1=1; 2:r1=0; y=2; z=2;
23227 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 0:r4=0 /\ 1:r1=1 /\ 2:r1=2) is NOT validated
Hash=3e3447c192f8f7596a04f74a7f8012f7
Cycle=SyncdWW Rfe DpdR Fri Rfe SyncsRW Rfe SyncdRW Wse
Relax safe275 No
Safe=Fri Wse DpdR ACSyncsRW ACSyncdRW BCSyncdWW
Time safe275 3.15
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe276.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe276
"SyncdWW Rfe DpdW Rfe SyncsRW Rfe SyncdRW Wse"
{0:r2=x; 0:r5=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | sync | sync | stw r1,0(r2) ;
li r4,1 | li r3,2 | li r3,1 | sync ;
stwx r4,r3,r5 | stw r3,0(r2) | stw r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: xor r11,r7,r7
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stwx r8,r11,r2
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe276 Allowed
Histogram (31 states)
8 :>0:r1=1; 1:r1=0; 2:r1=0; y=2; z=2;
22 :>0:r1=1; 1:r1=1; 2:r1=2; y=2; z=1;
7 :>0:r1=1; 1:r1=0; 2:r1=2; y=1; z=2;
183 :>0:r1=0; 1:r1=1; 2:r1=2; y=2; z=2;
620 :>0:r1=0; 1:r1=0; 2:r1=1; y=2; z=2;
182 :>0:r1=0; 1:r1=0; 2:r1=2; y=2; z=2;
149 :>0:r1=1; 1:r1=1; 2:r1=0; y=2; z=2;
2740 :>0:r1=1; 1:r1=0; 2:r1=0; y=1; z=2;
504 :>0:r1=1; 1:r1=1; 2:r1=1; y=2; z=1;
789 :>0:r1=0; 1:r1=0; 2:r1=1; y=1; z=2;
338 :>0:r1=1; 1:r1=0; 2:r1=2; y=2; z=1;
2427 :>0:r1=1; 1:r1=0; 2:r1=1; y=2; z=1;
3342 :>0:r1=1; 1:r1=1; 2:r1=0; y=2; z=1;
11258 :>0:r1=0; 1:r1=1; 2:r1=1; y=2; z=2;
4240 :>0:r1=1; 1:r1=0; 2:r1=1; y=1; z=1;
21284 :>0:r1=0; 1:r1=0; 2:r1=2; y=1; z=2;
60291 :>0:r1=1; 1:r1=0; 2:r1=0; y=2; z=1;
54362 :>0:r1=1; 1:r1=0; 2:r1=2; y=1; z=1;
30526 :>0:r1=0; 1:r1=0; 2:r1=1; y=2; z=1;
30332 :>0:r1=0; 1:r1=0; 2:r1=1; y=1; z=1;
35795 :>0:r1=1; 1:r1=0; 2:r1=0; y=1; z=1;
42515 :>0:r1=0; 1:r1=1; 2:r1=2; y=2; z=1;
59430 :>0:r1=0; 1:r1=0; 2:r1=0; y=2; z=1;
151933:>0:r1=0; 1:r1=1; 2:r1=1; y=2; z=1;
27418 :>0:r1=0; 1:r1=1; 2:r1=0; y=2; z=1;
98572 :>0:r1=0; 1:r1=0; 2:r1=0; y=1; z=2;
18174 :>0:r1=0; 1:r1=0; 2:r1=2; y=2; z=1;
175703:>0:r1=0; 1:r1=0; 2:r1=2; y=1; z=1;
35542 :>0:r1=0; 1:r1=0; 2:r1=0; y=1; z=1;
107972:>0:r1=0; 1:r1=0; 2:r1=0; y=2; z=2;
23342 :>0:r1=0; 1:r1=1; 2:r1=0; y=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2) is NOT validated
Hash=1fe2763bce04231b4d1345f82dd564c3
Cycle=SyncdWW Rfe DpdW Rfe SyncsRW Rfe SyncdRW Wse
Relax safe276 No
Safe=Wse DpdW ACSyncsRW ACSyncdRW BCSyncdWW
Time safe276 2.62
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe277.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe277
"LwSyncdWW Rfe SyncsRW Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | sync | stw r1,0(r2) ;
li r3,2 | li r3,1 | lwsync ;
stw r3,0(r2) | stw r3,0(r4) | li r3,1 ;
| | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r10,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stw r8,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe277 Allowed
Histogram (13 states)
1047 :>0:r1=1; 1:r1=0; x=2; y=2;
6477 :>0:r1=0; 1:r1=2; x=1; y=2;
15324 :>0:r1=0; 1:r1=0; x=2; y=2;
4205 :>0:r1=1; 1:r1=2; x=2; y=1;
28685 :>0:r1=1; 1:r1=0; x=2; y=1;
27934 :>0:r1=0; 1:r1=1; x=2; y=1;
274542:>0:r1=0; 1:r1=2; x=1; y=1;
91044 :>0:r1=0; 1:r1=0; x=2; y=1;
15310 :>0:r1=0; 1:r1=2; x=2; y=1;
208628:>0:r1=1; 1:r1=1; x=2; y=1;
247971:>0:r1=0; 1:r1=0; x=1; y=2;
16620 :>0:r1=0; 1:r1=1; x=1; y=1;
62213 :>0:r1=0; 1:r1=0; x=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2) is NOT validated
Hash=735de862f72a91f29b3f2938d21c7065
Cycle=LwSyncdWW Rfe SyncsRW Rfe SyncdRW Wse
Relax safe277 No
Safe=Wse LwSyncdWW ACSyncsRW ACSyncdRW
Time safe277 1.54
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe278.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe278
"SyncdWR Fre LwSyncdWW Rfe SyncsRW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
li r1,1 | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | sync | sync | stw r1,0(r2) ;
lwsync | li r3,2 | li r3,1 | sync ;
li r3,1 | stw r3,0(r2) | stw r3,0(r4) | lwz r3,0(r4) ;
stw r3,0(r4) | | | ;
exists (y=2 /\ z=2 /\ 1:r1=1 /\ 2:r1=2 /\ 3:r3=0)
Generated assembler
_litmus_P0_0_: li r11,1
_litmus_P0_1_: stw r11,0(r9)
_litmus_P0_2_: lwsync
_litmus_P0_3_: li r10,1
_litmus_P0_4_: stw r10,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r10,2
_litmus_P3_1_: stw r10,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: lwz r8,0(r2)
Test safe278 Allowed
Histogram (31 states)
2 :>1:r1=1; 2:r1=0; 3:r3=0; y=2; z=2;
12 :>1:r1=0; 2:r1=2; 3:r3=0; y=1; z=2;
11 :>1:r1=1; 2:r1=2; 3:r3=0; y=2; z=1;
125 :>1:r1=0; 2:r1=0; 3:r3=0; y=2; z=2;
174 :>1:r1=0; 2:r1=1; 3:r3=1; y=1; z=2;
571 :>1:r1=0; 2:r1=2; 3:r3=0; y=2; z=1;
582 :>1:r1=1; 2:r1=1; 3:r3=0; y=2; z=1;
97 :>1:r1=0; 2:r1=2; 3:r3=1; y=2; z=2;
2368 :>1:r1=0; 2:r1=1; 3:r3=0; y=2; z=1;
7291 :>1:r1=1; 2:r1=2; 3:r3=1; y=2; z=1;
438 :>1:r1=0; 2:r1=1; 3:r3=1; y=2; z=2;
19 :>1:r1=1; 2:r1=2; 3:r3=1; y=2; z=2;
2636 :>1:r1=1; 2:r1=1; 3:r3=1; y=2; z=2;
2562 :>1:r1=1; 2:r1=0; 3:r3=0; y=2; z=1;
2448 :>1:r1=0; 2:r1=0; 3:r3=0; y=1; z=2;
28538 :>1:r1=0; 2:r1=2; 3:r3=1; y=2; z=1;
10064 :>1:r1=0; 2:r1=1; 3:r3=0; y=1; z=1;
72433 :>1:r1=0; 2:r1=0; 3:r3=0; y=1; z=1;
122983:>1:r1=0; 2:r1=2; 3:r3=0; y=1; z=1;
61272 :>1:r1=0; 2:r1=0; 3:r3=0; y=2; z=1;
45858 :>1:r1=0; 2:r1=1; 3:r3=1; y=2; z=1;
80565 :>1:r1=0; 2:r1=0; 3:r3=1; y=2; z=2;
24592 :>1:r1=0; 2:r1=1; 3:r3=1; y=1; z=1;
146746:>1:r1=0; 2:r1=0; 3:r3=1; y=1; z=2;
47756 :>1:r1=0; 2:r1=0; 3:r3=1; y=2; z=1;
19485 :>1:r1=0; 2:r1=2; 3:r3=1; y=1; z=2;
28968 :>1:r1=0; 2:r1=0; 3:r3=1; y=1; z=1;
91889 :>1:r1=1; 2:r1=1; 3:r3=1; y=2; z=1;
160163:>1:r1=0; 2:r1=2; 3:r3=1; y=1; z=1;
23621 :>1:r1=1; 2:r1=0; 3:r3=1; y=2; z=2;
15731 :>1:r1=1; 2:r1=0; 3:r3=1; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 1:r1=1 /\ 2:r1=2 /\ 3:r3=0) is NOT validated
Hash=82b520cd80b79e0df81cd3815089bced
Cycle=SyncdWR Fre LwSyncdWW Rfe SyncsRW Rfe SyncdRW Wse
Relax safe278 No
Safe=Fre Wse SyncdWR LwSyncdWW ACSyncsRW ACSyncdRW
Time safe278 2.59
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe279.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe279
"SyncdWW Rfe LwSyncdRW Rfe SyncsRW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
lwsync | sync | sync | stw r1,0(r2) ;
li r3,1 | li r3,2 | li r3,1 | sync ;
stw r3,0(r4) | stw r3,0(r2) | stw r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe279 Allowed
Histogram (30 states)
1 :>0:r1=1; 1:r1=0; 2:r1=0; y=2; z=2;
16 :>0:r1=1; 1:r1=0; 2:r1=2; y=1; z=2;
5 :>0:r1=0; 1:r1=1; 2:r1=2; y=2; z=2;
14 :>0:r1=1; 1:r1=1; 2:r1=1; y=2; z=1;
29 :>0:r1=1; 1:r1=0; 2:r1=2; y=2; z=1;
133 :>0:r1=0; 1:r1=0; 2:r1=2; y=2; z=2;
190 :>0:r1=0; 1:r1=0; 2:r1=1; y=1; z=2;
131 :>0:r1=1; 1:r1=1; 2:r1=0; y=2; z=2;
142 :>0:r1=1; 1:r1=0; 2:r1=1; y=2; z=1;
1711 :>0:r1=1; 1:r1=0; 2:r1=0; y=1; z=2;
10559 :>0:r1=0; 1:r1=1; 2:r1=1; y=2; z=2;
739 :>0:r1=1; 1:r1=0; 2:r1=1; y=1; z=1;
385 :>0:r1=0; 1:r1=0; 2:r1=1; y=2; z=2;
55240 :>0:r1=0; 1:r1=0; 2:r1=2; y=1; z=2;
15272 :>0:r1=0; 1:r1=0; 2:r1=2; y=2; z=1;
93045 :>0:r1=1; 1:r1=0; 2:r1=0; y=2; z=1;
17670 :>0:r1=1; 1:r1=0; 2:r1=2; y=1; z=1;
141384:>0:r1=0; 1:r1=1; 2:r1=1; y=2; z=1;
100699:>0:r1=0; 1:r1=0; 2:r1=0; y=2; z=2;
21041 :>0:r1=0; 1:r1=0; 2:r1=1; y=1; z=1;
29655 :>0:r1=0; 1:r1=1; 2:r1=0; y=2; z=1;
16864 :>0:r1=0; 1:r1=0; 2:r1=1; y=2; z=1;
106640:>0:r1=0; 1:r1=0; 2:r1=0; y=1; z=2;
133997:>0:r1=0; 1:r1=0; 2:r1=2; y=1; z=1;
89713 :>0:r1=1; 1:r1=0; 2:r1=0; y=1; z=1;
69596 :>0:r1=0; 1:r1=0; 2:r1=0; y=2; z=1;
42080 :>0:r1=0; 1:r1=0; 2:r1=0; y=1; z=1;
2091 :>0:r1=1; 1:r1=1; 2:r1=0; y=2; z=1;
42075 :>0:r1=0; 1:r1=1; 2:r1=0; y=2; z=2;
8883 :>0:r1=0; 1:r1=1; 2:r1=2; y=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2) is NOT validated
Hash=7aaddd8b4b6d5bafe65b689f267d0e6e
Cycle=SyncdWW Rfe LwSyncdRW Rfe SyncsRW Rfe SyncdRW Wse
Relax safe279 No
Safe=Wse LwSyncdRW ACSyncsRW ACSyncdRW BCSyncdWW
Time safe279 2.47
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe280.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe280
"Rfe SyncdRW Rfe SyncsRW Rfe SyncdRW Wse"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | sync | sync | stw r1,0(r2) ;
li r3,1 | li r3,2 | li r3,1 | ;
stw r3,0(r4) | stw r3,0(r2) | stw r3,0(r4) | ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe280 Allowed
Histogram (39 states)
1 :>0:r1=0; 1:r1=1; 2:r1=2; x=2; y=2;
3 :>0:r1=0; 1:r1=0; 2:r1=2; x=2; y=2;
3 :>0:r1=0; 1:r1=0; 2:r1=1; x=1; y=2;
16 :>0:r1=0; 1:r1=0; 2:r1=1; x=2; y=2;
163 :>0:r1=1; 1:r1=1; 2:r1=0; x=2; y=1;
31 :>0:r1=2; 1:r1=1; 2:r1=2; x=2; y=1;
99 :>0:r1=2; 1:r1=1; 2:r1=0; x=2; y=2;
657 :>0:r1=0; 1:r1=1; 2:r1=1; x=2; y=2;
788 :>0:r1=2; 1:r1=1; 2:r1=1; x=2; y=1;
291 :>0:r1=2; 1:r1=0; 2:r1=2; x=1; y=2;
2064 :>0:r1=1; 1:r1=1; 2:r1=0; x=2; y=2;
7538 :>0:r1=2; 1:r1=0; 2:r1=0; x=2; y=2;
158 :>0:r1=1; 1:r1=0; 2:r1=2; x=1; y=2;
3128 :>0:r1=2; 1:r1=0; 2:r1=1; x=2; y=1;
9427 :>0:r1=0; 1:r1=1; 2:r1=0; x=2; y=2;
6003 :>0:r1=1; 1:r1=0; 2:r1=0; x=2; y=1;
15217 :>0:r1=1; 1:r1=0; 2:r1=0; x=2; y=2;
16576 :>0:r1=0; 1:r1=1; 2:r1=0; x=2; y=1;
2545 :>0:r1=2; 1:r1=0; 2:r1=2; x=2; y=1;
69500 :>0:r1=2; 1:r1=0; 2:r1=0; x=1; y=2;
18882 :>0:r1=1; 1:r1=0; 2:r1=2; x=1; y=1;
2866 :>0:r1=0; 1:r1=0; 2:r1=0; x=1; y=2;
11034 :>0:r1=1; 1:r1=0; 2:r1=0; x=1; y=2;
16587 :>0:r1=0; 1:r1=0; 2:r1=2; x=2; y=1;
4569 :>0:r1=0; 1:r1=0; 2:r1=0; x=1; y=1;
91125 :>0:r1=1; 1:r1=0; 2:r1=0; x=1; y=1;
62474 :>0:r1=2; 1:r1=0; 2:r1=0; x=2; y=1;
24160 :>0:r1=0; 1:r1=0; 2:r1=2; x=1; y=2;
22579 :>0:r1=0; 1:r1=0; 2:r1=0; x=2; y=2;
22026 :>0:r1=0; 1:r1=0; 2:r1=1; x=2; y=1;
201037:>0:r1=2; 1:r1=0; 2:r1=2; x=1; y=1;
51215 :>0:r1=0; 1:r1=0; 2:r1=2; x=1; y=1;
97076 :>0:r1=2; 1:r1=0; 2:r1=0; x=1; y=1;
5049 :>0:r1=0; 1:r1=1; 2:r1=2; x=2; y=1;
34556 :>0:r1=0; 1:r1=0; 2:r1=0; x=2; y=1;
26878 :>0:r1=2; 1:r1=0; 2:r1=1; x=1; y=1;
7811 :>0:r1=0; 1:r1=0; 2:r1=1; x=1; y=1;
161338:>0:r1=0; 1:r1=1; 2:r1=1; x=2; y=1;
4530 :>0:r1=2; 1:r1=1; 2:r1=0; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=2) is NOT validated
Hash=0e7adb7b5a701cbb35eea670fe62dc46
Cycle=Rfe SyncdRW Rfe SyncsRW Rfe SyncdRW Wse
Relax safe280 No
Safe=Wse ACSyncsRW ACSyncdRW
Time safe280 2.52
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe281.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe281
"LwSyncdWW Rfe SyncdRW Rfe SyncsRW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | sync | sync | stw r1,0(r2) ;
li r3,1 | li r3,2 | li r3,1 | lwsync ;
stw r3,0(r4) | stw r3,0(r2) | stw r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe281 Allowed
Histogram (29 states)
1 :>0:r1=1; 1:r1=1; 2:r1=1; y=2; z=1;
20 :>0:r1=0; 1:r1=0; 2:r1=2; y=2; z=2;
11 :>0:r1=1; 1:r1=0; 2:r1=2; y=1; z=2;
178 :>0:r1=0; 1:r1=0; 2:r1=1; y=2; z=2;
69 :>0:r1=0; 1:r1=0; 2:r1=1; y=1; z=2;
60 :>0:r1=1; 1:r1=0; 2:r1=0; y=2; z=2;
152 :>0:r1=1; 1:r1=0; 2:r1=2; y=2; z=1;
176 :>0:r1=1; 1:r1=1; 2:r1=0; y=2; z=2;
1637 :>0:r1=1; 1:r1=0; 2:r1=1; y=1; z=1;
1430 :>0:r1=1; 1:r1=0; 2:r1=1; y=2; z=1;
2741 :>0:r1=0; 1:r1=1; 2:r1=2; y=2; z=1;
8747 :>0:r1=0; 1:r1=0; 2:r1=2; y=1; z=2;
4628 :>0:r1=1; 1:r1=0; 2:r1=0; y=1; z=2;
67085 :>0:r1=1; 1:r1=0; 2:r1=0; y=2; z=1;
16194 :>0:r1=0; 1:r1=0; 2:r1=2; y=2; z=1;
112276:>0:r1=0; 1:r1=1; 2:r1=1; y=2; z=1;
70644 :>0:r1=0; 1:r1=0; 2:r1=0; y=2; z=1;
88000 :>0:r1=0; 1:r1=0; 2:r1=0; y=2; z=2;
36173 :>0:r1=0; 1:r1=0; 2:r1=1; y=2; z=1;
10892 :>0:r1=0; 1:r1=0; 2:r1=1; y=1; z=1;
105164:>0:r1=1; 1:r1=0; 2:r1=2; y=1; z=1;
107569:>0:r1=0; 1:r1=0; 2:r1=0; y=1; z=2;
155161:>0:r1=0; 1:r1=0; 2:r1=2; y=1; z=1;
125504:>0:r1=1; 1:r1=0; 2:r1=0; y=1; z=1;
35734 :>0:r1=0; 1:r1=1; 2:r1=0; y=2; z=1;
39985 :>0:r1=0; 1:r1=0; 2:r1=0; y=1; z=1;
1911 :>0:r1=1; 1:r1=1; 2:r1=0; y=2; z=1;
7389 :>0:r1=0; 1:r1=1; 2:r1=0; y=2; z=2;
469 :>0:r1=0; 1:r1=1; 2:r1=1; y=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2) is NOT validated
Hash=60956a6d377577abbffbe65fd44dc7eb
Cycle=LwSyncdWW Rfe SyncdRW Rfe SyncsRW Rfe SyncdRW Wse
Relax safe281 No
Safe=Wse LwSyncdWW ACSyncsRW ACSyncdRW
Time safe281 2.41
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe282.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe282
"Rfe SyncdRW Rfe SyncdRW Wse"
{0:r2=y; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | sync | stw r1,0(r2) ;
li r3,1 | li r3,1 | ;
stw r3,0(r4) | stw r3,0(r4) | ;
exists (y=2 /\ 0:r1=2 /\ 1:r1=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stw r8,0(r2)
_litmus_P1_0_: lwz r10,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stw r8,0(r2)
_litmus_P2_0_: li r9,2
_litmus_P2_1_: stw r9,0(r2)
Test safe282 Allowed
Histogram (9 states)
430 :>0:r1=0; 1:r1=1; y=2;
421 :>0:r1=2; 1:r1=1; y=1;
74923 :>0:r1=2; 1:r1=0; y=2;
156618:>0:r1=0; 1:r1=1; y=1;
81093 :>0:r1=0; 1:r1=0; y=2;
292927:>0:r1=2; 1:r1=0; y=1;
80978 :>0:r1=1; 1:r1=0; y=2;
227482:>0:r1=0; 1:r1=0; y=1;
85128 :>0:r1=1; 1:r1=0; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=2 /\ 1:r1=1) is NOT validated
Hash=e3edf89052cc50f1c44e40a365bc727f
Cycle=Rfe SyncdRW Rfe SyncdRW Wse
Relax safe282 No
Safe=Wse ACSyncdRW
Time safe282 1.39
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe283.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe283
"SyncdWW Rfe DpdW Wsi Rfe SyncdRW Rfe SyncdRW Wse"
{0:r2=x; 0:r5=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | sync | sync | stw r1,0(r2) ;
li r4,1 | li r3,1 | li r3,1 | sync ;
stwx r4,r3,r5 | stw r3,0(r4) | stw r3,0(r4) | li r3,1 ;
li r6,2 | | | stw r3,0(r4) ;
stw r6,0(r5) | | | ;
exists (a=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r6,0(r9)
_litmus_P0_1_: xor r10,r6,r6
_litmus_P0_2_: li r11,1
_litmus_P0_3_: stwx r11,r10,r2
_litmus_P0_4_: li r7,2
_litmus_P0_5_: stw r7,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe283 Allowed
Histogram (13 states)
5 :>0:r1=0; 1:r1=2; 2:r1=1; a=2; y=2;
5 :>0:r1=1; 1:r1=2; 2:r1=1; a=1; y=2;
2801 :>0:r1=0; 1:r1=0; 2:r1=1; a=2; y=2;
6953 :>0:r1=1; 1:r1=0; 2:r1=1; a=1; y=2;
6151 :>0:r1=0; 1:r1=2; 2:r1=1; a=1; y=2;
6536 :>0:r1=1; 1:r1=2; 2:r1=0; a=1; y=2;
1141 :>0:r1=1; 1:r1=0; 2:r1=0; a=2; y=2;
136841:>0:r1=0; 1:r1=2; 2:r1=0; a=2; y=2;
193491:>0:r1=0; 1:r1=0; 2:r1=1; a=1; y=2;
175257:>0:r1=0; 1:r1=0; 2:r1=0; a=2; y=2;
106155:>0:r1=0; 1:r1=0; 2:r1=0; a=1; y=2;
244822:>0:r1=0; 1:r1=2; 2:r1=0; a=1; y=2;
119842:>0:r1=1; 1:r1=0; 2:r1=0; a=1; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1) is NOT validated
Hash=61e02ee2d2e49ac2daa12314b158743a
Cycle=SyncdWW Rfe DpdW Wsi Rfe SyncdRW Rfe SyncdRW Wse
Relax safe283 No
Safe=Wsi Wse DpdW ACSyncdRW BCSyncdWW
Time safe283 2.23
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe284.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe284
"SyncdWR Fre Rfe SyncdRW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x; 3:r2=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,1 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | li r3,1 | sync | ;
stw r3,0(r4) | stw r3,0(r4) | lwz r3,0(r4) | ;
exists (z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
Test safe284 Allowed
Histogram (14 states)
1 :>0:r1=1; 1:r1=1; 2:r3=1; z=2;
274 :>0:r1=1; 1:r1=1; 2:r3=0; z=1;
4025 :>0:r1=0; 1:r1=1; 2:r3=1; z=2;
80 :>0:r1=1; 1:r1=0; 2:r3=0; z=2;
9538 :>0:r1=0; 1:r1=1; 2:r3=0; z=1;
2229 :>0:r1=0; 1:r1=0; 2:r3=0; z=2;
11387 :>0:r1=1; 1:r1=1; 2:r3=1; z=1;
133999:>0:r1=0; 1:r1=1; 2:r3=1; z=1;
94750 :>0:r1=0; 1:r1=0; 2:r3=1; z=2;
127643:>0:r1=0; 1:r1=0; 2:r3=0; z=1;
97971 :>0:r1=0; 1:r1=0; 2:r3=1; z=1;
275648:>0:r1=1; 1:r1=0; 2:r3=1; z=1;
90412 :>0:r1=1; 1:r1=0; 2:r3=0; z=1;
152043:>0:r1=1; 1:r1=0; 2:r3=1; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r3=0) is NOT validated
Hash=ab29bd65fd159e356b60f3189e5c4180
Cycle=SyncdWR Fre Rfe SyncdRW Rfe SyncdRW Wse
Relax safe284 No
Safe=Fre Wse SyncdWR ACSyncdRW
Time safe284 1.96
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe285.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe285
"SyncdWW Rfe DpdR Fri Rfe SyncdRW Rfe SyncdRW Wse"
{0:r2=x; 0:r5=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | sync | sync | stw r1,0(r2) ;
lwzx r4,r3,r5 | li r3,1 | li r3,1 | sync ;
li r6,1 | stw r3,0(r4) | stw r3,0(r4) | li r3,1 ;
stw r6,0(r5) | | | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 0:r4=0 /\ 1:r1=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r5,0(r9)
_litmus_P0_1_: xor r10,r5,r5
_litmus_P0_2_: lwzx r6,r10,r2
_litmus_P0_3_: li r11,1
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe285 Allowed
Histogram (14 states)
1 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=1; a=2;
3 :>0:r1=1; 0:r4=0; 1:r1=1; 2:r1=1; a=1;
5 :>0:r1=1; 0:r4=0; 1:r1=1; 2:r1=0; a=2;
491 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=1; a=1;
357 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; a=2;
1584 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=0; a=2;
1854 :>0:r1=1; 0:r4=0; 1:r1=1; 2:r1=0; a=1;
98144 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; a=2;
15193 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=1; a=1;
119561:>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=0; a=1;
153417:>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; a=2;
158183:>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; a=1;
210694:>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; a=1;
240513:>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; a=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 0:r4=0 /\ 1:r1=1 /\ 2:r1=1) is NOT validated
Hash=2d4dad227586b05fa899103c8d209b0b
Cycle=SyncdWW Rfe DpdR Fri Rfe SyncdRW Rfe SyncdRW Wse
Relax safe285 No
Safe=Fri Wse DpdR ACSyncdRW BCSyncdWW
Time safe285 2.13
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe286.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe286
"SyncdWW Rfe DpsR Fri Rfe SyncdRW Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | sync | sync | stw r1,0(r2) ;
lwzx r4,r3,r2 | li r3,1 | li r3,1 | sync ;
li r5,2 | stw r3,0(r4) | stw r3,0(r4) | li r3,1 ;
stw r5,0(r2) | | | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r4=1 /\ 1:r1=2 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r6,0(r2)
_litmus_P0_1_: xor r10,r6,r6
_litmus_P0_2_: lwzx r9,r10,r2
_litmus_P0_3_: li r11,2
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe286 Allowed
Histogram (32 states)
1 :>0:r1=1; 0:r4=1; 1:r1=2; 2:r1=1; x=2; z=1;
3 :>0:r1=0; 0:r4=1; 1:r1=0; 2:r1=0; x=2; z=1;
11 :>0:r1=0; 0:r4=1; 1:r1=2; 2:r1=0; x=2; z=1;
8 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=1; x=2; z=1;
1 :>0:r1=0; 0:r4=0; 1:r1=2; 2:r1=1; x=2; z=1;
19 :>0:r1=1; 0:r4=1; 1:r1=2; 2:r1=0; x=2; z=2;
60 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; x=2; z=2;
24 :>0:r1=0; 0:r4=0; 1:r1=2; 2:r1=0; x=2; z=2;
3 :>0:r1=0; 0:r4=1; 1:r1=0; 2:r1=1; x=2; z=1;
39 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=1; x=1; z=1;
222 :>0:r1=1; 0:r4=1; 1:r1=1; 2:r1=1; x=2; z=1;
502 :>0:r1=1; 0:r4=1; 1:r1=1; 2:r1=0; x=2; z=2;
82 :>0:r1=0; 0:r4=0; 1:r1=2; 2:r1=1; x=1; z=2;
423 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; x=1; z=2;
4181 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; x=1; z=2;
17756 :>0:r1=1; 0:r4=1; 1:r1=2; 2:r1=0; x=2; z=1;
15008 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; x=2; z=2;
11878 :>0:r1=1; 0:r4=1; 1:r1=0; 2:r1=1; x=2; z=1;
59394 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; x=1; z=1;
10574 :>0:r1=0; 0:r4=0; 1:r1=2; 2:r1=0; x=2; z=1;
19367 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; x=2; z=1;
53297 :>0:r1=1; 0:r4=1; 1:r1=1; 2:r1=0; x=2; z=1;
146799:>0:r1=0; 0:r4=0; 1:r1=2; 2:r1=0; x=1; z=2;
23858 :>0:r1=0; 0:r4=0; 1:r1=2; 2:r1=1; x=1; z=1;
47699 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; x=1; z=1;
118022:>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; x=1; z=1;
66897 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; x=2; z=1;
84002 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; x=1; z=2;
210592:>0:r1=0; 0:r4=0; 1:r1=2; 2:r1=0; x=1; z=1;
47522 :>0:r1=1; 0:r4=1; 1:r1=0; 2:r1=0; x=2; z=1;
1858 :>0:r1=1; 0:r4=1; 1:r1=0; 2:r1=0; x=2; z=2;
59898 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; x=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 0:r4=1 /\ 1:r1=2 /\ 2:r1=1) is NOT validated
Hash=2d7c332b403fdc1e05a397709026cc19
Cycle=SyncdWW Rfe DpsR Fri Rfe SyncdRW Rfe SyncdRW Wse
Relax safe286 No
Safe=Fri Wse DpsR ACSyncdRW BCSyncdWW
Time safe286 2.88
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe287.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe287
"SyncdWW Rfe DpdW Rfe SyncdRW Rfe SyncdRW Wse"
{0:r2=x; 0:r5=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | sync | sync | stw r1,0(r2) ;
li r4,1 | li r3,1 | li r3,1 | sync ;
stwx r4,r3,r5 | stw r3,0(r4) | stw r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: xor r11,r7,r7
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stwx r8,r11,r2
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe287 Allowed
Histogram (13 states)
4 :>0:r1=0; 1:r1=1; 2:r1=1; a=2;
10 :>0:r1=1; 1:r1=1; 2:r1=1; a=1;
4716 :>0:r1=1; 1:r1=1; 2:r1=0; a=1;
1241 :>0:r1=0; 1:r1=0; 2:r1=1; a=2;
22411 :>0:r1=1; 1:r1=0; 2:r1=1; a=1;
13450 :>0:r1=0; 1:r1=1; 2:r1=1; a=1;
69258 :>0:r1=0; 1:r1=1; 2:r1=0; a=2;
201273:>0:r1=0; 1:r1=0; 2:r1=0; a=2;
204556:>0:r1=0; 1:r1=0; 2:r1=1; a=1;
85813 :>0:r1=1; 1:r1=0; 2:r1=0; a=1;
152942:>0:r1=0; 1:r1=0; 2:r1=0; a=1;
243041:>0:r1=0; 1:r1=1; 2:r1=0; a=1;
1285 :>0:r1=1; 1:r1=0; 2:r1=0; a=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=1) is NOT validated
Hash=b8bd4035a569dd3f839bc5e65bbe645d
Cycle=SyncdWW Rfe DpdW Rfe SyncdRW Rfe SyncdRW Wse
Relax safe287 No
Safe=Wse DpdW ACSyncdRW BCSyncdWW
Time safe287 2.14
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe288.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe288
"SyncdWW Rfe DpsW Rfe SyncdRW Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | sync | sync | stw r1,0(r2) ;
li r4,2 | li r3,1 | li r3,1 | sync ;
stwx r4,r3,r2 | stw r3,0(r4) | stw r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: xor r11,r8,r8
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stwx r9,r11,r2
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe288 Allowed
Histogram (30 states)
1 :>0:r1=0; 1:r1=0; 2:r1=1; x=2; z=2;
2 :>0:r1=0; 1:r1=2; 2:r1=1; x=2; z=1;
4 :>0:r1=0; 1:r1=1; 2:r1=1; x=2; z=1;
7 :>0:r1=1; 1:r1=2; 2:r1=1; x=2; z=1;
15 :>0:r1=0; 1:r1=2; 2:r1=0; x=2; z=2;
25 :>0:r1=1; 1:r1=1; 2:r1=0; x=2; z=2;
103 :>0:r1=0; 1:r1=2; 2:r1=1; x=1; z=2;
24 :>0:r1=1; 1:r1=2; 2:r1=0; x=2; z=2;
26 :>0:r1=0; 1:r1=1; 2:r1=1; x=1; z=1;
29 :>0:r1=0; 1:r1=1; 2:r1=0; x=2; z=2;
830 :>0:r1=1; 1:r1=1; 2:r1=1; x=2; z=1;
5965 :>0:r1=0; 1:r1=0; 2:r1=1; x=1; z=2;
800 :>0:r1=1; 1:r1=0; 2:r1=0; x=2; z=2;
11262 :>0:r1=0; 1:r1=0; 2:r1=0; x=2; z=2;
1821 :>0:r1=0; 1:r1=1; 2:r1=0; x=1; z=2;
1718 :>0:r1=0; 1:r1=1; 2:r1=0; x=2; z=1;
1619 :>0:r1=0; 1:r1=2; 2:r1=0; x=2; z=1;
13566 :>0:r1=1; 1:r1=0; 2:r1=1; x=2; z=1;
38844 :>0:r1=1; 1:r1=1; 2:r1=0; x=2; z=1;
55055 :>0:r1=1; 1:r1=2; 2:r1=0; x=2; z=1;
29792 :>0:r1=0; 1:r1=2; 2:r1=1; x=1; z=1;
46819 :>0:r1=0; 1:r1=0; 2:r1=0; x=2; z=1;
119229:>0:r1=0; 1:r1=0; 2:r1=0; x=1; z=2;
54680 :>0:r1=0; 1:r1=0; 2:r1=0; x=1; z=1;
59802 :>0:r1=1; 1:r1=0; 2:r1=0; x=2; z=1;
137292:>0:r1=0; 1:r1=2; 2:r1=0; x=1; z=2;
208456:>0:r1=0; 1:r1=2; 2:r1=0; x=1; z=1;
43350 :>0:r1=0; 1:r1=0; 2:r1=1; x=2; z=1;
48034 :>0:r1=0; 1:r1=1; 2:r1=0; x=1; z=1;
120830:>0:r1=0; 1:r1=0; 2:r1=1; x=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1) is NOT validated
Hash=2e2cc9ca2e67270805b0798378462ddf
Cycle=SyncdWW Rfe DpsW Rfe SyncdRW Rfe SyncdRW Wse
Relax safe288 No
Safe=Wse DpsW ACSyncdRW BCSyncdWW
Time safe288 2.62
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe289.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe289
"LwSyncdWW Rfe SyncdRW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | sync | stw r1,0(r2) ;
li r3,1 | li r3,1 | lwsync ;
stw r3,0(r4) | stw r3,0(r4) | li r3,1 ;
| | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 1:r1=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stw r8,0(r2)
_litmus_P1_0_: lwz r10,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stw r8,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe289 Allowed
Histogram (7 states)
378 :>0:r1=0; 1:r1=1; z=2;
2467 :>0:r1=1; 1:r1=0; z=2;
605 :>0:r1=1; 1:r1=1; z=1;
395207:>0:r1=0; 1:r1=0; z=1;
174220:>0:r1=0; 1:r1=0; z=2;
189807:>0:r1=0; 1:r1=1; z=1;
237316:>0:r1=1; 1:r1=0; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 1:r1=1) is NOT validated
Hash=3525b878472bdc39ac1ced1cf3114760
Cycle=LwSyncdWW Rfe SyncdRW Rfe SyncdRW Wse
Relax safe289 No
Safe=Wse LwSyncdWW ACSyncdRW
Time safe289 1.56
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe290.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe290
"SyncdWR Fre LwSyncdWW Rfe SyncdRW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
li r1,1 | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | sync | sync | stw r1,0(r2) ;
lwsync | li r3,1 | li r3,1 | sync ;
li r3,1 | stw r3,0(r4) | stw r3,0(r4) | lwz r3,0(r4) ;
stw r3,0(r4) | | | ;
exists (a=2 /\ 1:r1=1 /\ 2:r1=1 /\ 3:r3=0)
Generated assembler
_litmus_P0_0_: li r11,1
_litmus_P0_1_: stw r11,0(r9)
_litmus_P0_2_: lwsync
_litmus_P0_3_: li r10,1
_litmus_P0_4_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r10,2
_litmus_P3_1_: stw r10,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: lwz r8,0(r2)
Test safe290 Allowed
Histogram (15 states)
2 :>1:r1=0; 2:r1=1; 3:r3=0; a=2;
5 :>1:r1=1; 2:r1=0; 3:r3=0; a=2;
32 :>1:r1=1; 2:r1=1; 3:r3=0; a=1;
154 :>1:r1=1; 2:r1=1; 3:r3=1; a=2;
3882 :>1:r1=0; 2:r1=1; 3:r3=1; a=2;
9613 :>1:r1=1; 2:r1=0; 3:r3=0; a=1;
4893 :>1:r1=0; 2:r1=0; 3:r3=0; a=2;
45464 :>1:r1=0; 2:r1=1; 3:r3=0; a=1;
184728:>1:r1=1; 2:r1=0; 3:r3=1; a=1;
53932 :>1:r1=1; 2:r1=0; 3:r3=1; a=2;
178000:>1:r1=0; 2:r1=0; 3:r3=0; a=1;
240296:>1:r1=0; 2:r1=0; 3:r3=1; a=2;
152717:>1:r1=0; 2:r1=1; 3:r3=1; a=1;
5133 :>1:r1=1; 2:r1=1; 3:r3=1; a=1;
121149:>1:r1=0; 2:r1=0; 3:r3=1; a=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 1:r1=1 /\ 2:r1=1 /\ 3:r3=0) is NOT validated
Hash=67528749685e6cee9f7ebd9f93c7c645
Cycle=SyncdWR Fre LwSyncdWW Rfe SyncdRW Rfe SyncdRW Wse
Relax safe290 No
Safe=Fre Wse SyncdWR LwSyncdWW ACSyncdRW
Time safe290 2.21
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe291.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe291
"SyncdWW Rfe LwSyncdRW Rfe SyncdRW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
lwsync | sync | sync | stw r1,0(r2) ;
li r3,1 | li r3,1 | li r3,1 | sync ;
stw r3,0(r4) | stw r3,0(r4) | stw r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe291 Allowed
Histogram (14 states)
2 :>0:r1=0; 1:r1=1; 2:r1=1; a=2;
1 :>0:r1=1; 1:r1=0; 2:r1=1; a=2;
15 :>0:r1=1; 1:r1=1; 2:r1=1; a=1;
930 :>0:r1=1; 1:r1=0; 2:r1=0; a=2;
2792 :>0:r1=1; 1:r1=1; 2:r1=0; a=1;
973 :>0:r1=0; 1:r1=0; 2:r1=1; a=2;
17595 :>0:r1=1; 1:r1=0; 2:r1=1; a=1;
89292 :>0:r1=0; 1:r1=1; 2:r1=0; a=2;
109063:>0:r1=1; 1:r1=0; 2:r1=0; a=1;
185596:>0:r1=0; 1:r1=1; 2:r1=0; a=1;
213305:>0:r1=0; 1:r1=0; 2:r1=0; a=2;
168619:>0:r1=0; 1:r1=0; 2:r1=1; a=1;
2863 :>0:r1=0; 1:r1=1; 2:r1=1; a=1;
208954:>0:r1=0; 1:r1=0; 2:r1=0; a=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=1) is NOT validated
Hash=9dafda405644872ae08ae35ad913d481
Cycle=SyncdWW Rfe LwSyncdRW Rfe SyncdRW Rfe SyncdRW Wse
Relax safe291 No
Safe=Wse LwSyncdRW ACSyncdRW BCSyncdWW
Time safe291 2.16
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe292.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe292
"SyncdWR Fre LwSyncsWW Rfe SyncdRW Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
li r1,1 | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | sync | sync | stw r1,0(r2) ;
lwsync | li r3,1 | li r3,1 | sync ;
li r3,2 | stw r3,0(r4) | stw r3,0(r4) | lwz r3,0(r4) ;
stw r3,0(r2) | | | ;
exists (x=2 /\ z=2 /\ 1:r1=2 /\ 2:r1=1 /\ 3:r3=0)
Generated assembler
_litmus_P0_0_: li r9,1
_litmus_P0_1_: stw r9,0(r2)
_litmus_P0_2_: lwsync
_litmus_P0_3_: li r11,2
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r10,2
_litmus_P3_1_: stw r10,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: lwz r8,0(r2)
Test safe292 Allowed
Histogram (29 states)
2 :>1:r1=1; 2:r1=0; 3:r3=0; x=2; z=2;
2 :>1:r1=1; 2:r1=0; 3:r3=1; x=2; z=1;
9 :>1:r1=2; 2:r1=1; 3:r3=1; x=2; z=1;
2 :>1:r1=1; 2:r1=0; 3:r3=1; x=2; z=2;
2 :>1:r1=1; 2:r1=1; 3:r3=2; x=2; z=2;
13 :>1:r1=2; 2:r1=0; 3:r3=0; x=2; z=2;
96 :>1:r1=2; 2:r1=1; 3:r3=0; x=2; z=1;
45 :>1:r1=1; 2:r1=1; 3:r3=0; x=2; z=1;
124 :>1:r1=2; 2:r1=0; 3:r3=1; x=2; z=2;
68 :>1:r1=2; 2:r1=1; 3:r3=2; x=2; z=2;
311 :>1:r1=0; 2:r1=0; 3:r3=0; x=2; z=2;
7261 :>1:r1=0; 2:r1=1; 3:r3=1; x=2; z=1;
2137 :>1:r1=0; 2:r1=1; 3:r3=2; x=2; z=2;
364 :>1:r1=1; 2:r1=1; 3:r3=2; x=2; z=1;
562 :>1:r1=0; 2:r1=0; 3:r3=1; x=2; z=2;
12495 :>1:r1=0; 2:r1=1; 3:r3=0; x=2; z=1;
7499 :>1:r1=0; 2:r1=0; 3:r3=1; x=2; z=1;
11392 :>1:r1=1; 2:r1=0; 3:r3=2; x=2; z=1;
24703 :>1:r1=2; 2:r1=0; 3:r3=0; x=2; z=1;
10645 :>1:r1=2; 2:r1=0; 3:r3=1; x=2; z=1;
52364 :>1:r1=0; 2:r1=0; 3:r3=2; x=2; z=1;
20509 :>1:r1=1; 2:r1=0; 3:r3=0; x=2; z=1;
65123 :>1:r1=0; 2:r1=0; 3:r3=2; x=2; z=2;
91684 :>1:r1=0; 2:r1=0; 3:r3=0; x=2; z=1;
7935 :>1:r1=1; 2:r1=0; 3:r3=2; x=2; z=2;
174281:>1:r1=0; 2:r1=1; 3:r3=2; x=2; z=1;
272325:>1:r1=2; 2:r1=0; 3:r3=2; x=2; z=1;
208675:>1:r1=2; 2:r1=0; 3:r3=2; x=2; z=2;
29372 :>1:r1=2; 2:r1=1; 3:r3=2; x=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 1:r1=2 /\ 2:r1=1 /\ 3:r3=0) is NOT validated
Hash=a65ada965a0cf59736ae4ffece8a0696
Cycle=SyncdWR Fre LwSyncsWW Rfe SyncdRW Rfe SyncdRW Wse
Relax safe292 No
Safe=Fre Wse SyncdWR LwSyncsWW ACSyncdRW
Time safe292 2.51
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe293.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe293
"SyncdWW Rfe LwSyncsRW Rfe SyncdRW Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
lwsync | sync | sync | stw r1,0(r2) ;
li r3,2 | li r3,1 | li r3,1 | sync ;
stw r3,0(r2) | stw r3,0(r4) | stw r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe293 Allowed
Histogram (29 states)
1 :>0:r1=0; 1:r1=2; 2:r1=1; x=2; z=1;
2 :>0:r1=1; 1:r1=2; 2:r1=1; x=2; z=1;
3 :>0:r1=0; 1:r1=1; 2:r1=1; x=2; z=1;
7 :>0:r1=1; 1:r1=2; 2:r1=0; x=2; z=2;
6 :>0:r1=0; 1:r1=2; 2:r1=0; x=2; z=2;
124 :>0:r1=1; 1:r1=0; 2:r1=0; x=2; z=2;
13 :>0:r1=1; 1:r1=1; 2:r1=0; x=2; z=2;
7 :>0:r1=0; 1:r1=2; 2:r1=1; x=1; z=2;
28 :>0:r1=0; 1:r1=1; 2:r1=1; x=1; z=1;
26 :>0:r1=0; 1:r1=1; 2:r1=0; x=2; z=2;
597 :>0:r1=0; 1:r1=0; 2:r1=1; x=1; z=2;
54 :>0:r1=1; 1:r1=1; 2:r1=1; x=2; z=1;
4460 :>0:r1=1; 1:r1=0; 2:r1=1; x=2; z=1;
3751 :>0:r1=0; 1:r1=1; 2:r1=0; x=2; z=1;
821 :>0:r1=0; 1:r1=0; 2:r1=0; x=2; z=2;
30492 :>0:r1=1; 1:r1=2; 2:r1=0; x=2; z=1;
2712 :>0:r1=0; 1:r1=2; 2:r1=0; x=2; z=1;
10348 :>0:r1=0; 1:r1=2; 2:r1=1; x=1; z=1;
36228 :>0:r1=0; 1:r1=0; 2:r1=0; x=1; z=2;
18062 :>0:r1=0; 1:r1=0; 2:r1=1; x=2; z=1;
51156 :>0:r1=1; 1:r1=1; 2:r1=0; x=2; z=1;
21927 :>0:r1=1; 1:r1=0; 2:r1=0; x=2; z=1;
160872:>0:r1=0; 1:r1=0; 2:r1=1; x=1; z=1;
32993 :>0:r1=0; 1:r1=0; 2:r1=0; x=2; z=1;
272371:>0:r1=0; 1:r1=2; 2:r1=0; x=1; z=1;
214928:>0:r1=0; 1:r1=2; 2:r1=0; x=1; z=2;
50502 :>0:r1=0; 1:r1=0; 2:r1=0; x=1; z=1;
1928 :>0:r1=0; 1:r1=1; 2:r1=0; x=1; z=2;
85581 :>0:r1=0; 1:r1=1; 2:r1=0; x=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1) is NOT validated
Hash=245d15e30fdf2f56cb8b1cbcdfead59e
Cycle=SyncdWW Rfe LwSyncsRW Rfe SyncdRW Rfe SyncdRW Wse
Relax safe293 No
Safe=Wse LwSyncsRW ACSyncdRW BCSyncdWW
Time safe293 2.54
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe294.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe294
"LwSyncdWW Rfe SyncsRW Rfe SyncdRW Rfe SyncdRW Wse"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | sync | sync | stw r1,0(r2) ;
li r3,2 | li r3,1 | li r3,1 | lwsync ;
stw r3,0(r2) | stw r3,0(r4) | stw r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe294 Allowed
Histogram (29 states)
1 :>0:r1=1; 1:r1=0; 2:r1=1; x=2; z=2;
5 :>0:r1=0; 1:r1=0; 2:r1=1; x=2; z=2;
8 :>0:r1=0; 1:r1=2; 2:r1=1; x=2; z=1;
38 :>0:r1=0; 1:r1=1; 2:r1=1; x=2; z=1;
33 :>0:r1=1; 1:r1=2; 2:r1=0; x=2; z=2;
31 :>0:r1=0; 1:r1=1; 2:r1=1; x=1; z=1;
34 :>0:r1=1; 1:r1=1; 2:r1=0; x=2; z=2;
344 :>0:r1=1; 1:r1=1; 2:r1=1; x=2; z=1;
403 :>0:r1=0; 1:r1=2; 2:r1=0; x=2; z=2;
237 :>0:r1=0; 1:r1=0; 2:r1=1; x=1; z=2;
257 :>0:r1=1; 1:r1=0; 2:r1=0; x=2; z=2;
830 :>0:r1=0; 1:r1=1; 2:r1=0; x=2; z=2;
4642 :>0:r1=0; 1:r1=2; 2:r1=1; x=1; z=1;
62013 :>0:r1=0; 1:r1=0; 2:r1=1; x=2; z=1;
17198 :>0:r1=1; 1:r1=0; 2:r1=1; x=2; z=1;
22016 :>0:r1=0; 1:r1=0; 2:r1=0; x=2; z=2;
6301 :>0:r1=0; 1:r1=1; 2:r1=0; x=1; z=2;
20481 :>0:r1=1; 1:r1=0; 2:r1=0; x=2; z=1;
177631:>0:r1=1; 1:r1=1; 2:r1=0; x=2; z=1;
94722 :>0:r1=0; 1:r1=2; 2:r1=0; x=1; z=2;
22504 :>0:r1=0; 1:r1=1; 2:r1=0; x=2; z=1;
14529 :>0:r1=0; 1:r1=2; 2:r1=0; x=2; z=1;
123484:>0:r1=0; 1:r1=0; 2:r1=0; x=1; z=2;
84263 :>0:r1=0; 1:r1=0; 2:r1=1; x=1; z=1;
93180 :>0:r1=0; 1:r1=0; 2:r1=0; x=2; z=1;
174658:>0:r1=0; 1:r1=2; 2:r1=0; x=1; z=1;
38067 :>0:r1=0; 1:r1=0; 2:r1=0; x=1; z=1;
4287 :>0:r1=1; 1:r1=2; 2:r1=0; x=2; z=1;
37803 :>0:r1=0; 1:r1=1; 2:r1=0; x=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1) is NOT validated
Hash=83c1c809ddca301885d0745449be8019
Cycle=LwSyncdWW Rfe SyncsRW Rfe SyncdRW Rfe SyncdRW Wse
Relax safe294 No
Safe=Wse LwSyncdWW ACSyncsRW ACSyncdRW
Time safe294 2.53
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe295.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe295
"Rfe SyncdRW Rfe SyncdRW Rfe SyncdRW Wse"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | sync | sync | stw r1,0(r2) ;
li r3,1 | li r3,1 | li r3,1 | ;
stw r3,0(r4) | stw r3,0(r4) | stw r3,0(r4) | ;
exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe295 Allowed
Histogram (20 states)
4 :>0:r1=2; 1:r1=1; 2:r1=1; z=1;
41 :>0:r1=1; 1:r1=0; 2:r1=1; z=2;
40 :>0:r1=2; 1:r1=0; 2:r1=1; z=2;
2189 :>0:r1=1; 1:r1=0; 2:r1=1; z=1;
1477 :>0:r1=0; 1:r1=0; 2:r1=1; z=2;
2156 :>0:r1=1; 1:r1=1; 2:r1=0; z=1;
1028 :>0:r1=0; 1:r1=1; 2:r1=1; z=1;
806 :>0:r1=2; 1:r1=1; 2:r1=0; z=2;
90804 :>0:r1=2; 1:r1=0; 2:r1=1; z=1;
233413:>0:r1=2; 1:r1=0; 2:r1=0; z=1;
63281 :>0:r1=1; 1:r1=0; 2:r1=0; z=2;
39810 :>0:r1=0; 1:r1=0; 2:r1=1; z=1;
65727 :>0:r1=2; 1:r1=0; 2:r1=0; z=2;
10186 :>0:r1=0; 1:r1=1; 2:r1=0; z=2;
65923 :>0:r1=0; 1:r1=0; 2:r1=0; z=2;
120972:>0:r1=1; 1:r1=0; 2:r1=0; z=1;
94506 :>0:r1=0; 1:r1=0; 2:r1=0; z=1;
16993 :>0:r1=2; 1:r1=1; 2:r1=0; z=1;
962 :>0:r1=1; 1:r1=1; 2:r1=0; z=2;
189682:>0:r1=0; 1:r1=1; 2:r1=0; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=1) is NOT validated
Hash=aea399e22ba161d291e7b869ebf94dca
Cycle=Rfe SyncdRW Rfe SyncdRW Rfe SyncdRW Wse
Relax safe295 No
Safe=Wse ACSyncdRW
Time safe295 1.97
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe296.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe296
"LwSyncdWW Rfe SyncdRW Rfe SyncdRW Rfe SyncdRW Wse"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | sync | sync | stw r1,0(r2) ;
li r3,1 | li r3,1 | li r3,1 | lwsync ;
stw r3,0(r4) | stw r3,0(r4) | stw r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe296 Allowed
Histogram (14 states)
2 :>0:r1=1; 1:r1=0; 2:r1=1; a=2;
1 :>0:r1=0; 1:r1=1; 2:r1=1; a=2;
22 :>0:r1=1; 1:r1=1; 2:r1=1; a=1;
3433 :>0:r1=1; 1:r1=1; 2:r1=0; a=1;
1350 :>0:r1=0; 1:r1=1; 2:r1=1; a=1;
7390 :>0:r1=0; 1:r1=0; 2:r1=1; a=2;
57303 :>0:r1=0; 1:r1=1; 2:r1=0; a=2;
11251 :>0:r1=1; 1:r1=0; 2:r1=1; a=1;
6487 :>0:r1=1; 1:r1=0; 2:r1=0; a=2;
219687:>0:r1=1; 1:r1=0; 2:r1=0; a=1;
133525:>0:r1=0; 1:r1=0; 2:r1=1; a=1;
244543:>0:r1=0; 1:r1=0; 2:r1=0; a=2;
137030:>0:r1=0; 1:r1=1; 2:r1=0; a=1;
177976:>0:r1=0; 1:r1=0; 2:r1=0; a=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=1) is NOT validated
Hash=d5b654f532c55ad3b90a8e7e80696932
Cycle=LwSyncdWW Rfe SyncdRW Rfe SyncdRW Rfe SyncdRW Wse
Relax safe296 No
Safe=Wse LwSyncdWW ACSyncdRW
Time safe296 2.15
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe297.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe297
"Rfe SyncdRR Fre SyncsWW Rfe DpdW Wsi"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r5=y;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) ;
sync | stw r1,0(r2) | xor r3,r1,r1 ;
lwz r3,0(r4) | sync | li r4,1 ;
| li r3,2 | stwx r4,r3,r5 ;
| stw r3,0(r2) | li r6,2 ;
| | stw r6,0(r5) ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=2)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r10,r6,r6
_litmus_P2_2_: li r11,1
_litmus_P2_3_: stwx r11,r10,r2
_litmus_P2_4_: li r7,2
_litmus_P2_5_: stw r7,0(r2)
Test safe297 Allowed
Histogram (19 states)
1 :>0:r1=1; 0:r3=0; 2:r1=0; x=2; y=2;
20 :>0:r1=0; 0:r3=1; 2:r1=1; x=2; y=2;
35 :>0:r1=1; 0:r3=1; 2:r1=0; x=2; y=2;
466 :>0:r1=2; 0:r3=0; 2:r1=0; x=2; y=2;
28 :>0:r1=1; 0:r3=2; 2:r1=1; x=2; y=2;
134 :>0:r1=1; 0:r3=2; 2:r1=2; x=2; y=2;
379 :>0:r1=1; 0:r3=2; 2:r1=0; x=2; y=2;
3280 :>0:r1=2; 0:r3=2; 2:r1=1; x=2; y=2;
32441 :>0:r1=0; 0:r3=1; 2:r1=2; x=2; y=2;
9867 :>0:r1=0; 0:r3=2; 2:r1=0; x=2; y=2;
54506 :>0:r1=2; 0:r3=1; 2:r1=0; x=2; y=2;
20156 :>0:r1=2; 0:r3=2; 2:r1=2; x=2; y=2;
30588 :>0:r1=0; 0:r3=2; 2:r1=1; x=2; y=2;
61232 :>0:r1=0; 0:r3=1; 2:r1=0; x=2; y=2;
56287 :>0:r1=0; 0:r3=0; 2:r1=1; x=2; y=2;
262564:>0:r1=2; 0:r3=2; 2:r1=0; x=2; y=2;
294933:>0:r1=0; 0:r3=2; 2:r1=2; x=2; y=2;
4954 :>0:r1=0; 0:r3=0; 2:r1=2; x=2; y=2;
168129:>0:r1=0; 0:r3=0; 2:r1=0; x=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=2) is NOT validated
Hash=adf9e77540a74e8fd911110dccf491a6
Cycle=Rfe SyncdRR Fre SyncsWW Rfe DpdW Wsi
Relax safe297 No
Safe=Fre Wsi DpdW ACSyncdRR BCSyncsWW
Time safe297 1.81
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe298.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe298
"Rfe SyncdRW Rfe SyncdRR Fre SyncsWW Rfe DpdW Wsi"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 3:r2=y; 3:r5=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) ;
sync | sync | stw r1,0(r2) | xor r3,r1,r1 ;
li r3,1 | lwz r3,0(r4) | sync | li r4,1 ;
stw r3,0(r4) | | li r3,2 | stwx r4,r3,r5 ;
| | stw r3,0(r2) | li r6,2 ;
| | | stw r6,0(r5) ;
exists (y=2 /\ z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=0 /\ 3:r1=2)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r9,1
_litmus_P2_1_: stw r9,0(r2)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,2
_litmus_P2_4_: stw r11,0(r2)
_litmus_P3_0_: lwz r6,0(r9)
_litmus_P3_1_: xor r10,r6,r6
_litmus_P3_2_: li r11,1
_litmus_P3_3_: stwx r11,r10,r2
_litmus_P3_4_: li r7,2
_litmus_P3_5_: stw r7,0(r2)
Test safe298 Allowed
Histogram (34 states)
1 :>0:r1=2; 1:r1=1; 1:r3=1; 3:r1=0; y=2; z=2;
1 :>0:r1=1; 1:r1=0; 1:r3=2; 3:r1=1; y=2; z=2;
2 :>0:r1=1; 1:r1=0; 1:r3=2; 3:r1=2; y=2; z=2;
1 :>0:r1=2; 1:r1=1; 1:r3=0; 3:r1=0; y=2; z=2;
6 :>0:r1=0; 1:r1=1; 1:r3=1; 3:r1=1; y=2; z=2;
9 :>0:r1=0; 1:r1=1; 1:r3=0; 3:r1=2; y=2; z=2;
2 :>0:r1=2; 1:r1=0; 1:r3=1; 3:r1=1; y=2; z=2;
49 :>0:r1=2; 1:r1=0; 1:r3=1; 3:r1=2; y=2; z=2;
92 :>0:r1=0; 1:r1=1; 1:r3=0; 3:r1=1; y=2; z=2;
32 :>0:r1=2; 1:r1=0; 1:r3=0; 3:r1=2; y=2; z=2;
34 :>0:r1=0; 1:r1=0; 1:r3=1; 3:r1=1; y=2; z=2;
286 :>0:r1=2; 1:r1=0; 1:r3=0; 3:r1=1; y=2; z=2;
208 :>0:r1=2; 1:r1=1; 1:r3=2; 3:r1=1; y=2; z=2;
2958 :>0:r1=0; 1:r1=1; 1:r3=1; 3:r1=2; y=2; z=2;
12244 :>0:r1=0; 1:r1=0; 1:r3=0; 3:r1=2; y=2; z=2;
542 :>0:r1=2; 1:r1=1; 1:r3=2; 3:r1=2; y=2; z=2;
22082 :>0:r1=2; 1:r1=0; 1:r3=2; 3:r1=2; y=2; z=2;
44548 :>0:r1=0; 1:r1=1; 1:r3=1; 3:r1=0; y=2; z=2;
39845 :>0:r1=0; 1:r1=0; 1:r3=1; 3:r1=2; y=2; z=2;
41147 :>0:r1=2; 1:r1=0; 1:r3=1; 3:r1=0; y=2; z=2;
43776 :>0:r1=0; 1:r1=1; 1:r3=2; 3:r1=1; y=2; z=2;
14274 :>0:r1=0; 1:r1=0; 1:r3=2; 3:r1=0; y=2; z=2;
111910:>0:r1=0; 1:r1=0; 1:r3=0; 3:r1=0; y=2; z=2;
32429 :>0:r1=0; 1:r1=0; 1:r3=2; 3:r1=1; y=2; z=2;
22348 :>0:r1=2; 1:r1=0; 1:r3=2; 3:r1=1; y=2; z=2;
49153 :>0:r1=0; 1:r1=1; 1:r3=2; 3:r1=0; y=2; z=2;
29043 :>0:r1=2; 1:r1=0; 1:r3=0; 3:r1=0; y=2; z=2;
188618:>0:r1=2; 1:r1=0; 1:r3=2; 3:r1=0; y=2; z=2;
181987:>0:r1=0; 1:r1=0; 1:r3=2; 3:r1=2; y=2; z=2;
31997 :>0:r1=0; 1:r1=0; 1:r3=1; 3:r1=0; y=2; z=2;
80931 :>0:r1=0; 1:r1=0; 1:r3=0; 3:r1=1; y=2; z=2;
10944 :>0:r1=2; 1:r1=1; 1:r3=2; 3:r1=0; y=2; z=2;
34858 :>0:r1=0; 1:r1=1; 1:r3=2; 3:r1=2; y=2; z=2;
3643 :>0:r1=0; 1:r1=1; 1:r3=0; 3:r1=0; y=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=0 /\ 3:r1=2) is NOT validated
Hash=c2cf467fbba3251d77902a00f5d2aaef
Cycle=Rfe SyncdRW Rfe SyncdRR Fre SyncsWW Rfe DpdW Wsi
Relax safe298 No
Safe=Fre Wsi DpdW ACSyncdRW ACSyncdRR BCSyncsWW
Time safe298 2.82
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe299.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe299
"Rfe SyncdRR Fre SyncdWW Rfe SyncsRW Rfe DpdW Wsi"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 3:r2=y; 3:r5=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | lwz r1,0(r2) ;
sync | stw r1,0(r2) | sync | xor r3,r1,r1 ;
lwz r3,0(r4) | sync | li r3,2 | li r4,1 ;
| li r3,1 | stw r3,0(r2) | stwx r4,r3,r5 ;
| stw r3,0(r4) | | li r6,2 ;
| | | stw r6,0(r5) ;
exists (y=2 /\ z=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1 /\ 3:r1=2)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r10,0(r2)
_litmus_P2_1_: sync
_litmus_P2_2_: li r9,2
_litmus_P2_3_: stw r9,0(r2)
_litmus_P3_0_: lwz r6,0(r9)
_litmus_P3_1_: xor r10,r6,r6
_litmus_P3_2_: li r11,1
_litmus_P3_3_: stwx r11,r10,r2
_litmus_P3_4_: li r7,2
_litmus_P3_5_: stw r7,0(r2)
Test safe299 Allowed
Histogram (31 states)
2 :>0:r1=2; 0:r3=1; 2:r1=1; 3:r1=2; y=2; z=2;
1 :>0:r1=0; 0:r3=0; 2:r1=1; 3:r1=2; y=2; z=2;
6 :>0:r1=2; 0:r3=0; 2:r1=1; 3:r1=0; y=2; z=2;
15 :>0:r1=2; 0:r3=0; 2:r1=0; 3:r1=0; y=2; z=2;
109 :>0:r1=2; 0:r3=1; 2:r1=0; 3:r1=2; y=2; z=2;
483 :>0:r1=2; 0:r3=0; 2:r1=0; 3:r1=2; y=1; z=2;
77 :>0:r1=0; 0:r3=0; 2:r1=1; 3:r1=1; y=2; z=2;
1049 :>0:r1=0; 0:r3=1; 2:r1=1; 3:r1=2; y=2; z=2;
1584 :>0:r1=0; 0:r3=0; 2:r1=1; 3:r1=0; y=2; z=2;
722 :>0:r1=2; 0:r3=1; 2:r1=1; 3:r1=1; y=2; z=2;
4403 :>0:r1=0; 0:r3=0; 2:r1=0; 3:r1=1; y=2; z=2;
27276 :>0:r1=2; 0:r3=0; 2:r1=0; 3:r1=0; y=1; z=2;
5227 :>0:r1=0; 0:r3=0; 2:r1=0; 3:r1=1; y=1; z=2;
859 :>0:r1=2; 0:r3=1; 2:r1=0; 3:r1=1; y=2; z=2;
7872 :>0:r1=2; 0:r3=1; 2:r1=1; 3:r1=0; y=2; z=2;
1125 :>0:r1=0; 0:r3=0; 2:r1=0; 3:r1=2; y=2; z=2;
63212 :>0:r1=0; 0:r3=1; 2:r1=0; 3:r1=1; y=2; z=2;
16705 :>0:r1=0; 0:r3=1; 2:r1=0; 3:r1=1; y=1; z=2;
43229 :>0:r1=0; 0:r3=1; 2:r1=1; 3:r1=1; y=2; z=2;
18565 :>0:r1=2; 0:r3=1; 2:r1=0; 3:r1=2; y=1; z=2;
47596 :>0:r1=0; 0:r3=0; 2:r1=0; 3:r1=0; y=2; z=2;
27356 :>0:r1=0; 0:r3=1; 2:r1=0; 3:r1=2; y=2; z=2;
25268 :>0:r1=0; 0:r3=1; 2:r1=0; 3:r1=0; y=1; z=2;
45159 :>0:r1=0; 0:r3=1; 2:r1=0; 3:r1=0; y=2; z=2;
33309 :>0:r1=0; 0:r3=1; 2:r1=1; 3:r1=0; y=2; z=2;
170603:>0:r1=0; 0:r3=1; 2:r1=0; 3:r1=2; y=1; z=2;
115301:>0:r1=0; 0:r3=0; 2:r1=0; 3:r1=0; y=1; z=2;
32773 :>0:r1=2; 0:r3=1; 2:r1=0; 3:r1=0; y=2; z=2;
192836:>0:r1=2; 0:r3=1; 2:r1=0; 3:r1=0; y=1; z=2;
1052 :>0:r1=2; 0:r3=1; 2:r1=0; 3:r1=1; y=1; z=2;
116226:>0:r1=0; 0:r3=0; 2:r1=0; 3:r1=2; y=1; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ z=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1 /\ 3:r1=2) is NOT validated
Hash=b888bb5fad34e0cf3ae487a07f93bd3e
Cycle=Rfe SyncdRR Fre SyncdWW Rfe SyncsRW Rfe DpdW Wsi
Relax safe299 No
Safe=Fre Wsi DpdW ACSyncdRR BCSyncsRW BCSyncdWW
Time safe299 2.82
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe300.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe300
"Rfe SyncdRW Rfe SyncsRR Fre SyncdWW Rfe DpdW Wsi"
{0:r2=z; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y; 3:r5=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) ;
sync | sync | stw r1,0(r2) | xor r3,r1,r1 ;
li r3,1 | lwz r3,0(r2) | sync | li r4,1 ;
stw r3,0(r4) | | li r3,1 | stwx r4,r3,r5 ;
| | stw r3,0(r4) | li r6,2 ;
| | | stw r6,0(r5) ;
exists (x=2 /\ z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=1 /\ 3:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r9,0(r2)
_litmus_P2_0_: li r11,2
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: lwz r6,0(r9)
_litmus_P3_1_: xor r10,r6,r6
_litmus_P3_2_: li r11,1
_litmus_P3_3_: stwx r11,r10,r2
_litmus_P3_4_: li r7,2
_litmus_P3_5_: stw r7,0(r2)
Test safe300 Allowed
Histogram (41 states)
1 :>0:r1=1; 1:r1=2; 1:r3=2; 3:r1=0; x=1; z=2;
10 :>0:r1=0; 1:r1=0; 1:r3=1; 3:r1=1; x=2; z=2;
6 :>0:r1=2; 1:r1=1; 1:r3=1; 3:r1=0; x=2; z=2;
15 :>0:r1=2; 1:r1=0; 1:r3=0; 3:r1=1; x=1; z=2;
109 :>0:r1=2; 1:r1=1; 1:r3=2; 3:r1=0; x=2; z=2;
21 :>0:r1=2; 1:r1=2; 1:r3=1; 3:r1=1; x=1; z=2;
115 :>0:r1=2; 1:r1=2; 1:r3=2; 3:r1=0; x=2; z=2;
175 :>0:r1=0; 1:r1=0; 1:r3=2; 3:r1=1; x=2; z=2;
897 :>0:r1=0; 1:r1=0; 1:r3=1; 3:r1=1; x=1; z=2;
163 :>0:r1=0; 1:r1=1; 1:r3=2; 3:r1=1; x=2; z=2;
445 :>0:r1=0; 1:r1=0; 1:r3=2; 3:r1=1; x=1; z=2;
42 :>0:r1=0; 1:r1=1; 1:r3=1; 3:r1=1; x=2; z=2;
655 :>0:r1=0; 1:r1=2; 1:r3=2; 3:r1=1; x=2; z=2;
2041 :>0:r1=2; 1:r1=2; 1:r3=2; 3:r1=1; x=1; z=2;
359 :>0:r1=0; 1:r1=0; 1:r3=0; 3:r1=1; x=2; z=2;
460 :>0:r1=2; 1:r1=0; 1:r3=1; 3:r1=0; x=2; z=2;
618 :>0:r1=2; 1:r1=1; 1:r3=1; 3:r1=1; x=1; z=2;
2684 :>0:r1=2; 1:r1=0; 1:r3=0; 3:r1=0; x=2; z=2;
2958 :>0:r1=2; 1:r1=0; 1:r3=2; 3:r1=0; x=2; z=2;
26887 :>0:r1=0; 1:r1=0; 1:r3=0; 3:r1=1; x=1; z=2;
48592 :>0:r1=0; 1:r1=2; 1:r3=1; 3:r1=1; x=1; z=2;
12216 :>0:r1=2; 1:r1=1; 1:r3=1; 3:r1=0; x=1; z=2;
23251 :>0:r1=0; 1:r1=0; 1:r3=1; 3:r1=0; x=1; z=2;
9253 :>0:r1=2; 1:r1=0; 1:r3=1; 3:r1=0; x=1; z=2;
23284 :>0:r1=0; 1:r1=1; 1:r3=1; 3:r1=0; x=2; z=2;
16276 :>0:r1=0; 1:r1=1; 1:r3=1; 3:r1=0; x=1; z=2;
23713 :>0:r1=0; 1:r1=0; 1:r3=1; 3:r1=0; x=2; z=2;
5964 :>0:r1=0; 1:r1=0; 1:r3=2; 3:r1=0; x=1; z=2;
32728 :>0:r1=2; 1:r1=2; 1:r3=1; 3:r1=0; x=1; z=2;
41221 :>0:r1=0; 1:r1=0; 1:r3=2; 3:r1=0; x=2; z=2;
36292 :>0:r1=2; 1:r1=0; 1:r3=2; 3:r1=0; x=1; z=2;
97639 :>0:r1=2; 1:r1=0; 1:r3=0; 3:r1=0; x=1; z=2;
113795:>0:r1=0; 1:r1=2; 1:r3=2; 3:r1=1; x=1; z=2;
44299 :>0:r1=0; 1:r1=1; 1:r3=2; 3:r1=0; x=2; z=2;
25644 :>0:r1=0; 1:r1=2; 1:r3=1; 3:r1=0; x=1; z=2;
58597 :>0:r1=0; 1:r1=0; 1:r3=0; 3:r1=0; x=2; z=2;
81884 :>0:r1=2; 1:r1=2; 1:r3=2; 3:r1=0; x=1; z=2;
37678 :>0:r1=0; 1:r1=2; 1:r3=2; 3:r1=0; x=1; z=2;
181002:>0:r1=0; 1:r1=0; 1:r3=0; 3:r1=0; x=1; z=2;
14945 :>0:r1=0; 1:r1=1; 1:r3=1; 3:r1=1; x=1; z=2;
33066 :>0:r1=0; 1:r1=2; 1:r3=2; 3:r1=0; x=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=1 /\ 3:r1=1) is NOT validated
Hash=3f34c446238678c78dda9387e5acf386
Cycle=Rfe SyncdRW Rfe SyncsRR Fre SyncdWW Rfe DpdW Wsi
Relax safe300 No
Safe=Fre Wsi DpdW ACSyncsRR ACSyncdRW BCSyncdWW
Time safe300 3.16
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe301.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe301
"Rfe SyncdRR Fre SyncdWW Rfe DpdW Wsi"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r5=z;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) ;
sync | stw r1,0(r2) | xor r3,r1,r1 ;
lwz r3,0(r4) | sync | li r4,1 ;
| li r3,1 | stwx r4,r3,r5 ;
| stw r3,0(r4) | li r6,2 ;
| | stw r6,0(r5) ;
exists (z=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r10,1
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r10,r6,r6
_litmus_P2_2_: li r11,1
_litmus_P2_3_: stwx r11,r10,r2
_litmus_P2_4_: li r7,2
_litmus_P2_5_: stw r7,0(r2)
Test safe301 Allowed
Histogram (8 states)
2 :>0:r1=1; 0:r3=1; 2:r1=0; z=2;
4777 :>0:r1=2; 0:r3=1; 2:r1=1; z=2;
1196 :>0:r1=2; 0:r3=0; 2:r1=0; z=2;
913 :>0:r1=0; 0:r3=0; 2:r1=1; z=2;
372556:>0:r1=2; 0:r3=1; 2:r1=0; z=2;
131106:>0:r1=0; 0:r3=1; 2:r1=1; z=2;
261739:>0:r1=0; 0:r3=0; 2:r1=0; z=2;
227711:>0:r1=0; 0:r3=1; 2:r1=0; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1) is NOT validated
Hash=996fe98ba4a8a18e4c6e3140e39fb4f8
Cycle=Rfe SyncdRR Fre SyncdWW Rfe DpdW Wsi
Relax safe301 No
Safe=Fre Wsi DpdW ACSyncdRR BCSyncdWW
Time safe301 1.55
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe302.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe302
"Rfe SyncdRW Rfe SyncdRR Fre SyncdWW Rfe DpdW Wsi"
{0:r2=a; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r5=a;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) ;
sync | sync | stw r1,0(r2) | xor r3,r1,r1 ;
li r3,1 | lwz r3,0(r4) | sync | li r4,1 ;
stw r3,0(r4) | | li r3,1 | stwx r4,r3,r5 ;
| | stw r3,0(r4) | li r6,2 ;
| | | stw r6,0(r5) ;
exists (a=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=0 /\ 3:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r11,1
_litmus_P2_1_: stw r11,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r10,1
_litmus_P2_4_: stw r10,0(r2)
_litmus_P3_0_: lwz r6,0(r9)
_litmus_P3_1_: xor r10,r6,r6
_litmus_P3_2_: li r11,1
_litmus_P3_3_: stwx r11,r10,r2
_litmus_P3_4_: li r7,2
_litmus_P3_5_: stw r7,0(r2)
Test safe302 Allowed
Histogram (19 states)
1 :>0:r1=2; 1:r1=0; 1:r3=0; 3:r1=1; a=2;
1 :>0:r1=0; 1:r1=1; 1:r3=0; 3:r1=1; a=2;
1 :>0:r1=1; 1:r1=0; 1:r3=1; 3:r1=1; a=2;
8 :>0:r1=2; 1:r1=1; 1:r3=1; 3:r1=1; a=2;
24 :>0:r1=1; 1:r1=1; 1:r3=1; 3:r1=0; a=2;
68 :>0:r1=1; 1:r1=0; 1:r3=0; 3:r1=0; a=2;
219 :>0:r1=1; 1:r1=0; 1:r3=1; 3:r1=0; a=2;
11 :>0:r1=2; 1:r1=1; 1:r3=0; 3:r1=0; a=2;
806 :>0:r1=0; 1:r1=1; 1:r3=0; 3:r1=0; a=2;
50878 :>0:r1=0; 1:r1=1; 1:r3=1; 3:r1=1; a=2;
695 :>0:r1=0; 1:r1=0; 1:r3=0; 3:r1=1; a=2;
2217 :>0:r1=2; 1:r1=0; 1:r3=1; 3:r1=1; a=2;
36709 :>0:r1=2; 1:r1=0; 1:r3=0; 3:r1=0; a=2;
158254:>0:r1=0; 1:r1=0; 1:r3=1; 3:r1=1; a=2;
226561:>0:r1=2; 1:r1=0; 1:r3=1; 3:r1=0; a=2;
206166:>0:r1=0; 1:r1=0; 1:r3=0; 3:r1=0; a=2;
9917 :>0:r1=2; 1:r1=1; 1:r3=1; 3:r1=0; a=2;
172886:>0:r1=0; 1:r1=1; 1:r3=1; 3:r1=0; a=2;
134578:>0:r1=0; 1:r1=0; 1:r3=1; 3:r1=0; a=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=0 /\ 3:r1=1) is NOT validated
Hash=6eb622b8927acea6d87995113392aa55
Cycle=Rfe SyncdRW Rfe SyncdRR Fre SyncdWW Rfe DpdW Wsi
Relax safe302 No
Safe=Fre Wsi DpdW ACSyncdRW ACSyncdRR BCSyncdWW
Time safe302 2.21
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe303.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe303
"Rfe SyncdRR Fre SyncsWW Rfe SyncdRW Rfe DpdW Wsi"
{0:r2=z; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y; 3:r5=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | lwz r1,0(r2) ;
sync | stw r1,0(r2) | sync | xor r3,r1,r1 ;
lwz r3,0(r4) | sync | li r3,1 | li r4,1 ;
| li r3,2 | stw r3,0(r4) | stwx r4,r3,r5 ;
| stw r3,0(r2) | | li r6,2 ;
| | | stw r6,0(r5) ;
exists (x=2 /\ z=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=2 /\ 3:r1=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: lwz r6,0(r9)
_litmus_P3_1_: xor r10,r6,r6
_litmus_P3_2_: li r11,1
_litmus_P3_3_: stwx r11,r10,r2
_litmus_P3_4_: li r7,2
_litmus_P3_5_: stw r7,0(r2)
Test safe303 Allowed
Histogram (32 states)
1 :>0:r1=2; 0:r3=2; 2:r1=1; 3:r1=1; x=2; z=2;
2 :>0:r1=2; 0:r3=0; 2:r1=2; 3:r1=0; x=2; z=2;
2 :>0:r1=1; 0:r3=2; 2:r1=2; 3:r1=0; x=2; z=2;
7 :>0:r1=2; 0:r3=0; 2:r1=0; 3:r1=1; x=2; z=2;
8 :>0:r1=2; 0:r3=2; 2:r1=2; 3:r1=1; x=2; z=2;
9 :>0:r1=0; 0:r3=0; 2:r1=2; 3:r1=1; x=2; z=2;
10 :>0:r1=0; 0:r3=1; 2:r1=2; 3:r1=1; x=2; z=2;
15 :>0:r1=2; 0:r3=1; 2:r1=1; 3:r1=0; x=2; z=2;
57 :>0:r1=2; 0:r3=1; 2:r1=0; 3:r1=1; x=2; z=2;
15 :>0:r1=0; 0:r3=1; 2:r1=1; 3:r1=0; x=2; z=2;
2009 :>0:r1=0; 0:r3=2; 2:r1=1; 3:r1=1; x=2; z=2;
167 :>0:r1=2; 0:r3=0; 2:r1=1; 3:r1=0; x=2; z=2;
2379 :>0:r1=0; 0:r3=2; 2:r1=2; 3:r1=1; x=2; z=2;
705 :>0:r1=0; 0:r3=0; 2:r1=1; 3:r1=1; x=2; z=2;
3284 :>0:r1=2; 0:r3=2; 2:r1=0; 3:r1=1; x=2; z=2;
28375 :>0:r1=0; 0:r3=0; 2:r1=2; 3:r1=0; x=2; z=2;
8932 :>0:r1=2; 0:r3=0; 2:r1=0; 3:r1=0; x=2; z=2;
9575 :>0:r1=2; 0:r3=1; 2:r1=2; 3:r1=0; x=2; z=2;
11226 :>0:r1=0; 0:r3=0; 2:r1=0; 3:r1=1; x=2; z=2;
10658 :>0:r1=0; 0:r3=2; 2:r1=0; 3:r1=0; x=2; z=2;
32108 :>0:r1=0; 0:r3=2; 2:r1=1; 3:r1=0; x=2; z=2;
88014 :>0:r1=2; 0:r3=2; 2:r1=0; 3:r1=0; x=2; z=2;
107940:>0:r1=0; 0:r3=0; 2:r1=0; 3:r1=0; x=2; z=2;
53676 :>0:r1=2; 0:r3=1; 2:r1=0; 3:r1=0; x=2; z=2;
73420 :>0:r1=0; 0:r3=1; 2:r1=0; 3:r1=1; x=2; z=2;
16632 :>0:r1=0; 0:r3=1; 2:r1=2; 3:r1=0; x=2; z=2;
118584:>0:r1=2; 0:r3=2; 2:r1=2; 3:r1=0; x=2; z=2;
88507 :>0:r1=0; 0:r3=0; 2:r1=1; 3:r1=0; x=2; z=2;
132099:>0:r1=0; 0:r3=2; 2:r1=2; 3:r1=0; x=2; z=2;
75744 :>0:r1=2; 0:r3=2; 2:r1=1; 3:r1=0; x=2; z=2;
106196:>0:r1=0; 0:r3=2; 2:r1=0; 3:r1=1; x=2; z=2;
29644 :>0:r1=0; 0:r3=1; 2:r1=0; 3:r1=0; x=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ z=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=2 /\ 3:r1=1) is NOT validated
Hash=b49e08f19ad2616ab697473b32c9d56a
Cycle=Rfe SyncdRR Fre SyncsWW Rfe SyncdRW Rfe DpdW Wsi
Relax safe303 No
Safe=Fre Wsi DpdW ACSyncdRR BCSyncsWW BCSyncdRW
Time safe303 2.80
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe304.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe304
"Rfe SyncdRR Fre SyncdWW Rfe SyncdRW Rfe DpdW Wsi"
{0:r2=a; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r5=a;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | lwz r1,0(r2) ;
sync | stw r1,0(r2) | sync | xor r3,r1,r1 ;
lwz r3,0(r4) | sync | li r3,1 | li r4,1 ;
| li r3,1 | stw r3,0(r4) | stwx r4,r3,r5 ;
| stw r3,0(r4) | | li r6,2 ;
| | | stw r6,0(r5) ;
exists (a=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1 /\ 3:r1=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: lwz r6,0(r9)
_litmus_P3_1_: xor r10,r6,r6
_litmus_P3_2_: li r11,1
_litmus_P3_3_: stwx r11,r10,r2
_litmus_P3_4_: li r7,2
_litmus_P3_5_: stw r7,0(r2)
Test safe304 Allowed
Histogram (19 states)
1 :>0:r1=1; 0:r3=0; 2:r1=1; 3:r1=0; a=2;
2 :>0:r1=0; 0:r3=0; 2:r1=1; 3:r1=1; a=2;
6 :>0:r1=2; 0:r3=0; 2:r1=0; 3:r1=1; a=2;
18 :>0:r1=1; 0:r3=1; 2:r1=1; 3:r1=0; a=2;
19 :>0:r1=1; 0:r3=1; 2:r1=0; 3:r1=1; a=2;
173 :>0:r1=1; 0:r3=1; 2:r1=0; 3:r1=0; a=2;
47 :>0:r1=1; 0:r3=0; 2:r1=0; 3:r1=0; a=2;
112 :>0:r1=2; 0:r3=0; 2:r1=1; 3:r1=0; a=2;
1696 :>0:r1=0; 0:r3=1; 2:r1=1; 3:r1=1; a=2;
8860 :>0:r1=0; 0:r3=0; 2:r1=1; 3:r1=0; a=2;
12542 :>0:r1=2; 0:r3=1; 2:r1=1; 3:r1=0; a=2;
4265 :>0:r1=2; 0:r3=1; 2:r1=0; 3:r1=1; a=2;
200215:>0:r1=0; 0:r3=1; 2:r1=0; 3:r1=1; a=2;
191431:>0:r1=2; 0:r3=1; 2:r1=0; 3:r1=0; a=2;
49489 :>0:r1=2; 0:r3=0; 2:r1=0; 3:r1=0; a=2;
191783:>0:r1=0; 0:r3=0; 2:r1=0; 3:r1=0; a=2;
154953:>0:r1=0; 0:r3=1; 2:r1=1; 3:r1=0; a=2;
114514:>0:r1=0; 0:r3=1; 2:r1=0; 3:r1=0; a=2;
69874 :>0:r1=0; 0:r3=0; 2:r1=0; 3:r1=1; a=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (a=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1 /\ 3:r1=1) is NOT validated
Hash=d24103d71225059901d33754ce9e03fa
Cycle=Rfe SyncdRR Fre SyncdWW Rfe SyncdRW Rfe DpdW Wsi
Relax safe304 No
Safe=Fre Wsi DpdW ACSyncdRR BCSyncdWW BCSyncdRW
Time safe304 2.21
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe305.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe305
"SyncsWW Rfe DpdR Fre SyncsWW Rfe DpdR Fre"
{0:r2=y; 0:r5=x; 1:r2=x; 2:r2=x; 2:r5=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
xor r3,r1,r1 | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwzx r4,r3,r5 | sync | lwzx r4,r3,r5 | sync ;
| li r3,2 | | li r3,2 ;
| stw r3,0(r2) | | stw r3,0(r2) ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r4=0 /\ 2:r1=2 /\ 2:r4=0)
Generated assembler
_litmus_P0_0_: lwz r6,0(r9)
_litmus_P0_1_: xor r11,r6,r6
_litmus_P0_2_: lwzx r7,r11,r2
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r11,r6,r6
_litmus_P2_2_: lwzx r7,r11,r2
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe305 Allowed
Histogram (68 states)
2 :>0:r1=1; 0:r4=1; 2:r1=1; 2:r4=0; x=2; y=2;
2 :>0:r1=1; 0:r4=1; 2:r1=1; 2:r4=2; x=2; y=2;
4 :>0:r1=0; 0:r4=1; 2:r1=1; 2:r4=2; x=2; y=2;
3 :>0:r1=1; 0:r4=1; 2:r1=0; 2:r4=1; x=2; y=2;
2 :>0:r1=1; 0:r4=1; 2:r1=2; 2:r4=1; x=2; y=2;
1 :>0:r1=1; 0:r4=0; 2:r1=0; 2:r4=1; x=2; y=2;
11 :>0:r1=1; 0:r4=2; 2:r1=1; 2:r4=1; x=2; y=2;
5 :>0:r1=0; 0:r4=1; 2:r1=1; 2:r4=1; x=2; y=2;
27 :>0:r1=2; 0:r4=1; 2:r1=1; 2:r4=2; x=2; y=2;
5 :>0:r1=1; 0:r4=2; 2:r1=0; 2:r4=1; x=2; y=2;
4 :>0:r1=2; 0:r4=1; 2:r1=1; 2:r4=1; x=2; y=2;
57 :>0:r1=1; 0:r4=0; 2:r1=2; 2:r4=2; x=2; y=2;
50 :>0:r1=0; 0:r4=2; 2:r1=0; 2:r4=2; x=2; y=2;
55 :>0:r1=2; 0:r4=0; 2:r1=0; 2:r4=0; x=2; y=2;
4 :>0:r1=0; 0:r4=1; 2:r1=1; 2:r4=0; x=2; y=2;
51 :>0:r1=2; 0:r4=0; 2:r1=2; 2:r4=2; x=2; y=2;
195 :>0:r1=1; 0:r4=0; 2:r1=0; 2:r4=0; x=2; y=2;
10 :>0:r1=0; 0:r4=1; 2:r1=2; 2:r4=0; x=2; y=2;
35 :>0:r1=1; 0:r4=2; 2:r1=2; 2:r4=1; x=2; y=2;
24 :>0:r1=0; 0:r4=0; 2:r1=2; 2:r4=0; x=2; y=2;
750 :>0:r1=0; 0:r4=0; 2:r1=2; 2:r4=1; x=2; y=2;
320 :>0:r1=2; 0:r4=1; 2:r1=0; 2:r4=0; x=2; y=2;
310 :>0:r1=2; 0:r4=1; 2:r1=0; 2:r4=1; x=2; y=2;
165 :>0:r1=0; 0:r4=0; 2:r1=1; 2:r4=0; x=2; y=2;
98 :>0:r1=2; 0:r4=0; 2:r1=0; 2:r4=1; x=2; y=2;
356 :>0:r1=2; 0:r4=0; 2:r1=1; 2:r4=2; x=2; y=2;
346 :>0:r1=1; 0:r4=0; 2:r1=1; 2:r4=2; x=2; y=2;
540 :>0:r1=1; 0:r4=2; 2:r1=0; 2:r4=2; x=2; y=2;
688 :>0:r1=2; 0:r4=2; 2:r1=1; 2:r4=0; x=2; y=2;
779 :>0:r1=0; 0:r4=0; 2:r1=1; 2:r4=1; x=2; y=2;
1709 :>0:r1=1; 0:r4=1; 2:r1=0; 2:r4=2; x=2; y=2;
2161 :>0:r1=1; 0:r4=2; 2:r1=1; 2:r4=0; x=2; y=2;
166 :>0:r1=0; 0:r4=1; 2:r1=2; 2:r4=1; x=2; y=2;
301 :>0:r1=0; 0:r4=1; 2:r1=0; 2:r4=2; x=2; y=2;
11177 :>0:r1=2; 0:r4=0; 2:r1=0; 2:r4=2; x=2; y=2;
8552 :>0:r1=2; 0:r4=1; 2:r1=2; 2:r4=2; x=2; y=2;
39965 :>0:r1=0; 0:r4=2; 2:r1=2; 2:r4=0; x=2; y=2;
164 :>0:r1=0; 0:r4=2; 2:r1=0; 2:r4=1; x=2; y=2;
3121 :>0:r1=0; 0:r4=2; 2:r1=2; 2:r4=2; x=2; y=2;
872 :>0:r1=0; 0:r4=2; 2:r1=1; 2:r4=2; x=2; y=2;
866 :>0:r1=0; 0:r4=1; 2:r1=0; 2:r4=1; x=2; y=2;
1042 :>0:r1=1; 0:r4=1; 2:r1=0; 2:r4=0; x=2; y=2;
33900 :>0:r1=2; 0:r4=2; 2:r1=0; 2:r4=0; x=2; y=2;
1971 :>0:r1=1; 0:r4=1; 2:r1=2; 2:r4=2; x=2; y=2;
11585 :>0:r1=0; 0:r4=1; 2:r1=2; 2:r4=2; x=2; y=2;
5032 :>0:r1=2; 0:r4=2; 2:r1=2; 2:r4=0; x=2; y=2;
50924 :>0:r1=2; 0:r4=2; 2:r1=2; 2:r4=1; x=2; y=2;
2534 :>0:r1=2; 0:r4=2; 2:r1=0; 2:r4=1; x=2; y=2;
66726 :>0:r1=0; 0:r4=0; 2:r1=0; 2:r4=1; x=2; y=2;
3898 :>0:r1=0; 0:r4=2; 2:r1=1; 2:r4=1; x=2; y=2;
26455 :>0:r1=0; 0:r4=0; 2:r1=0; 2:r4=0; x=2; y=2;
47313 :>0:r1=0; 0:r4=2; 2:r1=2; 2:r4=1; x=2; y=2;
122812:>0:r1=2; 0:r4=2; 2:r1=2; 2:r4=2; x=2; y=2;
8931 :>0:r1=1; 0:r4=2; 2:r1=1; 2:r4=2; x=2; y=2;
12896 :>0:r1=2; 0:r4=2; 2:r1=0; 2:r4=2; x=2; y=2;
6677 :>0:r1=2; 0:r4=2; 2:r1=1; 2:r4=1; x=2; y=2;
30899 :>0:r1=0; 0:r4=0; 2:r1=0; 2:r4=2; x=2; y=2;
13728 :>0:r1=1; 0:r4=2; 2:r1=2; 2:r4=0; x=2; y=2;
95699 :>0:r1=1; 0:r4=2; 2:r1=0; 2:r4=0; x=2; y=2;
67798 :>0:r1=2; 0:r4=2; 2:r1=1; 2:r4=2; x=2; y=2;
51082 :>0:r1=1; 0:r4=2; 2:r1=2; 2:r4=2; x=2; y=2;
58414 :>0:r1=0; 0:r4=1; 2:r1=0; 2:r4=0; x=2; y=2;
55012 :>0:r1=0; 0:r4=0; 2:r1=1; 2:r4=2; x=2; y=2;
29529 :>0:r1=2; 0:r4=1; 2:r1=0; 2:r4=2; x=2; y=2;
5396 :>0:r1=0; 0:r4=2; 2:r1=1; 2:r4=0; x=2; y=2;
43063 :>0:r1=0; 0:r4=2; 2:r1=0; 2:r4=0; x=2; y=2;
70216 :>0:r1=0; 0:r4=0; 2:r1=2; 2:r4=2; x=2; y=2;
2515 :>0:r1=1; 0:r4=0; 2:r1=0; 2:r4=2; x=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r4=0 /\ 2:r1=2 /\ 2:r4=0) is NOT validated
Hash=c1e3564885d92e8a7673524e5b6d56fb
Cycle=SyncsWW Rfe DpdR Fre SyncsWW Rfe DpdR Fre
Relax safe305 No
Safe=Fre DpdR BCSyncsWW
Time safe305 3.82
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe306.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe306
"SyncdWW Rfe DpdR Fre SyncsWW Rfe DpdR Fre"
{0:r2=x; 0:r5=y; 1:r2=y; 2:r2=y; 2:r5=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
xor r3,r1,r1 | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwzx r4,r3,r5 | sync | lwzx r4,r3,r5 | sync ;
| li r3,2 | | li r3,1 ;
| stw r3,0(r2) | | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 0:r4=0 /\ 2:r1=2 /\ 2:r4=0)
Generated assembler
_litmus_P0_0_: lwz r6,0(r9)
_litmus_P0_1_: xor r11,r6,r6
_litmus_P0_2_: lwzx r7,r11,r2
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r11,r6,r6
_litmus_P2_2_: lwzx r7,r11,r2
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe306 Allowed
Histogram (32 states)
2 :>0:r1=1; 0:r4=0; 2:r1=2; 2:r4=1; y=2;
6 :>0:r1=1; 0:r4=0; 2:r1=1; 2:r4=1; y=2;
13 :>0:r1=1; 0:r4=1; 2:r1=0; 2:r4=0; y=2;
15 :>0:r1=0; 0:r4=1; 2:r1=1; 2:r4=1; y=2;
6 :>0:r1=1; 0:r4=0; 2:r1=0; 2:r4=0; y=2;
6 :>0:r1=1; 0:r4=1; 2:r1=1; 2:r4=1; y=2;
4 :>0:r1=0; 0:r4=1; 2:r1=1; 2:r4=0; y=2;
669 :>0:r1=1; 0:r4=1; 2:r1=2; 2:r4=1; y=2;
69 :>0:r1=0; 0:r4=1; 2:r1=2; 2:r4=0; y=2;
147 :>0:r1=1; 0:r4=2; 2:r1=2; 2:r4=0; y=2;
82 :>0:r1=1; 0:r4=2; 2:r1=1; 2:r4=0; y=2;
2136 :>0:r1=1; 0:r4=0; 2:r1=0; 2:r4=1; y=2;
2482 :>0:r1=0; 0:r4=0; 2:r1=1; 2:r4=0; y=2;
7430 :>0:r1=1; 0:r4=2; 2:r1=0; 2:r4=0; y=2;
574 :>0:r1=0; 0:r4=0; 2:r1=2; 2:r4=0; y=2;
76643 :>0:r1=1; 0:r4=2; 2:r1=2; 2:r4=1; y=2;
15968 :>0:r1=0; 0:r4=2; 2:r1=1; 2:r4=0; y=2;
39175 :>0:r1=1; 0:r4=2; 2:r1=0; 2:r4=1; y=2;
41880 :>0:r1=0; 0:r4=2; 2:r1=2; 2:r4=0; y=2;
5005 :>0:r1=0; 0:r4=2; 2:r1=0; 2:r4=1; y=2;
83765 :>0:r1=0; 0:r4=0; 2:r1=2; 2:r4=1; y=2;
20009 :>0:r1=0; 0:r4=0; 2:r1=0; 2:r4=0; y=2;
46043 :>0:r1=0; 0:r4=1; 2:r1=0; 2:r4=0; y=2;
72137 :>0:r1=0; 0:r4=0; 2:r1=1; 2:r4=1; y=2;
61421 :>0:r1=0; 0:r4=0; 2:r1=0; 2:r4=1; y=2;
24604 :>0:r1=1; 0:r4=2; 2:r1=1; 2:r4=1; y=2;
21457 :>0:r1=0; 0:r4=2; 2:r1=1; 2:r4=1; y=2;
27354 :>0:r1=0; 0:r4=1; 2:r1=0; 2:r4=1; y=2;
172632:>0:r1=0; 0:r4=2; 2:r1=2; 2:r4=1; y=2;
66689 :>0:r1=1; 0:r4=1; 2:r1=0; 2:r4=1; y=2;
186492:>0:r1=0; 0:r4=2; 2:r1=0; 2:r4=0; y=2;
25085 :>0:r1=0; 0:r4=1; 2:r1=2; 2:r4=1; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 0:r4=0 /\ 2:r1=2 /\ 2:r4=0) is NOT validated
Hash=86a396eddfe8529a02227ddc05d670e0
Cycle=SyncdWW Rfe DpdR Fre SyncsWW Rfe DpdR Fre
Relax safe306 No
Safe=Fre DpdR BCSyncsWW BCSyncdWW
Time safe306 2.67
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe307.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe307
"SyncdWR Fre SyncsWW Rfe DpdR Fre"
{0:r2=x; 1:r2=x; 1:r5=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
li r1,1 | lwz r1,0(r2) | li r1,1 ;
stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
sync | lwzx r4,r3,r5 | sync ;
li r3,2 | | lwz r3,0(r4) ;
stw r3,0(r2) | | ;
exists (x=2 /\ 1:r1=2 /\ 1:r4=0 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: li r9,1
_litmus_P0_1_: stw r9,0(r2)
_litmus_P0_2_: sync
_litmus_P0_3_: li r11,2
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r6,0(r9)
_litmus_P1_1_: xor r11,r6,r6
_litmus_P1_2_: lwzx r7,r11,r2
_litmus_P2_0_: li r8,1
_litmus_P2_1_: stw r8,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r10,0(r2)
Test safe307 Allowed
Histogram (15 states)
7 :>1:r1=1; 1:r4=0; 2:r3=1; x=2;
43 :>1:r1=1; 1:r4=1; 2:r3=1; x=2;
3005 :>1:r1=1; 1:r4=0; 2:r3=2; x=2;
48070 :>1:r1=2; 1:r4=0; 2:r3=2; x=2;
44973 :>1:r1=0; 1:r4=0; 2:r3=1; x=2;
7982 :>1:r1=0; 1:r4=0; 2:r3=0; x=2;
6117 :>1:r1=2; 1:r4=1; 2:r3=0; x=2;
4339 :>1:r1=0; 1:r4=1; 2:r3=2; x=2;
46728 :>1:r1=2; 1:r4=1; 2:r3=1; x=2;
87999 :>1:r1=0; 1:r4=1; 2:r3=0; x=2;
92107 :>1:r1=0; 1:r4=1; 2:r3=1; x=2;
49582 :>1:r1=1; 1:r4=1; 2:r3=0; x=2;
63402 :>1:r1=1; 1:r4=1; 2:r3=2; x=2;
268664:>1:r1=0; 1:r4=0; 2:r3=2; x=2;
276982:>1:r1=2; 1:r4=1; 2:r3=2; x=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 1:r1=2 /\ 1:r4=0 /\ 2:r3=0) is NOT validated
Hash=19a219a7b6ab652374c7e50fbb50c760
Cycle=SyncdWR Fre SyncsWW Rfe DpdR Fre
Relax safe307 No
Safe=Fre SyncdWR DpdR BCSyncsWW
Time safe307 1.67
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe308.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe308
"SyncsWW Rfe SyncdRR Fre SyncsWW Rfe DpdR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r5=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwzx r4,r3,r5 | sync ;
| li r3,2 | | li r3,2 ;
| stw r3,0(r2) | | stw r3,0(r2) ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r4=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r11,r6,r6
_litmus_P2_2_: lwzx r7,r11,r2
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe308 Allowed
Histogram (68 states)
1 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r4=0; x=2; y=2;
2 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r4=0; x=2; y=2;
3 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=2; x=2; y=2;
3 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=0; x=2; y=2;
5 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=1; x=2; y=2;
3 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=1; x=2; y=2;
2 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r4=1; x=2; y=2;
33 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r4=0; x=2; y=2;
4 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=1; x=2; y=2;
4 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r4=2; x=2; y=2;
7 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=2; x=2; y=2;
9 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r4=1; x=2; y=2;
43 :>0:r1=1; 0:r3=0; 2:r1=2; 2:r4=2; x=2; y=2;
3 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=0; x=2; y=2;
22 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=2; x=2; y=2;
5 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r4=1; x=2; y=2;
63 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=0; x=2; y=2;
148 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=0; x=2; y=2;
8 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r4=1; x=2; y=2;
29 :>0:r1=2; 0:r3=0; 2:r1=2; 2:r4=2; x=2; y=2;
232 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=1; x=2; y=2;
159 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=0; x=2; y=2;
392 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=1; x=2; y=2;
1653 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r4=0; x=2; y=2;
1102 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=0; x=2; y=2;
16 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r4=1; x=2; y=2;
743 :>0:r1=2; 0:r3=0; 2:r1=1; 2:r4=2; x=2; y=2;
978 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r4=0; x=2; y=2;
2224 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r4=1; x=2; y=2;
10929 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; x=2; y=2;
1031 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r4=2; x=2; y=2;
3700 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=2; x=2; y=2;
872 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=2; x=2; y=2;
8694 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r4=0; x=2; y=2;
2114 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=2; x=2; y=2;
5876 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=2; x=2; y=2;
4852 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r4=2; x=2; y=2;
19083 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r4=2; x=2; y=2;
824 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=0; x=2; y=2;
13083 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=1; x=2; y=2;
20663 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r4=1; x=2; y=2;
743 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=1; x=2; y=2;
22623 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=2; x=2; y=2;
7188 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r4=2; x=2; y=2;
20627 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; x=2; y=2;
85458 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=2; x=2; y=2;
7649 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r4=2; x=2; y=2;
9194 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r4=2; x=2; y=2;
12161 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=0; x=2; y=2;
31448 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r4=0; x=2; y=2;
58305 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=1; x=2; y=2;
7051 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=1; x=2; y=2;
34586 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r4=1; x=2; y=2;
4470 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=1; x=2; y=2;
34540 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r4=1; x=2; y=2;
67793 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; x=2; y=2;
42421 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=2; x=2; y=2;
5656 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r4=0; x=2; y=2;
65143 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=2; x=2; y=2;
51314 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r4=2; x=2; y=2;
34822 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r4=2; x=2; y=2;
1791 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r4=2; x=2; y=2;
28978 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r4=0; x=2; y=2;
100258:>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0; x=2; y=2;
48255 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r4=2; x=2; y=2;
90618 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=0; x=2; y=2;
1481 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=2; x=2; y=2;
25810 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r4=2; x=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r4=0) is NOT validated
Hash=efb2b6a17bc4e2af46f4eaaf578403b3
Cycle=SyncsWW Rfe SyncdRR Fre SyncsWW Rfe DpdR Fre
Relax safe308 No
Safe=Fre SyncdRR DpdR BCSyncsWW
Time safe308 3.98
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe309.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe309
"SyncdWW Rfe SyncdRR Fre SyncsWW Rfe DpdR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r5=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwzx r4,r3,r5 | sync ;
| li r3,2 | | li r3,1 ;
| stw r3,0(r2) | | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r4=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r11,r6,r6
_litmus_P2_2_: lwzx r7,r11,r2
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe309 Allowed
Histogram (30 states)
3 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=0; y=2;
7 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=0; y=2;
106 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r4=0; y=2;
14 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=1; y=2;
2 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r4=1; y=2;
110 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; y=2;
172 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r4=0; y=2;
250 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=0; y=2;
147 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r4=0; y=2;
1280 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=0; y=2;
934 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=1; y=2;
64 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r4=1; y=2;
12664 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r4=0; y=2;
34584 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=1; y=2;
59357 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r4=0; y=2;
11645 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r4=1; y=2;
23856 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r4=1; y=2;
10967 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=1; y=2;
80479 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; y=2;
21310 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r4=1; y=2;
81935 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; y=2;
14767 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=1; y=2;
101969:>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=0; y=2;
35631 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=1; y=2;
15797 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=1; y=2;
54070 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=1; y=2;
122878:>0:r1=0; 0:r3=2; 2:r1=2; 2:r4=1; y=2;
129572:>0:r1=1; 0:r3=2; 2:r1=0; 2:r4=1; y=2;
127019:>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0; y=2;
58411 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=0; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r4=0) is NOT validated
Hash=f8e2a60a2fdb73a5e02fa10790555024
Cycle=SyncdWW Rfe SyncdRR Fre SyncsWW Rfe DpdR Fre
Relax safe309 No
Safe=Fre SyncdRR DpdR BCSyncsWW BCSyncdWW
Time safe309 2.56
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe310.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe310
"SyncsWW Rfe LwSyncdRR Fre SyncsWW Rfe DpdR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r5=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
lwsync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwzx r4,r3,r5 | sync ;
| li r3,2 | | li r3,2 ;
| stw r3,0(r2) | | stw r3,0(r2) ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r4=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r11,r6,r6
_litmus_P2_2_: lwzx r7,r11,r2
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe310 Allowed
Histogram (67 states)
1 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r4=1; x=2; y=2;
1 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r4=1; x=2; y=2;
2 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=1; x=2; y=2;
2 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r4=0; x=2; y=2;
2 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=1; x=2; y=2;
5 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=1; x=2; y=2;
10 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=2; x=2; y=2;
8 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r4=1; x=2; y=2;
12 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=0; x=2; y=2;
35 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r4=0; x=2; y=2;
7 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=0; x=2; y=2;
234 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=0; x=2; y=2;
32 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r4=1; x=2; y=2;
50 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r4=1; x=2; y=2;
9 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=2; x=2; y=2;
34 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r4=1; x=2; y=2;
52 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r4=2; x=2; y=2;
164 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=0; x=2; y=2;
178 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r4=1; x=2; y=2;
118 :>0:r1=2; 0:r3=0; 2:r1=2; 2:r4=2; x=2; y=2;
102 :>0:r1=1; 0:r3=0; 2:r1=2; 2:r4=2; x=2; y=2;
291 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r4=0; x=2; y=2;
11 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=2; x=2; y=2;
855 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r4=2; x=2; y=2;
473 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=1; x=2; y=2;
450 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=1; x=2; y=2;
1329 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r4=0; x=2; y=2;
4613 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; x=2; y=2;
239 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=0; x=2; y=2;
1265 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r4=0; x=2; y=2;
1102 :>0:r1=2; 0:r3=0; 2:r1=1; 2:r4=2; x=2; y=2;
385 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=1; x=2; y=2;
6696 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=1; x=2; y=2;
26900 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=0; x=2; y=2;
1697 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=2; x=2; y=2;
4905 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r4=2; x=2; y=2;
9779 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=1; x=2; y=2;
5735 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r4=0; x=2; y=2;
645 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=2; x=2; y=2;
4431 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r4=1; x=2; y=2;
14849 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r4=2; x=2; y=2;
13847 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=0; x=2; y=2;
1855 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; x=2; y=2;
5226 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r4=2; x=2; y=2;
85580 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=1; x=2; y=2;
52121 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0; x=2; y=2;
865 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r4=2; x=2; y=2;
4123 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=2; x=2; y=2;
2061 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=1; x=2; y=2;
60427 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=2; x=2; y=2;
41041 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=2; x=2; y=2;
50053 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r4=2; x=2; y=2;
77527 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r4=0; x=2; y=2;
17224 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r4=2; x=2; y=2;
29476 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r4=2; x=2; y=2;
11613 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=2; x=2; y=2;
7827 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r4=2; x=2; y=2;
91124 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r4=0; x=2; y=2;
59482 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=2; x=2; y=2;
69239 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r4=1; x=2; y=2;
58936 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=0; x=2; y=2;
9922 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r4=2; x=2; y=2;
79701 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r4=2; x=2; y=2;
21828 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r4=1; x=2; y=2;
24848 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; x=2; y=2;
30043 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=2; x=2; y=2;
6303 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=2; x=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r4=0) is NOT validated
Hash=36a34e68b8e53d9d5efa552f3a2f965e
Cycle=SyncsWW Rfe LwSyncdRR Fre SyncsWW Rfe DpdR Fre
Relax safe310 No
Safe=Fre LwSyncdRR DpdR BCSyncsWW
Time safe310 3.85
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe311.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe311
"SyncdWW Rfe LwSyncdRR Fre SyncsWW Rfe DpdR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r5=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
lwsync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwzx r4,r3,r5 | sync ;
| li r3,2 | | li r3,1 ;
| stw r3,0(r2) | | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r4=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r11,r6,r6
_litmus_P2_2_: lwzx r7,r11,r2
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe311 Allowed
Histogram (32 states)
2 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=0; y=2;
14 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; y=2;
23 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r4=1; y=2;
6 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=0; y=2;
9 :>0:r1=1; 0:r3=0; 2:r1=2; 2:r4=1; y=2;
22 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=1; y=2;
8 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=1; y=2;
169 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r4=0; y=2;
113 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r4=0; y=2;
51 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r4=0; y=2;
528 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=0; y=2;
2179 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=0; y=2;
798 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r4=1; y=2;
6916 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r4=0; y=2;
2886 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=1; y=2;
16192 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=0; y=2;
50525 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r4=0; y=2;
66108 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r4=1; y=2;
41062 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r4=1; y=2;
70078 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=1; y=2;
66281 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=1; y=2;
66665 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=1; y=2;
15887 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; y=2;
20655 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r4=1; y=2;
19524 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=1; y=2;
29754 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r4=1; y=2;
28180 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=1; y=2;
46483 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0; y=2;
83344 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; y=2;
6862 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=1; y=2;
187642:>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=0; y=2;
171034:>0:r1=0; 0:r3=2; 2:r1=2; 2:r4=1; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r4=0) is NOT validated
Hash=4e5952307dbf729e91be6ef7ef0adc13
Cycle=SyncdWW Rfe LwSyncdRR Fre SyncsWW Rfe DpdR Fre
Relax safe311 No
Safe=Fre LwSyncdRR DpdR BCSyncsWW BCSyncdWW
Time safe311 2.61
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe312.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe312
"Rfe SyncdRR Fre SyncsWW Rfe DpdR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r5=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwzx r4,r3,r5 | ;
| li r3,2 | | ;
| stw r3,0(r2) | | ;
exists (x=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r4=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r11,r6,r6
_litmus_P2_2_: lwzx r7,r11,r2
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
Test safe312 Allowed
Histogram (33 states)
1 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=0; x=2;
20 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=1; x=2;
5 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=0; x=2;
28 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=1; x=2;
170 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=0; x=2;
316 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=0; x=2;
171 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r4=0; x=2;
124 :>0:r1=1; 0:r3=0; 2:r1=2; 2:r4=1; x=2;
1708 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r4=1; x=2;
1150 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r4=0; x=2;
6624 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; x=2;
205 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=1; x=2;
8804 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r4=1; x=2;
2475 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=1; x=2;
977 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=0; x=2;
3586 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r4=0; x=2;
8756 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=1; x=2;
20307 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=1; x=2;
43193 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r4=0; x=2;
11408 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=1; x=2;
28969 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=1; x=2;
7434 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=0; x=2;
17951 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r4=1; x=2;
76531 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; x=2;
116598:>0:r1=1; 0:r3=2; 2:r1=1; 2:r4=1; x=2;
110142:>0:r1=0; 0:r3=2; 2:r1=2; 2:r4=1; x=2;
92932 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0; x=2;
123183:>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; x=2;
30299 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r4=1; x=2;
9866 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=0; x=2;
91051 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r4=0; x=2;
42852 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=1; x=2;
142164:>0:r1=1; 0:r3=2; 2:r1=2; 2:r4=1; x=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r4=0) is NOT validated
Hash=4557ff4367932016a6127115b2165b73
Cycle=Rfe SyncdRR Fre SyncsWW Rfe DpdR Fre
Relax safe312 No
Safe=Fre DpdR ACSyncdRR BCSyncsWW
Time safe312 2.36
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe313.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe313
"LwSyncdWW Rfe SyncdRR Fre SyncsWW Rfe DpdR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r5=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwzx r4,r3,r5 | lwsync ;
| li r3,2 | | li r3,1 ;
| stw r3,0(r2) | | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r4=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r11,r6,r6
_litmus_P2_2_: lwzx r7,r11,r2
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe313 Allowed
Histogram (31 states)
2 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=0; y=2;
14 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=1; y=2;
18 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r4=1; y=2;
46 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r4=0; y=2;
51 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=0; y=2;
46 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=0; y=2;
16 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=1; y=2;
78 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r4=0; y=2;
64 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; y=2;
133 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r4=0; y=2;
212 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=0; y=2;
4649 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r4=1; y=2;
4861 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=0; y=2;
11996 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r4=0; y=2;
3962 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=1; y=2;
113727:>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=1; y=2;
5733 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=1; y=2;
23802 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=1; y=2;
18720 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=1; y=2;
119751:>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0; y=2;
125292:>0:r1=0; 0:r3=2; 2:r1=2; 2:r4=1; y=2;
55601 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r4=1; y=2;
46388 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r4=1; y=2;
19936 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=1; y=2;
62845 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r4=1; y=2;
86529 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=0; y=2;
68518 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; y=2;
130087:>0:r1=1; 0:r3=2; 2:r1=2; 2:r4=1; y=2;
55394 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=1; y=2;
31816 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r4=0; y=2;
9713 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r4=0) is NOT validated
Hash=7f397b5c03ebbe2062d27e86a6824b85
Cycle=LwSyncdWW Rfe SyncdRR Fre SyncsWW Rfe DpdR Fre
Relax safe313 No
Safe=Fre LwSyncdWW DpdR ACSyncdRR BCSyncsWW
Time safe313 2.56
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe314.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe314
"LwSyncsWW Rfe SyncdRR Fre SyncsWW Rfe DpdR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r5=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwzx r4,r3,r5 | lwsync ;
| li r3,2 | | li r3,2 ;
| stw r3,0(r2) | | stw r3,0(r2) ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r4=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r11,r6,r6
_litmus_P2_2_: lwzx r7,r11,r2
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe314 Allowed
Histogram (59 states)
4 :>0:r1=1; 0:r3=0; 2:r1=2; 2:r4=2; x=2; y=2;
1 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r4=0; x=2; y=2;
32 :>0:r1=2; 0:r3=0; 2:r1=2; 2:r4=2; x=2; y=2;
3 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=0; x=2; y=2;
24 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r4=2; x=2; y=2;
26 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r4=0; x=2; y=2;
6 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r4=1; x=2; y=2;
141 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=1; x=2; y=2;
4 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=2; x=2; y=2;
42 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=0; x=2; y=2;
95 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r4=2; x=2; y=2;
571 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r4=1; x=2; y=2;
214 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=1; x=2; y=2;
979 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=0; x=2; y=2;
267 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r4=0; x=2; y=2;
28 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r4=2; x=2; y=2;
661 :>0:r1=2; 0:r3=0; 2:r1=1; 2:r4=2; x=2; y=2;
51 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=0; x=2; y=2;
2879 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; x=2; y=2;
369 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r4=2; x=2; y=2;
1767 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r4=1; x=2; y=2;
223 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=2; x=2; y=2;
4983 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r4=0; x=2; y=2;
556 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r4=0; x=2; y=2;
9821 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r4=2; x=2; y=2;
1938 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r4=0; x=2; y=2;
9948 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r4=2; x=2; y=2;
1742 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r4=0; x=2; y=2;
2445 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r4=2; x=2; y=2;
554 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=2; x=2; y=2;
3001 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; x=2; y=2;
12531 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=0; x=2; y=2;
3133 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=1; x=2; y=2;
361 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=1; x=2; y=2;
4964 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r4=1; x=2; y=2;
827 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=2; x=2; y=2;
7982 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r4=2; x=2; y=2;
569 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=1; x=2; y=2;
12648 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; x=2; y=2;
4454 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=1; x=2; y=2;
6279 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=2; x=2; y=2;
43869 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0; x=2; y=2;
7467 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=0; x=2; y=2;
67331 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=2; x=2; y=2;
27850 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r4=0; x=2; y=2;
54303 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=0; x=2; y=2;
26459 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r4=2; x=2; y=2;
30329 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=2; x=2; y=2;
4815 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=1; x=2; y=2;
22111 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r4=2; x=2; y=2;
11382 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r4=1; x=2; y=2;
100734:>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=0; x=2; y=2;
9672 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=2; x=2; y=2;
111668:>0:r1=2; 0:r3=2; 2:r1=1; 2:r4=2; x=2; y=2;
116233:>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=2; x=2; y=2;
68256 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=2; x=2; y=2;
15017 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r4=0; x=2; y=2;
9807 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=2; x=2; y=2;
175574:>0:r1=2; 0:r3=2; 2:r1=2; 2:r4=2; x=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r4=0) is NOT validated
Hash=279d1d1a024083ae5054541b9662c232
Cycle=LwSyncsWW Rfe SyncdRR Fre SyncsWW Rfe DpdR Fre
Relax safe314 No
Safe=Fre LwSyncsWW DpdR ACSyncdRR BCSyncsWW
Time safe314 3.77
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe315.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe315
"SyncdWW Rfe SyncsRW Rfe DpdR Fre"
{0:r2=x; 1:r2=x; 1:r5=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | xor r3,r1,r1 | stw r1,0(r2) ;
li r3,2 | lwzx r4,r3,r5 | sync ;
stw r3,0(r2) | | li r3,1 ;
| | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r4=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r6,0(r9)
_litmus_P1_1_: xor r11,r6,r6
_litmus_P1_2_: lwzx r7,r11,r2
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe315 Allowed
Histogram (13 states)
2535 :>0:r1=1; 1:r1=0; 1:r4=0; x=2;
3924 :>0:r1=1; 1:r1=2; 1:r4=1; x=2;
60798 :>0:r1=0; 1:r1=0; 1:r4=0; x=2;
16485 :>0:r1=0; 1:r1=2; 1:r4=0; x=1;
22270 :>0:r1=0; 1:r1=2; 1:r4=1; x=2;
142677:>0:r1=0; 1:r1=0; 1:r4=1; x=2;
66964 :>0:r1=1; 1:r1=1; 1:r4=1; x=2;
10950 :>0:r1=0; 1:r1=0; 1:r4=1; x=1;
297431:>0:r1=0; 1:r1=2; 1:r4=1; x=1;
45465 :>0:r1=1; 1:r1=0; 1:r4=1; x=2;
258610:>0:r1=0; 1:r1=0; 1:r4=0; x=1;
21338 :>0:r1=0; 1:r1=1; 1:r4=1; x=1;
50553 :>0:r1=0; 1:r1=1; 1:r4=1; x=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r4=0) is NOT validated
Hash=06fca7450745246135c3ee02023adfab
Cycle=SyncdWW Rfe SyncsRW Rfe DpdR Fre
Relax safe315 No
Safe=Fre DpdR BCSyncsRW BCSyncdWW
Time safe315 1.53
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe316.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe316
"SyncdWR Fre SyncdWW Rfe SyncsRW Rfe DpdR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r5=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
li r1,1 | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
stw r1,0(r2) | sync | xor r3,r1,r1 | stw r1,0(r2) ;
sync | li r3,2 | lwzx r4,r3,r5 | sync ;
li r3,1 | stw r3,0(r2) | | lwz r3,0(r4) ;
stw r3,0(r4) | | | ;
exists (y=2 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r4=0 /\ 3:r3=0)
Generated assembler
_litmus_P0_0_: li r11,1
_litmus_P0_1_: stw r11,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r10,1
_litmus_P0_4_: stw r10,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r11,r6,r6
_litmus_P2_2_: lwzx r7,r11,r2
_litmus_P3_0_: li r10,1
_litmus_P3_1_: stw r10,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: lwz r8,0(r2)
Test safe316 Allowed
Histogram (30 states)
1 :>1:r1=1; 2:r1=0; 2:r4=0; 3:r3=0; y=2;
3 :>1:r1=1; 2:r1=2; 2:r4=0; 3:r3=1; y=2;
46 :>1:r1=1; 2:r1=1; 2:r4=1; 3:r3=0; y=2;
46 :>1:r1=0; 2:r1=2; 2:r4=1; 3:r3=0; y=2;
158 :>1:r1=0; 2:r1=1; 2:r4=1; 3:r3=0; y=1;
1490 :>1:r1=1; 2:r1=2; 2:r4=1; 3:r3=1; y=2;
100 :>1:r1=0; 2:r1=2; 2:r4=0; 3:r3=1; y=2;
367 :>1:r1=0; 2:r1=2; 2:r4=0; 3:r3=0; y=1;
1107 :>1:r1=0; 2:r1=0; 2:r4=0; 3:r3=0; y=2;
1511 :>1:r1=0; 2:r1=1; 2:r4=0; 3:r3=1; y=2;
1703 :>1:r1=1; 2:r1=1; 2:r4=0; 3:r3=1; y=2;
2366 :>1:r1=1; 2:r1=0; 2:r4=1; 3:r3=0; y=2;
457 :>1:r1=0; 2:r1=1; 2:r4=0; 3:r3=1; y=1;
186 :>1:r1=0; 2:r1=1; 2:r4=1; 3:r3=0; y=2;
42886 :>1:r1=1; 2:r1=1; 2:r4=1; 3:r3=1; y=2;
80521 :>1:r1=0; 2:r1=2; 2:r4=0; 3:r3=1; y=1;
133811:>1:r1=0; 2:r1=0; 2:r4=0; 3:r3=1; y=2;
46385 :>1:r1=0; 2:r1=1; 2:r4=1; 3:r3=1; y=2;
48328 :>1:r1=0; 2:r1=0; 2:r4=1; 3:r3=0; y=2;
28510 :>1:r1=1; 2:r1=0; 2:r4=0; 3:r3=1; y=2;
13672 :>1:r1=0; 2:r1=1; 2:r4=1; 3:r3=1; y=1;
16614 :>1:r1=0; 2:r1=0; 2:r4=1; 3:r3=1; y=1;
131448:>1:r1=0; 2:r1=2; 2:r4=1; 3:r3=1; y=1;
59701 :>1:r1=0; 2:r1=0; 2:r4=1; 3:r3=1; y=2;
123767:>1:r1=0; 2:r1=0; 2:r4=0; 3:r3=1; y=1;
27472 :>1:r1=0; 2:r1=2; 2:r4=1; 3:r3=1; y=2;
42212 :>1:r1=0; 2:r1=2; 2:r4=1; 3:r3=0; y=1;
145034:>1:r1=0; 2:r1=0; 2:r4=1; 3:r3=0; y=1;
31001 :>1:r1=0; 2:r1=0; 2:r4=0; 3:r3=0; y=1;
19097 :>1:r1=1; 2:r1=0; 2:r4=1; 3:r3=1; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r4=0 /\ 3:r3=0) is NOT validated
Hash=3e5c698a20f180bf901bb003a02d5ca3
Cycle=SyncdWR Fre SyncdWW Rfe SyncsRW Rfe DpdR Fre
Relax safe316 No
Safe=Fre SyncdWR DpdR BCSyncsRW BCSyncdWW
Time safe316 2.51
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe317.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe317
"SyncsWR Fre SyncdWW Rfe SyncsRW Rfe DpdR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r5=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
li r1,2 | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
stw r1,0(r2) | sync | xor r3,r1,r1 | stw r1,0(r2) ;
sync | li r3,2 | lwzx r4,r3,r5 | sync ;
li r3,1 | stw r3,0(r2) | | lwz r3,0(r2) ;
stw r3,0(r4) | | | ;
exists (x=2 /\ y=2 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r4=0 /\ 3:r3=1)
Generated assembler
_litmus_P0_0_: li r11,2
_litmus_P0_1_: stw r11,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r10,1
_litmus_P0_4_: stw r10,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r11,r6,r6
_litmus_P2_2_: lwzx r7,r11,r2
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: lwz r10,0(r2)
Test safe317 Allowed
Histogram (54 states)
2 :>1:r1=1; 2:r1=0; 2:r4=0; 3:r3=1; x=2; y=2;
8 :>1:r1=1; 2:r1=0; 2:r4=1; 3:r3=1; x=2; y=2;
3 :>1:r1=0; 2:r1=2; 2:r4=1; 3:r3=2; x=1; y=2;
8 :>1:r1=0; 2:r1=0; 2:r4=1; 3:r3=2; x=1; y=2;
7 :>1:r1=0; 2:r1=2; 2:r4=2; 3:r3=1; x=2; y=1;
3 :>1:r1=1; 2:r1=2; 2:r4=2; 3:r3=2; x=2; y=2;
34 :>1:r1=0; 2:r1=1; 2:r4=2; 3:r3=1; x=1; y=1;
8 :>1:r1=1; 2:r1=2; 2:r4=2; 3:r3=1; x=2; y=2;
8 :>1:r1=1; 2:r1=2; 2:r4=2; 3:r3=1; x=2; y=1;
31 :>1:r1=1; 2:r1=0; 2:r4=0; 3:r3=2; x=2; y=2;
167 :>1:r1=1; 2:r1=1; 2:r4=2; 3:r3=2; x=2; y=2;
653 :>1:r1=0; 2:r1=1; 2:r4=2; 3:r3=2; x=1; y=2;
308 :>1:r1=1; 2:r1=1; 2:r4=2; 3:r3=1; x=2; y=2;
4241 :>1:r1=0; 2:r1=1; 2:r4=2; 3:r3=1; x=1; y=2;
6166 :>1:r1=0; 2:r1=2; 2:r4=2; 3:r3=1; x=2; y=2;
1109 :>1:r1=0; 2:r1=0; 2:r4=1; 3:r3=1; x=2; y=2;
1058 :>1:r1=0; 2:r1=2; 2:r4=2; 3:r3=2; x=2; y=2;
1955 :>1:r1=1; 2:r1=1; 2:r4=2; 3:r3=1; x=2; y=1;
16764 :>1:r1=0; 2:r1=0; 2:r4=0; 3:r3=2; x=2; y=2;
2894 :>1:r1=0; 2:r1=1; 2:r4=2; 3:r3=2; x=2; y=2;
2354 :>1:r1=1; 2:r1=0; 2:r4=2; 3:r3=1; x=2; y=2;
161 :>1:r1=0; 2:r1=1; 2:r4=2; 3:r3=1; x=2; y=1;
11469 :>1:r1=0; 2:r1=2; 2:r4=0; 3:r3=2; x=1; y=2;
12071 :>1:r1=1; 2:r1=0; 2:r4=0; 3:r3=1; x=2; y=1;
4141 :>1:r1=0; 2:r1=2; 2:r4=0; 3:r3=1; x=1; y=2;
1801 :>1:r1=0; 2:r1=0; 2:r4=0; 3:r3=1; x=2; y=2;
22173 :>1:r1=1; 2:r1=0; 2:r4=2; 3:r3=1; x=2; y=1;
34149 :>1:r1=0; 2:r1=0; 2:r4=2; 3:r3=1; x=2; y=2;
3211 :>1:r1=0; 2:r1=0; 2:r4=0; 3:r3=1; x=1; y=2;
44628 :>1:r1=1; 2:r1=0; 2:r4=1; 3:r3=1; x=2; y=1;
10494 :>1:r1=0; 2:r1=2; 2:r4=1; 3:r3=1; x=2; y=1;
34856 :>1:r1=0; 2:r1=1; 2:r4=2; 3:r3=1; x=2; y=2;
17188 :>1:r1=0; 2:r1=2; 2:r4=0; 3:r3=1; x=1; y=1;
4550 :>1:r1=0; 2:r1=0; 2:r4=2; 3:r3=1; x=1; y=1;
4753 :>1:r1=0; 2:r1=0; 2:r4=2; 3:r3=2; x=2; y=2;
95837 :>1:r1=0; 2:r1=0; 2:r4=0; 3:r3=1; x=2; y=1;
13899 :>1:r1=0; 2:r1=1; 2:r4=1; 3:r3=1; x=1; y=1;
25484 :>1:r1=0; 2:r1=0; 2:r4=0; 3:r3=2; x=1; y=2;
30831 :>1:r1=0; 2:r1=0; 2:r4=1; 3:r3=1; x=2; y=1;
10973 :>1:r1=0; 2:r1=0; 2:r4=2; 3:r3=2; x=1; y=2;
49600 :>1:r1=0; 2:r1=2; 2:r4=2; 3:r3=1; x=1; y=2;
73956 :>1:r1=0; 2:r1=2; 2:r4=1; 3:r3=1; x=1; y=1;
24803 :>1:r1=0; 2:r1=1; 2:r4=1; 3:r3=1; x=2; y=1;
52621 :>1:r1=0; 2:r1=2; 2:r4=2; 3:r3=2; x=1; y=2;
80940 :>1:r1=1; 2:r1=1; 2:r4=1; 3:r3=1; x=2; y=1;
43901 :>1:r1=0; 2:r1=0; 2:r4=2; 3:r3=1; x=1; y=2;
36147 :>1:r1=0; 2:r1=2; 2:r4=1; 3:r3=1; x=1; y=2;
8283 :>1:r1=0; 2:r1=0; 2:r4=1; 3:r3=1; x=1; y=1;
25714 :>1:r1=0; 2:r1=0; 2:r4=2; 3:r3=1; x=2; y=1;
73050 :>1:r1=0; 2:r1=0; 2:r4=1; 3:r3=1; x=1; y=2;
20697 :>1:r1=0; 2:r1=2; 2:r4=2; 3:r3=1; x=1; y=1;
86380 :>1:r1=0; 2:r1=0; 2:r4=0; 3:r3=1; x=1; y=1;
3093 :>1:r1=1; 2:r1=2; 2:r4=1; 3:r3=1; x=2; y=1;
365 :>1:r1=1; 2:r1=0; 2:r4=2; 3:r3=2; x=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r4=0 /\ 3:r3=1) is NOT validated
Hash=4713654a8238795d9f011fa8ab8d886a
Cycle=SyncsWR Fre SyncdWW Rfe SyncsRW Rfe DpdR Fre
Relax safe317 No
Safe=Fre SyncsWR DpdR BCSyncsRW BCSyncdWW
Time safe317 3.42
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe318.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe318
"SyncsWW Rfe SyncdRW Rfe SyncsRW Rfe DpdR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r5=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | sync | xor r3,r1,r1 | stw r1,0(r2) ;
li r3,1 | li r3,2 | lwzx r4,r3,r5 | sync ;
stw r3,0(r4) | stw r3,0(r2) | | li r3,2 ;
| | | stw r3,0(r2) ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r4=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r11,r6,r6
_litmus_P2_2_: lwzx r7,r11,r2
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe318 Allowed
Histogram (60 states)
4 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r4=0; x=2; y=2;
14 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r4=1; x=2; y=2;
3 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r4=1; x=2; y=2;
5 :>0:r1=1; 1:r1=1; 2:r1=2; 2:r4=2; x=2; y=2;
39 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r4=0; x=2; y=2;
6 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r4=0; x=2; y=2;
68 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r4=0; x=1; y=2;
11 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r4=1; x=2; y=2;
20 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r4=0; x=2; y=2;
60 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r4=1; x=1; y=2;
49 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r4=1; x=1; y=2;
185 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r4=1; x=2; y=2;
91 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r4=0; x=2; y=2;
416 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r4=0; x=2; y=2;
433 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r4=0; x=2; y=2;
583 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r4=2; x=2; y=2;
1317 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r4=2; x=2; y=2;
523 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r4=1; x=2; y=2;
2375 :>0:r1=2; 1:r1=0; 2:r1=2; 2:r4=2; x=2; y=2;
2199 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r4=1; x=1; y=2;
5955 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r4=2; x=2; y=2;
545 :>0:r1=2; 1:r1=1; 2:r1=1; 2:r4=2; x=2; y=2;
3136 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r4=2; x=2; y=2;
977 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r4=2; x=1; y=2;
10899 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r4=2; x=2; y=2;
1350 :>0:r1=2; 1:r1=0; 2:r1=2; 2:r4=0; x=1; y=2;
17764 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r4=2; x=2; y=2;
35720 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r4=0; x=1; y=2;
3245 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r4=2; x=1; y=2;
19415 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r4=2; x=2; y=2;
39150 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r4=1; x=2; y=2;
3076 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r4=0; x=2; y=2;
21072 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r4=1; x=2; y=2;
8930 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r4=0; x=2; y=2;
2193 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r4=2; x=1; y=2;
8378 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r4=1; x=2; y=2;
20482 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r4=2; x=2; y=2;
4502 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r4=2; x=1; y=2;
20095 :>0:r1=2; 1:r1=0; 2:r1=2; 2:r4=1; x=1; y=2;
7951 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r4=2; x=2; y=2;
54493 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r4=2; x=2; y=2;
82538 :>0:r1=2; 1:r1=0; 2:r1=2; 2:r4=2; x=1; y=2;
10314 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r4=1; x=1; y=2;
87444 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r4=1; x=1; y=2;
19644 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r4=2; x=2; y=2;
70 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r4=1; x=2; y=2;
5853 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r4=0; x=1; y=2;
43449 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r4=0; x=1; y=2;
15423 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r4=2; x=2; y=2;
64370 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r4=2; x=1; y=2;
86136 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r4=0; x=1; y=2;
97980 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r4=2; x=2; y=2;
42611 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r4=2; x=1; y=2;
3104 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r4=1; x=1; y=2;
6109 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r4=2; x=1; y=2;
8680 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r4=2; x=1; y=2;
47044 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r4=0; x=1; y=2;
76383 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r4=0; x=2; y=2;
5112 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r4=2; x=2; y=2;
7 :>0:r1=2; 1:r1=1; 2:r1=2; 2:r4=2; x=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r4=0) is NOT validated
Hash=5a701e9b505f60356b7b14447e8bbb5b
Cycle=SyncsWW Rfe SyncdRW Rfe SyncsRW Rfe DpdR Fre
Relax safe318 No
Safe=Fre DpdR BCSyncsWW BCSyncsRW BCSyncdRW
Time safe318 3.49
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe319.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe319
"SyncdWW Rfe SyncdRW Rfe SyncsRW Rfe DpdR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r5=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | sync | xor r3,r1,r1 | stw r1,0(r2) ;
li r3,1 | li r3,2 | lwzx r4,r3,r5 | sync ;
stw r3,0(r4) | stw r3,0(r2) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r4=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r11,r6,r6
_litmus_P2_2_: lwzx r7,r11,r2
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe319 Allowed
Histogram (29 states)
3 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r4=1; y=2;
31 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r4=1; y=2;
165 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r4=1; y=2;
32 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r4=0; y=2;
32 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r4=0; y=2;
58 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r4=0; y=1;
277 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r4=1; y=1;
367 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r4=0; y=2;
4912 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r4=1; y=2;
5285 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r4=0; y=2;
13486 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r4=1; y=1;
31652 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r4=1; y=2;
20215 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r4=0; y=2;
2697 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r4=0; y=2;
71706 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r4=0; y=1;
21494 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r4=1; y=2;
83612 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r4=1; y=2;
333 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r4=1; y=2;
133233:>0:r1=0; 1:r1=0; 2:r1=0; 2:r4=0; y=2;
47604 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r4=1; y=2;
35758 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r4=1; y=2;
18906 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r4=1; y=1;
110061:>0:r1=1; 1:r1=0; 2:r1=0; 2:r4=1; y=1;
132224:>0:r1=0; 1:r1=0; 2:r1=0; 2:r4=0; y=1;
70839 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r4=1; y=2;
153344:>0:r1=0; 1:r1=0; 2:r1=2; 2:r4=1; y=1;
32905 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r4=1; y=1;
8027 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r4=0; y=1;
742 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r4=0; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r4=0) is NOT validated
Hash=c16285b96f1c9349fdd29b55e4c2012b
Cycle=SyncdWW Rfe SyncdRW Rfe SyncsRW Rfe DpdR Fre
Relax safe319 No
Safe=Fre DpdR BCSyncsRW BCSyncdWW BCSyncdRW
Time safe319 2.45
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe320.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe320
"SyncdWW Rfe DpdR Fre"
{0:r2=x; 0:r5=y; 1:r2=y; 1:r4=x;}
P0 | P1 ;
lwz r1,0(r2) | li r1,1 ;
xor r3,r1,r1 | stw r1,0(r2) ;
lwzx r4,r3,r5 | sync ;
| li r3,1 ;
| stw r3,0(r4) ;
exists (0:r1=1 /\ 0:r4=0)
Generated assembler
_litmus_P0_0_: lwz r6,0(r9)
_litmus_P0_1_: xor r11,r6,r6
_litmus_P0_2_: lwzx r7,r11,r2
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
Test safe320 Allowed
Histogram (3 states)
931655:>0:r1=0; 0:r4=1;
109535:>0:r1=1; 0:r4=1;
958810:>0:r1=0; 0:r4=0;
No
Witnesses
Positive: 0, Negative: 2000000
Condition exists (0:r1=1 /\ 0:r4=0) is NOT validated
Hash=a6daa0380e161411b50b1a65921f1294
Cycle=SyncdWW Rfe DpdR Fre
Relax safe320 No
Safe=Fre DpdR BCSyncdWW
Time safe320 1.27
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe321.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe321
"SyncdWW Rfe DpdR Fre SyncdWW Rfe DpdR Fre"
{0:r2=x; 0:r5=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r5=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
xor r3,r1,r1 | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwzx r4,r3,r5 | sync | lwzx r4,r3,r5 | sync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (0:r1=1 /\ 0:r4=0 /\ 2:r1=1 /\ 2:r4=0)
Generated assembler
_litmus_P0_0_: lwz r6,0(r9)
_litmus_P0_1_: xor r11,r6,r6
_litmus_P0_2_: lwzx r7,r11,r2
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r11,r6,r6
_litmus_P2_2_: lwzx r7,r11,r2
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe321 Allowed
Histogram (15 states)
6 :>0:r1=1; 0:r4=1; 2:r1=1; 2:r4=0;
12 :>0:r1=0; 0:r4=0; 2:r1=1; 2:r4=0;
25 :>0:r1=1; 0:r4=0; 2:r1=0; 2:r4=0;
16 :>0:r1=1; 0:r4=0; 2:r1=1; 2:r4=1;
4063 :>0:r1=0; 0:r4=1; 2:r1=1; 2:r4=0;
7548 :>0:r1=1; 0:r4=0; 2:r1=0; 2:r4=1;
11286 :>0:r1=1; 0:r4=1; 2:r1=0; 2:r4=0;
47476 :>0:r1=0; 0:r4=0; 2:r1=0; 2:r4=0;
139075:>0:r1=1; 0:r4=1; 2:r1=0; 2:r4=1;
108233:>0:r1=0; 0:r4=1; 2:r1=0; 2:r4=1;
221176:>0:r1=0; 0:r4=0; 2:r1=0; 2:r4=1;
29766 :>0:r1=1; 0:r4=1; 2:r1=1; 2:r4=1;
151595:>0:r1=0; 0:r4=1; 2:r1=1; 2:r4=1;
28157 :>0:r1=0; 0:r4=0; 2:r1=1; 2:r4=1;
251566:>0:r1=0; 0:r4=1; 2:r1=0; 2:r4=0;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 0:r4=0 /\ 2:r1=1 /\ 2:r4=0) is NOT validated
Hash=2c337219eb0e4a6802df6293c153e3ea
Cycle=SyncdWW Rfe DpdR Fre SyncdWW Rfe DpdR Fre
Relax safe321 No
Safe=Fre DpdR BCSyncdWW
Time safe321 2.14
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe322.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe322
"SyncdWW Rfe DpsR Fre SyncdWW Rfe DpdR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r5=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,1 ;
xor r3,r1,r1 | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwzx r4,r3,r2 | sync | lwzx r4,r3,r5 | sync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 0:r4=1 /\ 2:r1=1 /\ 2:r4=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r2)
_litmus_P0_1_: xor r11,r7,r7
_litmus_P0_2_: lwzx r9,r11,r2
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r11,r6,r6
_litmus_P2_2_: lwzx r7,r11,r2
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe322 Allowed
Histogram (31 states)
2 :>0:r1=0; 0:r4=2; 2:r1=1; 2:r4=0; x=1;
7 :>0:r1=0; 0:r4=2; 2:r1=0; 2:r4=1; x=2;
1 :>0:r1=0; 0:r4=1; 2:r1=0; 2:r4=0; x=1;
5 :>0:r1=2; 0:r4=1; 2:r1=1; 2:r4=1; x=1;
9 :>0:r1=0; 0:r4=1; 2:r1=1; 2:r4=1; x=1;
66 :>0:r1=0; 0:r4=0; 2:r1=1; 2:r4=1; x=2;
40 :>0:r1=2; 0:r4=2; 2:r1=0; 2:r4=0; x=2;
14 :>0:r1=2; 0:r4=1; 2:r1=0; 2:r4=1; x=1;
12 :>0:r1=0; 0:r4=1; 2:r1=0; 2:r4=1; x=2;
26 :>0:r1=1; 0:r4=1; 2:r1=1; 2:r4=1; x=2;
54 :>0:r1=0; 0:r4=1; 2:r1=0; 2:r4=1; x=1;
43 :>0:r1=1; 0:r4=1; 2:r1=0; 2:r4=0; x=2;
361 :>0:r1=2; 0:r4=2; 2:r1=1; 2:r4=0; x=1;
206 :>0:r1=0; 0:r4=2; 2:r1=0; 2:r4=0; x=1;
120 :>0:r1=0; 0:r4=0; 2:r1=1; 2:r4=0; x=1;
265 :>0:r1=0; 0:r4=2; 2:r1=0; 2:r4=1; x=1;
526 :>0:r1=2; 0:r4=2; 2:r1=1; 2:r4=1; x=2;
1589 :>0:r1=1; 0:r4=1; 2:r1=0; 2:r4=0; x=1;
17970 :>0:r1=1; 0:r4=1; 2:r1=1; 2:r4=1; x=1;
38643 :>0:r1=1; 0:r4=1; 2:r1=0; 2:r4=1; x=2;
25646 :>0:r1=0; 0:r4=0; 2:r1=1; 2:r4=1; x=1;
164751:>0:r1=2; 0:r4=2; 2:r1=1; 2:r4=1; x=1;
100007:>0:r1=2; 0:r4=2; 2:r1=0; 2:r4=0; x=1;
47243 :>0:r1=2; 0:r4=2; 2:r1=0; 2:r4=1; x=2;
61229 :>0:r1=1; 0:r4=1; 2:r1=0; 2:r4=1; x=1;
157886:>0:r1=0; 0:r4=0; 2:r1=0; 2:r4=0; x=1;
209989:>0:r1=0; 0:r4=0; 2:r1=0; 2:r4=1; x=1;
96981 :>0:r1=2; 0:r4=2; 2:r1=0; 2:r4=1; x=1;
53819 :>0:r1=0; 0:r4=0; 2:r1=0; 2:r4=1; x=2;
22279 :>0:r1=0; 0:r4=0; 2:r1=0; 2:r4=0; x=2;
211 :>0:r1=0; 0:r4=2; 2:r1=1; 2:r4=1; x=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 0:r4=1 /\ 2:r1=1 /\ 2:r4=0) is NOT validated
Hash=b2a54666f926061987efa080b2a9c56e
Cycle=SyncdWW Rfe DpsR Fre SyncdWW Rfe DpdR Fre
Relax safe322 No
Safe=Fre DpsR DpdR BCSyncdWW
Time safe322 2.37
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe323.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe323
"SyncdWR Fre SyncdWW Rfe DpdR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r5=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
li r1,1 | lwz r1,0(r2) | li r1,1 ;
stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
sync | lwzx r4,r3,r5 | sync ;
li r3,1 | | lwz r3,0(r4) ;
stw r3,0(r4) | | ;
exists (1:r1=1 /\ 1:r4=0 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: li r10,1
_litmus_P0_1_: stw r10,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r11,1
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r6,0(r9)
_litmus_P1_1_: xor r11,r6,r6
_litmus_P1_2_: lwzx r7,r11,r2
_litmus_P2_0_: li r8,1
_litmus_P2_1_: stw r8,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r10,0(r2)
Test safe323 Allowed
Histogram (7 states)
1281 :>1:r1=1; 1:r4=0; 2:r3=1;
6844 :>1:r1=0; 1:r4=0; 2:r3=0;
244958:>1:r1=0; 1:r4=1; 2:r3=0;
193191:>1:r1=0; 1:r4=1; 2:r3=1;
339900:>1:r1=0; 1:r4=0; 2:r3=1;
212969:>1:r1=1; 1:r4=1; 2:r3=1;
857 :>1:r1=1; 1:r4=1; 2:r3=0;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (1:r1=1 /\ 1:r4=0 /\ 2:r3=0) is NOT validated
Hash=1c7217c7bdc904dcd1f67e0ec62d69a2
Cycle=SyncdWR Fre SyncdWW Rfe DpdR Fre
Relax safe323 No
Safe=Fre SyncdWR DpdR BCSyncdWW
Time safe323 1.55
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe324.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe324
"SyncsWW Rfe SyncdRR Fre SyncdWW Rfe DpdR Fre"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r5=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwzx r4,r3,r5 | sync ;
| li r3,1 | | li r3,2 ;
| stw r3,0(r4) | | stw r3,0(r2) ;
exists (z=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r4=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r11,r6,r6
_litmus_P2_2_: lwzx r7,r11,r2
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe324 Allowed
Histogram (32 states)
4 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=1; z=2;
2 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r4=0; z=2;
8 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=0; z=2;
1 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=0; z=2;
11 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r4=2; z=2;
7 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; z=2;
9 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=1; z=2;
22 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=1; z=2;
9 :>0:r1=2; 0:r3=0; 2:r1=1; 2:r4=2; z=2;
373 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=0; z=2;
29 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r4=1; z=2;
299 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r4=0; z=2;
892 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=0; z=2;
743 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r4=1; z=2;
4080 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=2; z=2;
39915 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r4=2; z=2;
25438 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; z=2;
24344 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=1; z=2;
26211 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; z=2;
153521:>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=2; z=2;
24382 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=1; z=2;
20832 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=2; z=2;
40831 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=2; z=2;
55230 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=1; z=2;
51449 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=2; z=2;
21558 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=1; z=2;
177026:>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=2; z=2;
41988 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=0; z=2;
15946 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=2; z=2;
71546 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r4=2; z=2;
173892:>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0; z=2;
29402 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r4=0) is NOT validated
Hash=b085388a1879e19904bfd25cf2281495
Cycle=SyncsWW Rfe SyncdRR Fre SyncdWW Rfe DpdR Fre
Relax safe324 No
Safe=Fre SyncdRR DpdR BCSyncsWW BCSyncdWW
Time safe324 2.60
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe325.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe325
"SyncdWW Rfe SyncdRR Fre SyncdWW Rfe DpdR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r5=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwzx r4,r3,r5 | sync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r4=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r11,r6,r6
_litmus_P2_2_: lwzx r7,r11,r2
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe325 Allowed
Histogram (15 states)
1 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=0;
3 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r4=1;
12 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=0;
7 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=0;
277 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=0;
3929 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=1;
3367 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0;
36582 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=1;
97392 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=1;
243534:>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=1;
158924:>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=1;
223339:>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0;
188305:>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=1;
1307 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1;
43021 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r4=0) is NOT validated
Hash=d8342c37844da3baa7a7ce54be997605
Cycle=SyncdWW Rfe SyncdRR Fre SyncdWW Rfe DpdR Fre
Relax safe325 No
Safe=Fre SyncdRR DpdR BCSyncdWW
Time safe325 2.07
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe326.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe326
"SyncsWR Fre SyncdWW Rfe DpdR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 1:r5=y; 2:r2=y;}
P0 | P1 | P2 ;
li r1,2 | lwz r1,0(r2) | li r1,1 ;
stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
sync | lwzx r4,r3,r5 | sync ;
li r3,1 | | lwz r3,0(r2) ;
stw r3,0(r4) | | ;
exists (y=2 /\ 1:r1=1 /\ 1:r4=0 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: li r10,2
_litmus_P0_1_: stw r10,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r11,1
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r6,0(r9)
_litmus_P1_1_: xor r11,r6,r6
_litmus_P1_2_: lwzx r7,r11,r2
_litmus_P2_0_: li r9,1
_litmus_P2_1_: stw r9,0(r2)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r10,0(r2)
Test safe326 Allowed
Histogram (13 states)
54 :>1:r1=0; 1:r4=1; 2:r3=2; y=2;
266 :>1:r1=1; 1:r4=2; 2:r3=2; y=2;
556 :>1:r1=1; 1:r4=2; 2:r3=1; y=1;
15283 :>1:r1=1; 1:r4=2; 2:r3=1; y=2;
15503 :>1:r1=0; 1:r4=0; 2:r3=1; y=2;
172342:>1:r1=0; 1:r4=0; 2:r3=1; y=1;
9995 :>1:r1=0; 1:r4=2; 2:r3=1; y=1;
49527 :>1:r1=0; 1:r4=1; 2:r3=1; y=2;
109654:>1:r1=0; 1:r4=1; 2:r3=1; y=1;
282732:>1:r1=0; 1:r4=2; 2:r3=1; y=2;
104381:>1:r1=0; 1:r4=0; 2:r3=2; y=2;
226121:>1:r1=1; 1:r4=1; 2:r3=1; y=1;
13586 :>1:r1=0; 1:r4=2; 2:r3=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 1:r1=1 /\ 1:r4=0 /\ 2:r3=1) is NOT validated
Hash=6556b4b49b028dba9ccf3ba092a170de
Cycle=SyncsWR Fre SyncdWW Rfe DpdR Fre
Relax safe326 No
Safe=Fre SyncsWR DpdR BCSyncdWW
Time safe326 1.55
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe327.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe327
"SyncdWW Rfe SyncsRR Fre SyncdWW Rfe DpdR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r5=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r2) | sync | lwzx r4,r3,r5 | sync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r4=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r11,r6,r6
_litmus_P2_2_: lwzx r7,r11,r2
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe327 Allowed
Histogram (40 states)
3 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=1; x=2;
1 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=1; x=2;
25 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=0; x=2;
10 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=0; x=1;
1 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; x=2;
16 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r4=0; x=2;
57 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=0; x=1;
33 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r4=1; x=2;
70 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=1; x=2;
90 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r4=0; x=1;
116 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r4=1; x=2;
293 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=1; x=1;
381 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r4=0; x=1;
640 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; x=1;
1133 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=1; x=1;
4366 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=1; x=1;
2585 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=0; x=1;
373 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0; x=2;
5839 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0; x=1;
3419 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; x=2;
15063 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r4=1; x=1;
5472 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=1; x=2;
3923 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=0; x=2;
31344 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=1; x=2;
43245 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r4=1; x=2;
49705 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=0; x=1;
6506 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=1; x=2;
16396 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; x=1;
115981:>0:r1=2; 0:r3=2; 2:r1=1; 2:r4=1; x=1;
7340 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=1; x=1;
195017:>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; x=1;
33326 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=1; x=1;
70295 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=1; x=2;
21677 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=1; x=1;
21671 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=1; x=1;
189050:>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=1; x=1;
74603 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=1; x=1;
32744 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=1; x=2;
47139 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=0; x=1;
52 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; x=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r4=0) is NOT validated
Hash=81453c4e1f09f76669099fa69a5a09d1
Cycle=SyncdWW Rfe SyncsRR Fre SyncdWW Rfe DpdR Fre
Relax safe327 No
Safe=Fre SyncsRR DpdR BCSyncdWW
Time safe327 2.67
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe328.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe328
"SyncsWW Rfe LwSyncdRR Fre SyncdWW Rfe DpdR Fre"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r5=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
lwsync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwzx r4,r3,r5 | sync ;
| li r3,1 | | li r3,2 ;
| stw r3,0(r4) | | stw r3,0(r2) ;
exists (z=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r4=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r11,r6,r6
_litmus_P2_2_: lwzx r7,r11,r2
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe328 Allowed
Histogram (32 states)
7 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=1; z=2;
10 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r4=0; z=2;
22 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=1; z=2;
15 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=1; z=2;
40 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=0; z=2;
5 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=0; z=2;
21 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r4=2; z=2;
17 :>0:r1=2; 0:r3=0; 2:r1=1; 2:r4=2; z=2;
114 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; z=2;
87 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r4=0; z=2;
102 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r4=1; z=2;
1575 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=0; z=2;
13560 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=0; z=2;
3961 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=0; z=2;
8972 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=2; z=2;
44196 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=1; z=2;
589 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r4=1; z=2;
31909 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=2; z=2;
19439 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=1; z=2;
38304 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=2; z=2;
36400 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=1; z=2;
12075 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=2; z=2;
82203 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=1; z=2;
20065 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r4=2; z=2;
51482 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r4=2; z=2;
33116 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=2; z=2;
74977 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; z=2;
101513:>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=2; z=2;
58225 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=2; z=2;
157948:>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=2; z=2;
95989 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0; z=2;
113062:>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r4=0) is NOT validated
Hash=2f8744e2c3c236d8a66266c3ab2affb3
Cycle=SyncsWW Rfe LwSyncdRR Fre SyncdWW Rfe DpdR Fre
Relax safe328 No
Safe=Fre LwSyncdRR DpdR BCSyncsWW BCSyncdWW
Time safe328 2.62
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe329.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe329
"SyncdWW Rfe LwSyncdRR Fre SyncdWW Rfe DpdR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r5=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
lwsync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwzx r4,r3,r5 | sync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r4=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r11,r6,r6
_litmus_P2_2_: lwzx r7,r11,r2
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe329 Allowed
Histogram (15 states)
4 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=0;
14 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=0;
7 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=0;
13 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r4=1;
3583 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=0;
6828 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=1;
9837 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=1;
8679 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1;
3145 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0;
259927:>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=1;
162600:>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0;
181012:>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=1;
114167:>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=1;
155901:>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0;
94283 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r4=0) is NOT validated
Hash=7f0268bb7a7ef38f1c57a32a564c66ee
Cycle=SyncdWW Rfe LwSyncdRR Fre SyncdWW Rfe DpdR Fre
Relax safe329 No
Safe=Fre LwSyncdRR DpdR BCSyncdWW
Time safe329 2.14
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe330.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe330
"SyncdWW Rfe LwSyncsRR Fre SyncdWW Rfe DpdR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r5=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,1 ;
lwsync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r2) | sync | lwzx r4,r3,r5 | sync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r4=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r11,r6,r6
_litmus_P2_2_: lwzx r7,r11,r2
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe330 Allowed
Histogram (34 states)
4 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=0; x=1;
3 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=0; x=1;
11 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0; x=1;
24 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r4=1; x=2;
41 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; x=2;
1 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=0; x=1;
30 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=0; x=2;
36 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=1; x=1;
38 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=1; x=2;
496 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=0; x=1;
184 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=1; x=2;
33 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=1; x=1;
88 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; x=2;
248 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r4=1; x=2;
125 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r4=1; x=1;
498 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=1; x=1;
3436 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; x=1;
1633 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r4=0; x=1;
747 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=1; x=1;
339 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=1; x=2;
101 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=0; x=1;
7040 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=1; x=1;
8198 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; x=2;
51683 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=0; x=1;
43260 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=1; x=2;
69298 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; x=1;
17118 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=1; x=1;
61706 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=1; x=2;
171455:>0:r1=2; 0:r3=2; 2:r1=1; 2:r4=1; x=1;
184323:>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=1; x=1;
73491 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=1; x=1;
81568 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=1; x=2;
222552:>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; x=1;
192 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=1; x=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r4=0) is NOT validated
Hash=f8836541d883d921184f22f94064282a
Cycle=SyncdWW Rfe LwSyncsRR Fre SyncdWW Rfe DpdR Fre
Relax safe330 No
Safe=Fre LwSyncsRR DpdR BCSyncdWW
Time safe330 2.73
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe331.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe331
"Rfe SyncsRR Fre SyncdWW Rfe DpdR Fre"
{0:r2=y; 1:r2=y; 1:r4=x; 2:r2=x; 2:r5=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r2) | sync | lwzx r4,r3,r5 | ;
| li r3,1 | | ;
| stw r3,0(r4) | | ;
exists (y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r4=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r11,r6,r6
_litmus_P2_2_: lwzx r7,r11,r2
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
Test safe331 Allowed
Histogram (53 states)
1 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=2; y=1;
11 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=2; y=1;
92 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r4=2; y=1;
5 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=2; y=1;
249 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=2; y=2;
52 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=2; y=2;
225 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=1; y=1;
2537 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r4=2; y=1;
265 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=1; y=1;
1370 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=1; y=1;
1353 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=1; y=1;
3250 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=2; y=1;
1567 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=2; y=2;
2493 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=0; y=1;
11306 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=1; y=1;
773 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=1; y=2;
2038 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=2; y=2;
1406 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=1; y=2;
5242 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; y=2;
1900 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r4=2; y=2;
22377 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=2; y=1;
1493 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=2; y=1;
13404 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0; y=2;
210 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=2; y=1;
32282 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; y=2;
67987 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r4=1; y=1;
19304 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=0; y=2;
24204 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=2; y=2;
22746 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=2; y=1;
27437 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r4=0; y=2;
76639 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=0; y=2;
42168 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; y=1;
77327 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=1; y=1;
1107 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=2; y=1;
1899 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r4=1; y=2;
2280 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=1; y=2;
2282 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=2; y=2;
53374 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=1; y=1;
39016 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r4=2; y=2;
8820 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0; y=1;
2833 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=2; y=2;
10002 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; y=1;
18768 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=1; y=1;
6410 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=0; y=1;
108862:>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=2; y=2;
49268 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r4=1; y=1;
7734 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=1; y=2;
22753 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=1; y=2;
118793:>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=2; y=2;
22287 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=1; y=1;
823 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=0; y=1;
8010 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; y=1;
50966 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r4=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r4=0) is NOT validated
Hash=2ac08fdfbb26c4c735c339ec7a6d5436
Cycle=Rfe SyncsRR Fre SyncdWW Rfe DpdR Fre
Relax safe331 No
Safe=Fre DpdR ACSyncsRR BCSyncdWW
Time safe331 2.69
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe332.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe332
"LwSyncdWW Rfe SyncsRR Fre SyncdWW Rfe DpdR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r5=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r2) | sync | lwzx r4,r3,r5 | lwsync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r4=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r11,r6,r6
_litmus_P2_2_: lwzx r7,r11,r2
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe332 Allowed
Histogram (41 states)
8 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=1; x=2;
10 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=1; x=2;
42 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=0; x=1;
21 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=0; x=1;
41 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=1; x=2;
31 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r4=0; x=1;
16 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; x=2;
426 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r4=0; x=2;
339 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; x=2;
434 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=1; x=1;
2176 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r4=1; x=2;
499 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0; x=2;
1448 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=0; x=2;
67 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r4=1; x=2;
192 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=0; x=1;
3949 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r4=0; x=1;
834 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=0; x=2;
42467 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=1; x=1;
25110 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r4=1; x=1;
26447 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=1; x=2;
5706 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; x=2;
29632 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=1; x=1;
8749 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=1; x=2;
17470 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=1; x=2;
52162 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=0; x=1;
134093:>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=0; x=1;
59488 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=1; x=2;
2725 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0; x=1;
4356 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=1; x=1;
68783 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r4=1; x=1;
12759 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=1; x=1;
24692 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; x=1;
20619 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=1; x=2;
19323 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=0; x=1;
138425:>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=1; x=1;
30096 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=1; x=1;
74067 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; x=1;
33555 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=1; x=1;
69950 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r4=1; x=2;
86333 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; x=1;
2460 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=1; x=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r4=0) is NOT validated
Hash=66df092beef2aa36d5328a37437bd6b7
Cycle=LwSyncdWW Rfe SyncsRR Fre SyncdWW Rfe DpdR Fre
Relax safe332 No
Safe=Fre LwSyncdWW DpdR ACSyncsRR BCSyncdWW
Time safe332 2.85
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe333.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe333
"Rfe SyncdRR Fre SyncdWW Rfe DpdR Fre"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r5=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwzx r4,r3,r5 | ;
| li r3,1 | | ;
| stw r3,0(r4) | | ;
exists (0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r4=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r11,r6,r6
_litmus_P2_2_: lwzx r7,r11,r2
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
Test safe333 Allowed
Histogram (15 states)
2 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=0;
5 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r4=1;
80 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=0;
1227 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=0;
4668 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1;
30008 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=1;
114740:>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0;
128570:>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=1;
35527 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=1;
111401:>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0;
216812:>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=1;
276067:>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=1;
38925 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=1;
13808 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=0;
28160 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r4=0) is NOT validated
Hash=0482c42b529f5c63d6e329f440b2a1cb
Cycle=Rfe SyncdRR Fre SyncdWW Rfe DpdR Fre
Relax safe333 No
Safe=Fre DpdR ACSyncdRR BCSyncdWW
Time safe333 1.84
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe334.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe334
"LwSyncdWW Rfe SyncdRR Fre SyncdWW Rfe DpdR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r5=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwzx r4,r3,r5 | lwsync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r4=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r11,r6,r6
_litmus_P2_2_: lwzx r7,r11,r2
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe334 Allowed
Histogram (15 states)
21 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r4=1;
6 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=0;
89 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=0;
24 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=0;
2987 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=0;
23755 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=1;
24606 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0;
83191 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0;
40547 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=1;
165746:>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=1;
99892 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=1;
199494:>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0;
166171:>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=1;
4266 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1;
189205:>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r4=0) is NOT validated
Hash=6578d23b7c31add883e337a101aa1fae
Cycle=LwSyncdWW Rfe SyncdRR Fre SyncdWW Rfe DpdR Fre
Relax safe334 No
Safe=Fre LwSyncdWW DpdR ACSyncdRR BCSyncdWW
Time safe334 2.15
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe335.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe335
"LwSyncsWW Rfe SyncdRR Fre SyncdWW Rfe DpdR Fre"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r5=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwzx r4,r3,r5 | lwsync ;
| li r3,1 | | li r3,2 ;
| stw r3,0(r4) | | stw r3,0(r2) ;
exists (z=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r4=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r11,r6,r6
_litmus_P2_2_: lwzx r7,r11,r2
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe335 Allowed
Histogram (30 states)
5 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=0; z=2;
1 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=1; z=2;
2 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=1; z=2;
25 :>0:r1=2; 0:r3=0; 2:r1=1; 2:r4=2; z=2;
6 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; z=2;
37 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r4=1; z=2;
50 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=0; z=2;
450 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r4=1; z=2;
224 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=2; z=2;
478 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=0; z=2;
313 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r4=0; z=2;
270 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=0; z=2;
1169 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=1; z=2;
1347 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=2; z=2;
3206 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r4=0; z=2;
7650 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=1; z=2;
4259 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=2; z=2;
13472 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; z=2;
6551 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=1; z=2;
18322 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=1; z=2;
8531 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=2; z=2;
21237 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=2; z=2;
46675 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=2; z=2;
33055 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r4=2; z=2;
35001 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=0; z=2;
141366:>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=2; z=2;
73018 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r4=2; z=2;
307972:>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=2; z=2;
148216:>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0; z=2;
127092:>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r4=0) is NOT validated
Hash=c77bcd8256ac4124c356e0ee2d8baa94
Cycle=LwSyncsWW Rfe SyncdRR Fre SyncdWW Rfe DpdR Fre
Relax safe335 No
Safe=Fre LwSyncsWW DpdR ACSyncdRR BCSyncdWW
Time safe335 2.64
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe336.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe336
"SyncsWW Rfe SyncdRW Rfe DpdR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 1:r5=y; 2:r2=y;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | xor r3,r1,r1 | stw r1,0(r2) ;
li r3,1 | lwzx r4,r3,r5 | sync ;
stw r3,0(r4) | | li r3,2 ;
| | stw r3,0(r2) ;
exists (y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r4=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stw r8,0(r2)
_litmus_P1_0_: lwz r6,0(r9)
_litmus_P1_1_: xor r11,r6,r6
_litmus_P1_2_: lwzx r7,r11,r2
_litmus_P2_0_: li r9,1
_litmus_P2_1_: stw r9,0(r2)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,2
_litmus_P2_4_: stw r11,0(r2)
Test safe336 Allowed
Histogram (14 states)
37 :>0:r1=1; 1:r1=0; 1:r4=1; y=2;
628 :>0:r1=0; 1:r1=1; 1:r4=0; y=2;
6528 :>0:r1=1; 1:r1=1; 1:r4=2; y=2;
7885 :>0:r1=2; 1:r1=1; 1:r4=2; y=2;
10721 :>0:r1=0; 1:r1=1; 1:r4=1; y=2;
12483 :>0:r1=2; 1:r1=0; 1:r4=0; y=2;
30279 :>0:r1=0; 1:r1=0; 1:r4=1; y=2;
14135 :>0:r1=2; 1:r1=0; 1:r4=1; y=2;
199045:>0:r1=0; 1:r1=0; 1:r4=0; y=2;
33007 :>0:r1=0; 1:r1=0; 1:r4=2; y=2;
60310 :>0:r1=1; 1:r1=0; 1:r4=2; y=2;
93301 :>0:r1=1; 1:r1=0; 1:r4=0; y=2;
265736:>0:r1=0; 1:r1=1; 1:r4=2; y=2;
265905:>0:r1=2; 1:r1=0; 1:r4=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r4=0) is NOT validated
Hash=baf95416fedda580f634f996a07a90a7
Cycle=SyncsWW Rfe SyncdRW Rfe DpdR Fre
Relax safe336 No
Safe=Fre DpdR BCSyncsWW BCSyncdRW
Time safe336 1.63
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe337.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe337
"SyncdWR Fre SyncsWW Rfe SyncdRW Rfe DpdR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r5=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
li r1,1 | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
stw r1,0(r2) | sync | xor r3,r1,r1 | stw r1,0(r2) ;
sync | li r3,1 | lwzx r4,r3,r5 | sync ;
li r3,2 | stw r3,0(r4) | | lwz r3,0(r4) ;
stw r3,0(r2) | | | ;
exists (x=2 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r4=0 /\ 3:r3=0)
Generated assembler
_litmus_P0_0_: li r9,1
_litmus_P0_1_: stw r9,0(r2)
_litmus_P0_2_: sync
_litmus_P0_3_: li r11,2
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r11,r6,r6
_litmus_P2_2_: lwzx r7,r11,r2
_litmus_P3_0_: li r10,1
_litmus_P3_1_: stw r10,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: lwz r8,0(r2)
Test safe337 Allowed
Histogram (32 states)
5 :>1:r1=2; 2:r1=1; 2:r4=1; 3:r3=0; x=2;
3 :>1:r1=2; 2:r1=0; 2:r4=0; 3:r3=0; x=2;
8 :>1:r1=0; 2:r1=1; 2:r4=0; 3:r3=0; x=2;
6 :>1:r1=1; 2:r1=0; 2:r4=0; 3:r3=1; x=2;
8 :>1:r1=2; 2:r1=1; 2:r4=1; 3:r3=1; x=2;
142 :>1:r1=2; 2:r1=1; 2:r4=0; 3:r3=2; x=2;
5 :>1:r1=1; 2:r1=1; 2:r4=1; 3:r3=1; x=2;
200 :>1:r1=1; 2:r1=1; 2:r4=0; 3:r3=2; x=2;
51 :>1:r1=0; 2:r1=1; 2:r4=0; 3:r3=1; x=2;
19 :>1:r1=1; 2:r1=0; 2:r4=1; 3:r3=1; x=2;
2281 :>1:r1=2; 2:r1=0; 2:r4=1; 3:r3=0; x=2;
436 :>1:r1=1; 2:r1=0; 2:r4=0; 3:r3=0; x=2;
58 :>1:r1=1; 2:r1=1; 2:r4=1; 3:r3=0; x=2;
9228 :>1:r1=0; 2:r1=0; 2:r4=0; 3:r3=0; x=2;
26657 :>1:r1=2; 2:r1=0; 2:r4=0; 3:r3=2; x=2;
43867 :>1:r1=1; 2:r1=0; 2:r4=1; 3:r3=0; x=2;
7206 :>1:r1=2; 2:r1=0; 2:r4=0; 3:r3=1; x=2;
18922 :>1:r1=2; 2:r1=0; 2:r4=1; 3:r3=1; x=2;
49774 :>1:r1=0; 2:r1=1; 2:r4=1; 3:r3=0; x=2;
98987 :>1:r1=2; 2:r1=0; 2:r4=1; 3:r3=2; x=2;
61262 :>1:r1=0; 2:r1=0; 2:r4=1; 3:r3=1; x=2;
36270 :>1:r1=1; 2:r1=1; 2:r4=1; 3:r3=2; x=2;
70868 :>1:r1=0; 2:r1=1; 2:r4=1; 3:r3=2; x=2;
95203 :>1:r1=0; 2:r1=1; 2:r4=1; 3:r3=1; x=2;
59695 :>1:r1=0; 2:r1=0; 2:r4=0; 3:r3=1; x=2;
4009 :>1:r1=0; 2:r1=1; 2:r4=0; 3:r3=2; x=2;
81352 :>1:r1=1; 2:r1=0; 2:r4=0; 3:r3=2; x=2;
77629 :>1:r1=1; 2:r1=0; 2:r4=1; 3:r3=2; x=2;
11610 :>1:r1=0; 2:r1=0; 2:r4=1; 3:r3=2; x=2;
116611:>1:r1=0; 2:r1=0; 2:r4=1; 3:r3=0; x=2;
105142:>1:r1=0; 2:r1=0; 2:r4=0; 3:r3=2; x=2;
22486 :>1:r1=2; 2:r1=1; 2:r4=1; 3:r3=2; x=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r4=0 /\ 3:r3=0) is NOT validated
Hash=76030ff81f56c73d4d0a6c160fafa8dd
Cycle=SyncdWR Fre SyncsWW Rfe SyncdRW Rfe DpdR Fre
Relax safe337 No
Safe=Fre SyncdWR DpdR BCSyncsWW BCSyncdRW
Time safe337 2.56
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe338.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe338
"SyncdWW Rfe SyncsRW Rfe SyncdRW Rfe DpdR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r5=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | sync | xor r3,r1,r1 | stw r1,0(r2) ;
li r3,2 | li r3,1 | lwzx r4,r3,r5 | sync ;
stw r3,0(r2) | stw r3,0(r4) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r4=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r11,r6,r6
_litmus_P2_2_: lwzx r7,r11,r2
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe338 Allowed
Histogram (30 states)
1 :>0:r1=1; 1:r1=2; 2:r1=0; 2:r4=0; x=2;
3 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r4=0; x=2;
4 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r4=0; x=2;
9 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r4=1; x=1;
77 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r4=1; x=2;
8 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r4=1; x=2;
82 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r4=0; x=1;
115 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r4=0; x=2;
473 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r4=0; x=2;
611 :>0:r1=1; 1:r1=2; 2:r1=0; 2:r4=1; x=2;
481 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r4=0; x=2;
81 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r4=1; x=2;
904 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r4=0; x=1;
5218 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r4=0; x=2;
1189 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r4=0; x=1;
5836 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r4=1; x=2;
8183 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r4=1; x=1;
10793 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r4=1; x=2;
103197:>0:r1=1; 1:r1=1; 2:r1=0; 2:r4=1; x=2;
68754 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r4=1; x=2;
35271 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r4=1; x=2;
16807 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r4=0; x=2;
35814 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r4=1; x=2;
139518:>0:r1=0; 1:r1=2; 2:r1=0; 2:r4=1; x=1;
40196 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r4=1; x=1;
150643:>0:r1=0; 1:r1=0; 2:r1=0; 2:r4=0; x=1;
41044 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r4=1; x=1;
78278 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r4=1; x=2;
122343:>0:r1=0; 1:r1=2; 2:r1=0; 2:r4=0; x=1;
134067:>0:r1=0; 1:r1=0; 2:r1=1; 2:r4=1; x=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r4=0) is NOT validated
Hash=1d454cca0a53b4a05838d82b6ad97002
Cycle=SyncdWW Rfe SyncsRW Rfe SyncdRW Rfe DpdR Fre
Relax safe338 No
Safe=Fre DpdR BCSyncsRW BCSyncdWW BCSyncdRW
Time safe338 2.61
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe339.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe339
"SyncdWW Rfe SyncdRW Rfe DpdR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r5=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | xor r3,r1,r1 | stw r1,0(r2) ;
li r3,1 | lwzx r4,r3,r5 | sync ;
stw r3,0(r4) | | li r3,1 ;
| | stw r3,0(r4) ;
exists (0:r1=1 /\ 1:r1=1 /\ 1:r4=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stw r8,0(r2)
_litmus_P1_0_: lwz r6,0(r9)
_litmus_P1_1_: xor r11,r6,r6
_litmus_P1_2_: lwzx r7,r11,r2
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe339 Allowed
Histogram (7 states)
512 :>0:r1=1; 1:r1=1; 1:r4=1;
1942 :>0:r1=0; 1:r1=1; 1:r4=0;
1307 :>0:r1=1; 1:r1=0; 1:r4=0;
286487:>0:r1=0; 1:r1=0; 1:r4=1;
349397:>0:r1=0; 1:r1=0; 1:r4=0;
202780:>0:r1=0; 1:r1=1; 1:r4=1;
157575:>0:r1=1; 1:r1=0; 1:r4=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 1:r1=1 /\ 1:r4=0) is NOT validated
Hash=178cc80ca83e34656cb2ffe42043c6a9
Cycle=SyncdWW Rfe SyncdRW Rfe DpdR Fre
Relax safe339 No
Safe=Fre DpdR BCSyncdWW BCSyncdRW
Time safe339 1.56
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe340.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe340
"SyncdWR Fre SyncdWW Rfe SyncdRW Rfe DpdR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r5=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
li r1,1 | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
stw r1,0(r2) | sync | xor r3,r1,r1 | stw r1,0(r2) ;
sync | li r3,1 | lwzx r4,r3,r5 | sync ;
li r3,1 | stw r3,0(r4) | | lwz r3,0(r4) ;
stw r3,0(r4) | | | ;
exists (1:r1=1 /\ 2:r1=1 /\ 2:r4=0 /\ 3:r3=0)
Generated assembler
_litmus_P0_0_: li r11,1
_litmus_P0_1_: stw r11,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r10,1
_litmus_P0_4_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r11,r6,r6
_litmus_P2_2_: lwzx r7,r11,r2
_litmus_P3_0_: li r10,1
_litmus_P3_1_: stw r10,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: lwz r8,0(r2)
Test safe340 Allowed
Histogram (15 states)
7 :>1:r1=1; 2:r1=0; 2:r4=0; 3:r3=0;
14 :>1:r1=1; 2:r1=1; 2:r4=0; 3:r3=1;
35 :>1:r1=0; 2:r1=1; 2:r4=0; 3:r3=0;
153 :>1:r1=1; 2:r1=1; 2:r4=1; 3:r3=0;
3309 :>1:r1=1; 2:r1=0; 2:r4=1; 3:r3=0;
6196 :>1:r1=0; 2:r1=1; 2:r4=0; 3:r3=1;
15312 :>1:r1=0; 2:r1=0; 2:r4=0; 3:r3=0;
68155 :>1:r1=1; 2:r1=0; 2:r4=1; 3:r3=1;
170349:>1:r1=0; 2:r1=0; 2:r4=1; 3:r3=0;
164827:>1:r1=0; 2:r1=0; 2:r4=1; 3:r3=1;
262796:>1:r1=0; 2:r1=0; 2:r4=0; 3:r3=1;
46468 :>1:r1=0; 2:r1=1; 2:r4=1; 3:r3=0;
195049:>1:r1=0; 2:r1=1; 2:r4=1; 3:r3=1;
2232 :>1:r1=1; 2:r1=1; 2:r4=1; 3:r3=1;
65098 :>1:r1=1; 2:r1=0; 2:r4=0; 3:r3=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (1:r1=1 /\ 2:r1=1 /\ 2:r4=0 /\ 3:r3=0) is NOT validated
Hash=eb5f750363753ecdec81834b7dd94191
Cycle=SyncdWR Fre SyncdWW Rfe SyncdRW Rfe DpdR Fre
Relax safe340 No
Safe=Fre SyncdWR DpdR BCSyncdWW BCSyncdRW
Time safe340 2.09
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe341.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe341
"SyncsWR Fre SyncdWW Rfe SyncdRW Rfe DpdR Fre"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r5=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
li r1,2 | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
stw r1,0(r2) | sync | xor r3,r1,r1 | stw r1,0(r2) ;
sync | li r3,1 | lwzx r4,r3,r5 | sync ;
li r3,1 | stw r3,0(r4) | | lwz r3,0(r2) ;
stw r3,0(r4) | | | ;
exists (z=2 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r4=0 /\ 3:r3=1)
Generated assembler
_litmus_P0_0_: li r11,2
_litmus_P0_1_: stw r11,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r10,1
_litmus_P0_4_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r11,r6,r6
_litmus_P2_2_: lwzx r7,r11,r2
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: lwz r10,0(r2)
Test safe341 Allowed
Histogram (29 states)
1 :>1:r1=1; 2:r1=1; 2:r4=2; 3:r3=2; z=2;
1 :>1:r1=1; 2:r1=1; 2:r4=2; 3:r3=1; z=2;
6 :>1:r1=0; 2:r1=1; 2:r4=0; 3:r3=1; z=2;
1 :>1:r1=0; 2:r1=1; 2:r4=1; 3:r3=2; z=2;
21 :>1:r1=1; 2:r1=0; 2:r4=0; 3:r3=1; z=2;
27 :>1:r1=0; 2:r1=0; 2:r4=1; 3:r3=2; z=2;
77 :>1:r1=1; 2:r1=0; 2:r4=1; 3:r3=1; z=2;
44 :>1:r1=0; 2:r1=1; 2:r4=0; 3:r3=1; z=1;
1050 :>1:r1=1; 2:r1=0; 2:r4=2; 3:r3=2; z=2;
57 :>1:r1=0; 2:r1=1; 2:r4=0; 3:r3=2; z=2;
518 :>1:r1=1; 2:r1=1; 2:r4=1; 3:r3=1; z=1;
247 :>1:r1=1; 2:r1=0; 2:r4=0; 3:r3=2; z=2;
4118 :>1:r1=1; 2:r1=0; 2:r4=2; 3:r3=1; z=2;
1144 :>1:r1=0; 2:r1=1; 2:r4=2; 3:r3=1; z=1;
3390 :>1:r1=1; 2:r1=0; 2:r4=0; 3:r3=1; z=1;
8189 :>1:r1=1; 2:r1=0; 2:r4=2; 3:r3=1; z=1;
12435 :>1:r1=0; 2:r1=1; 2:r4=1; 3:r3=1; z=2;
43855 :>1:r1=0; 2:r1=1; 2:r4=1; 3:r3=1; z=1;
24135 :>1:r1=0; 2:r1=0; 2:r4=2; 3:r3=2; z=2;
42011 :>1:r1=0; 2:r1=0; 2:r4=2; 3:r3=1; z=1;
92171 :>1:r1=0; 2:r1=1; 2:r4=2; 3:r3=1; z=2;
10061 :>1:r1=0; 2:r1=0; 2:r4=0; 3:r3=1; z=2;
105597:>1:r1=0; 2:r1=1; 2:r4=2; 3:r3=2; z=2;
164071:>1:r1=0; 2:r1=0; 2:r4=2; 3:r3=1; z=2;
100446:>1:r1=0; 2:r1=0; 2:r4=1; 3:r3=1; z=1;
79147 :>1:r1=0; 2:r1=0; 2:r4=0; 3:r3=2; z=2;
74703 :>1:r1=0; 2:r1=0; 2:r4=1; 3:r3=1; z=2;
132178:>1:r1=0; 2:r1=0; 2:r4=0; 3:r3=1; z=1;
100299:>1:r1=1; 2:r1=0; 2:r4=1; 3:r3=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r4=0 /\ 3:r3=1) is NOT validated
Hash=dab9cac221c890bdbf079432dc938b58
Cycle=SyncsWR Fre SyncdWW Rfe SyncdRW Rfe DpdR Fre
Relax safe341 No
Safe=Fre SyncsWR DpdR BCSyncdWW BCSyncdRW
Time safe341 2.57
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe342.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe342
"SyncsWW Rfe SyncdRW Rfe SyncdRW Rfe DpdR Fre"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r5=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | sync | xor r3,r1,r1 | stw r1,0(r2) ;
li r3,1 | li r3,1 | lwzx r4,r3,r5 | sync ;
stw r3,0(r4) | stw r3,0(r4) | | li r3,2 ;
| | | stw r3,0(r2) ;
exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r4=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r11,r6,r6
_litmus_P2_2_: lwzx r7,r11,r2
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe342 Allowed
Histogram (30 states)
1 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r4=1; z=2;
2 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r4=2; z=2;
4 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r4=0; z=2;
56 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r4=1; z=2;
71 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r4=0; z=2;
14 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r4=1; z=2;
7 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r4=1; z=2;
101 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r4=0; z=2;
104 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r4=0; z=2;
18 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r4=1; z=2;
4318 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r4=2; z=2;
3345 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r4=1; z=2;
6364 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r4=2; z=2;
18989 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r4=0; z=2;
6433 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r4=0; z=2;
30297 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r4=0; z=2;
29644 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r4=1; z=2;
71775 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r4=1; z=2;
25922 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r4=2; z=2;
161648:>0:r1=0; 1:r1=0; 2:r1=0; 2:r4=0; z=2;
47143 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r4=2; z=2;
49535 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r4=2; z=2;
67572 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r4=2; z=2;
48014 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r4=2; z=2;
49092 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r4=1; z=2;
85753 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r4=0; z=2;
45364 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r4=2; z=2;
217753:>0:r1=2; 1:r1=0; 2:r1=0; 2:r4=2; z=2;
28439 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r4=1; z=2;
2222 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r4=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r4=0) is NOT validated
Hash=5e5b019e0be97511274fd8d568d3dc1e
Cycle=SyncsWW Rfe SyncdRW Rfe SyncdRW Rfe DpdR Fre
Relax safe342 No
Safe=Fre DpdR BCSyncsWW BCSyncdRW
Time safe342 2.46
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe343.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe343
"SyncdWW Rfe SyncdRW Rfe SyncdRW Rfe DpdR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r5=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | sync | xor r3,r1,r1 | stw r1,0(r2) ;
li r3,1 | li r3,1 | lwzx r4,r3,r5 | sync ;
stw r3,0(r4) | stw r3,0(r4) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r4=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r6,0(r9)
_litmus_P2_1_: xor r11,r6,r6
_litmus_P2_2_: lwzx r7,r11,r2
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe343 Allowed
Histogram (15 states)
1 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r4=0;
6 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r4=0;
42 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r4=1;
4 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r4=0;
6818 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r4=0;
5996 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r4=0;
621 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r4=1;
12055 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r4=1;
116956:>0:r1=1; 1:r1=0; 2:r1=0; 2:r4=1;
102489:>0:r1=0; 1:r1=1; 2:r1=0; 2:r4=0;
166145:>0:r1=0; 1:r1=0; 2:r1=0; 2:r4=1;
244513:>0:r1=0; 1:r1=0; 2:r1=0; 2:r4=0;
212045:>0:r1=0; 1:r1=0; 2:r1=1; 2:r4=1;
2124 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r4=1;
130185:>0:r1=0; 1:r1=1; 2:r1=0; 2:r4=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r4=0) is NOT validated
Hash=3465fb32fcd464c75a3385e5fdcc0d77
Cycle=SyncdWW Rfe SyncdRW Rfe SyncdRW Rfe DpdR Fre
Relax safe343 No
Safe=Fre DpdR BCSyncdWW BCSyncdRW
Time safe343 2.08
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe344.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe344
"SyncdWW Rfe DpsR Fre SyncdWW Rfe DpsR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 3:r2=y; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwzx r4,r3,r2 | sync | lwzx r4,r3,r2 | sync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r4=1 /\ 2:r1=1 /\ 2:r4=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r2)
_litmus_P0_1_: xor r11,r7,r7
_litmus_P0_2_: lwzx r9,r11,r2
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r2)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: lwzx r9,r11,r2
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe344 Allowed
Histogram (52 states)
2 :>0:r1=1; 0:r4=2; 2:r1=1; 2:r4=1; x=2; y=1;
2 :>0:r1=0; 0:r4=2; 2:r1=0; 2:r4=0; x=1; y=2;
1 :>0:r1=0; 0:r4=2; 2:r1=1; 2:r4=1; x=2; y=1;
2 :>0:r1=0; 0:r4=2; 2:r1=2; 2:r4=2; x=1; y=2;
12 :>0:r1=2; 0:r4=1; 2:r1=0; 2:r4=0; x=1; y=2;
4 :>0:r1=0; 0:r4=1; 2:r1=1; 2:r4=1; x=1; y=1;
5 :>0:r1=1; 0:r4=1; 2:r1=1; 2:r4=1; x=1; y=2;
2 :>0:r1=0; 0:r4=0; 2:r1=0; 2:r4=1; x=2; y=1;
38 :>0:r1=1; 0:r4=2; 2:r1=2; 2:r4=2; x=2; y=1;
2 :>0:r1=0; 0:r4=0; 2:r1=0; 2:r4=2; x=2; y=1;
9 :>0:r1=0; 0:r4=2; 2:r1=1; 2:r4=1; x=1; y=1;
4 :>0:r1=2; 0:r4=1; 2:r1=1; 2:r4=1; x=1; y=2;
13 :>0:r1=2; 0:r4=2; 2:r1=0; 2:r4=1; x=1; y=2;
35 :>0:r1=0; 0:r4=2; 2:r1=2; 2:r4=2; x=1; y=1;
39 :>0:r1=0; 0:r4=0; 2:r1=2; 2:r4=2; x=1; y=2;
11 :>0:r1=2; 0:r4=1; 2:r1=2; 2:r4=2; x=1; y=2;
6 :>0:r1=0; 0:r4=0; 2:r1=0; 2:r4=1; x=1; y=1;
30 :>0:r1=0; 0:r4=2; 2:r1=0; 2:r4=0; x=2; y=1;
88 :>0:r1=1; 0:r4=1; 2:r1=2; 2:r4=2; x=1; y=2;
42 :>0:r1=0; 0:r4=0; 2:r1=1; 2:r4=1; x=1; y=2;
116 :>0:r1=2; 0:r4=1; 2:r1=0; 2:r4=0; x=1; y=1;
41 :>0:r1=1; 0:r4=1; 2:r1=1; 2:r4=1; x=2; y=1;
76 :>0:r1=2; 0:r4=1; 2:r1=2; 2:r4=2; x=1; y=1;
9 :>0:r1=0; 0:r4=1; 2:r1=0; 2:r4=0; x=2; y=1;
76 :>0:r1=0; 0:r4=2; 2:r1=2; 2:r4=2; x=2; y=1;
72 :>0:r1=1; 0:r4=1; 2:r1=0; 2:r4=0; x=1; y=2;
59 :>0:r1=2; 0:r4=1; 2:r1=1; 2:r4=1; x=1; y=1;
435 :>0:r1=2; 0:r4=2; 2:r1=0; 2:r4=0; x=2; y=1;
108 :>0:r1=0; 0:r4=1; 2:r1=0; 2:r4=0; x=1; y=1;
53 :>0:r1=0; 0:r4=2; 2:r1=0; 2:r4=0; x=1; y=1;
493 :>0:r1=1; 0:r4=1; 2:r1=0; 2:r4=0; x=2; y=1;
263 :>0:r1=0; 0:r4=0; 2:r1=1; 2:r4=1; x=2; y=1;
217 :>0:r1=0; 0:r4=1; 2:r1=2; 2:r4=2; x=2; y=1;
2779 :>0:r1=1; 0:r4=1; 2:r1=1; 2:r4=1; x=1; y=1;
125 :>0:r1=0; 0:r4=1; 2:r1=2; 2:r4=2; x=1; y=1;
7074 :>0:r1=0; 0:r4=0; 2:r1=0; 2:r4=0; x=1; y=2;
66426 :>0:r1=2; 0:r4=2; 2:r1=2; 2:r4=2; x=2; y=1;
34681 :>0:r1=2; 0:r4=2; 2:r1=2; 2:r4=2; x=1; y=2;
19238 :>0:r1=1; 0:r4=1; 2:r1=0; 2:r4=0; x=1; y=1;
64228 :>0:r1=1; 0:r4=1; 2:r1=2; 2:r4=2; x=2; y=1;
49272 :>0:r1=2; 0:r4=2; 2:r1=0; 2:r4=0; x=1; y=1;
51047 :>0:r1=2; 0:r4=2; 2:r1=1; 2:r4=1; x=1; y=1;
15976 :>0:r1=2; 0:r4=2; 2:r1=2; 2:r4=2; x=1; y=1;
63855 :>0:r1=0; 0:r4=0; 2:r1=2; 2:r4=2; x=2; y=1;
108439:>0:r1=2; 0:r4=2; 2:r1=0; 2:r4=0; x=1; y=2;
299610:>0:r1=0; 0:r4=0; 2:r1=0; 2:r4=0; x=1; y=1;
95744 :>0:r1=0; 0:r4=0; 2:r1=2; 2:r4=2; x=1; y=1;
51132 :>0:r1=1; 0:r4=1; 2:r1=2; 2:r4=2; x=1; y=1;
32189 :>0:r1=2; 0:r4=2; 2:r1=1; 2:r4=1; x=1; y=2;
31600 :>0:r1=0; 0:r4=0; 2:r1=0; 2:r4=0; x=2; y=1;
4054 :>0:r1=0; 0:r4=0; 2:r1=1; 2:r4=1; x=1; y=1;
166 :>0:r1=2; 0:r4=2; 2:r1=1; 2:r4=1; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r4=1 /\ 2:r1=1 /\ 2:r4=1) is NOT validated
Hash=d2c1d487060dc6dad89ba4b3a21cdaa3
Cycle=SyncdWW Rfe DpsR Fre SyncdWW Rfe DpsR Fre
Relax safe344 No
Safe=Fre DpsR BCSyncdWW
Time safe344 3.35
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe345.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe345
"SyncdWR Fre SyncdWW Rfe DpsR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
li r1,1 | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
sync | lwzx r4,r3,r2 | sync ;
li r3,1 | | lwz r3,0(r4) ;
stw r3,0(r4) | | ;
exists (y=2 /\ 1:r1=1 /\ 1:r4=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: li r10,1
_litmus_P0_1_: stw r10,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r11,1
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r7,0(r2)
_litmus_P1_1_: xor r11,r7,r7
_litmus_P1_2_: lwzx r9,r11,r2
_litmus_P2_0_: li r8,2
_litmus_P2_1_: stw r8,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r10,0(r2)
Test safe345 Allowed
Histogram (15 states)
2 :>1:r1=0; 1:r4=1; 2:r3=1; y=2;
1 :>1:r1=2; 1:r4=1; 2:r3=1; y=1;
2 :>1:r1=0; 1:r4=2; 2:r3=0; y=1;
11 :>1:r1=0; 1:r4=2; 2:r3=1; y=2;
25 :>1:r1=0; 1:r4=1; 2:r3=1; y=1;
532 :>1:r1=1; 1:r4=1; 2:r3=0; y=1;
156 :>1:r1=0; 1:r4=2; 2:r3=1; y=1;
22483 :>1:r1=0; 1:r4=0; 2:r3=0; y=1;
87035 :>1:r1=0; 1:r4=0; 2:r3=1; y=2;
18787 :>1:r1=1; 1:r4=1; 2:r3=1; y=2;
64697 :>1:r1=1; 1:r4=1; 2:r3=1; y=1;
246722:>1:r1=2; 1:r4=2; 2:r3=0; y=1;
220797:>1:r1=2; 1:r4=2; 2:r3=1; y=1;
29940 :>1:r1=2; 1:r4=2; 2:r3=1; y=2;
308810:>1:r1=0; 1:r4=0; 2:r3=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 1:r1=1 /\ 1:r4=1 /\ 2:r3=0) is NOT validated
Hash=82a7476e0ae971d8a9d7572c47641d5c
Cycle=SyncdWR Fre SyncdWW Rfe DpsR Fre
Relax safe345 No
Safe=Fre SyncdWR DpsR BCSyncdWW
Time safe345 1.59
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe346.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe346
"SyncdWW Rfe SyncdRR Fre SyncdWW Rfe DpsR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwzx r4,r3,r2 | sync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r4=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r2)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: lwzx r9,r11,r2
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe346 Allowed
Histogram (31 states)
4 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=1; z=1;
10 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r4=1; z=1;
3 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=2; z=2;
16 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=1; z=1;
47 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=2; z=2;
12 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=1; z=1;
27 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=1; z=2;
44 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=2; z=2;
155 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r4=2; z=2;
62 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; z=2;
57 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=1; z=2;
190 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=2; z=1;
33 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=0; z=1;
231 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=1; z=1;
284 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; z=2;
1555 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; z=1;
3482 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=1; z=1;
29 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=2; z=1;
4342 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; z=2;
20621 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=1; z=2;
3043 :>0:r1=1; 0:r3=0; 2:r1=2; 2:r4=2; z=1;
21813 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r4=2; z=2;
19847 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; z=1;
176965:>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; z=1;
87873 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=1; z=1;
73189 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r4=2; z=1;
93565 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=2; z=1;
93267 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0; z=2;
190558:>0:r1=1; 0:r3=1; 2:r1=2; 2:r4=2; z=1;
208434:>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0; z=1;
242 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r4=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r4=1) is NOT validated
Hash=8feb0b61041f10d08a91e0d11b962f03
Cycle=SyncdWW Rfe SyncdRR Fre SyncdWW Rfe DpsR Fre
Relax safe346 No
Safe=Fre SyncdRR DpsR BCSyncdWW
Time safe346 2.67
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe347.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe347
"SyncdWW Rfe SyncsRR Fre SyncdWW Rfe DpsR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 3:r2=y; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r2) | sync | lwzx r4,r3,r2 | sync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r4=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r2)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: lwzx r9,r11,r2
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe347 Allowed
Histogram (53 states)
1 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=1; x=1; y=2;
1 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=1; x=2; y=1;
2 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=2; x=2; y=1;
7 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=1; x=1; y=2;
14 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r4=1; x=2; y=1;
9 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r4=2; x=1; y=2;
47 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=0; x=2; y=1;
18 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r4=0; x=2; y=1;
1 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=2; x=1; y=1;
12 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=1; x=1; y=2;
3 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; x=2; y=1;
77 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=2; x=1; y=2;
204 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r4=1; x=2; y=1;
62 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; x=1; y=2;
30 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=1; x=2; y=1;
466 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=1; x=1; y=1;
256 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=1; x=1; y=1;
77 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r4=2; x=1; y=2;
753 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; x=1; y=1;
641 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r4=2; x=2; y=1;
1718 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r4=1; x=1; y=2;
974 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; x=2; y=1;
730 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r4=2; x=1; y=2;
338 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0; x=2; y=1;
3014 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=1; x=1; y=1;
6041 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0; x=1; y=1;
5644 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=0; x=2; y=1;
4037 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r4=1; x=1; y=1;
476 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=0; x=1; y=2;
17251 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=0; x=1; y=1;
36714 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=2; x=2; y=1;
1130 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=0; x=1; y=2;
11064 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; x=2; y=1;
76114 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r4=2; x=2; y=1;
26246 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r4=2; x=2; y=1;
9232 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r4=2; x=1; y=1;
4276 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r4=2; x=1; y=1;
48 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; x=1; y=2;
7168 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r4=2; x=2; y=1;
31185 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=0; x=1; y=1;
84907 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=2; x=1; y=1;
15232 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r4=2; x=1; y=1;
77114 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=0; x=1; y=2;
13968 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r4=1; x=1; y=1;
42279 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r4=2; x=2; y=1;
69749 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r4=2; x=1; y=2;
46153 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=0; x=1; y=1;
291305:>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; x=1; y=1;
29780 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r4=2; x=1; y=1;
38024 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r4=1; x=1; y=2;
26489 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; x=1; y=2;
1642 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; x=1; y=1;
17277 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r4=2; x=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r4=1) is NOT validated
Hash=dd957a45b7a48686fb18f02bcb9613c8
Cycle=SyncdWW Rfe SyncsRR Fre SyncdWW Rfe DpsR Fre
Relax safe347 No
Safe=Fre SyncsRR DpsR BCSyncdWW
Time safe347 3.42
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe348.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe348
"SyncdWW Rfe LwSyncdRR Fre SyncdWW Rfe DpsR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
lwsync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwzx r4,r3,r2 | sync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r4=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r2)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: lwzx r9,r11,r2
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe348 Allowed
Histogram (31 states)
1 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r4=1; z=1;
2 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r4=1; z=1;
1 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=2; z=2;
3 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=2; z=1;
8 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=1; z=2;
2 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=2; z=1;
2 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=1; z=1;
12 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=1; z=1;
4 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=1; z=1;
1 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=2; z=2;
34 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=2; z=1;
55 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=1; z=2;
55 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=0; z=1;
244 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=2; z=2;
106 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; z=2;
264 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; z=2;
1340 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r4=2; z=2;
7746 :>0:r1=1; 0:r3=0; 2:r1=2; 2:r4=2; z=1;
7112 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; z=1;
31941 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; z=1;
29372 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r4=2; z=2;
14467 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=1; z=1;
29387 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0; z=2;
164273:>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; z=1;
67234 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=1; z=1;
38827 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=1; z=2;
138771:>0:r1=0; 0:r3=1; 2:r1=2; 2:r4=2; z=1;
185332:>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=2; z=1;
114894:>0:r1=1; 0:r3=1; 2:r1=2; 2:r4=2; z=1;
158622:>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0; z=1;
9888 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r4=1) is NOT validated
Hash=d20318fd03846fdeea38e44e7a3fed5f
Cycle=SyncdWW Rfe LwSyncdRR Fre SyncdWW Rfe DpsR Fre
Relax safe348 No
Safe=Fre LwSyncdRR DpsR BCSyncdWW
Time safe348 2.62
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe349.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe349
"SyncdWW Rfe LwSyncsRR Fre SyncdWW Rfe DpsR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 3:r2=y; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
lwsync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r2) | sync | lwzx r4,r3,r2 | sync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r4=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r2)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: lwzx r9,r11,r2
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe349 Allowed
Histogram (49 states)
1 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=2; x=1; y=1;
2 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0; x=2; y=1;
13 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=1; x=1; y=2;
113 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r4=2; x=1; y=2;
1 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r4=2; x=1; y=2;
16 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=0; x=2; y=1;
31 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=1; x=2; y=1;
3 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r4=2; x=1; y=2;
1 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=1; x=1; y=2;
51 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r4=2; x=2; y=1;
114 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0; x=1; y=1;
164 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r4=1; x=2; y=1;
91 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=1; x=1; y=1;
33 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=0; x=1; y=2;
90 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=0; x=2; y=1;
113 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r4=2; x=1; y=1;
260 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; x=1; y=2;
7 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=1; x=2; y=1;
61 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=0; x=1; y=1;
280 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=2; x=1; y=2;
143 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; x=2; y=1;
44 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; x=1; y=2;
404 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r4=2; x=2; y=1;
2 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r4=1; x=1; y=2;
136 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=1; x=1; y=1;
20 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=0; x=1; y=2;
107 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r4=1; x=1; y=1;
408 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; x=2; y=1;
96 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r4=2; x=2; y=1;
121 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=0; x=1; y=1;
4455 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=1; x=1; y=1;
220 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r4=2; x=1; y=1;
1087 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r4=2; x=1; y=1;
21288 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; x=1; y=2;
22210 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r4=2; x=2; y=1;
4804 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; x=1; y=1;
28006 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r4=2; x=2; y=1;
30170 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; x=2; y=1;
90049 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r4=2; x=1; y=1;
66969 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r4=1; x=1; y=2;
24226 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r4=1; x=1; y=1;
79104 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r4=2; x=1; y=2;
25723 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r4=2; x=1; y=1;
302137:>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; x=1; y=1;
83989 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=2; x=1; y=1;
58246 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=0; x=1; y=2;
39152 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=0; x=1; y=1;
19900 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; x=1; y=1;
95339 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=2; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r4=1) is NOT validated
Hash=e6aa349cd3f3d91a0242be164352838c
Cycle=SyncdWW Rfe LwSyncsRR Fre SyncdWW Rfe DpsR Fre
Relax safe349 No
Safe=Fre LwSyncsRR DpsR BCSyncdWW
Time safe349 3.41
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe350.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe350
"LwSyncdWW Rfe SyncsRR Fre SyncdWW Rfe DpsR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 3:r2=y; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r2) | sync | lwzx r4,r3,r2 | lwsync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r4=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r2)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: lwzx r9,r11,r2
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe350 Allowed
Histogram (55 states)
1 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0; x=1; y=2;
1 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=1; x=2; y=1;
1 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=2; x=2; y=1;
1 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=2; x=1; y=1;
9 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r4=2; x=1; y=2;
19 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=2; x=2; y=1;
10 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=1; x=2; y=1;
80 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=2; x=1; y=2;
6 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=1; x=1; y=2;
69 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=1; x=1; y=2;
229 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=1; x=2; y=1;
80 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r4=1; x=2; y=1;
269 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; x=1; y=2;
346 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; x=2; y=1;
49 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; x=1; y=2;
1037 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r4=1; x=1; y=2;
913 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=1; x=1; y=1;
445 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r4=1; x=1; y=1;
651 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; x=2; y=1;
633 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=0; x=1; y=2;
3103 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r4=1; x=2; y=1;
2818 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r4=2; x=1; y=2;
1206 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r4=2; x=1; y=2;
19183 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=1; x=1; y=1;
8182 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=0; x=1; y=2;
39979 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=0; x=2; y=1;
10465 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r4=2; x=1; y=1;
4947 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r4=2; x=2; y=1;
4123 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r4=0; x=2; y=1;
30168 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; x=1; y=2;
45375 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r4=2; x=2; y=1;
22787 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=0; x=1; y=1;
32372 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r4=1; x=1; y=1;
2762 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=0; x=2; y=1;
38329 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; x=2; y=1;
5774 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; x=1; y=1;
65640 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=0; x=1; y=2;
114070:>0:r1=2; 0:r3=2; 2:r1=2; 2:r4=2; x=2; y=1;
2681 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r4=2; x=1; y=1;
2517 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0; x=2; y=1;
30300 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r4=2; x=1; y=2;
17033 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r4=1; x=1; y=2;
14921 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r4=2; x=2; y=1;
21619 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r4=1; x=1; y=1;
152162:>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=2; x=2; y=1;
31087 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r4=2; x=1; y=1;
21158 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r4=0; x=1; y=1;
115564:>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; x=1; y=1;
14275 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r4=2; x=1; y=1;
9071 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r4=2; x=1; y=1;
39590 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0; x=1; y=1;
15583 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=2; x=1; y=1;
50992 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r4=0; x=1; y=1;
1516 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; x=1; y=1;
3799 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r4=2; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r4=1) is NOT validated
Hash=a7f5b84a06e07760238885e3923b5d50
Cycle=LwSyncdWW Rfe SyncsRR Fre SyncdWW Rfe DpsR Fre
Relax safe350 No
Safe=Fre LwSyncdWW DpsR ACSyncsRR BCSyncdWW
Time safe350 3.22
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe351.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe351
"Rfe SyncdRR Fre SyncdWW Rfe DpsR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwzx r4,r3,r2 | ;
| li r3,1 | | ;
| stw r3,0(r4) | | ;
exists (y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r4=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r2)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: lwzx r9,r11,r2
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe351 Allowed
Histogram (29 states)
2 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=1; y=2;
23 :>0:r1=2; 0:r3=0; 2:r1=1; 2:r4=1; y=1;
23 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=2; y=2;
75 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; y=2;
1 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=1; y=2;
1085 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r4=1; y=2;
11022 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=1; y=2;
16692 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; y=2;
2311 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r4=0; y=1;
17576 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=0; y=2;
5343 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r4=2; y=2;
19992 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r4=1; y=1;
10218 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; y=1;
22191 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; y=2;
7493 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r4=2; y=2;
27145 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=1; y=1;
12935 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r4=2; y=1;
24569 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r4=2; y=1;
139001:>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=2; y=1;
32829 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0; y=2;
22525 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=1; y=1;
82194 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r4=0; y=1;
34394 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r4=2; y=2;
178008:>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; y=1;
200913:>0:r1=2; 0:r3=1; 2:r1=2; 2:r4=2; y=1;
30164 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=1; y=2;
86462 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0; y=1;
3203 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; y=1;
11611 :>0:r1=2; 0:r3=0; 2:r1=2; 2:r4=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r4=1) is NOT validated
Hash=c9cfe9239d2b0d9fbee9bcefaf3ca639
Cycle=Rfe SyncdRR Fre SyncdWW Rfe DpsR Fre
Relax safe351 No
Safe=Fre DpsR ACSyncdRR BCSyncdWW
Time safe351 2.11
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe352.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe352
"LwSyncdWW Rfe SyncdRR Fre SyncdWW Rfe DpsR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | xor r3,r1,r1 | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwzx r4,r3,r2 | lwsync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r4=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r2)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: lwzx r9,r11,r2
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe352 Allowed
Histogram (29 states)
1 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=2; z=2;
4 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=1; z=2;
11 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=1; z=1;
3 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r4=1; z=1;
7 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=2; z=1;
2 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=1; z=1;
54 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; z=2;
6 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=2; z=1;
17 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=1; z=1;
36 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=2; z=1;
76 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=2; z=2;
1020 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r4=0; z=1;
108 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=1; z=2;
176 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; z=2;
3632 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r4=2; z=2;
13198 :>0:r1=1; 0:r3=0; 2:r1=2; 2:r4=2; z=1;
3091 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r4=1; z=1;
22927 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r4=2; z=2;
29387 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=1; z=1;
65180 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r4=1; z=1;
150986:>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; z=1;
29136 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r4=1; z=2;
65405 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r4=0; z=1;
140757:>0:r1=0; 0:r3=0; 2:r1=2; 2:r4=2; z=1;
54765 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r4=2; z=1;
26762 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0; z=2;
257951:>0:r1=1; 0:r3=1; 2:r1=2; 2:r4=2; z=1;
133927:>0:r1=0; 0:r3=1; 2:r1=0; 2:r4=0; z=1;
1375 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r4=0; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r4=1) is NOT validated
Hash=69590cc2b8ed135b07a296adb274069f
Cycle=LwSyncdWW Rfe SyncdRR Fre SyncdWW Rfe DpsR Fre
Relax safe352 No
Safe=Fre LwSyncdWW DpsR ACSyncdRR BCSyncdWW
Time safe352 2.57
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe353.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe353
"SyncdWR Fre SyncsWW Rfe SyncdRW Rfe DpsR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 3:r2=y; 3:r4=x;}
P0 | P1 | P2 | P3 ;
li r1,1 | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | sync | xor r3,r1,r1 | stw r1,0(r2) ;
sync | li r3,1 | lwzx r4,r3,r2 | sync ;
li r3,2 | stw r3,0(r4) | | lwz r3,0(r4) ;
stw r3,0(r2) | | | ;
exists (x=2 /\ y=2 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r4=1 /\ 3:r3=0)
Generated assembler
_litmus_P0_0_: li r9,1
_litmus_P0_1_: stw r9,0(r2)
_litmus_P0_2_: sync
_litmus_P0_3_: li r11,2
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r2)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: lwzx r9,r11,r2
_litmus_P3_0_: li r10,2
_litmus_P3_1_: stw r10,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: lwz r8,0(r2)
Test safe353 Allowed
Histogram (52 states)
1 :>1:r1=1; 2:r1=0; 2:r4=2; 3:r3=2; x=2; y=1;
1 :>1:r1=1; 2:r1=0; 2:r4=1; 3:r3=2; x=2; y=1;
1 :>1:r1=0; 2:r1=0; 2:r4=2; 3:r3=1; x=2; y=1;
1 :>1:r1=2; 2:r1=0; 2:r4=1; 3:r3=2; x=2; y=1;
1 :>1:r1=0; 2:r1=0; 2:r4=2; 3:r3=2; x=2; y=2;
2 :>1:r1=1; 2:r1=1; 2:r4=1; 3:r3=1; x=2; y=1;
1 :>1:r1=0; 2:r1=0; 2:r4=2; 3:r3=1; x=2; y=2;
11 :>1:r1=0; 2:r1=0; 2:r4=1; 3:r3=1; x=2; y=1;
3 :>1:r1=0; 2:r1=0; 2:r4=1; 3:r3=0; x=2; y=1;
141 :>1:r1=1; 2:r1=1; 2:r4=1; 3:r3=2; x=2; y=2;
15 :>1:r1=1; 2:r1=1; 2:r4=1; 3:r3=0; x=2; y=1;
71 :>1:r1=2; 2:r1=1; 2:r4=1; 3:r3=1; x=2; y=1;
78 :>1:r1=2; 2:r1=1; 2:r4=1; 3:r3=2; x=2; y=2;
34 :>1:r1=2; 2:r1=1; 2:r4=1; 3:r3=0; x=2; y=1;
181 :>1:r1=1; 2:r1=2; 2:r4=2; 3:r3=2; x=2; y=2;
6 :>1:r1=2; 2:r1=0; 2:r4=2; 3:r3=2; x=2; y=1;
12 :>1:r1=1; 2:r1=2; 2:r4=2; 3:r3=1; x=2; y=1;
132 :>1:r1=0; 2:r1=1; 2:r4=1; 3:r3=0; x=2; y=2;
34 :>1:r1=1; 2:r1=0; 2:r4=0; 3:r3=1; x=2; y=1;
327 :>1:r1=0; 2:r1=0; 2:r4=0; 3:r3=0; x=2; y=2;
259 :>1:r1=2; 2:r1=0; 2:r4=0; 3:r3=0; x=2; y=1;
1051 :>1:r1=0; 2:r1=2; 2:r4=2; 3:r3=0; x=2; y=2;
10374 :>1:r1=2; 2:r1=1; 2:r4=1; 3:r3=2; x=2; y=1;
4422 :>1:r1=1; 2:r1=1; 2:r4=1; 3:r3=2; x=2; y=1;
71 :>1:r1=0; 2:r1=0; 2:r4=1; 3:r3=2; x=2; y=2;
1217 :>1:r1=1; 2:r1=0; 2:r4=0; 3:r3=0; x=2; y=1;
3447 :>1:r1=0; 2:r1=1; 2:r4=1; 3:r3=1; x=2; y=2;
14371 :>1:r1=2; 2:r1=2; 2:r4=2; 3:r3=0; x=2; y=1;
12548 :>1:r1=0; 2:r1=2; 2:r4=2; 3:r3=1; x=2; y=2;
7373 :>1:r1=0; 2:r1=1; 2:r4=1; 3:r3=0; x=2; y=1;
1339 :>1:r1=0; 2:r1=2; 2:r4=2; 3:r3=2; x=2; y=1;
10756 :>1:r1=0; 2:r1=1; 2:r4=1; 3:r3=1; x=2; y=1;
5344 :>1:r1=0; 2:r1=0; 2:r4=0; 3:r3=1; x=2; y=2;
6932 :>1:r1=2; 2:r1=0; 2:r4=0; 3:r3=1; x=2; y=1;
3302 :>1:r1=1; 2:r1=0; 2:r4=0; 3:r3=2; x=2; y=2;
19126 :>1:r1=0; 2:r1=0; 2:r4=0; 3:r3=0; x=2; y=1;
4805 :>1:r1=2; 2:r1=0; 2:r4=0; 3:r3=2; x=2; y=2;
92726 :>1:r1=0; 2:r1=1; 2:r4=1; 3:r3=2; x=2; y=2;
73872 :>1:r1=2; 2:r1=2; 2:r4=2; 3:r3=1; x=2; y=1;
52333 :>1:r1=1; 2:r1=2; 2:r4=2; 3:r3=0; x=2; y=1;
1911 :>1:r1=0; 2:r1=1; 2:r4=1; 3:r3=2; x=2; y=1;
37292 :>1:r1=0; 2:r1=0; 2:r4=0; 3:r3=1; x=2; y=1;
138527:>1:r1=2; 2:r1=2; 2:r4=2; 3:r3=2; x=2; y=1;
64941 :>1:r1=0; 2:r1=2; 2:r4=2; 3:r3=0; x=2; y=1;
15926 :>1:r1=0; 2:r1=2; 2:r4=2; 3:r3=1; x=2; y=1;
35460 :>1:r1=0; 2:r1=2; 2:r4=2; 3:r3=2; x=2; y=2;
126592:>1:r1=1; 2:r1=0; 2:r4=0; 3:r3=2; x=2; y=1;
25124 :>1:r1=1; 2:r1=2; 2:r4=2; 3:r3=2; x=2; y=1;
66595 :>1:r1=0; 2:r1=0; 2:r4=0; 3:r3=2; x=2; y=2;
15750 :>1:r1=0; 2:r1=0; 2:r4=0; 3:r3=2; x=2; y=1;
483 :>1:r1=2; 2:r1=2; 2:r4=2; 3:r3=2; x=2; y=2;
144678:>1:r1=2; 2:r1=0; 2:r4=0; 3:r3=2; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r4=1 /\ 3:r3=0) is NOT validated
Hash=377307e59ad05d4b886335e48611b65f
Cycle=SyncdWR Fre SyncsWW Rfe SyncdRW Rfe DpsR Fre
Relax safe353 No
Safe=Fre SyncdWR DpsR BCSyncsWW BCSyncdRW
Time safe353 3.21
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe354.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe354
"SyncdWW Rfe SyncsRW Rfe SyncdRW Rfe DpsR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 3:r2=y; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | sync | xor r3,r1,r1 | stw r1,0(r2) ;
li r3,2 | li r3,1 | lwzx r4,r3,r2 | sync ;
stw r3,0(r2) | stw r3,0(r4) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r4=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r2)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: lwzx r9,r11,r2
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe354 Allowed
Histogram (41 states)
1 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r4=1; x=1; y=1;
3 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r4=2; x=1; y=1;
1 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r4=2; x=2; y=1;
1 :>0:r1=1; 1:r1=2; 2:r1=0; 2:r4=0; x=2; y=1;
19 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r4=1; x=2; y=1;
207 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r4=2; x=1; y=2;
25 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r4=1; x=2; y=2;
47 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r4=0; x=2; y=2;
133 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r4=1; x=1; y=2;
144 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r4=0; x=2; y=1;
1416 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r4=1; x=2; y=1;
572 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r4=2; x=2; y=2;
5360 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r4=1; x=2; y=2;
158 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r4=1; x=2; y=1;
2197 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r4=0; x=2; y=1;
16992 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r4=2; x=2; y=2;
271 :>0:r1=1; 1:r1=2; 2:r1=2; 2:r4=2; x=2; y=1;
13986 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r4=1; x=2; y=1;
4016 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r4=0; x=2; y=1;
37938 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r4=1; x=2; y=1;
41437 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r4=0; x=1; y=2;
5092 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r4=0; x=2; y=2;
3081 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r4=1; x=1; y=1;
9662 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r4=0; x=1; y=1;
54811 :>0:r1=1; 1:r1=1; 2:r1=2; 2:r4=2; x=2; y=1;
15178 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r4=2; x=2; y=1;
90435 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r4=2; x=2; y=1;
94054 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r4=0; x=1; y=2;
101162:>0:r1=0; 1:r1=0; 2:r1=0; 2:r4=0; x=1; y=1;
8119 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r4=2; x=2; y=1;
69087 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r4=2; x=1; y=2;
19413 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r4=0; x=2; y=1;
7999 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r4=2; x=1; y=1;
52912 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r4=1; x=1; y=2;
150520:>0:r1=0; 1:r1=2; 2:r1=0; 2:r4=0; x=1; y=1;
85673 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r4=2; x=1; y=1;
40100 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r4=2; x=2; y=1;
7770 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r4=1; x=1; y=1;
39354 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r4=0; x=2; y=1;
1000 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r4=1; x=1; y=1;
19654 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r4=2; x=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r4=1) is NOT validated
Hash=27a6022ccc554bb7759124d24dcc598f
Cycle=SyncdWW Rfe SyncsRW Rfe SyncdRW Rfe DpsR Fre
Relax safe354 No
Safe=Fre DpsR BCSyncsRW BCSyncdWW BCSyncdRW
Time safe354 2.86
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe355.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe355
"SyncdWW Rfe SyncdRW Rfe DpsR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | xor r3,r1,r1 | stw r1,0(r2) ;
li r3,1 | lwzx r4,r3,r2 | sync ;
stw r3,0(r4) | | li r3,1 ;
| | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r4=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stw r8,0(r2)
_litmus_P1_0_: lwz r7,0(r2)
_litmus_P1_1_: xor r11,r7,r7
_litmus_P1_2_: lwzx r9,r11,r2
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe355 Allowed
Histogram (14 states)
1 :>0:r1=0; 1:r1=0; 1:r4=1; y=2;
2 :>0:r1=0; 1:r1=0; 1:r4=2; y=2;
32 :>0:r1=0; 1:r1=0; 1:r4=2; y=1;
29 :>0:r1=1; 1:r1=0; 1:r4=2; y=1;
37546 :>0:r1=0; 1:r1=2; 1:r4=2; y=2;
353 :>0:r1=1; 1:r1=0; 1:r4=0; y=1;
25 :>0:r1=0; 1:r1=0; 1:r4=1; y=1;
59687 :>0:r1=0; 1:r1=1; 1:r4=1; y=2;
174593:>0:r1=0; 1:r1=2; 1:r4=2; y=1;
99168 :>0:r1=0; 1:r1=0; 1:r4=0; y=2;
203581:>0:r1=1; 1:r1=2; 1:r4=2; y=1;
375199:>0:r1=0; 1:r1=0; 1:r4=0; y=1;
49410 :>0:r1=0; 1:r1=1; 1:r4=1; y=1;
374 :>0:r1=1; 1:r1=1; 1:r4=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r4=1) is NOT validated
Hash=24275f136728299e56e6b5651762ec5a
Cycle=SyncdWW Rfe SyncdRW Rfe DpsR Fre
Relax safe355 No
Safe=Fre DpsR BCSyncdWW BCSyncdRW
Time safe355 1.55
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe356.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe356
"SyncdWR Fre SyncdWW Rfe SyncdRW Rfe DpsR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
li r1,1 | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
stw r1,0(r2) | sync | xor r3,r1,r1 | stw r1,0(r2) ;
sync | li r3,1 | lwzx r4,r3,r2 | sync ;
li r3,1 | stw r3,0(r4) | | lwz r3,0(r4) ;
stw r3,0(r4) | | | ;
exists (z=2 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r4=1 /\ 3:r3=0)
Generated assembler
_litmus_P0_0_: li r11,1
_litmus_P0_1_: stw r11,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r10,1
_litmus_P0_4_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r2)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: lwzx r9,r11,r2
_litmus_P3_0_: li r10,2
_litmus_P3_1_: stw r10,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: lwz r8,0(r2)
Test safe356 Allowed
Histogram (28 states)
1 :>1:r1=0; 2:r1=0; 2:r4=2; 3:r3=0; z=1;
1 :>1:r1=0; 2:r1=2; 2:r4=1; 3:r3=1; z=1;
1 :>1:r1=1; 2:r1=0; 2:r4=2; 3:r3=1; z=1;
4 :>1:r1=0; 2:r1=0; 2:r4=2; 3:r3=1; z=1;
2 :>1:r1=0; 2:r1=1; 2:r4=2; 3:r3=1; z=2;
10 :>1:r1=0; 2:r1=0; 2:r4=1; 3:r3=1; z=2;
12 :>1:r1=1; 2:r1=1; 2:r4=1; 3:r3=1; z=2;
2 :>1:r1=0; 2:r1=0; 2:r4=2; 3:r3=1; z=2;
10 :>1:r1=0; 2:r1=0; 2:r4=1; 3:r3=1; z=1;
11 :>1:r1=1; 2:r1=0; 2:r4=0; 3:r3=0; z=1;
9 :>1:r1=1; 2:r1=2; 2:r4=2; 3:r3=1; z=2;
268 :>1:r1=0; 2:r1=1; 2:r4=1; 3:r3=0; z=2;
478 :>1:r1=0; 2:r1=0; 2:r4=0; 3:r3=0; z=2;
1450 :>1:r1=1; 2:r1=2; 2:r4=2; 3:r3=0; z=1;
613 :>1:r1=1; 2:r1=1; 2:r4=1; 3:r3=1; z=1;
27828 :>1:r1=1; 2:r1=2; 2:r4=2; 3:r3=1; z=1;
13569 :>1:r1=0; 2:r1=1; 2:r4=1; 3:r3=0; z=1;
3304 :>1:r1=0; 2:r1=2; 2:r4=2; 3:r3=0; z=2;
52590 :>1:r1=0; 2:r1=1; 2:r4=1; 3:r3=1; z=1;
1786 :>1:r1=1; 2:r1=0; 2:r4=0; 3:r3=1; z=2;
58483 :>1:r1=0; 2:r1=2; 2:r4=2; 3:r3=1; z=2;
213833:>1:r1=0; 2:r1=2; 2:r4=2; 3:r3=0; z=1;
239317:>1:r1=0; 2:r1=0; 2:r4=0; 3:r3=1; z=1;
50926 :>1:r1=0; 2:r1=1; 2:r4=1; 3:r3=1; z=2;
132079:>1:r1=0; 2:r1=0; 2:r4=0; 3:r3=1; z=2;
72230 :>1:r1=0; 2:r1=2; 2:r4=2; 3:r3=1; z=1;
20305 :>1:r1=0; 2:r1=0; 2:r4=0; 3:r3=0; z=1;
110878:>1:r1=1; 2:r1=0; 2:r4=0; 3:r3=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r4=1 /\ 3:r3=0) is NOT validated
Hash=3031447e09d4dd33617a8a4a45f60424
Cycle=SyncdWR Fre SyncdWW Rfe SyncdRW Rfe DpsR Fre
Relax safe356 No
Safe=Fre SyncdWR DpsR BCSyncdWW BCSyncdRW
Time safe356 2.48
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe357.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe357
"SyncdWW Rfe SyncdRW Rfe SyncdRW Rfe DpsR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | sync | xor r3,r1,r1 | stw r1,0(r2) ;
li r3,1 | li r3,1 | lwzx r4,r3,r2 | sync ;
stw r3,0(r4) | stw r3,0(r4) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r4=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r2)
_litmus_P2_1_: xor r11,r7,r7
_litmus_P2_2_: lwzx r9,r11,r2
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe357 Allowed
Histogram (28 states)
2 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r4=1; z=1;
3 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r4=1; z=1;
2 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r4=2; z=2;
1 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r4=2; z=1;
15 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r4=1; z=1;
3 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r4=1; z=2;
78 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r4=0; z=2;
10 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r4=0; z=1;
31 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r4=2; z=1;
76 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r4=2; z=2;
18 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r4=2; z=1;
555 :>0:r1=1; 1:r1=1; 2:r1=2; 2:r4=2; z=1;
46 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r4=1; z=2;
1962 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r4=1; z=1;
61 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r4=1; z=2;
673 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r4=2; z=2;
4008 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r4=0; z=2;
7431 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r4=1; z=1;
8952 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r4=0; z=1;
60282 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r4=2; z=1;
71724 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r4=1; z=1;
114654:>0:r1=0; 1:r1=0; 2:r1=0; 2:r4=0; z=2;
68377 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r4=1; z=2;
135580:>0:r1=0; 1:r1=0; 2:r1=2; 2:r4=2; z=1;
37094 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r4=2; z=2;
150946:>0:r1=1; 1:r1=0; 2:r1=2; 2:r4=2; z=1;
218469:>0:r1=0; 1:r1=0; 2:r1=0; 2:r4=0; z=1;
118947:>0:r1=0; 1:r1=1; 2:r1=0; 2:r4=0; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r4=1) is NOT validated
Hash=46702290022d0cb7260e31598f785648
Cycle=SyncdWW Rfe SyncdRW Rfe SyncdRW Rfe DpsR Fre
Relax safe357 No
Safe=Fre DpsR BCSyncdWW BCSyncdRW
Time safe357 2.57
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe358.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe358
"SyncdWR Fre SyncdWR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=x;}
P0 | P1 ;
li r1,1 | li r1,1 ;
stw r1,0(r2) | stw r1,0(r2) ;
sync | sync ;
lwz r3,0(r4) | lwz r3,0(r4) ;
exists (0:r3=0 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: li r10,1
_litmus_P0_1_: stw r10,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: lwz r8,0(r2)
_litmus_P1_0_: li r10,1
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: lwz r8,0(r2)
Test safe358 Allowed
Histogram (3 states)
302948:>0:r3=0; 1:r3=1;
341018:>0:r3=1; 1:r3=0;
1356034:>0:r3=1; 1:r3=1;
No
Witnesses
Positive: 0, Negative: 2000000
Condition exists (0:r3=0 /\ 1:r3=0) is NOT validated
Hash=5db67b28ae44dfb0497cda13c245c4e4
Cycle=SyncdWR Fre SyncdWR Fre
Relax safe358 No
Safe=Fre SyncdWR
Time safe358 1.31
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe359.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe359
"SyncdWR Fre SyncdWR Fre SyncdWR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
li r1,1 | li r1,1 | li r1,1 ;
stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
sync | sync | sync ;
lwz r3,0(r4) | lwz r3,0(r4) | lwz r3,0(r4) ;
exists (0:r3=0 /\ 1:r3=0 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: li r8,1
_litmus_P0_1_: stw r8,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: lwz r10,0(r2)
_litmus_P1_0_: li r8,1
_litmus_P1_1_: stw r8,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: lwz r10,0(r2)
_litmus_P2_0_: li r8,1
_litmus_P2_1_: stw r8,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r10,0(r2)
Test safe359 Allowed
Histogram (7 states)
3935 :>0:r3=0; 1:r3=0; 2:r3=1;
4259 :>0:r3=0; 1:r3=1; 2:r3=0;
4023 :>0:r3=1; 1:r3=0; 2:r3=0;
239774:>0:r3=1; 1:r3=0; 2:r3=1;
259138:>0:r3=1; 1:r3=1; 2:r3=1;
242450:>0:r3=0; 1:r3=1; 2:r3=1;
246421:>0:r3=1; 1:r3=1; 2:r3=0;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r3=0 /\ 1:r3=0 /\ 2:r3=0) is NOT validated
Hash=1bb05ee290fb3d2f94afc422c308bf1a
Cycle=SyncdWR Fre SyncdWR Fre SyncdWR Fre
Relax safe359 No
Safe=Fre SyncdWR
Time safe359 1.64
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe360.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe360
"SyncsWR Fre SyncdWR Fre SyncdWR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y;}
P0 | P1 | P2 ;
li r1,2 | li r1,1 | li r1,1 ;
stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
sync | sync | sync ;
lwz r3,0(r4) | lwz r3,0(r4) | lwz r3,0(r2) ;
exists (y=2 /\ 0:r3=0 /\ 1:r3=0 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: li r8,2
_litmus_P0_1_: stw r8,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: lwz r10,0(r2)
_litmus_P1_0_: li r8,1
_litmus_P1_1_: stw r8,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: lwz r10,0(r2)
_litmus_P2_0_: li r9,1
_litmus_P2_1_: stw r9,0(r2)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r10,0(r2)
Test safe360 Allowed
Histogram (13 states)
20 :>0:r3=1; 1:r3=1; 2:r3=2; y=2;
1054 :>0:r3=0; 1:r3=2; 2:r3=2; y=2;
370 :>0:r3=0; 1:r3=2; 2:r3=1; y=1;
11051 :>0:r3=1; 1:r3=0; 2:r3=1; y=2;
27937 :>0:r3=1; 1:r3=0; 2:r3=1; y=1;
11946 :>0:r3=1; 1:r3=2; 2:r3=1; y=1;
122739:>0:r3=1; 1:r3=1; 2:r3=1; y=2;
39637 :>0:r3=1; 1:r3=0; 2:r3=2; y=2;
82732 :>0:r3=1; 1:r3=1; 2:r3=1; y=1;
290094:>0:r3=1; 1:r3=2; 2:r3=1; y=2;
97504 :>0:r3=1; 1:r3=2; 2:r3=2; y=2;
288383:>0:r3=0; 1:r3=1; 2:r3=1; y=1;
26533 :>0:r3=0; 1:r3=2; 2:r3=1; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r3=0 /\ 1:r3=0 /\ 2:r3=1) is NOT validated
Hash=73d6bfa4ac7e4a6fa2da6911e5f8c2e3
Cycle=SyncsWR Fre SyncdWR Fre SyncdWR Fre
Relax safe360 No
Safe=Fre SyncsWR SyncdWR
Time safe360 1.55
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe361.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe361
"Rfe SyncsRR Fre SyncdWR Fre SyncdWR Fre"
{0:r2=y; 1:r2=y; 1:r4=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | li r1,1 | li r1,1 ;
sync | stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r2) | sync | sync | ;
| lwz r3,0(r4) | lwz r3,0(r4) | ;
exists (y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 1:r3=0 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r10,2
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: lwz r8,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
Test safe361 Allowed
Histogram (53 states)
5 :>0:r1=0; 0:r3=2; 1:r3=0; 2:r3=2; y=1;
18 :>0:r1=1; 0:r3=1; 1:r3=0; 2:r3=2; y=1;
273 :>0:r1=0; 0:r3=2; 1:r3=0; 2:r3=2; y=2;
37 :>0:r1=0; 0:r3=0; 1:r3=0; 2:r3=2; y=1;
220 :>0:r1=0; 0:r3=2; 1:r3=1; 2:r3=0; y=1;
364 :>0:r1=0; 0:r3=1; 1:r3=0; 2:r3=1; y=1;
306 :>0:r1=2; 0:r3=1; 1:r3=0; 2:r3=2; y=1;
499 :>0:r1=0; 0:r3=2; 1:r3=0; 2:r3=1; y=1;
1513 :>0:r1=0; 0:r3=2; 1:r3=1; 2:r3=2; y=1;
1281 :>0:r1=1; 0:r3=1; 1:r3=1; 2:r3=0; y=2;
2453 :>0:r1=2; 0:r3=2; 1:r3=0; 2:r3=2; y=1;
8810 :>0:r1=0; 0:r3=2; 1:r3=1; 2:r3=1; y=2;
1833 :>0:r1=0; 0:r3=1; 1:r3=1; 2:r3=0; y=1;
1207 :>0:r1=0; 0:r3=2; 1:r3=1; 2:r3=1; y=1;
179 :>0:r1=0; 0:r3=1; 1:r3=0; 2:r3=2; y=2;
4075 :>0:r1=1; 0:r3=1; 1:r3=1; 2:r3=2; y=1;
2587 :>0:r1=0; 0:r3=1; 1:r3=1; 2:r3=0; y=2;
243 :>0:r1=2; 0:r3=2; 1:r3=1; 2:r3=0; y=1;
618 :>0:r1=0; 0:r3=1; 1:r3=1; 2:r3=2; y=1;
8054 :>0:r1=2; 0:r3=2; 1:r3=1; 2:r3=1; y=2;
22713 :>0:r1=0; 0:r3=0; 1:r3=1; 2:r3=1; y=2;
14319 :>0:r1=2; 0:r3=1; 1:r3=1; 2:r3=1; y=1;
4703 :>0:r1=1; 0:r3=1; 1:r3=0; 2:r3=2; y=2;
687 :>0:r1=2; 0:r3=1; 1:r3=1; 2:r3=0; y=1;
10588 :>0:r1=1; 0:r3=1; 1:r3=1; 2:r3=0; y=1;
2785 :>0:r1=0; 0:r3=1; 1:r3=1; 2:r3=1; y=1;
12089 :>0:r1=0; 0:r3=2; 1:r3=1; 2:r3=2; y=2;
21068 :>0:r1=1; 0:r3=1; 1:r3=1; 2:r3=1; y=1;
30769 :>0:r1=0; 0:r3=0; 1:r3=1; 2:r3=0; y=2;
20107 :>0:r1=0; 0:r3=2; 1:r3=1; 2:r3=0; y=2;
16346 :>0:r1=2; 0:r3=1; 1:r3=1; 2:r3=2; y=1;
5562 :>0:r1=0; 0:r3=1; 1:r3=1; 2:r3=1; y=2;
2368 :>0:r1=0; 0:r3=1; 1:r3=1; 2:r3=2; y=2;
4029 :>0:r1=1; 0:r3=2; 1:r3=1; 2:r3=1; y=2;
35627 :>0:r1=2; 0:r3=1; 1:r3=0; 2:r3=1; y=1;
44037 :>0:r1=0; 0:r3=0; 1:r3=1; 2:r3=1; y=1;
24698 :>0:r1=1; 0:r3=2; 1:r3=0; 2:r3=2; y=2;
82556 :>0:r1=1; 0:r3=1; 1:r3=0; 2:r3=1; y=1;
48217 :>0:r1=0; 0:r3=0; 1:r3=1; 2:r3=0; y=1;
61865 :>0:r1=2; 0:r3=2; 1:r3=0; 2:r3=2; y=2;
6249 :>0:r1=2; 0:r3=2; 1:r3=1; 2:r3=2; y=1;
3689 :>0:r1=0; 0:r3=0; 1:r3=1; 2:r3=2; y=1;
40295 :>0:r1=1; 0:r3=2; 1:r3=1; 2:r3=2; y=2;
149443:>0:r1=0; 0:r3=0; 1:r3=1; 2:r3=2; y=2;
41112 :>0:r1=1; 0:r3=1; 1:r3=1; 2:r3=2; y=2;
99122 :>0:r1=2; 0:r3=2; 1:r3=0; 2:r3=1; y=1;
7398 :>0:r1=2; 0:r3=2; 1:r3=1; 2:r3=0; y=2;
33074 :>0:r1=0; 0:r3=0; 1:r3=0; 2:r3=1; y=1;
78313 :>0:r1=2; 0:r3=2; 1:r3=1; 2:r3=2; y=2;
6499 :>0:r1=2; 0:r3=2; 1:r3=1; 2:r3=1; y=1;
7613 :>0:r1=1; 0:r3=2; 1:r3=1; 2:r3=0; y=2;
19441 :>0:r1=0; 0:r3=0; 1:r3=0; 2:r3=2; y=2;
8044 :>0:r1=1; 0:r3=1; 1:r3=1; 2:r3=1; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 1:r3=0 /\ 2:r3=0) is NOT validated
Hash=df826b1d10e5a6b8909faa491715979b
Cycle=Rfe SyncsRR Fre SyncdWR Fre SyncdWR Fre
Relax safe361 No
Safe=Fre SyncdWR ACSyncsRR
Time safe361 2.77
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe362.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe362
"Rfe SyncdRR Fre SyncdWR Fre SyncdWR Fre"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | li r1,1 | li r1,1 ;
sync | stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r4) | sync | sync | ;
| lwz r3,0(r4) | lwz r3,0(r4) | ;
exists (0:r1=1 /\ 0:r3=0 /\ 1:r3=0 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r10,1
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: lwz r8,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
Test safe362 Allowed
Histogram (15 states)
6 :>0:r1=0; 0:r3=0; 1:r3=0; 2:r3=0;
45 :>0:r1=1; 0:r3=0; 1:r3=0; 2:r3=1;
636 :>0:r1=1; 0:r3=1; 1:r3=0; 2:r3=0;
13438 :>0:r1=0; 0:r3=0; 1:r3=0; 2:r3=1;
1565 :>0:r1=1; 0:r3=0; 1:r3=1; 2:r3=0;
69027 :>0:r1=1; 0:r3=1; 1:r3=0; 2:r3=1;
88396 :>0:r1=0; 0:r3=1; 1:r3=0; 2:r3=1;
58235 :>0:r1=1; 0:r3=0; 1:r3=1; 2:r3=1;
30944 :>0:r1=0; 0:r3=0; 1:r3=1; 2:r3=0;
45220 :>0:r1=0; 0:r3=1; 1:r3=1; 2:r3=1;
130869:>0:r1=0; 0:r3=1; 1:r3=1; 2:r3=0;
37133 :>0:r1=1; 0:r3=1; 1:r3=1; 2:r3=0;
224896:>0:r1=0; 0:r3=0; 1:r3=1; 2:r3=1;
296857:>0:r1=1; 0:r3=1; 1:r3=1; 2:r3=1;
2733 :>0:r1=0; 0:r3=1; 1:r3=0; 2:r3=0;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 0:r3=0 /\ 1:r3=0 /\ 2:r3=0) is NOT validated
Hash=a637ee7a9492198b64a859f6656cdc8c
Cycle=Rfe SyncdRR Fre SyncdWR Fre SyncdWR Fre
Relax safe362 No
Safe=Fre SyncdWR ACSyncdRR
Time safe362 1.84
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe363.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe363
"SyncsWW Rfe SyncdRR Fre SyncdWR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,1 | li r1,1 ;
sync | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r4) | sync | sync ;
| lwz r3,0(r4) | li r3,2 ;
| | stw r3,0(r2) ;
exists (y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r8,1
_litmus_P1_1_: stw r8,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: lwz r10,0(r2)
_litmus_P2_0_: li r9,1
_litmus_P2_1_: stw r9,0(r2)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,2
_litmus_P2_4_: stw r11,0(r2)
Test safe363 Allowed
Histogram (15 states)
2 :>0:r1=1; 0:r3=0; 1:r3=1; y=2;
35 :>0:r1=1; 0:r3=1; 1:r3=1; y=2;
445 :>0:r1=0; 0:r3=0; 1:r3=0; y=2;
3878 :>0:r1=1; 0:r3=0; 1:r3=2; y=2;
5678 :>0:r1=0; 0:r3=0; 1:r3=1; y=2;
13780 :>0:r1=2; 0:r3=1; 1:r3=0; y=2;
63302 :>0:r1=0; 0:r3=1; 1:r3=1; y=2;
39559 :>0:r1=1; 0:r3=1; 1:r3=0; y=2;
17838 :>0:r1=0; 0:r3=1; 1:r3=2; y=2;
82236 :>0:r1=2; 0:r3=1; 1:r3=1; y=2;
62307 :>0:r1=0; 0:r3=1; 1:r3=0; y=2;
308338:>0:r1=2; 0:r3=1; 1:r3=2; y=2;
90845 :>0:r1=1; 0:r3=1; 1:r3=2; y=2;
299634:>0:r1=0; 0:r3=0; 1:r3=2; y=2;
12123 :>0:r1=2; 0:r3=0; 1:r3=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 1:r3=0) is NOT validated
Hash=2fec12ca684cd4a2a65a3c7c3b821179
Cycle=SyncsWW Rfe SyncdRR Fre SyncdWR Fre
Relax safe363 No
Safe=Fre SyncdWR SyncdRR BCSyncsWW
Time safe363 1.68
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe364.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe364
"SyncdWW Rfe SyncsRW Rfe SyncdRR Fre SyncdWR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,1 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,2 | lwz r3,0(r4) | sync | sync ;
stw r3,0(r2) | | lwz r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe364 Allowed
Histogram (30 states)
2 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=0; x=2;
4 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=0; x=2;
23 :>0:r1=0; 1:r1=2; 1:r3=0; 2:r3=1; x=2;
220 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=0; x=2;
2 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=0; x=2;
214 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; x=2;
130 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=1; x=1;
147 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=0; x=2;
303 :>0:r1=1; 1:r1=1; 1:r3=0; 2:r3=1; x=2;
1407 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; x=2;
250 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=1; x=2;
1014 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=1; x=2;
1595 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; x=1;
3782 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; x=2;
155 :>0:r1=0; 1:r1=2; 1:r3=0; 2:r3=0; x=1;
57927 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=2;
23782 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; x=2;
18415 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; x=2;
102614:>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1; x=2;
45088 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; x=2;
5651 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; x=2;
107442:>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; x=1;
82780 :>0:r1=0; 1:r1=2; 1:r3=0; 2:r3=1; x=1;
159103:>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=1;
77007 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=2;
107578:>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=0; x=1;
146005:>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; x=1;
39627 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=1;
15658 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; x=1;
2075 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; x=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0 /\ 2:r3=0) is NOT validated
Hash=7382d86ba3356b647e5ad2ab26b61a68
Cycle=SyncdWW Rfe SyncsRW Rfe SyncdRR Fre SyncdWR Fre
Relax safe364 No
Safe=Fre SyncdWR SyncdRR BCSyncsRW BCSyncdWW
Time safe364 2.60
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe365.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe365
"SyncdWW Rfe SyncdRR Fre SyncdWR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,1 | li r1,1 ;
sync | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r4) | sync | sync ;
| lwz r3,0(r4) | li r3,1 ;
| | stw r3,0(r4) ;
exists (0:r1=1 /\ 0:r3=0 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r8,1
_litmus_P1_1_: stw r8,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: lwz r10,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe365 Allowed
Histogram (7 states)
471 :>0:r1=1; 0:r3=0; 1:r3=1;
2164 :>0:r1=1; 0:r3=1; 1:r3=0;
1610 :>0:r1=0; 0:r3=0; 1:r3=0;
289083:>0:r1=0; 0:r3=0; 1:r3=1;
209789:>0:r1=0; 0:r3=1; 1:r3=0;
308368:>0:r1=0; 0:r3=1; 1:r3=1;
188515:>0:r1=1; 0:r3=1; 1:r3=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 0:r3=0 /\ 1:r3=0) is NOT validated
Hash=480c379a0f67b99bd068fb986571a85f
Cycle=SyncdWW Rfe SyncdRR Fre SyncdWR Fre
Relax safe365 No
Safe=Fre SyncdWR SyncdRR BCSyncdWW
Time safe365 1.60
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe366.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe366
"SyncsWW Rfe SyncdRW Rfe SyncdRR Fre SyncdWR Fre"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,1 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r4) | sync | sync ;
stw r3,0(r4) | | lwz r3,0(r4) | li r3,2 ;
| | | stw r3,0(r2) ;
exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe366 Allowed
Histogram (31 states)
2 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1; z=2;
4 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=0; z=2;
5 :>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=0; z=2;
7 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=1; z=2;
5 :>0:r1=1; 1:r1=1; 1:r3=0; 2:r3=2; z=2;
125 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=0; z=2;
130 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=0; z=2;
18 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; z=2;
74 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=0; z=2;
64 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; z=2;
8791 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=2; z=2;
7769 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; z=2;
991 :>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=1; z=2;
10190 :>0:r1=2; 1:r1=0; 1:r3=1; 2:r3=0; z=2;
3846 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=2; z=2;
16796 :>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=2; z=2;
41977 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; z=2;
18798 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; z=2;
99000 :>0:r1=2; 1:r1=0; 1:r3=1; 2:r3=1; z=2;
48238 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; z=2;
20055 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=2; z=2;
210199:>0:r1=2; 1:r1=0; 1:r3=1; 2:r3=2; z=2;
28554 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=0; z=2;
47375 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; z=2;
46307 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=2; z=2;
58062 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; z=2;
127733:>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=2; z=2;
168135:>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=2; z=2;
11164 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=2; z=2;
575 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=1; z=2;
25011 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=0) is NOT validated
Hash=0a61e14ef5a7218faac96a537520cc1d
Cycle=SyncsWW Rfe SyncdRW Rfe SyncdRR Fre SyncdWR Fre
Relax safe366 No
Safe=Fre SyncdWR SyncdRR BCSyncsWW BCSyncdRW
Time safe366 2.51
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe367.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe367
"SyncdWW Rfe SyncdRW Rfe SyncdRR Fre SyncdWR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,1 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r4) | sync | sync ;
stw r3,0(r4) | | lwz r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (0:r1=1 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe367 Allowed
Histogram (15 states)
2 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=0;
4 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=0;
4 :>0:r1=1; 1:r1=1; 1:r3=0; 2:r3=1;
5 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=0;
1545 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1;
3357 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=0;
3227 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=1;
13024 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0;
9396 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1;
41427 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0;
124172:>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0;
120760:>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1;
240315:>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1;
242626:>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1;
200136:>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=0) is NOT validated
Hash=cbcc52cb53779d00b226cbdf284740e5
Cycle=SyncdWW Rfe SyncdRW Rfe SyncdRR Fre SyncdWR Fre
Relax safe367 No
Safe=Fre SyncdWR SyncdRR BCSyncdWW BCSyncdRW
Time safe367 2.15
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe368.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe368
"Rfe SyncdRR Fre SyncsWR Fre SyncdWR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | li r1,2 | li r1,1 ;
sync | stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r4) | sync | sync | ;
| lwz r3,0(r2) | lwz r3,0(r4) | ;
exists (x=2 /\ 0:r1=1 /\ 0:r3=0 /\ 1:r3=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: lwz r10,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
Test safe368 Allowed
Histogram (30 states)
4 :>0:r1=0; 0:r3=1; 1:r3=2; 2:r3=1; x=2;
9 :>0:r1=1; 0:r3=1; 1:r3=2; 2:r3=1; x=2;
43 :>0:r1=1; 0:r3=2; 1:r3=1; 2:r3=0; x=1;
81 :>0:r1=1; 0:r3=2; 1:r3=2; 2:r3=0; x=2;
50 :>0:r1=0; 0:r3=1; 1:r3=1; 2:r3=0; x=2;
314 :>0:r1=0; 0:r3=0; 1:r3=2; 2:r3=0; x=2;
164 :>0:r1=1; 0:r3=0; 1:r3=1; 2:r3=1; x=2;
548 :>0:r1=1; 0:r3=0; 1:r3=2; 2:r3=1; x=2;
60 :>0:r1=0; 0:r3=0; 1:r3=1; 2:r3=0; x=2;
2294 :>0:r1=1; 0:r3=2; 1:r3=1; 2:r3=0; x=2;
445 :>0:r1=1; 0:r3=0; 1:r3=1; 2:r3=1; x=1;
2351 :>0:r1=1; 0:r3=2; 1:r3=1; 2:r3=1; x=1;
3554 :>0:r1=0; 0:r3=0; 1:r3=1; 2:r3=0; x=1;
23611 :>0:r1=0; 0:r3=2; 1:r3=1; 2:r3=0; x=1;
21448 :>0:r1=0; 0:r3=2; 1:r3=1; 2:r3=0; x=2;
45835 :>0:r1=0; 0:r3=1; 1:r3=1; 2:r3=1; x=1;
947 :>0:r1=0; 0:r3=2; 1:r3=2; 2:r3=0; x=2;
52291 :>0:r1=1; 0:r3=1; 1:r3=1; 2:r3=1; x=2;
37231 :>0:r1=0; 0:r3=1; 1:r3=1; 2:r3=1; x=2;
79340 :>0:r1=0; 0:r3=2; 1:r3=1; 2:r3=1; x=2;
5752 :>0:r1=0; 0:r3=2; 1:r3=2; 2:r3=1; x=2;
102175:>0:r1=0; 0:r3=1; 1:r3=1; 2:r3=0; x=1;
74312 :>0:r1=0; 0:r3=0; 1:r3=1; 2:r3=1; x=1;
85181 :>0:r1=1; 0:r3=2; 1:r3=2; 2:r3=1; x=2;
37110 :>0:r1=1; 0:r3=1; 1:r3=1; 2:r3=1; x=1;
45142 :>0:r1=0; 0:r3=0; 1:r3=1; 2:r3=1; x=2;
12890 :>0:r1=0; 0:r3=2; 1:r3=1; 2:r3=1; x=1;
46987 :>0:r1=1; 0:r3=1; 1:r3=1; 2:r3=0; x=1;
105734:>0:r1=0; 0:r3=0; 1:r3=2; 2:r3=1; x=2;
214097:>0:r1=1; 0:r3=2; 1:r3=1; 2:r3=1; x=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 0:r3=0 /\ 1:r3=1 /\ 2:r3=0) is NOT validated
Hash=65c091346a8624e08c4c19cae62b6d6f
Cycle=Rfe SyncdRR Fre SyncsWR Fre SyncdWR Fre
Relax safe368 No
Safe=Fre SyncsWR SyncdWR ACSyncdRR
Time safe368 2.27
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe369.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe369
"SyncdWW Rfe SyncsRR Fre SyncdWR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,2 | li r1,1 ;
sync | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r2) | sync | sync ;
| lwz r3,0(r4) | li r3,1 ;
| | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 0:r3=1 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r8,2
_litmus_P1_1_: stw r8,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: lwz r10,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe369 Allowed
Histogram (17 states)
230 :>0:r1=0; 0:r3=2; 1:r3=0; x=1;
791 :>0:r1=1; 0:r3=1; 1:r3=0; x=1;
8082 :>0:r1=2; 0:r3=1; 1:r3=0; x=1;
13136 :>0:r1=0; 0:r3=0; 1:r3=0; x=1;
27372 :>0:r1=1; 0:r3=2; 1:r3=1; x=2;
2721 :>0:r1=1; 0:r3=1; 1:r3=1; x=2;
29875 :>0:r1=2; 0:r3=2; 1:r3=1; x=2;
52249 :>0:r1=1; 0:r3=1; 1:r3=1; x=1;
6509 :>0:r1=0; 0:r3=1; 1:r3=1; x=2;
84842 :>0:r1=2; 0:r3=1; 1:r3=1; x=1;
6372 :>0:r1=0; 0:r3=2; 1:r3=1; x=1;
44374 :>0:r1=0; 0:r3=1; 1:r3=1; x=1;
48510 :>0:r1=2; 0:r3=2; 1:r3=1; x=1;
43811 :>0:r1=0; 0:r3=2; 1:r3=1; x=2;
262762:>0:r1=2; 0:r3=2; 1:r3=0; x=1;
308893:>0:r1=0; 0:r3=0; 1:r3=1; x=1;
59471 :>0:r1=0; 0:r3=0; 1:r3=1; x=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 0:r3=1 /\ 1:r3=0) is NOT validated
Hash=b4fcbff55193e44be108c5956c1799a4
Cycle=SyncdWW Rfe SyncsRR Fre SyncdWR Fre
Relax safe369 No
Safe=Fre SyncsRR SyncdWR BCSyncdWW
Time safe369 1.76
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe370.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe370
"SyncsWW Rfe SyncdRW Rfe SyncsRR Fre SyncdWR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,1 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r2) | sync | sync ;
stw r3,0(r4) | | lwz r3,0(r4) | li r3,2 ;
| | | stw r3,0(r2) ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r9,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe370 Allowed
Histogram (83 states)
1 :>0:r1=2; 1:r1=0; 1:r3=1; 2:r3=1; x=1; y=2;
2 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=1; x=2; y=2;
1 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; x=1; y=2;
1 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1; x=1; y=2;
2 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=1; x=1; y=2;
17 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=2; x=2; y=2;
7 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; x=2; y=2;
33 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=1; x=1; y=2;
51 :>0:r1=2; 1:r1=2; 1:r3=2; 2:r3=2; x=2; y=2;
6 :>0:r1=2; 1:r1=0; 1:r3=2; 2:r3=0; x=1; y=2;
48 :>0:r1=2; 1:r1=1; 1:r3=2; 2:r3=2; x=2; y=2;
9 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=1; x=1; y=2;
33 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=0; x=1; y=2;
21 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; x=2; y=2;
55 :>0:r1=1; 1:r1=1; 1:r3=2; 2:r3=2; x=2; y=2;
166 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=2; x=1; y=2;
98 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; x=1; y=2;
742 :>0:r1=2; 1:r1=2; 1:r3=1; 2:r3=0; x=1; y=2;
99 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=0; x=1; y=2;
72 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=0; x=2; y=2;
64 :>0:r1=2; 1:r1=2; 1:r3=1; 2:r3=1; x=1; y=2;
91 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=0; x=1; y=2;
295 :>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=0; x=1; y=2;
436 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; x=2; y=2;
2266 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=2; x=1; y=2;
1881 :>0:r1=2; 1:r1=0; 1:r3=1; 2:r3=2; x=2; y=2;
489 :>0:r1=2; 1:r1=0; 1:r3=2; 2:r3=1; x=1; y=2;
149 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=2; y=2;
338 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=1; x=1; y=2;
315 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; x=1; y=2;
1319 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=2; x=2; y=2;
82 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=0; x=2; y=2;
7166 :>0:r1=2; 1:r1=2; 1:r3=2; 2:r3=0; x=1; y=2;
82 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=2; x=2; y=2;
3613 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=2; x=2; y=2;
2617 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=2; x=2; y=2;
52 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; x=2; y=2;
1956 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; x=1; y=2;
19671 :>0:r1=2; 1:r1=2; 1:r3=1; 2:r3=2; x=1; y=2;
4834 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=0; x=1; y=2;
2668 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; x=2; y=2;
3512 :>0:r1=2; 1:r1=0; 1:r3=2; 2:r3=2; x=2; y=2;
7886 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=2; x=1; y=2;
908 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=0; x=2; y=2;
5724 :>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=2; x=2; y=2;
4929 :>0:r1=2; 1:r1=0; 1:r3=1; 2:r3=2; x=1; y=2;
1457 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=0; x=1; y=2;
8053 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=2; x=2; y=2;
3021 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=2; x=1; y=2;
1854 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=2; x=1; y=2;
17320 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=2; x=2; y=2;
7342 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=1; y=2;
1257 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=2; y=2;
3215 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=2; x=1; y=2;
8420 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; x=1; y=2;
18429 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=0; x=1; y=2;
4286 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=0; x=1; y=2;
5134 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; x=1; y=2;
7538 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=2; x=1; y=2;
11558 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; x=1; y=2;
569 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=2; x=1; y=2;
2707 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=2; x=1; y=2;
44397 :>0:r1=2; 1:r1=2; 1:r3=2; 2:r3=2; x=1; y=2;
25533 :>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=1; x=1; y=2;
10767 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; x=2; y=2;
2788 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=2; x=1; y=2;
64748 :>0:r1=2; 1:r1=2; 1:r3=2; 2:r3=1; x=1; y=2;
16643 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=2; x=2; y=2;
49991 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=1; y=2;
41008 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=0; x=1; y=2;
2424 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; x=2; y=2;
66713 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; x=1; y=2;
70414 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=2; x=2; y=2;
70572 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=2; x=1; y=2;
13374 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=2; x=1; y=2;
131682:>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=2; x=1; y=2;
68905 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=0; x=1; y=2;
19635 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=2; x=2; y=2;
34698 :>0:r1=2; 1:r1=0; 1:r3=2; 2:r3=2; x=1; y=2;
13779 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=2; x=1; y=2;
5919 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; x=1; y=2;
69024 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=2; x=2; y=2;
19 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=2; x=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=1 /\ 2:r3=0) is NOT validated
Hash=26b40f2f2c5ce0fcfbf8cf3ede89e28a
Cycle=SyncsWW Rfe SyncdRW Rfe SyncsRR Fre SyncdWR Fre
Relax safe370 No
Safe=Fre SyncsRR SyncdWR BCSyncsWW BCSyncdRW
Time safe370 4.66
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe371.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe371
"SyncdWW Rfe SyncdRW Rfe SyncsRR Fre SyncdWR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,1 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r2) | sync | sync ;
stw r3,0(r4) | | lwz r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r9,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe371 Allowed
Histogram (39 states)
2 :>0:r1=1; 1:r1=1; 1:r3=2; 2:r3=1; y=2;
4 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=0; y=1;
3 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=0; y=1;
4 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=1; y=2;
70 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; y=2;
47 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; y=2;
143 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; y=2;
119 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=0; y=1;
599 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; y=2;
480 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=0; y=2;
858 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=0; y=1;
1907 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; y=2;
1826 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=1; y=1;
476 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=1; y=2;
1391 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; y=1;
468 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=0; y=2;
1916 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; y=1;
4727 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; y=1;
390 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=0; y=1;
1337 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1; y=1;
6372 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; y=1;
27501 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; y=1;
32614 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; y=1;
1077 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=0; y=2;
21237 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=0; y=1;
11025 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; y=1;
42907 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=1; y=1;
30782 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=1; y=1;
17708 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; y=2;
48190 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; y=1;
19967 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; y=2;
40679 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; y=2;
72534 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; y=2;
88724 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; y=1;
164384:>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=0; y=1;
47104 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; y=2;
234492:>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; y=1;
14167 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; y=1;
61769 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1 /\ 2:r3=0) is NOT validated
Hash=0c7abfe92ad05be2b4534b39af12271b
Cycle=SyncdWW Rfe SyncdRW Rfe SyncsRR Fre SyncdWR Fre
Relax safe371 No
Safe=Fre SyncsRR SyncdWR BCSyncdWW BCSyncdRW
Time safe371 2.94
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe372.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe372
"SyncsWW Rfe LwSyncdRR Fre SyncdWR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,1 | li r1,1 ;
lwsync | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r4) | sync | sync ;
| lwz r3,0(r4) | li r3,2 ;
| | stw r3,0(r2) ;
exists (y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r8,1
_litmus_P1_1_: stw r8,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: lwz r10,0(r2)
_litmus_P2_0_: li r9,1
_litmus_P2_1_: stw r9,0(r2)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,2
_litmus_P2_4_: stw r11,0(r2)
Test safe372 Allowed
Histogram (15 states)
2 :>0:r1=1; 0:r3=0; 1:r3=1; y=2;
51 :>0:r1=1; 0:r3=1; 1:r3=1; y=2;
582 :>0:r1=0; 0:r3=0; 1:r3=0; y=2;
15178 :>0:r1=0; 0:r3=0; 1:r3=1; y=2;
25159 :>0:r1=2; 0:r3=1; 1:r3=0; y=2;
26671 :>0:r1=2; 0:r3=0; 1:r3=2; y=2;
4491 :>0:r1=0; 0:r3=1; 1:r3=2; y=2;
31843 :>0:r1=0; 0:r3=1; 1:r3=1; y=2;
4516 :>0:r1=1; 0:r3=0; 1:r3=2; y=2;
60260 :>0:r1=0; 0:r3=1; 1:r3=0; y=2;
108395:>0:r1=1; 0:r3=1; 1:r3=2; y=2;
36807 :>0:r1=1; 0:r3=1; 1:r3=0; y=2;
76539 :>0:r1=2; 0:r3=1; 1:r3=1; y=2;
310415:>0:r1=0; 0:r3=0; 1:r3=2; y=2;
299091:>0:r1=2; 0:r3=1; 1:r3=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 1:r3=0) is NOT validated
Hash=12baba42abf9d356386289580ad5f74a
Cycle=SyncsWW Rfe LwSyncdRR Fre SyncdWR Fre
Relax safe372 No
Safe=Fre SyncdWR LwSyncdRR BCSyncsWW
Time safe372 1.67
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe373.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe373
"SyncdWW Rfe SyncsRW Rfe LwSyncdRR Fre SyncdWR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,1 ;
sync | lwsync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,2 | lwz r3,0(r4) | sync | sync ;
stw r3,0(r2) | | lwz r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: lwsync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe373 Allowed
Histogram (31 states)
10 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=0; x=2;
26 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=0; x=2;
1 :>0:r1=1; 1:r1=2; 1:r3=0; 2:r3=1; x=2;
333 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=0; x=2;
449 :>0:r1=1; 1:r1=1; 1:r3=0; 2:r3=1; x=2;
101 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; x=2;
15 :>0:r1=0; 1:r1=2; 1:r3=0; 2:r3=1; x=2;
321 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=0; x=2;
1341 :>0:r1=0; 1:r1=2; 1:r3=0; 2:r3=0; x=1;
121 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=1; x=1;
1133 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; x=1;
236 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=1; x=2;
5203 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=0; x=2;
1815 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; x=2;
6172 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; x=2;
3215 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=1; x=2;
19018 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; x=1;
25025 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; x=2;
52616 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; x=2;
42036 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; x=1;
21879 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=1;
43060 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; x=2;
83185 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=2;
142480:>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; x=1;
125209:>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1; x=2;
75310 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=0; x=1;
86022 :>0:r1=0; 1:r1=2; 1:r3=0; 2:r3=1; x=1;
133730:>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=1;
17435 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; x=2;
14365 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; x=1;
98138 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0 /\ 2:r3=0) is NOT validated
Hash=b5c500fbaf6afbf2dbdb8a3581c7a6fb
Cycle=SyncdWW Rfe SyncsRW Rfe LwSyncdRR Fre SyncdWR Fre
Relax safe373 No
Safe=Fre SyncdWR LwSyncdRR BCSyncsRW BCSyncdWW
Time safe373 2.60
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe374.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe374
"SyncdWW Rfe LwSyncdRR Fre SyncdWR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,1 | li r1,1 ;
lwsync | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r4) | sync | sync ;
| lwz r3,0(r4) | li r3,1 ;
| | stw r3,0(r4) ;
exists (0:r1=1 /\ 0:r3=0 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r8,1
_litmus_P1_1_: stw r8,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: lwz r10,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe374 Allowed
Histogram (7 states)
1611 :>0:r1=1; 0:r3=0; 1:r3=1;
1254 :>0:r1=1; 0:r3=1; 1:r3=0;
13670 :>0:r1=0; 0:r3=0; 1:r3=0;
315186:>0:r1=0; 0:r3=0; 1:r3=1;
236526:>0:r1=0; 0:r3=1; 1:r3=0;
241799:>0:r1=0; 0:r3=1; 1:r3=1;
189954:>0:r1=1; 0:r3=1; 1:r3=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 0:r3=0 /\ 1:r3=0) is NOT validated
Hash=914cc76398398c72bae53c8167b8ee96
Cycle=SyncdWW Rfe LwSyncdRR Fre SyncdWR Fre
Relax safe374 No
Safe=Fre SyncdWR LwSyncdRR BCSyncdWW
Time safe374 1.58
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe375.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe375
"SyncsWW Rfe SyncdRW Rfe LwSyncdRR Fre SyncdWR Fre"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,1 ;
sync | lwsync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r4) | sync | sync ;
stw r3,0(r4) | | lwz r3,0(r4) | li r3,2 ;
| | | stw r3,0(r2) ;
exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: lwsync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe375 Allowed
Histogram (30 states)
8 :>0:r1=1; 1:r1=1; 1:r3=0; 2:r3=2; z=2;
13 :>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=0; z=2;
7 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; z=2;
59 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=0; z=2;
10 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=0; z=2;
17 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; z=2;
142 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=1; z=2;
121 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=0; z=2;
480 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=0; z=2;
272 :>0:r1=2; 1:r1=0; 1:r3=1; 2:r3=0; z=2;
536 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=1; z=2;
18279 :>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=1; z=2;
4806 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=2; z=2;
3139 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; z=2;
39964 :>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=2; z=2;
13921 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; z=2;
15600 :>0:r1=2; 1:r1=0; 1:r3=1; 2:r3=1; z=2;
27602 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=0; z=2;
79086 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=2; z=2;
63939 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; z=2;
28013 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; z=2;
143217:>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=2; z=2;
19906 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=2; z=2;
152373:>0:r1=2; 1:r1=0; 1:r3=1; 2:r3=2; z=2;
134464:>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; z=2;
84277 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=2; z=2;
92215 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=2; z=2;
3408 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=2; z=2;
63569 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; z=2;
10557 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=0) is NOT validated
Hash=934d1da7778c6ce70d60ae6c28f7bcb0
Cycle=SyncsWW Rfe SyncdRW Rfe LwSyncdRR Fre SyncdWR Fre
Relax safe375 No
Safe=Fre SyncdWR LwSyncdRR BCSyncsWW BCSyncdRW
Time safe375 2.53
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe376.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe376
"SyncdWW Rfe SyncdRW Rfe LwSyncdRR Fre SyncdWR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,1 ;
sync | lwsync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r4) | sync | sync ;
stw r3,0(r4) | | lwz r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (0:r1=1 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: lwsync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe376 Allowed
Histogram (15 states)
1 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=0;
7 :>0:r1=1; 1:r1=1; 1:r3=0; 2:r3=1;
5 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=0;
55 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=0;
1718 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1;
3493 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=0;
8769 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=1;
9163 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0;
56862 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1;
25004 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0;
62465 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1;
209629:>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1;
164539:>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0;
281551:>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1;
176739:>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=0) is NOT validated
Hash=0db4720d9caff69dedb4d3b3c0405f66
Cycle=SyncdWW Rfe SyncdRW Rfe LwSyncdRR Fre SyncdWR Fre
Relax safe376 No
Safe=Fre SyncdWR LwSyncdRR BCSyncdWW BCSyncdRW
Time safe376 2.14
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe377.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe377
"SyncdWW Rfe LwSyncsRR Fre SyncdWR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,2 | li r1,1 ;
lwsync | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r2) | sync | sync ;
| lwz r3,0(r4) | li r3,1 ;
| | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 0:r3=1 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r8,2
_litmus_P1_1_: stw r8,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: lwz r10,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe377 Allowed
Histogram (17 states)
5 :>0:r1=2; 0:r3=1; 1:r3=0; x=1;
61 :>0:r1=0; 0:r3=2; 1:r3=1; x=2;
7 :>0:r1=0; 0:r3=1; 1:r3=1; x=2;
75 :>0:r1=1; 0:r3=2; 1:r3=1; x=2;
339 :>0:r1=2; 0:r3=1; 1:r3=1; x=1;
530 :>0:r1=0; 0:r3=1; 1:r3=1; x=1;
814 :>0:r1=1; 0:r3=1; 1:r3=0; x=1;
364 :>0:r1=0; 0:r3=2; 1:r3=1; x=1;
42 :>0:r1=0; 0:r3=2; 1:r3=0; x=1;
13823 :>0:r1=0; 0:r3=0; 1:r3=0; x=1;
87267 :>0:r1=0; 0:r3=0; 1:r3=1; x=2;
36293 :>0:r1=1; 0:r3=1; 1:r3=1; x=2;
35643 :>0:r1=2; 0:r3=2; 1:r3=1; x=2;
164556:>0:r1=2; 0:r3=2; 1:r3=1; x=1;
263528:>0:r1=2; 0:r3=2; 1:r3=0; x=1;
317689:>0:r1=0; 0:r3=0; 1:r3=1; x=1;
78964 :>0:r1=1; 0:r3=1; 1:r3=1; x=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 0:r3=1 /\ 1:r3=0) is NOT validated
Hash=1496b573a65c571579593d81fcca73ee
Cycle=SyncdWW Rfe LwSyncsRR Fre SyncdWR Fre
Relax safe377 No
Safe=Fre SyncdWR LwSyncsRR BCSyncdWW
Time safe377 1.75
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe378.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe378
"SyncsWW Rfe SyncdRW Rfe LwSyncsRR Fre SyncdWR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,1 ;
sync | lwsync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r2) | sync | sync ;
stw r3,0(r4) | | lwz r3,0(r4) | li r3,2 ;
| | | stw r3,0(r2) ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: lwsync
_litmus_P1_2_: lwz r9,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe378 Allowed
Histogram (69 states)
2 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; x=2; y=2;
7 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=0; x=1; y=2;
2 :>0:r1=2; 1:r1=0; 1:r3=1; 2:r3=1; x=1; y=2;
1 :>0:r1=2; 1:r1=0; 1:r3=1; 2:r3=2; x=2; y=2;
3 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=2; x=2; y=2;
4 :>0:r1=2; 1:r1=1; 1:r3=2; 2:r3=2; x=2; y=2;
11 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; x=1; y=2;
6 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; x=2; y=2;
115 :>0:r1=2; 1:r1=2; 1:r3=1; 2:r3=2; x=1; y=2;
20 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; x=1; y=2;
13 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=0; x=1; y=2;
10 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; x=1; y=2;
7 :>0:r1=2; 1:r1=0; 1:r3=2; 2:r3=1; x=1; y=2;
7 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=1; x=1; y=2;
23 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=2; x=1; y=2;
26 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=0; x=1; y=2;
130 :>0:r1=2; 1:r1=0; 1:r3=2; 2:r3=2; x=1; y=2;
70 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; x=2; y=2;
64 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=0; x=1; y=2;
131 :>0:r1=2; 1:r1=0; 1:r3=1; 2:r3=2; x=1; y=2;
126 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=2; x=2; y=2;
40 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=2; x=2; y=2;
130 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=2; x=2; y=2;
7 :>0:r1=1; 1:r1=1; 1:r3=2; 2:r3=2; x=2; y=2;
40 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; x=1; y=2;
84 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=2; x=2; y=2;
35 :>0:r1=2; 1:r1=0; 1:r3=2; 2:r3=2; x=2; y=2;
141 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=2; x=2; y=2;
115 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=1; x=1; y=2;
103 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=2; x=1; y=2;
35 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=1; y=2;
643 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=2; x=1; y=2;
63 :>0:r1=2; 1:r1=2; 1:r3=2; 2:r3=2; x=2; y=2;
33 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=2; x=1; y=2;
117 :>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=0; x=1; y=2;
1362 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=2; x=2; y=2;
21973 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=2; x=2; y=2;
656 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=2; x=2; y=2;
4307 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=2; x=1; y=2;
123 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=2; x=1; y=2;
43 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=2; x=1; y=2;
1849 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=2; x=1; y=2;
104 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; x=2; y=2;
768 :>0:r1=2; 1:r1=2; 1:r3=2; 2:r3=0; x=1; y=2;
2633 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; x=2; y=2;
2355 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=0; x=2; y=2;
43093 :>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=1; x=1; y=2;
13991 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; x=2; y=2;
1880 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=2; x=1; y=2;
2544 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=2; y=2;
2581 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=2; x=1; y=2;
2921 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=0; x=1; y=2;
23240 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; x=1; y=2;
78498 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=2; x=1; y=2;
13002 :>0:r1=2; 1:r1=2; 1:r3=2; 2:r3=1; x=1; y=2;
49857 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=2; x=1; y=2;
56587 :>0:r1=2; 1:r1=2; 1:r3=2; 2:r3=2; x=1; y=2;
73923 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=2; x=2; y=2;
139176:>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=0; x=1; y=2;
46243 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=1; y=2;
35430 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; x=1; y=2;
121621:>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=2; x=1; y=2;
27814 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=0; x=1; y=2;
59840 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=2; x=2; y=2;
11265 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=2; x=1; y=2;
44706 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; x=1; y=2;
19600 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; x=1; y=2;
71326 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=2; x=2; y=2;
22325 :>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=2; x=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=1 /\ 2:r3=0) is NOT validated
Hash=90f40e6a6735b1bd8a262c977e8563ef
Cycle=SyncsWW Rfe SyncdRW Rfe LwSyncsRR Fre SyncdWR Fre
Relax safe378 No
Safe=Fre SyncdWR LwSyncsRR BCSyncsWW BCSyncdRW
Time safe378 4.09
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe379.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe379
"SyncdWW Rfe SyncdRW Rfe LwSyncsRR Fre SyncdWR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,1 ;
sync | lwsync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r2) | sync | sync ;
stw r3,0(r4) | | lwz r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: lwsync
_litmus_P1_2_: lwz r9,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe379 Allowed
Histogram (35 states)
1 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=0; y=2;
1 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; y=1;
1 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=0; y=1;
4 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=1; y=1;
1 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; y=2;
1 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=1; y=2;
16 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=0; y=1;
21 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; y=1;
10 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=0; y=1;
116 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=0; y=1;
62 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=0; y=1;
98 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; y=2;
16 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; y=1;
165 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=0; y=1;
352 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; y=2;
2173 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=1; y=1;
543 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; y=1;
1749 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; y=1;
438 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; y=2;
510 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; y=2;
1258 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; y=2;
998 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; y=2;
22166 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; y=1;
17252 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; y=1;
98473 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=1; y=1;
51791 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; y=2;
1931 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=0; y=2;
49568 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; y=1;
59451 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; y=2;
44620 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; y=1;
207191:>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=0; y=1;
143091:>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; y=2;
269992:>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; y=1;
1295 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1; y=1;
24645 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1 /\ 2:r3=0) is NOT validated
Hash=8f8a3fddb1ff64d42a29099027d029e3
Cycle=SyncdWW Rfe SyncdRW Rfe LwSyncsRR Fre SyncdWR Fre
Relax safe379 No
Safe=Fre SyncdWR LwSyncsRR BCSyncdWW BCSyncdRW
Time safe379 2.76
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe380.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe380
"SyncsWW Rfe DpdW Rfe SyncsRR Fre SyncdWR Fre"
{0:r2=y; 0:r5=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,1 ;
xor r3,r1,r1 | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r4,1 | lwz r3,0(r2) | sync | sync ;
stwx r4,r3,r5 | | lwz r3,0(r4) | li r3,2 ;
| | | stw r3,0(r2) ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: xor r11,r7,r7
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stwx r8,r11,r2
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r9,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe380 Allowed
Histogram (82 states)
1 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=1; x=1; y=2;
3 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1; x=1; y=2;
2 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=1; x=2; y=2;
7 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=1; x=1; y=2;
24 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=1; x=1; y=2;
2 :>0:r1=2; 1:r1=0; 1:r3=2; 2:r3=0; x=1; y=2;
2 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; x=2; y=2;
25 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; x=1; y=2;
27 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=0; x=1; y=2;
142 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; x=2; y=2;
1 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; x=2; y=2;
66 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=2; x=1; y=2;
241 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=0; x=1; y=2;
123 :>0:r1=2; 1:r1=0; 1:r3=2; 2:r3=1; x=1; y=2;
178 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=2; y=2;
57 :>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=0; x=1; y=2;
1017 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=2; x=2; y=2;
259 :>0:r1=2; 1:r1=2; 1:r3=1; 2:r3=0; x=1; y=2;
310 :>0:r1=2; 1:r1=2; 1:r3=1; 2:r3=1; x=1; y=2;
3852 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=2; x=2; y=2;
434 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=1; y=2;
5926 :>0:r1=2; 1:r1=2; 1:r3=2; 2:r3=2; x=2; y=2;
7 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=0; x=2; y=2;
128 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=1; x=1; y=2;
147 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; x=2; y=2;
2218 :>0:r1=2; 1:r1=1; 1:r3=2; 2:r3=2; x=2; y=2;
1477 :>0:r1=1; 1:r1=1; 1:r3=2; 2:r3=2; x=2; y=2;
40 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=0; x=1; y=2;
3701 :>0:r1=2; 1:r1=2; 1:r3=2; 2:r3=0; x=1; y=2;
1047 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=0; x=2; y=2;
444 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=2; x=1; y=2;
2583 :>0:r1=2; 1:r1=0; 1:r3=2; 2:r3=2; x=2; y=2;
1201 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=2; x=2; y=2;
1990 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=2; y=2;
153 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; x=1; y=2;
1669 :>0:r1=2; 1:r1=0; 1:r3=1; 2:r3=2; x=2; y=2;
1076 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=0; x=1; y=2;
18087 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=2; x=1; y=2;
1701 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=2; x=2; y=2;
852 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=2; x=2; y=2;
761 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=2; x=2; y=2;
8106 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; x=2; y=2;
51888 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; x=1; y=2;
7784 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=2; x=1; y=2;
978 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=2; x=1; y=2;
28519 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; x=2; y=2;
838 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=0; x=2; y=2;
84 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=2; x=1; y=2;
205 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; x=2; y=2;
2288 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=0; x=1; y=2;
1627 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=0; x=1; y=2;
144 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=2; x=1; y=2;
3386 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; x=1; y=2;
4808 :>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=1; x=1; y=2;
946 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; x=1; y=2;
5124 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; x=2; y=2;
688 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=2; x=1; y=2;
6344 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=2; x=1; y=2;
5390 :>0:r1=2; 1:r1=0; 1:r3=1; 2:r3=2; x=1; y=2;
15698 :>0:r1=2; 1:r1=2; 1:r3=1; 2:r3=2; x=1; y=2;
11826 :>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=2; x=2; y=2;
56547 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; x=1; y=2;
16803 :>0:r1=2; 1:r1=2; 1:r3=2; 2:r3=1; x=1; y=2;
2914 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=2; x=2; y=2;
7738 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=2; x=1; y=2;
90943 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=2; x=2; y=2;
6560 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=0; x=1; y=2;
17813 :>0:r1=2; 1:r1=2; 1:r3=2; 2:r3=2; x=1; y=2;
5311 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=2; x=1; y=2;
52338 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=0; x=1; y=2;
25751 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=0; x=1; y=2;
2009 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=2; x=1; y=2;
37733 :>0:r1=2; 1:r1=0; 1:r3=2; 2:r3=2; x=1; y=2;
66857 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=2; x=2; y=2;
72129 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=1; y=2;
2577 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; x=1; y=2;
77431 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=2; x=2; y=2;
112250:>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=2; x=1; y=2;
29187 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=2; x=1; y=2;
74290 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; x=1; y=2;
32630 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=2; x=2; y=2;
1537 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=2; x=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=1 /\ 2:r3=0) is NOT validated
Hash=2e5a31cb1f0f99918bde5297c13301b9
Cycle=SyncsWW Rfe DpdW Rfe SyncsRR Fre SyncdWR Fre
Relax safe380 No
Safe=Fre SyncdWR DpdW ACSyncsRR BCSyncsWW
Time safe380 4.57
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe381.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe381
"SyncdWW Rfe DpdW Rfe SyncsRR Fre SyncdWR Fre"
{0:r2=x; 0:r5=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,1 ;
xor r3,r1,r1 | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r4,1 | lwz r3,0(r2) | sync | sync ;
stwx r4,r3,r5 | | lwz r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: xor r11,r7,r7
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stwx r8,r11,r2
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r9,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe381 Allowed
Histogram (40 states)
1 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=0; y=1;
19 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=0; y=1;
16 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=1; y=2;
20 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=0; y=1;
127 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=0; y=1;
19 :>0:r1=1; 1:r1=1; 1:r3=2; 2:r3=1; y=2;
1573 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=0; y=1;
239 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; y=2;
45 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; y=2;
346 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=1; y=2;
65 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; y=2;
705 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=0; y=1;
122 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=0; y=2;
314 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; y=1;
3724 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; y=1;
2671 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; y=2;
2445 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1; y=1;
11194 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=0; y=2;
6210 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=0; y=2;
24902 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; y=1;
15730 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=1; y=1;
3512 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; y=2;
43233 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; y=1;
6447 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; y=1;
26119 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=1; y=1;
40437 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; y=2;
11547 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; y=2;
48896 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; y=1;
23926 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=0; y=1;
105833:>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; y=2;
13750 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; y=1;
59322 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; y=2;
43821 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; y=1;
69325 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=1; y=1;
66030 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; y=2;
67703 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; y=1;
119420:>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=0; y=1;
160135:>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; y=1;
14153 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; y=1;
5904 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1 /\ 2:r3=0) is NOT validated
Hash=181e475aeebed6696a91e282734dc9e5
Cycle=SyncdWW Rfe DpdW Rfe SyncsRR Fre SyncdWR Fre
Relax safe381 No
Safe=Fre SyncdWR DpdW ACSyncsRR BCSyncdWW
Time safe381 2.81
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe382.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe382
"LwSyncdWW Rfe SyncsRR Fre SyncdWR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,2 | li r1,1 ;
sync | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r2) | sync | lwsync ;
| lwz r3,0(r4) | li r3,1 ;
| | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 0:r3=1 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r8,2
_litmus_P1_1_: stw r8,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: lwz r10,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe382 Allowed
Histogram (18 states)
1 :>0:r1=0; 0:r3=1; 1:r3=0; x=1;
242 :>0:r1=0; 0:r3=2; 1:r3=0; x=1;
11076 :>0:r1=0; 0:r3=0; 1:r3=0; x=1;
3448 :>0:r1=0; 0:r3=2; 1:r3=1; x=1;
4456 :>0:r1=1; 0:r3=1; 1:r3=0; x=1;
10318 :>0:r1=2; 0:r3=1; 1:r3=0; x=1;
15852 :>0:r1=0; 0:r3=2; 1:r3=1; x=2;
108246:>0:r1=1; 0:r3=2; 1:r3=1; x=2;
133032:>0:r1=2; 0:r3=2; 1:r3=1; x=2;
5005 :>0:r1=0; 0:r3=1; 1:r3=1; x=2;
46651 :>0:r1=2; 0:r3=1; 1:r3=1; x=1;
22335 :>0:r1=1; 0:r3=1; 1:r3=1; x=1;
9844 :>0:r1=1; 0:r3=1; 1:r3=1; x=2;
34430 :>0:r1=2; 0:r3=2; 1:r3=1; x=1;
54566 :>0:r1=0; 0:r3=0; 1:r3=1; x=2;
251385:>0:r1=2; 0:r3=2; 1:r3=0; x=1;
276921:>0:r1=0; 0:r3=0; 1:r3=1; x=1;
12192 :>0:r1=0; 0:r3=1; 1:r3=1; x=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 0:r3=1 /\ 1:r3=0) is NOT validated
Hash=cde4d3133c7ff056c4eeb66df0ac9772
Cycle=LwSyncdWW Rfe SyncsRR Fre SyncdWR Fre
Relax safe382 No
Safe=Fre SyncdWR LwSyncdWW ACSyncsRR
Time safe382 1.71
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe383.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe383
"SyncsWW Rfe LwSyncdRW Rfe SyncsRR Fre SyncdWR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,1 ;
lwsync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r2) | sync | sync ;
stw r3,0(r4) | | lwz r3,0(r4) | li r3,2 ;
| | | stw r3,0(r2) ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r9,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe383 Allowed
Histogram (81 states)
3 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1; x=1; y=2;
1 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; x=2; y=2;
3 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=1; x=1; y=2;
4 :>0:r1=2; 1:r1=0; 1:r3=2; 2:r3=0; x=1; y=2;
164 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=0; x=1; y=2;
8 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; x=2; y=2;
8 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; x=2; y=2;
29 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; x=1; y=2;
36 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=0; x=2; y=2;
56 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=1; x=1; y=2;
1661 :>0:r1=2; 1:r1=2; 1:r3=1; 2:r3=1; x=1; y=2;
58 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=0; x=2; y=2;
2 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=1; x=1; y=2;
36 :>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=0; x=1; y=2;
829 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=0; x=1; y=2;
276 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=2; y=2;
1618 :>0:r1=2; 1:r1=2; 1:r3=1; 2:r3=0; x=1; y=2;
1520 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=2; x=2; y=2;
1216 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; x=1; y=2;
287 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; x=2; y=2;
1719 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=2; x=2; y=2;
308 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=1; x=1; y=2;
1147 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=1; y=2;
200 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; x=1; y=2;
1360 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=2; y=2;
3225 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=2; x=2; y=2;
1051 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=0; x=2; y=2;
13295 :>0:r1=2; 1:r1=2; 1:r3=2; 2:r3=0; x=1; y=2;
1227 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; x=2; y=2;
2902 :>0:r1=2; 1:r1=2; 1:r3=2; 2:r3=2; x=2; y=2;
19116 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=2; x=1; y=2;
6439 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; x=2; y=2;
642 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=2; x=1; y=2;
3532 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=0; x=1; y=2;
10503 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=2; x=1; y=2;
75 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; x=2; y=2;
6473 :>0:r1=2; 1:r1=0; 1:r3=1; 2:r3=2; x=1; y=2;
435 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; x=2; y=2;
31466 :>0:r1=2; 1:r1=2; 1:r3=1; 2:r3=2; x=1; y=2;
8335 :>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=1; x=1; y=2;
1802 :>0:r1=2; 1:r1=1; 1:r3=2; 2:r3=2; x=2; y=2;
10166 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=2; x=1; y=2;
3164 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=2; x=2; y=2;
24524 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=0; x=1; y=2;
10804 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=2; x=1; y=2;
2560 :>0:r1=2; 1:r1=0; 1:r3=1; 2:r3=2; x=2; y=2;
180 :>0:r1=2; 1:r1=0; 1:r3=2; 2:r3=1; x=1; y=2;
1442 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=0; x=1; y=2;
34 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=0; x=1; y=2;
16428 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=0; x=1; y=2;
4306 :>0:r1=2; 1:r1=0; 1:r3=2; 2:r3=2; x=2; y=2;
8442 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=2; x=2; y=2;
1954 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=2; x=1; y=2;
91398 :>0:r1=2; 1:r1=2; 1:r3=2; 2:r3=1; x=1; y=2;
2108 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=2; x=2; y=2;
17026 :>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=2; x=2; y=2;
1440 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=2; x=1; y=2;
24445 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=2; x=2; y=2;
1681 :>0:r1=1; 1:r1=1; 1:r3=2; 2:r3=2; x=2; y=2;
89397 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=2; x=2; y=2;
867 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=0; x=1; y=2;
876 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=2; x=1; y=2;
12659 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=2; x=1; y=2;
2876 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; x=1; y=2;
166 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=2; x=1; y=2;
30200 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=2; x=2; y=2;
64195 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; x=1; y=2;
25145 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=0; x=1; y=2;
12734 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=2; x=1; y=2;
16766 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; x=1; y=2;
40947 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=2; x=2; y=2;
73923 :>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=2; x=1; y=2;
47905 :>0:r1=2; 1:r1=2; 1:r3=2; 2:r3=2; x=1; y=2;
66713 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=1; y=2;
2682 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; x=1; y=2;
14667 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=2; x=2; y=2;
3592 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=2; x=1; y=2;
58792 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=2; x=1; y=2;
27560 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; x=1; y=2;
42670 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=2; x=2; y=2;
19499 :>0:r1=2; 1:r1=0; 1:r3=2; 2:r3=2; x=1; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=1 /\ 2:r3=0) is NOT validated
Hash=20cf9585e638733252fcaf756bc4f1d0
Cycle=SyncsWW Rfe LwSyncdRW Rfe SyncsRR Fre SyncdWR Fre
Relax safe383 No
Safe=Fre SyncdWR LwSyncdRW ACSyncsRR BCSyncsWW
Time safe383 4.26
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe384.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe384
"SyncdWW Rfe LwSyncdRW Rfe SyncsRR Fre SyncdWR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,1 ;
lwsync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r2) | sync | sync ;
stw r3,0(r4) | | lwz r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r9,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe384 Allowed
Histogram (41 states)
1 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=0; y=1;
1 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1; y=2;
22 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=0; y=1;
12 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=0; y=1;
59 :>0:r1=1; 1:r1=1; 1:r3=2; 2:r3=1; y=2;
88 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; y=2;
725 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; y=2;
122 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=1; y=2;
743 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; y=1;
352 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=1; y=2;
135 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=0; y=1;
565 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=0; y=1;
2741 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; y=1;
17591 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=1; y=1;
1206 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; y=2;
1409 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; y=2;
439 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=0; y=2;
4345 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=0; y=2;
2462 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=0; y=2;
64628 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; y=1;
14937 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=0; y=1;
63298 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; y=1;
16314 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; y=2;
36723 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; y=2;
20991 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=1; y=1;
39475 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=1; y=1;
1182 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=0; y=1;
17041 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; y=1;
90648 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; y=2;
64190 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; y=2;
35797 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; y=1;
27707 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; y=1;
16914 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; y=2;
146193:>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; y=1;
6010 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; y=1;
32141 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; y=1;
42036 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; y=1;
134988:>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=0; y=1;
92068 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; y=2;
3494 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1; y=1;
207 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1 /\ 2:r3=0) is NOT validated
Hash=561d2557fc820fa2f4979528275a4102
Cycle=SyncdWW Rfe LwSyncdRW Rfe SyncsRR Fre SyncdWR Fre
Relax safe384 No
Safe=Fre SyncdWR LwSyncdRW ACSyncsRR BCSyncdWW
Time safe384 2.76
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe385.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe385
"Rfe SyncdRW Rfe SyncsRR Fre SyncdWR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,1 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r2) | sync | ;
stw r3,0(r4) | | lwz r3,0(r4) | ;
exists (x=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r9,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
Test safe385 Allowed
Histogram (42 states)
1 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=0; x=1;
16 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; x=2;
63 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=0; x=2;
7 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; x=2;
83 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; x=2;
85 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=0; x=2;
60 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=0; x=1;
224 :>0:r1=1; 1:r1=1; 1:r3=2; 2:r3=1; x=2;
100 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=0; x=1;
399 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; x=1;
209 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1; x=2;
635 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=0; x=1;
194 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=1; x=2;
2213 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; x=2;
3893 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=1; x=2;
4842 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1; x=1;
3081 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; x=1;
10761 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; x=1;
335 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=0; x=2;
905 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=0; x=1;
18123 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=1;
21654 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; x=1;
9829 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; x=1;
2790 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=0; x=1;
10578 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; x=1;
40696 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=2;
35898 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=0; x=1;
39702 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=1; x=1;
18037 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=2;
25272 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; x=2;
8218 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=1; x=1;
49719 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; x=1;
29218 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; x=2;
86844 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=0; x=1;
34082 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; x=2;
9606 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; x=1;
54635 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; x=2;
39095 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=1; x=1;
74530 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=1;
54541 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=0; x=1;
50290 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; x=2;
258537:>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; x=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1 /\ 2:r3=0) is NOT validated
Hash=ab7f66ebc25074e68955d099d2d32e18
Cycle=Rfe SyncdRW Rfe SyncsRR Fre SyncdWR Fre
Relax safe385 No
Safe=Fre SyncdWR ACSyncsRR ACSyncdRW
Time safe385 2.60
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe386.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe386
"LwSyncdWW Rfe SyncdRW Rfe SyncsRR Fre SyncdWR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,1 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r2) | sync | lwsync ;
stw r3,0(r4) | | lwz r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r9,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe386 Allowed
Histogram (41 states)
2 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1; y=2;
5 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=0; y=1;
17 :>0:r1=1; 1:r1=1; 1:r3=2; 2:r3=1; y=2;
37 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=0; y=1;
120 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; y=2;
17 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=1; y=2;
97 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=0; y=1;
234 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; y=2;
693 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=1; y=2;
972 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; y=2;
1150 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; y=2;
185 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=0; y=1;
809 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=0; y=1;
582 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=0; y=2;
9963 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=0; y=1;
1375 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=0; y=2;
4361 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1; y=1;
11031 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; y=1;
62530 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=0; y=1;
39496 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; y=2;
569 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=0; y=2;
2391 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; y=1;
3774 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; y=1;
21409 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; y=1;
39490 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; y=1;
23538 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; y=2;
17277 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=1; y=1;
28807 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; y=2;
71146 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; y=1;
27602 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; y=2;
31165 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; y=1;
20790 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; y=1;
71195 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; y=2;
70385 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=1; y=1;
26192 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; y=1;
36970 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=1; y=1;
126230:>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=0; y=1;
43206 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; y=2;
185415:>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; y=1;
18704 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; y=1;
69 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1 /\ 2:r3=0) is NOT validated
Hash=ca99c927e0e7b416fe5a5abfbb9098be
Cycle=LwSyncdWW Rfe SyncdRW Rfe SyncsRR Fre SyncdWR Fre
Relax safe386 No
Safe=Fre SyncdWR LwSyncdWW ACSyncsRR ACSyncdRW
Time safe386 2.91
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe387.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe387
"LwSyncsWW Rfe SyncdRW Rfe SyncsRR Fre SyncdWR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 | li r1,1 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r2) | sync | lwsync ;
stw r3,0(r4) | | lwz r3,0(r4) | li r3,2 ;
| | | stw r3,0(r2) ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r9,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe387 Allowed
Histogram (77 states)
1 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=1; x=1; y=2;
4 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=2; x=2; y=2;
1 :>0:r1=2; 1:r1=2; 1:r3=1; 2:r3=1; x=1; y=2;
5 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; x=1; y=2;
13 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=2; x=2; y=2;
21 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=2; y=2;
25 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; x=2; y=2;
22 :>0:r1=2; 1:r1=0; 1:r3=2; 2:r3=0; x=1; y=2;
28 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=2; x=2; y=2;
67 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=0; x=1; y=2;
42 :>0:r1=2; 1:r1=0; 1:r3=2; 2:r3=1; x=1; y=2;
12 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=1; x=1; y=2;
60 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=2; x=1; y=2;
41 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=2; x=2; y=2;
20 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; x=2; y=2;
141 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=2; x=1; y=2;
12 :>0:r1=1; 1:r1=1; 1:r3=2; 2:r3=2; x=2; y=2;
141 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=2; x=1; y=2;
8 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=0; x=1; y=2;
26 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; x=2; y=2;
91 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=0; x=2; y=2;
239 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=2; x=2; y=2;
76 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=0; x=1; y=2;
224 :>0:r1=2; 1:r1=1; 1:r3=2; 2:r3=2; x=2; y=2;
326 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; x=2; y=2;
118 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=0; x=2; y=2;
1451 :>0:r1=2; 1:r1=0; 1:r3=1; 2:r3=2; x=2; y=2;
2309 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; x=1; y=2;
124 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=2; x=2; y=2;
694 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=1; y=2;
521 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=2; x=1; y=2;
942 :>0:r1=2; 1:r1=2; 1:r3=1; 2:r3=0; x=1; y=2;
143 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; x=2; y=2;
621 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; x=1; y=2;
196 :>0:r1=2; 1:r1=2; 1:r3=2; 2:r3=2; x=2; y=2;
753 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=0; x=1; y=2;
2799 :>0:r1=2; 1:r1=0; 1:r3=2; 2:r3=2; x=2; y=2;
117 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; x=2; y=2;
156 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=2; y=2;
503 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=0; x=2; y=2;
1380 :>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=1; x=1; y=2;
403 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=0; x=1; y=2;
14497 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=2; x=1; y=2;
16239 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; x=1; y=2;
617 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; x=1; y=2;
8735 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; x=1; y=2;
23810 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=2; x=1; y=2;
982 :>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=0; x=1; y=2;
28766 :>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=2; x=2; y=2;
55560 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=0; x=1; y=2;
1065 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; x=2; y=2;
5508 :>0:r1=2; 1:r1=0; 1:r3=1; 2:r3=2; x=1; y=2;
3101 :>0:r1=2; 1:r1=2; 1:r3=2; 2:r3=1; x=1; y=2;
28509 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=2; x=2; y=2;
2746 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; x=1; y=2;
12159 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=1; y=2;
2565 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=2; x=1; y=2;
11628 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=2; x=1; y=2;
4953 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=2; x=1; y=2;
39490 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=2; x=2; y=2;
34471 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=2; x=2; y=2;
15726 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=0; x=1; y=2;
36235 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=2; x=2; y=2;
51396 :>0:r1=2; 1:r1=2; 1:r3=2; 2:r3=0; x=1; y=2;
21732 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=2; x=2; y=2;
31265 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=0; x=1; y=2;
74186 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=2; x=1; y=2;
1088 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=2; x=1; y=2;
60693 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=2; x=2; y=2;
33687 :>0:r1=2; 1:r1=0; 1:r3=2; 2:r3=2; x=1; y=2;
34201 :>0:r1=2; 1:r1=2; 1:r3=2; 2:r3=2; x=1; y=2;
25580 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=2; x=1; y=2;
14605 :>0:r1=2; 1:r1=2; 1:r3=1; 2:r3=2; x=1; y=2;
50867 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; x=1; y=2;
26 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=0; x=1; y=2;
6357 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=2; x=1; y=2;
232079:>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=2; x=1; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=1 /\ 2:r3=0) is NOT validated
Hash=3c6a0d9eef64a415a242c59a41abd3a0
Cycle=LwSyncsWW Rfe SyncdRW Rfe SyncsRR Fre SyncdWR Fre
Relax safe387 No
Safe=Fre SyncdWR LwSyncsWW ACSyncsRR ACSyncdRW
Time safe387 4.35
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe388.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe388
"Rfe SyncdRR Fre SyncdWR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,1 | li r1,1 ;
sync | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r4) | sync | ;
| lwz r3,0(r4) | ;
exists (0:r1=1 /\ 0:r3=0 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r8,1
_litmus_P1_1_: stw r8,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: lwz r10,0(r2)
_litmus_P2_0_: li r9,1
_litmus_P2_1_: stw r9,0(r2)
Test safe388 Allowed
Histogram (7 states)
846 :>0:r1=0; 0:r3=0; 1:r3=0;
17313 :>0:r1=1; 0:r3=0; 1:r3=1;
42467 :>0:r1=1; 0:r3=1; 1:r3=0;
110461:>0:r1=0; 0:r3=1; 1:r3=0;
116541:>0:r1=0; 0:r3=1; 1:r3=1;
286862:>0:r1=0; 0:r3=0; 1:r3=1;
425510:>0:r1=1; 0:r3=1; 1:r3=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 0:r3=0 /\ 1:r3=0) is NOT validated
Hash=076a600d2e26ce3b77c4a4a3a29c0c1f
Cycle=Rfe SyncdRR Fre SyncdWR Fre
Relax safe388 No
Safe=Fre SyncdWR ACSyncdRR
Time safe388 1.35
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe389.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe389
"SyncsWR Fre Rfe SyncdRR Fre SyncdWR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | li r1,1 | li r1,2 ;
sync | stw r1,0(r2) | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r4) | sync | sync | ;
| lwz r3,0(r4) | lwz r3,0(r2) | ;
exists (y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 1:r3=0 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r10,1
_litmus_P1_1_: stw r10,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: lwz r8,0(r2)
_litmus_P2_0_: li r9,1
_litmus_P2_1_: stw r9,0(r2)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe389 Allowed
Histogram (43 states)
4 :>0:r1=0; 0:r3=0; 1:r3=0; 2:r3=1; y=2;
8 :>0:r1=1; 0:r3=1; 1:r3=1; 2:r3=2; y=2;
8 :>0:r1=1; 0:r3=1; 1:r3=2; 2:r3=2; y=2;
8 :>0:r1=2; 0:r3=1; 1:r3=1; 2:r3=2; y=2;
2 :>0:r1=1; 0:r3=0; 1:r3=2; 2:r3=2; y=2;
25 :>0:r1=0; 0:r3=0; 1:r3=0; 2:r3=1; y=1;
26 :>0:r1=1; 0:r3=0; 1:r3=1; 2:r3=1; y=2;
5 :>0:r1=1; 0:r3=1; 1:r3=0; 2:r3=2; y=2;
1 :>0:r1=0; 0:r3=1; 1:r3=1; 2:r3=2; y=2;
203 :>0:r1=2; 0:r3=0; 1:r3=2; 2:r3=2; y=2;
32 :>0:r1=0; 0:r3=0; 1:r3=0; 2:r3=2; y=2;
333 :>0:r1=2; 0:r3=1; 1:r3=0; 2:r3=1; y=2;
956 :>0:r1=0; 0:r3=1; 1:r3=0; 2:r3=1; y=2;
81 :>0:r1=2; 0:r3=0; 1:r3=2; 2:r3=1; y=1;
4597 :>0:r1=2; 0:r3=0; 1:r3=2; 2:r3=1; y=2;
3459 :>0:r1=1; 0:r3=1; 1:r3=0; 2:r3=1; y=1;
4732 :>0:r1=1; 0:r3=0; 1:r3=1; 2:r3=1; y=1;
2213 :>0:r1=0; 0:r3=0; 1:r3=1; 2:r3=1; y=2;
10235 :>0:r1=0; 0:r3=1; 1:r3=0; 2:r3=1; y=1;
416 :>0:r1=0; 0:r3=1; 1:r3=2; 2:r3=1; y=2;
3725 :>0:r1=0; 0:r3=1; 1:r3=2; 2:r3=1; y=1;
5358 :>0:r1=0; 0:r3=0; 1:r3=2; 2:r3=1; y=1;
2249 :>0:r1=0; 0:r3=1; 1:r3=1; 2:r3=1; y=2;
3920 :>0:r1=0; 0:r3=1; 1:r3=1; 2:r3=1; y=1;
2463 :>0:r1=2; 0:r3=1; 1:r3=0; 2:r3=2; y=2;
8575 :>0:r1=0; 0:r3=1; 1:r3=0; 2:r3=2; y=2;
9248 :>0:r1=2; 0:r3=1; 1:r3=0; 2:r3=1; y=1;
6734 :>0:r1=0; 0:r3=0; 1:r3=2; 2:r3=2; y=2;
54787 :>0:r1=1; 0:r3=0; 1:r3=2; 2:r3=1; y=2;
43158 :>0:r1=2; 0:r3=1; 1:r3=1; 2:r3=1; y=2;
52346 :>0:r1=1; 0:r3=1; 1:r3=2; 2:r3=1; y=2;
41797 :>0:r1=2; 0:r3=1; 1:r3=2; 2:r3=1; y=1;
55574 :>0:r1=2; 0:r3=1; 1:r3=1; 2:r3=1; y=1;
2231 :>0:r1=0; 0:r3=1; 1:r3=2; 2:r3=2; y=2;
27011 :>0:r1=1; 0:r3=1; 1:r3=0; 2:r3=1; y=2;
16688 :>0:r1=2; 0:r3=1; 1:r3=2; 2:r3=2; y=2;
23699 :>0:r1=1; 0:r3=1; 1:r3=2; 2:r3=1; y=1;
151881:>0:r1=2; 0:r3=1; 1:r3=2; 2:r3=1; y=2;
181218:>0:r1=0; 0:r3=0; 1:r3=1; 2:r3=1; y=1;
55259 :>0:r1=1; 0:r3=1; 1:r3=1; 2:r3=1; y=2;
158603:>0:r1=1; 0:r3=1; 1:r3=1; 2:r3=1; y=1;
50308 :>0:r1=0; 0:r3=0; 1:r3=2; 2:r3=1; y=2;
15824 :>0:r1=2; 0:r3=0; 1:r3=1; 2:r3=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 1:r3=0 /\ 2:r3=1) is NOT validated
Hash=e7b99cb82fe7b05fda509093150ac29d
Cycle=SyncsWR Fre Rfe SyncdRR Fre SyncdWR Fre
Relax safe389 No
Safe=Fre SyncsWR SyncdWR ACSyncdRR
Time safe389 2.71
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe390.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe390
"SyncsWW Rfe DpdW Rfe SyncdRR Fre SyncdWR Fre"
{0:r2=z; 0:r5=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,1 ;
xor r3,r1,r1 | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r4,1 | lwz r3,0(r4) | sync | sync ;
stwx r4,r3,r5 | | lwz r3,0(r4) | li r3,2 ;
| | | stw r3,0(r2) ;
exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: xor r11,r7,r7
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stwx r8,r11,r2
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe390 Allowed
Histogram (32 states)
1 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1; z=2;
6 :>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=0; z=2;
40 :>0:r1=1; 1:r1=1; 1:r3=0; 2:r3=2; z=2;
22 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; z=2;
775 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=0; z=2;
26 :>0:r1=2; 1:r1=1; 1:r3=0; 2:r3=2; z=2;
55 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=0; z=2;
578 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=1; z=2;
34 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; z=2;
302 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=0; z=2;
7139 :>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=1; z=2;
63 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=0; z=2;
621 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=1; z=2;
3502 :>0:r1=2; 1:r1=0; 1:r3=1; 2:r3=0; z=2;
3918 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; z=2;
8913 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=2; z=2;
88497 :>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=2; z=2;
60144 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=0; z=2;
5352 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=2; z=2;
13186 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; z=2;
41169 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=2; z=2;
106625:>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; z=2;
67165 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=2; z=2;
37767 :>0:r1=2; 1:r1=0; 1:r3=1; 2:r3=1; z=2;
79862 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=2; z=2;
182940:>0:r1=2; 1:r1=0; 1:r3=1; 2:r3=2; z=2;
16457 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; z=2;
118395:>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=2; z=2;
24743 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; z=2;
14148 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=2; z=2;
55117 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; z=2;
62438 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=0) is NOT validated
Hash=6e993e5c0e4e50e3f9254fadf98140c4
Cycle=SyncsWW Rfe DpdW Rfe SyncdRR Fre SyncdWR Fre
Relax safe390 No
Safe=Fre SyncdWR DpdW ACSyncdRR BCSyncsWW
Time safe390 2.59
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe391.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe391
"SyncdWW Rfe DpdW Rfe SyncdRR Fre SyncdWR Fre"
{0:r2=x; 0:r5=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,1 ;
xor r3,r1,r1 | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r4,1 | lwz r3,0(r4) | sync | sync ;
stwx r4,r3,r5 | | lwz r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (0:r1=1 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: xor r11,r7,r7
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stwx r8,r11,r2
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe391 Allowed
Histogram (14 states)
2 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=0;
31 :>0:r1=1; 1:r1=1; 1:r3=0; 2:r3=1;
48 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=0;
1530 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=0;
5153 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1;
10125 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1;
78696 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1;
106073:>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0;
117064:>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0;
12046 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0;
30671 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=1;
112159:>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1;
238709:>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1;
287693:>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=0) is NOT validated
Hash=523c74a2b17fb932be75402ef705796f
Cycle=SyncdWW Rfe DpdW Rfe SyncdRR Fre SyncdWR Fre
Relax safe391 No
Safe=Fre SyncdWR DpdW ACSyncdRR BCSyncdWW
Time safe391 2.13
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe392.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe392
"SyncdWW Rfe DpsW Rfe SyncdRR Fre SyncdWR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,1 ;
xor r3,r1,r1 | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r4,2 | lwz r3,0(r4) | sync | sync ;
stwx r4,r3,r2 | | lwz r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: xor r11,r8,r8
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stwx r9,r11,r2
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe392 Allowed
Histogram (31 states)
1 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=0; x=2;
7 :>0:r1=1; 1:r1=2; 1:r3=0; 2:r3=1; x=2;
12 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; x=2;
8 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=0; x=2;
1 :>0:r1=0; 1:r1=2; 1:r3=0; 2:r3=1; x=2;
23 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=0; x=2;
20 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=1; x=2;
13 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=0; x=2;
194 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=1; x=1;
300 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=0; x=2;
370 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; x=2;
1459 :>0:r1=1; 1:r1=1; 1:r3=0; 2:r3=1; x=2;
1038 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; x=2;
5429 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; x=1;
1852 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; x=2;
952 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; x=1;
255 :>0:r1=0; 1:r1=2; 1:r3=0; 2:r3=0; x=1;
1629 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; x=2;
29132 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; x=2;
39999 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1; x=2;
19154 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=1;
163028:>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=1;
27114 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=1; x=2;
56287 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; x=2;
114300:>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; x=1;
104228:>0:r1=0; 1:r1=2; 1:r3=0; 2:r3=1; x=1;
29197 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=2;
56780 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=0; x=1;
84231 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=2;
68859 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; x=1;
194128:>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; x=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0 /\ 2:r3=0) is NOT validated
Hash=08a57e374e13a3c9131e1500e079ec4f
Cycle=SyncdWW Rfe DpsW Rfe SyncdRR Fre SyncdWR Fre
Relax safe392 No
Safe=Fre SyncdWR DpsW ACSyncdRR BCSyncdWW
Time safe392 2.71
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe393.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe393
"LwSyncdWW Rfe SyncdRR Fre SyncdWR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,1 | li r1,1 ;
sync | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwsync ;
| lwz r3,0(r4) | li r3,1 ;
| | stw r3,0(r4) ;
exists (0:r1=1 /\ 0:r3=0 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r8,1
_litmus_P1_1_: stw r8,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: lwz r10,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe393 Allowed
Histogram (7 states)
846 :>0:r1=1; 0:r3=0; 1:r3=1;
7639 :>0:r1=1; 0:r3=1; 1:r3=0;
2266 :>0:r1=0; 0:r3=0; 1:r3=0;
256983:>0:r1=0; 0:r3=1; 1:r3=1;
165235:>0:r1=0; 0:r3=1; 1:r3=0;
268613:>0:r1=0; 0:r3=0; 1:r3=1;
298418:>0:r1=1; 0:r3=1; 1:r3=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 0:r3=0 /\ 1:r3=0) is NOT validated
Hash=63a6731d417549ee9da677e6fbf9d232
Cycle=LwSyncdWW Rfe SyncdRR Fre SyncdWR Fre
Relax safe393 No
Safe=Fre SyncdWR LwSyncdWW ACSyncdRR
Time safe393 1.59
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe394.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe394
"SyncsWW Rfe LwSyncdRW Rfe SyncdRR Fre SyncdWR Fre"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,1 ;
lwsync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r4) | sync | sync ;
stw r3,0(r4) | | lwz r3,0(r4) | li r3,2 ;
| | | stw r3,0(r2) ;
exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe394 Allowed
Histogram (32 states)
2 :>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=0; z=2;
36 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=0; z=2;
76 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; z=2;
26 :>0:r1=2; 1:r1=1; 1:r3=0; 2:r3=2; z=2;
7 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; z=2;
8 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1; z=2;
40 :>0:r1=1; 1:r1=1; 1:r3=0; 2:r3=2; z=2;
78 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=0; z=2;
195 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=0; z=2;
35 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=0; z=2;
2910 :>0:r1=2; 1:r1=0; 1:r3=1; 2:r3=0; z=2;
449 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=1; z=2;
447 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=1; z=2;
414 :>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=1; z=2;
10294 :>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=2; z=2;
28051 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=2; z=2;
50339 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=0; z=2;
74890 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=2; z=2;
9900 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; z=2;
28001 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; z=2;
108494:>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; z=2;
18437 :>0:r1=2; 1:r1=0; 1:r3=1; 2:r3=1; z=2;
110633:>0:r1=2; 1:r1=0; 1:r3=1; 2:r3=2; z=2;
53801 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=2; z=2;
13216 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=2; z=2;
69118 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; z=2;
34734 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=2; z=2;
41602 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; z=2;
118845:>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=2; z=2;
35410 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=2; z=2;
79643 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; z=2;
109869:>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=0) is NOT validated
Hash=38d0fedfec069a6bacabbd8de8a18466
Cycle=SyncsWW Rfe LwSyncdRW Rfe SyncdRR Fre SyncdWR Fre
Relax safe394 No
Safe=Fre SyncdWR LwSyncdRW ACSyncdRR BCSyncsWW
Time safe394 2.58
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe395.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe395
"SyncdWW Rfe LwSyncdRW Rfe SyncdRR Fre SyncdWR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,1 ;
lwsync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r4) | sync | sync ;
stw r3,0(r4) | | lwz r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (0:r1=1 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe395 Allowed
Histogram (15 states)
11 :>0:r1=1; 1:r1=1; 1:r3=0; 2:r3=1;
2 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=0;
5 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=0;
4 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=0;
634 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=0;
9655 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0;
6899 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=1;
9255 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1;
4031 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1;
120867:>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0;
138888:>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1;
248744:>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1;
265640:>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1;
115151:>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0;
80214 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=0) is NOT validated
Hash=55557284c4d8788436f1a32ed4e698b2
Cycle=SyncdWW Rfe LwSyncdRW Rfe SyncdRR Fre SyncdWR Fre
Relax safe395 No
Safe=Fre SyncdWR LwSyncdRW ACSyncdRR BCSyncdWW
Time safe395 2.12
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe396.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe396
"LwSyncsWW Rfe SyncdRR Fre SyncdWR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,1 | li r1,1 ;
sync | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwsync ;
| lwz r3,0(r4) | li r3,2 ;
| | stw r3,0(r2) ;
exists (y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r8,1
_litmus_P1_1_: stw r8,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: lwz r10,0(r2)
_litmus_P2_0_: li r9,1
_litmus_P2_1_: stw r9,0(r2)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r11,2
_litmus_P2_4_: stw r11,0(r2)
Test safe396 Allowed
Histogram (14 states)
1 :>0:r1=1; 0:r3=1; 1:r3=1; y=2;
89 :>0:r1=1; 0:r3=0; 1:r3=2; y=2;
535 :>0:r1=0; 0:r3=0; 1:r3=0; y=2;
936 :>0:r1=0; 0:r3=0; 1:r3=1; y=2;
11927 :>0:r1=2; 0:r3=1; 1:r3=1; y=2;
30473 :>0:r1=0; 0:r3=1; 1:r3=1; y=2;
29138 :>0:r1=2; 0:r3=0; 1:r3=2; y=2;
39370 :>0:r1=2; 0:r3=1; 1:r3=0; y=2;
15650 :>0:r1=1; 0:r3=1; 1:r3=0; y=2;
8630 :>0:r1=1; 0:r3=1; 1:r3=2; y=2;
50939 :>0:r1=0; 0:r3=1; 1:r3=2; y=2;
66541 :>0:r1=0; 0:r3=1; 1:r3=0; y=2;
304598:>0:r1=0; 0:r3=0; 1:r3=2; y=2;
441173:>0:r1=2; 0:r3=1; 1:r3=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 1:r3=0) is NOT validated
Hash=b760b07acd54c32e478bf4f6d24a0cae
Cycle=LwSyncsWW Rfe SyncdRR Fre SyncdWR Fre
Relax safe396 No
Safe=Fre SyncdWR LwSyncsWW ACSyncdRR
Time safe396 1.67
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe397.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe397
"SyncdWW Rfe LwSyncsRW Rfe SyncdRR Fre SyncdWR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,1 ;
lwsync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,2 | lwz r3,0(r4) | sync | sync ;
stw r3,0(r2) | | lwz r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe397 Allowed
Histogram (31 states)
3 :>0:r1=0; 1:r1=2; 1:r3=0; 2:r3=1; x=2;
4 :>0:r1=1; 1:r1=2; 1:r3=0; 2:r3=1; x=2;
1 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; x=2;
5 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=0; x=2;
136 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=0; x=2;
8 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=1; x=2;
74 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=1; x=1;
24 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=0; x=2;
79 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=0; x=2;
173 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; x=2;
36 :>0:r1=1; 1:r1=1; 1:r3=0; 2:r3=1; x=2;
595 :>0:r1=0; 1:r1=2; 1:r3=0; 2:r3=0; x=1;
9893 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; x=2;
1391 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; x=2;
4883 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=0; x=2;
10745 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; x=1;
7162 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; x=2;
45604 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=2;
22300 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=2;
53468 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=1; x=2;
53771 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; x=2;
10279 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; x=2;
82850 :>0:r1=0; 1:r1=2; 1:r3=0; 2:r3=1; x=1;
50507 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=1;
68569 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1; x=2;
39267 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; x=1;
193047:>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; x=1;
94727 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=0; x=1;
187173:>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=1;
60480 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; x=1;
2746 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; x=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0 /\ 2:r3=0) is NOT validated
Hash=42346c084e258ebcab64725248a77821
Cycle=SyncdWW Rfe LwSyncsRW Rfe SyncdRR Fre SyncdWR Fre
Relax safe397 No
Safe=Fre SyncdWR LwSyncsRW ACSyncdRR BCSyncdWW
Time safe397 2.68
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe398.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe398
"Rfe SyncsRW Rfe SyncdRR Fre SyncdWR Fre"
{0:r2=y; 1:r2=y; 1:r4=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,1 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,2 | lwz r3,0(r4) | sync | ;
stw r3,0(r2) | | lwz r3,0(r4) | ;
exists (y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
Test safe398 Allowed
Histogram (45 states)
1 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=1; y=2;
8 :>0:r1=0; 1:r1=2; 1:r3=0; 2:r3=2; y=1;
127 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=0; y=2;
775 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=2; y=2;
339 :>0:r1=0; 1:r1=2; 1:r3=0; 2:r3=2; y=2;
3269 :>0:r1=1; 1:r1=1; 1:r3=0; 2:r3=1; y=2;
464 :>0:r1=1; 1:r1=2; 1:r3=0; 2:r3=2; y=2;
2013 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; y=2;
5519 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=2; y=1;
20591 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; y=2;
3577 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; y=1;
1321 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=2; y=1;
13364 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; y=2;
16434 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=2; y=2;
10215 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=1; y=1;
8059 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=2; y=2;
577 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=2; y=2;
10981 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=0; y=2;
3233 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=2; y=2;
3549 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=1; y=2;
13955 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; y=1;
11563 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=0; y=2;
366 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=0; y=2;
3625 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; y=2;
1762 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; y=1;
1780 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; y=1;
44278 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=0; y=2;
42685 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; y=2;
49892 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; y=2;
5706 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=2; y=1;
75189 :>0:r1=0; 1:r1=2; 1:r3=0; 2:r3=1; y=1;
12302 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=0; y=1;
32190 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; y=1;
28225 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=2; y=2;
99685 :>0:r1=1; 1:r1=1; 1:r3=0; 2:r3=2; y=2;
28733 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=2; y=2;
4016 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=2; y=1;
8050 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=2; y=2;
21980 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; y=2;
104884:>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; y=2;
99108 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=2; y=2;
37969 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; y=1;
1765 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; y=2;
114355:>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; y=1;
51521 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0 /\ 2:r3=0) is NOT validated
Hash=8e2e678b054b8acdfdb3413deee5b18e
Cycle=Rfe SyncsRW Rfe SyncdRR Fre SyncdWR Fre
Relax safe398 No
Safe=Fre SyncdWR ACSyncsRW ACSyncdRR
Time safe398 2.64
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe399.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe399
"LwSyncdWW Rfe SyncsRW Rfe SyncdRR Fre SyncdWR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,1 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,2 | lwz r3,0(r4) | sync | lwsync ;
stw r3,0(r2) | | lwz r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe399 Allowed
Histogram (31 states)
1 :>0:r1=1; 1:r1=2; 1:r3=0; 2:r3=1; x=2;
4 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=0; x=2;
81 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=1; x=2;
16 :>0:r1=0; 1:r1=2; 1:r3=0; 2:r3=1; x=2;
142 :>0:r1=0; 1:r1=2; 1:r3=0; 2:r3=0; x=1;
142 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=1; x=1;
274 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; x=2;
362 :>0:r1=1; 1:r1=1; 1:r3=0; 2:r3=1; x=2;
245 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=0; x=2;
916 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=0; x=2;
3500 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=0; x=2;
2405 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; x=2;
4233 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; x=1;
4933 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=0; x=2;
6616 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; x=2;
9745 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; x=1;
150007:>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1; x=2;
83869 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=2;
60245 :>0:r1=0; 1:r1=2; 1:r3=0; 2:r3=1; x=1;
35628 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; x=2;
49844 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; x=2;
153423:>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; x=1;
27915 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; x=1;
67433 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=0; x=1;
127630:>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=2;
18680 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; x=2;
31643 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; x=2;
33996 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=1;
85145 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=1;
11477 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=1; x=2;
29450 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; x=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0 /\ 2:r3=0) is NOT validated
Hash=2f7237037aa4f51ad02b48cb7c9e8ea1
Cycle=LwSyncdWW Rfe SyncsRW Rfe SyncdRR Fre SyncdWR Fre
Relax safe399 No
Safe=Fre SyncdWR LwSyncdWW ACSyncsRW ACSyncdRR
Time safe399 2.52
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe400.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe400
"Rfe SyncdRW Rfe SyncdRR Fre SyncdWR Fre"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,1 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r4) | sync | ;
stw r3,0(r4) | | lwz r3,0(r4) | ;
exists (0:r1=1 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
Test safe400 Allowed
Histogram (14 states)
11 :>0:r1=1; 1:r1=1; 1:r3=0; 2:r3=1;
397 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=0;
496 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=0;
5410 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=1;
7324 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0;
7159 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0;
116603:>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1;
296747:>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1;
71167 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=0;
81342 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1;
134141:>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0;
170845:>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1;
22715 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1;
85643 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=0) is NOT validated
Hash=b1e6489c60dec0b5914825234c3a5140
Cycle=Rfe SyncdRW Rfe SyncdRR Fre SyncdWR Fre
Relax safe400 No
Safe=Fre SyncdWR ACSyncdRW ACSyncdRR
Time safe400 1.74
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe401.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe401
"LwSyncdWW Rfe SyncdRW Rfe SyncdRR Fre SyncdWR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,1 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r4) | sync | lwsync ;
stw r3,0(r4) | | lwz r3,0(r4) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (0:r1=1 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe401 Allowed
Histogram (15 states)
3 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=0;
3 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=0;
24 :>0:r1=1; 1:r1=1; 1:r3=0; 2:r3=1;
14 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=0;
1970 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=1;
3849 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=0;
7068 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1;
4908 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0;
37700 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1;
170407:>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0;
164603:>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1;
143276:>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1;
230087:>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1;
183112:>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1;
52976 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=0) is NOT validated
Hash=1171ab5800354f226bce177019a7671f
Cycle=LwSyncdWW Rfe SyncdRW Rfe SyncdRR Fre SyncdWR Fre
Relax safe401 No
Safe=Fre SyncdWR LwSyncdWW ACSyncdRW ACSyncdRR
Time safe401 2.18
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe402.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe402
"LwSyncsWW Rfe SyncdRW Rfe SyncdRR Fre SyncdWR Fre"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,1 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r4) | sync | lwsync ;
stw r3,0(r4) | | lwz r3,0(r4) | li r3,2 ;
| | | stw r3,0(r2) ;
exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe402 Allowed
Histogram (28 states)
1 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=0; z=2;
1 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=1; z=2;
5 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=0; z=2;
23 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=0; z=2;
5 :>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=0; z=2;
109 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=0; z=2;
59 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=1; z=2;
7 :>0:r1=2; 1:r1=1; 1:r3=0; 2:r3=2; z=2;
363 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=2; z=2;
278 :>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=1; z=2;
4514 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=0; z=2;
6917 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=2; z=2;
6608 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; z=2;
18533 :>0:r1=2; 1:r1=0; 1:r3=1; 2:r3=0; z=2;
9093 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=0; z=2;
5819 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=0; z=2;
77748 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=2; z=2;
1678 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=2; z=2;
2359 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; z=2;
2600 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=2; z=2;
146615:>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=0; z=2;
2869 :>0:r1=2; 1:r1=0; 1:r3=1; 2:r3=1; z=2;
243020:>0:r1=2; 1:r1=0; 1:r3=1; 2:r3=2; z=2;
184208:>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=2; z=2;
192423:>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=2; z=2;
41655 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=2; z=2;
1595 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; z=2;
50895 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=0) is NOT validated
Hash=ef517883b08acadece6090a6239e6365
Cycle=LwSyncsWW Rfe SyncdRW Rfe SyncdRR Fre SyncdWR Fre
Relax safe402 No
Safe=Fre SyncdWR LwSyncsWW ACSyncdRW ACSyncdRR
Time safe402 2.51
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe403.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe403
"SyncsWW Rfe SyncdRR Fre SyncsWW Rfe SyncdRR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwz r3,0(r4) | sync ;
| li r3,2 | | li r3,2 ;
| stw r3,0(r2) | | stw r3,0(r2) ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe403 Allowed
Histogram (67 states)
1 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; x=2; y=2;
3 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=2; x=2; y=2;
3 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=1; x=2; y=2;
2 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; x=2; y=2;
4 :>0:r1=2; 0:r3=0; 2:r1=2; 2:r3=2; x=2; y=2;
1 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=1; x=2; y=2;
1 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=0; x=2; y=2;
14 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=2; x=2; y=2;
7 :>0:r1=1; 0:r3=0; 2:r1=2; 2:r3=2; x=2; y=2;
13 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=2; x=2; y=2;
12 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=1; x=2; y=2;
11 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=0; x=2; y=2;
17 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=0; x=2; y=2;
70 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=2;
17 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=1; x=2; y=2;
13 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=0; x=2; y=2;
18 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=1; x=2; y=2;
81 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=2;
89 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=0; x=2; y=2;
32 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=0; x=2; y=2;
197 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=1; x=2; y=2;
203 :>0:r1=2; 0:r3=0; 2:r1=1; 2:r3=2; x=2; y=2;
120 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=0; x=2; y=2;
6 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=0; x=2; y=2;
445 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=1; x=2; y=2;
144 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; x=2; y=2;
235 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=0; x=2; y=2;
256 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r3=2; x=2; y=2;
623 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=1; x=2; y=2;
1649 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=2;
1925 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=0; x=2; y=2;
6083 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r3=2; x=2; y=2;
5132 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=2; y=2;
2728 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; x=2; y=2;
2614 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=2; x=2; y=2;
4756 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=2; x=2; y=2;
3551 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; x=2; y=2;
4974 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=2; y=2;
8977 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=2; y=2;
19448 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=2;
6811 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; x=2; y=2;
9209 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=2;
10806 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=0; x=2; y=2;
40158 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; x=2; y=2;
4315 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=2; x=2; y=2;
3498 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; x=2; y=2;
1007 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; x=2; y=2;
509 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=0; x=2; y=2;
26539 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=2;
3105 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; x=2; y=2;
113716:>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=2;
12512 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=2; x=2; y=2;
60392 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=2;
29618 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; x=2; y=2;
48396 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=0; x=2; y=2;
4390 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=2; y=2;
52169 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=2;
42129 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; x=2; y=2;
46830 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=2; x=2; y=2;
86691 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=2; x=2; y=2;
51118 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=2;
92660 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; x=2; y=2;
21909 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=2; x=2; y=2;
14694 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; x=2; y=2;
115095:>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=2;
17123 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; x=2; y=2;
20126 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r3=0) is NOT validated
Hash=773a998d736d769c4b9dcce6efee4039
Cycle=SyncsWW Rfe SyncdRR Fre SyncsWW Rfe SyncdRR Fre
Relax safe403 No
Safe=Fre SyncdRR BCSyncsWW
Time safe403 3.89
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe404.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe404
"SyncdWW Rfe SyncdRR Fre SyncsWW Rfe SyncdRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwz r3,0(r4) | sync ;
| li r3,2 | | li r3,1 ;
| stw r3,0(r2) | | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe404 Allowed
Histogram (29 states)
2 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=0; y=2;
39 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=0; y=2;
56 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=0; y=2;
4 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; y=2;
39 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; y=2;
4 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=0; y=2;
568 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=0; y=2;
23 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=0; y=2;
19 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=0; y=2;
417 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=1; y=2;
377 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=1; y=2;
18626 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; y=2;
20994 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; y=2;
36641 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=1; y=2;
95560 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; y=2;
16897 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=0; y=2;
12144 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=1; y=2;
30235 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; y=2;
52172 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; y=2;
10925 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=0; y=2;
73864 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; y=2;
13632 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; y=2;
176015:>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=1; y=2;
138849:>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; y=2;
112969:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; y=2;
25238 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=1; y=2;
101220:>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=1; y=2;
4005 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=0; y=2;
58466 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=1; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r3=0) is NOT validated
Hash=83a1f4a24c99a4d4ab07a84c10c8607c
Cycle=SyncdWW Rfe SyncdRR Fre SyncsWW Rfe SyncdRR Fre
Relax safe404 No
Safe=Fre SyncdRR BCSyncsWW BCSyncdWW
Time safe404 2.43
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe405.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe405
"SyncsWW Rfe LwSyncdRR Fre SyncsWW Rfe SyncdRR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
lwsync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwz r3,0(r4) | sync ;
| li r3,2 | | li r3,2 ;
| stw r3,0(r2) | | stw r3,0(r2) ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe405 Allowed
Histogram (66 states)
2 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; x=2; y=2;
2 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=1; x=2; y=2;
2 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=2; x=2; y=2;
4 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=2; x=2; y=2;
4 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=0; x=2; y=2;
2 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=0; x=2; y=2;
3 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=1; x=2; y=2;
2 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=1; x=2; y=2;
21 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=2;
12 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=1; x=2; y=2;
12 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=1; x=2; y=2;
11 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=0; x=2; y=2;
7 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; x=2; y=2;
15 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=0; x=2; y=2;
20 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=2;
26 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=0; x=2; y=2;
5 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=2; x=2; y=2;
44 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=0; x=2; y=2;
328 :>0:r1=2; 0:r3=0; 2:r1=2; 2:r3=2; x=2; y=2;
148 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=0; x=2; y=2;
661 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=2;
451 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=1; x=2; y=2;
1066 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=1; x=2; y=2;
756 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=1; x=2; y=2;
805 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; x=2; y=2;
865 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=2;
322 :>0:r1=1; 0:r3=0; 2:r1=2; 2:r3=2; x=2; y=2;
2281 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=0; x=2; y=2;
1507 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=0; x=2; y=2;
9903 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=2; y=2;
3155 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; x=2; y=2;
7204 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=2; x=2; y=2;
4384 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r3=2; x=2; y=2;
4764 :>0:r1=2; 0:r3=0; 2:r1=1; 2:r3=2; x=2; y=2;
605 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; x=2; y=2;
9604 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; x=2; y=2;
8508 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; x=2; y=2;
9888 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=0; x=2; y=2;
24200 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r3=2; x=2; y=2;
11060 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=2; x=2; y=2;
991 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=2; x=2; y=2;
56635 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; x=2; y=2;
474 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=0; x=2; y=2;
30468 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=2;
12553 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; x=2; y=2;
33901 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=2;
35568 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=2;
50757 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=2;
17031 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=2;
4843 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; x=2; y=2;
16758 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; x=2; y=2;
35384 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=2; y=2;
47605 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=2;
1191 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; x=2; y=2;
44792 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=2; y=2;
32921 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=2; x=2; y=2;
2655 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; x=2; y=2;
21418 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=2;
12450 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=2; y=2;
46746 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; x=2; y=2;
55212 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=2; x=2; y=2;
34462 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=2; x=2; y=2;
34172 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=0; x=2; y=2;
108979:>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=2;
91926 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; x=2; y=2;
67449 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=2; x=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r3=0) is NOT validated
Hash=cc0f84500b43a6adf9c0bfde8f326db3
Cycle=SyncsWW Rfe LwSyncdRR Fre SyncsWW Rfe SyncdRR Fre
Relax safe405 No
Safe=Fre SyncdRR LwSyncdRR BCSyncsWW
Time safe405 3.90
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe406.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe406
"SyncdWW Rfe LwSyncdRR Fre SyncsWW Rfe SyncdRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
lwsync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwz r3,0(r4) | sync ;
| li r3,2 | | li r3,1 ;
| stw r3,0(r2) | | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe406 Allowed
Histogram (31 states)
8 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; y=2;
5 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=0; y=2;
5 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; y=2;
6 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=0; y=2;
21 :>0:r1=1; 0:r3=0; 2:r1=2; 2:r3=1; y=2;
46 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; y=2;
59 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=0; y=2;
64 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r3=1; y=2;
7 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=0; y=2;
95 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=0; y=2;
898 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=0; y=2;
2089 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=1; y=2;
2661 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=0; y=2;
34193 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=1; y=2;
2524 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=1; y=2;
7349 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=0; y=2;
13215 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; y=2;
42413 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; y=2;
88182 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; y=2;
35282 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=1; y=2;
15086 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=1; y=2;
45023 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=1; y=2;
46334 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; y=2;
144831:>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; y=2;
39641 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; y=2;
76052 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; y=2;
136152:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; y=2;
222772:>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=1; y=2;
22447 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=1; y=2;
8539 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=0; y=2;
14001 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r3=0) is NOT validated
Hash=bd418425ac491871263c6dd1865c651d
Cycle=SyncdWW Rfe LwSyncdRR Fre SyncsWW Rfe SyncdRR Fre
Relax safe406 No
Safe=Fre SyncdRR LwSyncdRR BCSyncsWW BCSyncdWW
Time safe406 2.60
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe407.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe407
"Rfe SyncdRR Fre SyncsWW Rfe SyncdRR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwz r3,0(r4) | ;
| li r3,2 | | ;
| stw r3,0(r2) | | ;
exists (x=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
Test safe407 Allowed
Histogram (31 states)
3 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; x=2;
13 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=0; x=2;
15 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; x=2;
45 :>0:r1=1; 0:r3=0; 2:r1=2; 2:r3=1; x=2;
22 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=0; x=2;
90 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=0; x=2;
430 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r3=1; x=2;
437 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=0; x=2;
105 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=0; x=2;
1774 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=0; x=2;
24921 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; x=2;
271 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=0; x=2;
9135 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=1; x=2;
5899 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=1; x=2;
8415 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=2;
3410 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=2;
5066 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; x=2;
7413 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; x=2;
14147 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; x=2;
4402 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; x=2;
39472 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=1; x=2;
69096 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=2;
44502 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=0; x=2;
275886:>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=1; x=2;
53327 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=1; x=2;
157126:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; x=2;
122565:>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=1; x=2;
8660 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=0; x=2;
134565:>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=2;
6381 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=1; x=2;
2407 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=1; x=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r3=0) is NOT validated
Hash=ff322dd353bba8c2b8877c28629f2e3a
Cycle=Rfe SyncdRR Fre SyncsWW Rfe SyncdRR Fre
Relax safe407 No
Safe=Fre SyncdRR ACSyncdRR BCSyncsWW
Time safe407 2.24
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe408.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe408
"LwSyncdWW Rfe SyncdRR Fre SyncsWW Rfe SyncdRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwz r3,0(r4) | lwsync ;
| li r3,2 | | li r3,1 ;
| stw r3,0(r2) | | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe408 Allowed
Histogram (32 states)
1 :>0:r1=1; 0:r3=0; 2:r1=2; 2:r3=1; y=2;
1 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=0; y=2;
8 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; y=2;
17 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r3=1; y=2;
23 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; y=2;
29 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; y=2;
22 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=0; y=2;
36 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=0; y=2;
15 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=0; y=2;
186 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=0; y=2;
101 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=0; y=2;
846 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=1; y=2;
14164 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=1; y=2;
2761 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=1; y=2;
5652 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; y=2;
23494 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=0; y=2;
91152 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; y=2;
17256 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=0; y=2;
84755 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; y=2;
41467 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; y=2;
55296 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; y=2;
45674 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; y=2;
63656 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=1; y=2;
53653 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=1; y=2;
21794 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; y=2;
162907:>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=1; y=2;
109771:>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; y=2;
594 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=0; y=2;
52480 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=1; y=2;
82641 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=1; y=2;
21249 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=0; y=2;
48299 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r3=0) is NOT validated
Hash=c0eb8c174d95ad46bdc48cdd4f4b1f57
Cycle=LwSyncdWW Rfe SyncdRR Fre SyncsWW Rfe SyncdRR Fre
Relax safe408 No
Safe=Fre SyncdRR LwSyncdWW ACSyncdRR BCSyncsWW
Time safe408 2.52
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe409.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe409
"LwSyncsWW Rfe SyncdRR Fre SyncsWW Rfe SyncdRR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwz r3,0(r4) | lwsync ;
| li r3,2 | | li r3,2 ;
| stw r3,0(r2) | | stw r3,0(r2) ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe409 Allowed
Histogram (58 states)
2 :>0:r1=1; 0:r3=0; 2:r1=2; 2:r3=2; x=2; y=2;
2 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=1; x=2; y=2;
6 :>0:r1=2; 0:r3=0; 2:r1=2; 2:r3=2; x=2; y=2;
5 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=0; x=2; y=2;
2 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=1; x=2; y=2;
13 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=2; x=2; y=2;
6 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=0; x=2; y=2;
5 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=0; x=2; y=2;
25 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r3=2; x=2; y=2;
46 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=2; y=2;
11 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=1; x=2; y=2;
14 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=1; x=2; y=2;
102 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; x=2; y=2;
22 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=0; x=2; y=2;
173 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; x=2; y=2;
53 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=0; x=2; y=2;
354 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; x=2; y=2;
478 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; x=2; y=2;
324 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; x=2; y=2;
264 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=2; x=2; y=2;
21 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=1; x=2; y=2;
710 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=2; y=2;
168 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=2; y=2;
11 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=2; x=2; y=2;
4697 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=2;
819 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=0; x=2; y=2;
154 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=0; x=2; y=2;
274 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=2;
2092 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; x=2; y=2;
894 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=2;
208 :>0:r1=2; 0:r3=0; 2:r1=1; 2:r3=2; x=2; y=2;
5276 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r3=2; x=2; y=2;
2961 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; x=2; y=2;
55778 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; x=2; y=2;
7284 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=2; x=2; y=2;
497 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=0; x=2; y=2;
12544 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=2;
6659 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=2; y=2;
1407 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; x=2; y=2;
1488 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=2; x=2; y=2;
127 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=0; x=2; y=2;
24907 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=2;
47749 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=0; x=2; y=2;
8392 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=2;
45642 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=2; x=2; y=2;
94380 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=2;
27001 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=2; x=2; y=2;
10204 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=0; x=2; y=2;
7577 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; x=2; y=2;
13560 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=2; x=2; y=2;
79510 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=2;
106426:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; x=2; y=2;
52995 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=2;
49799 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; x=2; y=2;
100220:>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=2; x=2; y=2;
6420 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=2;
27440 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; x=2; y=2;
191802:>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r3=0) is NOT validated
Hash=4b9f110b2bc6c8b2294b8062abac3790
Cycle=LwSyncsWW Rfe SyncdRR Fre SyncsWW Rfe SyncdRR Fre
Relax safe409 No
Safe=Fre SyncdRR LwSyncsWW ACSyncdRR BCSyncsWW
Time safe409 3.57
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe410.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe410
"SyncdWW Rfe SyncsRW Rfe SyncdRR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | sync | stw r1,0(r2) ;
li r3,2 | lwz r3,0(r4) | sync ;
stw r3,0(r2) | | li r3,1 ;
| | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe410 Allowed
Histogram (13 states)
1673 :>0:r1=1; 1:r1=2; 1:r3=1; x=2;
935 :>0:r1=1; 1:r1=0; 1:r3=0; x=2;
24663 :>0:r1=0; 1:r1=2; 1:r3=0; x=1;
27239 :>0:r1=0; 1:r1=0; 1:r3=0; x=2;
38072 :>0:r1=0; 1:r1=1; 1:r3=1; x=2;
4106 :>0:r1=0; 1:r1=2; 1:r3=1; x=2;
53306 :>0:r1=1; 1:r1=1; 1:r3=1; x=2;
29621 :>0:r1=0; 1:r1=0; 1:r3=1; x=1;
176008:>0:r1=0; 1:r1=0; 1:r3=1; x=2;
288486:>0:r1=0; 1:r1=2; 1:r3=1; x=1;
262037:>0:r1=0; 1:r1=0; 1:r3=0; x=1;
9235 :>0:r1=0; 1:r1=1; 1:r3=1; x=1;
84619 :>0:r1=1; 1:r1=0; 1:r3=1; x=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0) is NOT validated
Hash=6b53e71a37d0bf60762e2484df812ea8
Cycle=SyncdWW Rfe SyncsRW Rfe SyncdRR Fre
Relax safe410 No
Safe=Fre SyncdRR BCSyncsRW BCSyncdWW
Time safe410 1.59
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe411.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe411
"SyncsWR Fre SyncdWW Rfe SyncsRW Rfe SyncdRR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
li r1,2 | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
stw r1,0(r2) | sync | sync | stw r1,0(r2) ;
sync | li r3,2 | lwz r3,0(r4) | sync ;
li r3,1 | stw r3,0(r2) | | lwz r3,0(r2) ;
stw r3,0(r4) | | | ;
exists (x=2 /\ y=2 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0 /\ 3:r3=1)
Generated assembler
_litmus_P0_0_: li r11,2
_litmus_P0_1_: stw r11,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r10,1
_litmus_P0_4_: stw r10,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: lwz r10,0(r2)
Test safe411 Allowed
Histogram (53 states)
1 :>1:r1=0; 2:r1=2; 2:r3=1; 3:r3=2; x=1; y=2;
2 :>1:r1=1; 2:r1=2; 2:r3=2; 3:r3=1; x=2; y=2;
10 :>1:r1=1; 2:r1=0; 2:r3=0; 3:r3=1; x=2; y=2;
12 :>1:r1=0; 2:r1=2; 2:r3=2; 3:r3=1; x=2; y=1;
7 :>1:r1=1; 2:r1=0; 2:r3=1; 3:r3=1; x=2; y=2;
3 :>1:r1=0; 2:r1=0; 2:r3=1; 3:r3=2; x=1; y=2;
11 :>1:r1=1; 2:r1=2; 2:r3=2; 3:r3=1; x=2; y=1;
147 :>1:r1=1; 2:r1=1; 2:r3=2; 3:r3=1; x=2; y=1;
468 :>1:r1=1; 2:r1=1; 2:r3=2; 3:r3=1; x=2; y=2;
214 :>1:r1=0; 2:r1=2; 2:r3=2; 3:r3=2; x=2; y=2;
363 :>1:r1=0; 2:r1=0; 2:r3=1; 3:r3=1; x=2; y=2;
22 :>1:r1=1; 2:r1=0; 2:r3=0; 3:r3=2; x=2; y=2;
1277 :>1:r1=0; 2:r1=1; 2:r3=2; 3:r3=1; x=1; y=2;
653 :>1:r1=0; 2:r1=2; 2:r3=2; 3:r3=1; x=2; y=2;
275 :>1:r1=1; 2:r1=1; 2:r3=2; 3:r3=2; x=2; y=2;
3993 :>1:r1=0; 2:r1=0; 2:r3=0; 3:r3=2; x=2; y=2;
407 :>1:r1=0; 2:r1=1; 2:r3=2; 3:r3=2; x=2; y=2;
187 :>1:r1=0; 2:r1=1; 2:r3=2; 3:r3=2; x=1; y=2;
1666 :>1:r1=1; 2:r1=0; 2:r3=2; 3:r3=2; x=2; y=2;
192 :>1:r1=0; 2:r1=0; 2:r3=0; 3:r3=1; x=2; y=2;
1188 :>1:r1=0; 2:r1=1; 2:r3=2; 3:r3=1; x=2; y=2;
3984 :>1:r1=1; 2:r1=0; 2:r3=2; 3:r3=1; x=2; y=1;
2438 :>1:r1=1; 2:r1=2; 2:r3=1; 3:r3=1; x=2; y=1;
16513 :>1:r1=1; 2:r1=0; 2:r3=2; 3:r3=1; x=2; y=2;
2543 :>1:r1=0; 2:r1=2; 2:r3=0; 3:r3=1; x=1; y=2;
111 :>1:r1=0; 2:r1=1; 2:r3=2; 3:r3=1; x=2; y=1;
7784 :>1:r1=0; 2:r1=2; 2:r3=0; 3:r3=2; x=1; y=2;
32 :>1:r1=0; 2:r1=1; 2:r3=2; 3:r3=1; x=1; y=1;
24288 :>1:r1=0; 2:r1=2; 2:r3=2; 3:r3=1; x=1; y=1;
58542 :>1:r1=0; 2:r1=0; 2:r3=1; 3:r3=1; x=2; y=1;
4338 :>1:r1=0; 2:r1=0; 2:r3=2; 3:r3=2; x=2; y=2;
34760 :>1:r1=0; 2:r1=0; 2:r3=0; 3:r3=1; x=1; y=2;
33463 :>1:r1=0; 2:r1=2; 2:r3=1; 3:r3=1; x=1; y=2;
14323 :>1:r1=1; 2:r1=0; 2:r3=1; 3:r3=1; x=2; y=1;
29793 :>1:r1=0; 2:r1=0; 2:r3=2; 3:r3=1; x=2; y=2;
4823 :>1:r1=0; 2:r1=0; 2:r3=2; 3:r3=2; x=1; y=2;
18753 :>1:r1=0; 2:r1=0; 2:r3=2; 3:r3=1; x=2; y=1;
5945 :>1:r1=0; 2:r1=0; 2:r3=1; 3:r3=1; x=1; y=1;
30095 :>1:r1=0; 2:r1=2; 2:r3=1; 3:r3=1; x=2; y=1;
56958 :>1:r1=0; 2:r1=2; 2:r3=2; 3:r3=2; x=1; y=2;
71843 :>1:r1=0; 2:r1=0; 2:r3=0; 3:r3=1; x=2; y=1;
27528 :>1:r1=0; 2:r1=1; 2:r3=1; 3:r3=1; x=1; y=1;
65922 :>1:r1=0; 2:r1=2; 2:r3=2; 3:r3=1; x=1; y=2;
57303 :>1:r1=0; 2:r1=1; 2:r3=1; 3:r3=1; x=2; y=1;
19909 :>1:r1=0; 2:r1=0; 2:r3=0; 3:r3=1; x=1; y=1;
5334 :>1:r1=0; 2:r1=2; 2:r3=0; 3:r3=1; x=1; y=1;
81845 :>1:r1=0; 2:r1=0; 2:r3=0; 3:r3=2; x=1; y=2;
3951 :>1:r1=0; 2:r1=0; 2:r3=2; 3:r3=1; x=1; y=1;
24002 :>1:r1=0; 2:r1=0; 2:r3=1; 3:r3=1; x=1; y=2;
90320 :>1:r1=0; 2:r1=2; 2:r3=1; 3:r3=1; x=1; y=1;
7301 :>1:r1=1; 2:r1=0; 2:r3=0; 3:r3=1; x=2; y=1;
62881 :>1:r1=1; 2:r1=1; 2:r3=1; 3:r3=1; x=2; y=1;
121277:>1:r1=0; 2:r1=0; 2:r3=2; 3:r3=1; x=1; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0 /\ 3:r3=1) is NOT validated
Hash=3249df8d38ab71c414ecf795dbc29cda
Cycle=SyncsWR Fre SyncdWW Rfe SyncsRW Rfe SyncdRR Fre
Relax safe411 No
Safe=Fre SyncsWR SyncdRR BCSyncsRW BCSyncdWW
Time safe411 3.51
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe412.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe412
"SyncsWW Rfe SyncdRW Rfe SyncsRW Rfe SyncdRR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | sync | sync | stw r1,0(r2) ;
li r3,1 | li r3,2 | lwz r3,0(r4) | sync ;
stw r3,0(r4) | stw r3,0(r2) | | li r3,2 ;
| | | stw r3,0(r2) ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe412 Allowed
Histogram (61 states)
2 :>0:r1=2; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=2;
2 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=2;
1 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; x=1; y=2;
2 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=0; x=2; y=2;
7 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; x=2; y=2;
15 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=0; x=2; y=2;
20 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; x=1; y=2;
8 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=2;
24 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
44 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; x=1; y=2;
155 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=2;
6 :>0:r1=1; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=2;
987 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
562 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; x=2; y=2;
229 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=2; x=2; y=2;
654 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=2;
70 :>0:r1=2; 1:r1=0; 2:r1=2; 2:r3=0; x=1; y=2;
750 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=0; x=2; y=2;
708 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
3050 :>0:r1=2; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
13 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=1; x=2; y=2;
895 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=2;
2936 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
5127 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
5961 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
2380 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
2934 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=0; x=1; y=2;
10037 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=2; y=2;
10653 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
43732 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
4167 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
10817 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=2;
9696 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
10571 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=2;
252 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; x=2; y=2;
860 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
2185 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=2;
2591 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
18879 :>0:r1=2; 1:r1=0; 2:r1=2; 2:r3=1; x=1; y=2;
4648 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; x=2; y=2;
9028 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
16827 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
25381 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
13431 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
10480 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
25971 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
40308 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
16584 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
47352 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; x=1; y=2;
95150 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
44211 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=0; x=1; y=2;
125441:>0:r1=2; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
71596 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
132118:>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=2; x=2; y=2;
18389 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
5305 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
1092 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=1; y=2;
11798 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
126066:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
6716 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=2;
126 :>0:r1=2; 1:r1=1; 2:r1=1; 2:r3=2; x=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0) is NOT validated
Hash=1d780535f3b57085686f1d5d4b68f693
Cycle=SyncsWW Rfe SyncdRW Rfe SyncsRW Rfe SyncdRR Fre
Relax safe412 No
Safe=Fre SyncdRR BCSyncsWW BCSyncsRW BCSyncdRW
Time safe412 3.68
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe413.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe413
"SyncdWW Rfe SyncdRW Rfe SyncsRW Rfe SyncdRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | sync | sync | stw r1,0(r2) ;
li r3,1 | li r3,2 | lwz r3,0(r4) | sync ;
stw r3,0(r4) | stw r3,0(r2) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe413 Allowed
Histogram (30 states)
1 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; y=2;
15 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=1; y=2;
2 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; y=2;
8 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=0; y=1;
525 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; y=2;
59 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; y=2;
431 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1; y=2;
16 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=0; y=2;
620 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; y=1;
168 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=0; y=2;
991 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=0; y=2;
1164 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; y=2;
829 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; y=1;
6280 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; y=2;
14518 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=0; y=1;
25103 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; y=2;
118868:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; y=2;
6149 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; y=2;
6830 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; y=1;
57939 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; y=2;
25820 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; y=1;
43821 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; y=1;
20867 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; y=1;
127186:>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; y=2;
94497 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; y=2;
30784 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; y=2;
222283:>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; y=1;
38754 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; y=1;
120134:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; y=1;
35338 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0) is NOT validated
Hash=79bf77fed34ce16f809a05188c835015
Cycle=SyncdWW Rfe SyncdRW Rfe SyncsRW Rfe SyncdRR Fre
Relax safe413 No
Safe=Fre SyncdRR BCSyncsRW BCSyncdWW BCSyncdRW
Time safe413 2.61
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe414.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe414
"SyncdWW Rfe SyncdRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=x;}
P0 | P1 ;
lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) ;
lwz r3,0(r4) | sync ;
| li r3,1 ;
| stw r3,0(r4) ;
exists (0:r1=1 /\ 0:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
Test safe414 Allowed
Histogram (3 states)
999644:>0:r1=0; 0:r3=1;
884595:>0:r1=0; 0:r3=0;
115761:>0:r1=1; 0:r3=1;
No
Witnesses
Positive: 0, Negative: 2000000
Condition exists (0:r1=1 /\ 0:r3=0) is NOT validated
Hash=3213e73f68cc30e541d3f8c41efd078f
Cycle=SyncdWW Rfe SyncdRR Fre
Relax safe414 No
Safe=Fre SyncdRR BCSyncdWW
Time safe414 1.25
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe415.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe415
"SyncdWW Rfe SyncdRR Fre SyncdWW Rfe SyncdRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwz r3,0(r4) | sync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe415 Allowed
Histogram (14 states)
2 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=0;
2 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r3=1;
4 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=0;
11821 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1;
1162 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=0;
1575 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1;
68351 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0;
109019:>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1;
3211 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=1;
147719:>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1;
173752:>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0;
237382:>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1;
243813:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1;
2187 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=8d5baae7f8175d23a623fc46f1c53a58
Cycle=SyncdWW Rfe SyncdRR Fre SyncdWW Rfe SyncdRR Fre
Relax safe415 No
Safe=Fre SyncdRR BCSyncdWW
Time safe415 2.07
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe416.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe416
"SyncsWR Fre SyncdWW Rfe SyncdRR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y;}
P0 | P1 | P2 ;
li r1,2 | lwz r1,0(r2) | li r1,1 ;
stw r1,0(r2) | sync | stw r1,0(r2) ;
sync | lwz r3,0(r4) | sync ;
li r3,1 | | lwz r3,0(r2) ;
stw r3,0(r4) | | ;
exists (y=2 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: li r10,2
_litmus_P0_1_: stw r10,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r11,1
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r9,1
_litmus_P2_1_: stw r9,0(r2)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r10,0(r2)
Test safe416 Allowed
Histogram (13 states)
8 :>1:r1=0; 1:r3=1; 2:r3=2; y=2;
174 :>1:r1=1; 1:r3=2; 2:r3=1; y=1;
100 :>1:r1=1; 1:r3=2; 2:r3=2; y=2;
23728 :>1:r1=0; 1:r3=0; 2:r3=1; y=2;
983 :>1:r1=1; 1:r3=2; 2:r3=1; y=2;
32089 :>1:r1=0; 1:r3=0; 2:r3=1; y=1;
23934 :>1:r1=0; 1:r3=2; 2:r3=1; y=1;
52694 :>1:r1=0; 1:r3=0; 2:r3=2; y=2;
126299:>1:r1=0; 1:r3=1; 2:r3=1; y=1;
90020 :>1:r1=0; 1:r3=1; 2:r3=1; y=2;
109814:>1:r1=0; 1:r3=2; 2:r3=2; y=2;
230101:>1:r1=1; 1:r3=1; 2:r3=1; y=1;
310056:>1:r1=0; 1:r3=2; 2:r3=1; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=1) is NOT validated
Hash=a9cf2a592cb2eb0da73ec6a237567997
Cycle=SyncsWR Fre SyncdWW Rfe SyncdRR Fre
Relax safe416 No
Safe=Fre SyncsWR SyncdRR BCSyncdWW
Time safe416 1.66
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe417.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe417
"SyncdWW Rfe SyncsRR Fre SyncdWW Rfe SyncdRR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r2) | sync | lwz r3,0(r4) | sync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe417 Allowed
Histogram (40 states)
1 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; x=2;
2 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; x=2;
2 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=0; x=1;
10 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=2;
6 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=0; x=1;
76 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=0; x=1;
8 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=1; x=2;
829 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=2;
199 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; x=2;
14 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; x=2;
363 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=2;
18 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=0; x=2;
26 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=2;
247 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; x=1;
2237 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=2;
1509 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=0; x=1;
3532 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; x=1;
7617 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; x=1;
38 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=2;
52213 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; x=2;
9100 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; x=2;
9268 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; x=2;
3894 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=1;
26993 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=1; x=1;
15786 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; x=1;
2475 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; x=1;
40460 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; x=1;
30854 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; x=2;
47700 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=1;
134960:>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=1;
25381 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=1; x=1;
60984 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=1;
8412 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; x=1;
38461 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=1; x=2;
30313 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=1;
175786:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; x=1;
63468 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; x=1;
27210 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; x=2;
27185 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; x=1;
152363:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=4cc4b42bdd76960e42935ff1d4b89071
Cycle=SyncdWW Rfe SyncsRR Fre SyncdWW Rfe SyncdRR Fre
Relax safe417 No
Safe=Fre SyncsRR SyncdRR BCSyncdWW
Time safe417 2.69
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe418.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe418
"SyncsWW Rfe LwSyncdRR Fre SyncdWW Rfe SyncdRR Fre"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
lwsync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwz r3,0(r4) | sync ;
| li r3,1 | | li r3,2 ;
| stw r3,0(r4) | | stw r3,0(r2) ;
exists (z=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe418 Allowed
Histogram (31 states)
1 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=0; z=2;
3 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=1; z=2;
4 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; z=2;
15 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; z=2;
1 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=0; z=2;
29 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; z=2;
68 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r3=2; z=2;
90 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=1; z=2;
38 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=0; z=2;
899 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=0; z=2;
11166 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; z=2;
4602 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=2; z=2;
63 :>0:r1=2; 0:r3=0; 2:r1=1; 2:r3=2; z=2;
417 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=1; z=2;
32190 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; z=2;
29203 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=2; z=2;
45571 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=2; z=2;
42631 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; z=2;
53237 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=2; z=2;
38871 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=1; z=2;
72240 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; z=2;
24461 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; z=2;
52030 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=2; z=2;
74705 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; z=2;
40190 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=2; z=2;
144067:>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; z=2;
153923:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; z=2;
15139 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; z=2;
158555:>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=2; z=2;
5376 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; z=2;
215 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=0; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=fa2e6b2be4a5236a634ce2562eba0498
Cycle=SyncsWW Rfe LwSyncdRR Fre SyncdWW Rfe SyncdRR Fre
Relax safe418 No
Safe=Fre SyncdRR LwSyncdRR BCSyncsWW BCSyncdWW
Time safe418 2.52
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe419.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe419
"SyncdWW Rfe LwSyncdRR Fre SyncdWW Rfe SyncdRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
lwsync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwz r3,0(r4) | sync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe419 Allowed
Histogram (14 states)
7 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=0;
19 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=0;
13 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r3=1;
3285 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=0;
4497 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0;
7748 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=1;
4411 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1;
129098:>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1;
145638:>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0;
88603 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0;
288514:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1;
145408:>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1;
4791 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1;
177968:>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=bc67ba9521a7a88a90f84fb0274a393c
Cycle=SyncdWW Rfe LwSyncdRR Fre SyncdWW Rfe SyncdRR Fre
Relax safe419 No
Safe=Fre SyncdRR LwSyncdRR BCSyncdWW
Time safe419 2.07
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe420.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe420
"SyncdWW Rfe LwSyncsRR Fre SyncdWW Rfe SyncdRR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,1 ;
lwsync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r2) | sync | lwz r3,0(r4) | sync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe420 Allowed
Histogram (34 states)
1 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=1; x=2;
2 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; x=1;
3 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; x=1;
4 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=0; x=1;
29 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; x=2;
37 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=2;
72 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=1; x=2;
47 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=2;
21 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=1;
62 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=1; x=1;
78 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; x=1;
166 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=2;
71 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=1; x=1;
99 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=2;
2209 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=0; x=1;
1390 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; x=1;
1460 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=2;
813 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; x=1;
372 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; x=2;
1065 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; x=2;
383 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=0; x=1;
7030 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=1;
424 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; x=1;
22008 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; x=2;
7328 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; x=1;
16691 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; x=1;
27839 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; x=2;
174315:>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=1;
49073 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=1;
113647:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; x=2;
71317 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; x=1;
218591:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; x=1;
247507:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=1;
35846 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=b3e5b6349830664883c75816595b2b84
Cycle=SyncdWW Rfe LwSyncsRR Fre SyncdWW Rfe SyncdRR Fre
Relax safe420 No
Safe=Fre SyncdRR LwSyncsRR BCSyncdWW
Time safe420 2.76
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe421.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe421
"Rfe SyncsRR Fre SyncdWW Rfe SyncdRR Fre"
{0:r2=y; 1:r2=y; 1:r4=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r2) | sync | lwz r3,0(r4) | ;
| li r3,1 | | ;
| stw r3,0(r4) | | ;
exists (y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
Test safe421 Allowed
Histogram (52 states)
9 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=2; y=1;
4 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=2; y=1;
18 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=2; y=2;
8 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=2; y=1;
379 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=2; y=2;
3777 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; y=2;
2327 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; y=2;
137 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; y=1;
1531 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; y=1;
482 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; y=2;
74 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=2; y=2;
1120 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; y=1;
1124 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; y=2;
43712 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=0; y=2;
27033 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; y=2;
11809 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; y=2;
12712 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; y=2;
1588 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=2; y=2;
24777 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=1; y=2;
122 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; y=1;
7160 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; y=2;
2137 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; y=1;
4020 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; y=2;
6047 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=2; y=2;
10458 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; y=1;
1843 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; y=1;
1640 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=2; y=2;
4448 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; y=1;
1200 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; y=1;
8473 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; y=1;
65582 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=2; y=2;
524 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=2; y=1;
3870 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; y=1;
8117 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; y=2;
1932 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; y=1;
5444 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=2; y=1;
2881 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; y=2;
13510 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; y=1;
29206 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; y=1;
15791 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=1; y=1;
4434 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; y=1;
163153:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; y=2;
51373 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=2; y=2;
32926 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=1; y=1;
156810:>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; y=1;
45257 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; y=1;
58454 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; y=1;
124719:>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=2; y=2;
216 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=2; y=1;
15369 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=2; y=1;
6486 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; y=1;
13777 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=df5584e39f59468535187dbd78e282b9
Cycle=Rfe SyncsRR Fre SyncdWW Rfe SyncdRR Fre
Relax safe421 No
Safe=Fre SyncdRR ACSyncsRR BCSyncdWW
Time safe421 2.75
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe422.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe422
"LwSyncdWW Rfe SyncsRR Fre SyncdWW Rfe SyncdRR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r2) | sync | lwz r3,0(r4) | lwsync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe422 Allowed
Histogram (40 states)
1 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=0; x=1;
13 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; x=2;
46 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; x=2;
2 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=0; x=1;
70 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=1; x=2;
146 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; x=1;
2 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; x=2;
871 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=2;
8509 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=2;
724 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=0; x=2;
2558 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; x=2;
18 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=0; x=1;
431 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=0; x=1;
14403 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=2;
784 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=2;
618 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=2;
22256 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=1; x=1;
5075 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=1;
25129 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; x=2;
12409 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; x=1;
22797 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; x=1;
13842 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; x=1;
19896 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=1;
85154 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; x=2;
62097 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=1; x=2;
108204:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=1;
17048 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; x=2;
8233 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; x=2;
37591 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; x=2;
183984:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; x=1;
22377 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; x=1;
76303 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=1;
1175 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; x=1;
102048:>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=1;
30691 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=1;
6203 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; x=1;
51702 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; x=1;
42587 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=1; x=1;
13985 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; x=1;
18 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=0f49496c5d7bfdf149782e492263c607
Cycle=LwSyncdWW Rfe SyncsRR Fre SyncdWW Rfe SyncdRR Fre
Relax safe422 No
Safe=Fre SyncdRR LwSyncdWW ACSyncsRR BCSyncdWW
Time safe422 2.73
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe423.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe423
"Rfe SyncdRR Fre SyncdWW Rfe SyncdRR Fre"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwz r3,0(r4) | ;
| li r3,1 | | ;
| stw r3,0(r4) | | ;
exists (0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
Test safe423 Allowed
Histogram (14 states)
8 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r3=1;
360 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=0;
23 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=0;
3330 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1;
13192 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=0;
44406 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1;
79435 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1;
28083 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0;
30181 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1;
44202 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=1;
137262:>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0;
224060:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1;
78485 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0;
316973:>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=14a6ce4c5d9c25018c4daadcfa00c959
Cycle=Rfe SyncdRR Fre SyncdWW Rfe SyncdRR Fre
Relax safe423 No
Safe=Fre SyncdRR ACSyncdRR BCSyncdWW
Time safe423 1.84
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe424.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe424
"LwSyncdWW Rfe SyncdRR Fre SyncdWW Rfe SyncdRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwz r3,0(r4) | lwsync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe424 Allowed
Histogram (14 states)
6 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=0;
10 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=0;
37 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r3=1;
1652 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=0;
13533 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0;
75378 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0;
18437 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=1;
173201:>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1;
203814:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1;
156867:>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0;
19184 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1;
185906:>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1;
7211 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1;
144764:>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=6384a96533b15b906b4f45e0fee7e5ca
Cycle=LwSyncdWW Rfe SyncdRR Fre SyncdWW Rfe SyncdRR Fre
Relax safe424 No
Safe=Fre SyncdRR LwSyncdWW ACSyncdRR BCSyncdWW
Time safe424 2.09
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe425.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe425
"LwSyncsWW Rfe SyncdRR Fre SyncdWW Rfe SyncdRR Fre"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwz r3,0(r4) | lwsync ;
| li r3,1 | | li r3,2 ;
| stw r3,0(r4) | | stw r3,0(r2) ;
exists (z=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe425 Allowed
Histogram (27 states)
1 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=0; z=2;
3 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; z=2;
3 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=0; z=2;
4 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=1; z=2;
9 :>0:r1=2; 0:r3=0; 2:r1=1; 2:r3=2; z=2;
224 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=1; z=2;
131 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=0; z=2;
240 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=0; z=2;
374 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; z=2;
601 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=2; z=2;
603 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=2; z=2;
745 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=0; z=2;
5418 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=2; z=2;
37781 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; z=2;
18386 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; z=2;
5294 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=1; z=2;
11691 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; z=2;
19430 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; z=2;
11855 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; z=2;
42056 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=2; z=2;
33769 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=2; z=2;
48843 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; z=2;
172341:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; z=2;
92426 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=2; z=2;
319057:>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=2; z=2;
144993:>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; z=2;
33722 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=0e2d0342a62d5bf5d2e4b998b98ad72b
Cycle=LwSyncsWW Rfe SyncdRR Fre SyncdWW Rfe SyncdRR Fre
Relax safe425 No
Safe=Fre SyncdRR LwSyncsWW ACSyncdRR BCSyncdWW
Time safe425 2.50
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe426.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe426
"SyncsWW Rfe SyncdRW Rfe SyncdRR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | sync | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r4) | sync ;
stw r3,0(r4) | | li r3,2 ;
| | stw r3,0(r2) ;
exists (y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stw r8,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r9,1
_litmus_P2_1_: stw r9,0(r2)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,2
_litmus_P2_4_: stw r11,0(r2)
Test safe426 Allowed
Histogram (15 states)
1 :>0:r1=1; 1:r1=1; 1:r3=1; y=2;
26 :>0:r1=1; 1:r1=0; 1:r3=1; y=2;
978 :>0:r1=2; 1:r1=0; 1:r3=0; y=2;
374 :>0:r1=0; 1:r1=1; 1:r3=0; y=2;
6980 :>0:r1=1; 1:r1=1; 1:r3=2; y=2;
9363 :>0:r1=2; 1:r1=1; 1:r3=2; y=2;
76645 :>0:r1=1; 1:r1=0; 1:r3=2; y=2;
37743 :>0:r1=2; 1:r1=0; 1:r3=1; y=2;
87989 :>0:r1=0; 1:r1=0; 1:r3=2; y=2;
139062:>0:r1=0; 1:r1=0; 1:r3=0; y=2;
11059 :>0:r1=0; 1:r1=1; 1:r3=1; y=2;
120561:>0:r1=0; 1:r1=0; 1:r3=1; y=2;
39820 :>0:r1=1; 1:r1=0; 1:r3=0; y=2;
201294:>0:r1=0; 1:r1=1; 1:r3=2; y=2;
268105:>0:r1=2; 1:r1=0; 1:r3=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=0) is NOT validated
Hash=a74692297bc571e045817f5d1cedc9fc
Cycle=SyncsWW Rfe SyncdRW Rfe SyncdRR Fre
Relax safe426 No
Safe=Fre SyncdRR BCSyncsWW BCSyncdRW
Time safe426 1.61
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe427.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe427
"SyncdWW Rfe SyncsRW Rfe SyncdRW Rfe SyncdRR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | sync | sync | stw r1,0(r2) ;
li r3,2 | li r3,1 | lwz r3,0(r4) | sync ;
stw r3,0(r2) | stw r3,0(r4) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe427 Allowed
Histogram (29 states)
5 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=2;
4 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; x=2;
49 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; x=2;
2 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=0; x=2;
34 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=1; x=2;
4 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=1;
41 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=0; x=1;
4057 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2;
3010 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; x=1;
1028 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=1;
278 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=2;
1920 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=2;
1109 :>0:r1=1; 1:r1=2; 2:r1=0; 2:r3=1; x=2;
22 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=2;
6220 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; x=1;
3649 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; x=2;
11690 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=1; x=2;
28288 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; x=2;
129521:>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1; x=2;
121627:>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=1;
53908 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=2;
25480 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=1;
100817:>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=1;
181393:>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=1; x=1;
87306 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=2;
83617 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1;
39883 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=2;
60787 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2;
54251 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=8ad5f750726d73429960bde2316d6c0e
Cycle=SyncdWW Rfe SyncsRW Rfe SyncdRW Rfe SyncdRR Fre
Relax safe427 No
Safe=Fre SyncdRR BCSyncsRW BCSyncdWW BCSyncdRW
Time safe427 2.57
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe428.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe428
"SyncdWW Rfe SyncdRW Rfe SyncdRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | sync | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r4) | sync ;
stw r3,0(r4) | | li r3,1 ;
| | stw r3,0(r4) ;
exists (0:r1=1 /\ 1:r1=1 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stw r8,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe428 Allowed
Histogram (7 states)
557 :>0:r1=0; 1:r1=1; 1:r3=0;
639 :>0:r1=1; 1:r1=1; 1:r3=1;
1215 :>0:r1=1; 1:r1=0; 1:r3=0;
145636:>0:r1=1; 1:r1=0; 1:r3=1;
285517:>0:r1=0; 1:r1=0; 1:r3=0;
223961:>0:r1=0; 1:r1=1; 1:r3=1;
342475:>0:r1=0; 1:r1=0; 1:r3=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 1:r1=1 /\ 1:r3=0) is NOT validated
Hash=a5d7d214d7bd441fd6af972e2002b5f6
Cycle=SyncdWW Rfe SyncdRW Rfe SyncdRR Fre
Relax safe428 No
Safe=Fre SyncdRR BCSyncdWW BCSyncdRW
Time safe428 1.59
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe429.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe429
"SyncsWR Fre SyncdWW Rfe SyncdRW Rfe SyncdRR Fre"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
li r1,2 | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
stw r1,0(r2) | sync | sync | stw r1,0(r2) ;
sync | li r3,1 | lwz r3,0(r4) | sync ;
li r3,1 | stw r3,0(r4) | | lwz r3,0(r2) ;
stw r3,0(r4) | | | ;
exists (z=2 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0 /\ 3:r3=1)
Generated assembler
_litmus_P0_0_: li r11,2
_litmus_P0_1_: stw r11,0(r9)
_litmus_P0_2_: sync
_litmus_P0_3_: li r10,1
_litmus_P0_4_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: lwz r10,0(r2)
Test safe429 Allowed
Histogram (28 states)
1 :>1:r1=1; 2:r1=1; 2:r3=2; 3:r3=2; z=2;
4 :>1:r1=1; 2:r1=0; 2:r3=0; 3:r3=1; z=2;
2 :>1:r1=0; 2:r1=1; 2:r3=0; 3:r3=1; z=2;
1 :>1:r1=1; 2:r1=1; 2:r3=2; 3:r3=1; z=2;
1 :>1:r1=0; 2:r1=0; 2:r3=1; 3:r3=2; z=2;
31 :>1:r1=0; 2:r1=1; 2:r3=0; 3:r3=2; z=2;
37 :>1:r1=1; 2:r1=0; 2:r3=0; 3:r3=2; z=2;
27 :>1:r1=0; 2:r1=1; 2:r3=0; 3:r3=1; z=1;
31 :>1:r1=1; 2:r1=0; 2:r3=1; 3:r3=1; z=2;
2980 :>1:r1=1; 2:r1=0; 2:r3=2; 3:r3=2; z=2;
1368 :>1:r1=1; 2:r1=1; 2:r3=1; 3:r3=1; z=1;
3906 :>1:r1=1; 2:r1=0; 2:r3=0; 3:r3=1; z=1;
8160 :>1:r1=1; 2:r1=0; 2:r3=2; 3:r3=1; z=1;
1415 :>1:r1=0; 2:r1=1; 2:r3=2; 3:r3=1; z=1;
7343 :>1:r1=0; 2:r1=0; 2:r3=0; 3:r3=1; z=2;
11421 :>1:r1=1; 2:r1=0; 2:r3=2; 3:r3=1; z=2;
2592 :>1:r1=0; 2:r1=1; 2:r3=1; 3:r3=1; z=2;
54324 :>1:r1=0; 2:r1=1; 2:r3=2; 3:r3=2; z=2;
40545 :>1:r1=0; 2:r1=0; 2:r3=2; 3:r3=2; z=2;
77650 :>1:r1=0; 2:r1=0; 2:r3=0; 3:r3=2; z=2;
153109:>1:r1=0; 2:r1=1; 2:r3=1; 3:r3=1; z=1;
194530:>1:r1=0; 2:r1=0; 2:r3=2; 3:r3=1; z=2;
58560 :>1:r1=0; 2:r1=0; 2:r3=0; 3:r3=1; z=1;
196440:>1:r1=0; 2:r1=0; 2:r3=1; 3:r3=1; z=1;
36257 :>1:r1=0; 2:r1=1; 2:r3=2; 3:r3=1; z=2;
38841 :>1:r1=0; 2:r1=0; 2:r3=1; 3:r3=1; z=2;
60445 :>1:r1=0; 2:r1=0; 2:r3=2; 3:r3=1; z=1;
49979 :>1:r1=1; 2:r1=0; 2:r3=1; 3:r3=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0 /\ 3:r3=1) is NOT validated
Hash=ffb78840850e70293ae841c4f550ec2b
Cycle=SyncsWR Fre SyncdWW Rfe SyncdRW Rfe SyncdRR Fre
Relax safe429 No
Safe=Fre SyncsWR SyncdRR BCSyncdWW BCSyncdRW
Time safe429 2.51
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe430.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe430
"SyncsWW Rfe SyncdRW Rfe SyncdRW Rfe SyncdRR Fre"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | sync | sync | stw r1,0(r2) ;
li r3,1 | li r3,1 | lwz r3,0(r4) | sync ;
stw r3,0(r4) | stw r3,0(r4) | | li r3,2 ;
| | | stw r3,0(r2) ;
exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe430 Allowed
Histogram (31 states)
1 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=2; z=2;
3 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=0; z=2;
2 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; z=2;
2 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1; z=2;
4 :>0:r1=2; 1:r1=1; 2:r1=1; 2:r3=2; z=2;
372 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; z=2;
16 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
26 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=0; z=2;
34 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=0; z=2;
40 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
79 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=1; z=2;
546 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
950 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=2; z=2;
6638 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=2; z=2;
7868 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=2; z=2;
845 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; z=2;
6558 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
52303 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; z=2;
10205 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
25470 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
51853 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
13771 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; z=2;
71766 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
58391 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
25880 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
102403:>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
101411:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
55366 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
218550:>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
64464 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
124183:>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=3c514be3430d60d2b61a2fbbca488182
Cycle=SyncsWW Rfe SyncdRW Rfe SyncdRW Rfe SyncdRR Fre
Relax safe430 No
Safe=Fre SyncdRR BCSyncsWW BCSyncdRW
Time safe430 2.46
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe431.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe431
"SyncdWW Rfe SyncdRW Rfe SyncdRW Rfe SyncdRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | sync | sync | stw r1,0(r2) ;
li r3,1 | li r3,1 | lwz r3,0(r4) | sync ;
stw r3,0(r4) | stw r3,0(r4) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe431 Allowed
Histogram (13 states)
2 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0;
38 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=1;
1340 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1;
3346 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0;
9931 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1;
956 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0;
50306 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0;
101744:>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1;
144107:>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1;
234948:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1;
238667:>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1;
5803 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1;
208812:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=a8998c7dd78a96f778f36266791e4a90
Cycle=SyncdWW Rfe SyncdRW Rfe SyncdRW Rfe SyncdRR Fre
Relax safe431 No
Safe=Fre SyncdRR BCSyncdWW BCSyncdRW
Time safe431 2.07
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe432.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe432
"SyncdWW Rfe SyncsRW Rfe LwSyncdRR Fre SyncsWR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 3:r2=y; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
sync | lwsync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,2 | lwz r3,0(r4) | sync | sync ;
stw r3,0(r2) | | lwz r3,0(r2) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: lwsync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r9,1
_litmus_P2_1_: stw r9,0(r2)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe432 Allowed
Histogram (53 states)
1 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=2; x=1; y=2;
4 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=1; x=2; y=1;
9 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=2; x=1; y=2;
16 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=1; x=2; y=2;
9 :>0:r1=1; 1:r1=1; 1:r3=2; 2:r3=2; x=2; y=2;
76 :>0:r1=1; 1:r1=1; 1:r3=2; 2:r3=1; x=2; y=2;
11 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; x=2; y=2;
387 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; x=2; y=1;
112 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; x=2; y=1;
57 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=2; x=2; y=2;
839 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=2; x=2; y=2;
572 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; x=1; y=1;
1256 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; x=2; y=2;
871 :>0:r1=0; 1:r1=2; 1:r3=0; 2:r3=1; x=1; y=2;
432 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=2; x=1; y=2;
859 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=2; x=2; y=2;
2439 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; x=2; y=1;
2476 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=1; x=2; y=1;
12838 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; x=2; y=2;
2105 :>0:r1=0; 1:r1=2; 1:r3=0; 2:r3=2; x=1; y=2;
1514 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=2; y=2;
1419 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=2; y=2;
76 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; x=2; y=2;
3314 :>0:r1=0; 1:r1=2; 1:r3=0; 2:r3=1; x=1; y=1;
21386 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=1; x=2; y=2;
11625 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=1; y=1;
9955 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=2; x=2; y=2;
2057 :>0:r1=1; 1:r1=1; 1:r3=2; 2:r3=1; x=2; y=1;
8687 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; x=1; y=1;
19226 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; x=1; y=2;
70749 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1; x=2; y=1;
21098 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=1; x=2; y=1;
48692 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=1; y=2;
3898 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=2; x=2; y=2;
6749 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=2; x=1; y=2;
26183 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; x=2; y=1;
27818 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; x=2; y=1;
41067 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=1; y=1;
28580 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; x=2; y=1;
29433 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=2; x=1; y=2;
22911 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; x=1; y=1;
37003 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; x=2; y=1;
47873 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; x=2; y=2;
41849 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=1; y=2;
99509 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; x=1; y=2;
38221 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=2; y=1;
64210 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; x=1; y=2;
103240:>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; x=1; y=1;
22184 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=2; y=1;
87744 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=2; x=1; y=2;
2424 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; x=1; y=2;
23823 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; x=1; y=1;
114 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=2; x=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0 /\ 2:r3=1) is NOT validated
Hash=0da2f7cf0c51c36a62bb02a20930f11b
Cycle=SyncdWW Rfe SyncsRW Rfe LwSyncdRR Fre SyncsWR Fre
Relax safe432 No
Safe=Fre SyncsWR LwSyncdRR BCSyncsRW BCSyncdWW
Time safe432 3.35
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe433.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe433
"SyncdWW Rfe LwSyncdRR Fre SyncsWR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,1 | li r1,2 ;
lwsync | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r4) | sync | sync ;
| lwz r3,0(r2) | li r3,1 ;
| | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 0:r3=0 /\ 1:r3=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: lwz r10,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe433 Allowed
Histogram (13 states)
12 :>0:r1=0; 0:r3=1; 1:r3=2; y=2;
151 :>0:r1=1; 0:r3=2; 1:r3=1; y=1;
208 :>0:r1=1; 0:r3=2; 1:r3=2; y=2;
2981 :>0:r1=1; 0:r3=2; 1:r3=1; y=2;
9053 :>0:r1=0; 0:r3=2; 1:r3=2; y=2;
18835 :>0:r1=0; 0:r3=0; 1:r3=1; y=2;
43583 :>0:r1=0; 0:r3=1; 1:r3=1; y=2;
100325:>0:r1=0; 0:r3=0; 1:r3=2; y=2;
176824:>0:r1=0; 0:r3=0; 1:r3=1; y=1;
177083:>0:r1=0; 0:r3=1; 1:r3=1; y=1;
294538:>0:r1=0; 0:r3=2; 1:r3=1; y=2;
16126 :>0:r1=0; 0:r3=2; 1:r3=1; y=1;
160281:>0:r1=1; 0:r3=1; 1:r3=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 0:r3=0 /\ 1:r3=1) is NOT validated
Hash=1f3e94eef40bdde69eb545432a4c6746
Cycle=SyncdWW Rfe LwSyncdRR Fre SyncsWR Fre
Relax safe433 No
Safe=Fre SyncsWR LwSyncdRR BCSyncdWW
Time safe433 1.56
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe434.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe434
"SyncdWW Rfe SyncdRW Rfe LwSyncdRR Fre SyncsWR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
sync | lwsync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r4) | sync | sync ;
stw r3,0(r4) | | lwz r3,0(r2) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: lwsync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r9,1
_litmus_P2_1_: stw r9,0(r2)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe434 Allowed
Histogram (29 states)
8 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=2; z=2;
37 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=1; z=2;
49 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; z=2;
53 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; z=2;
3 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=2; z=2;
644 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=1; z=1;
175 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=2; z=2;
202 :>0:r1=1; 1:r1=1; 1:r3=2; 2:r3=2; z=2;
635 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=2; z=2;
22235 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=1; z=1;
5584 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; z=1;
3487 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=2; z=2;
1197 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1; z=1;
550 :>0:r1=1; 1:r1=1; 1:r3=2; 2:r3=1; z=2;
6428 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; z=2;
18242 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=1; z=2;
119513:>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; z=1;
66110 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=2; z=2;
7077 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; z=1;
20492 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=2; z=2;
135316:>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; z=2;
52932 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; z=1;
92483 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=2; z=2;
110877:>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; z=1;
100454:>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; z=2;
78020 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; z=2;
64883 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; z=1;
18890 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; z=2;
73424 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=1) is NOT validated
Hash=f71bd5c86e0a42203ff4b458932be127
Cycle=SyncdWW Rfe SyncdRW Rfe LwSyncdRR Fre SyncsWR Fre
Relax safe434 No
Safe=Fre SyncsWR LwSyncdRR BCSyncdWW BCSyncdRW
Time safe434 2.52
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe435.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe435
"SyncdWW Rfe DpdW Rfe SyncdRR Fre SyncsWR Fre"
{0:r2=x; 0:r5=y; 1:r2=y; 1:r4=z; 2:r2=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
xor r3,r1,r1 | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r4,1 | lwz r3,0(r4) | sync | sync ;
stwx r4,r3,r5 | | lwz r3,0(r2) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: xor r11,r7,r7
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stwx r8,r11,r2
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r9,1
_litmus_P2_1_: stw r9,0(r2)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe435 Allowed
Histogram (29 states)
2 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=2; z=2;
2 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=2; z=2;
20 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; z=2;
8 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; z=2;
143 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=1; z=2;
63 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=2; z=2;
928 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=2; z=2;
1169 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; z=1;
725 :>0:r1=1; 1:r1=1; 1:r3=2; 2:r3=1; z=2;
186 :>0:r1=1; 1:r1=1; 1:r3=2; 2:r3=2; z=2;
1832 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=2; z=2;
829 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=1; z=1;
1968 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=1; z=1;
14231 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=1; z=2;
22173 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; z=2;
19248 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; z=1;
30864 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=2; z=2;
12779 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=2; z=2;
25587 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; z=1;
27420 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; z=2;
140798:>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; z=1;
49923 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; z=1;
36257 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; z=2;
177455:>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; z=1;
155646:>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; z=2;
138680:>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; z=1;
4374 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1; z=1;
96530 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; z=2;
40160 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=1) is NOT validated
Hash=dbaab00738e1b2fd482431f2b51bd7cf
Cycle=SyncdWW Rfe DpdW Rfe SyncdRR Fre SyncsWR Fre
Relax safe435 No
Safe=Fre SyncsWR DpdW ACSyncdRR BCSyncdWW
Time safe435 2.57
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe436.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe436
"SyncdWW Rfe DpsW Rfe SyncdRR Fre SyncsWR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 3:r2=y; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
xor r3,r1,r1 | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r4,2 | lwz r3,0(r4) | sync | sync ;
stwx r4,r3,r2 | | lwz r3,0(r2) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: xor r11,r8,r8
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stwx r9,r11,r2
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r9,1
_litmus_P2_1_: stw r9,0(r2)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe436 Allowed
Histogram (54 states)
2 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=2; x=1; y=2;
8 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; x=2; y=1;
12 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=2; x=2; y=2;
8 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=2; x=1; y=2;
5 :>0:r1=1; 1:r1=1; 1:r3=2; 2:r3=2; x=2; y=2;
9 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=2; x=2; y=2;
11 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; x=2; y=2;
29 :>0:r1=0; 1:r1=2; 1:r3=0; 2:r3=1; x=1; y=2;
17 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; x=2; y=2;
173 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; x=2; y=2;
73 :>0:r1=1; 1:r1=1; 1:r3=2; 2:r3=1; x=2; y=2;
24 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=2; x=2; y=2;
1594 :>0:r1=0; 1:r1=2; 1:r3=0; 2:r3=1; x=1; y=1;
47 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=1; x=2; y=1;
990 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=2; y=2;
5092 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; x=2; y=2;
967 :>0:r1=0; 1:r1=2; 1:r3=0; 2:r3=2; x=1; y=2;
2003 :>0:r1=1; 1:r1=1; 1:r3=2; 2:r3=1; x=2; y=1;
500 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=2; x=2; y=2;
648 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=2; x=2; y=2;
141 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; x=2; y=1;
14869 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=2; y=1;
1323 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=2; y=2;
3246 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; x=2; y=1;
84 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=1; x=2; y=2;
534 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; x=1; y=1;
4717 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=2; x=1; y=2;
2364 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; x=2; y=1;
7047 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=1; x=2; y=2;
23221 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; x=1; y=2;
1506 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; x=2; y=1;
36674 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; x=2; y=1;
23645 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=1; x=2; y=1;
29258 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1; x=2; y=1;
3703 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=2; x=2; y=2;
32419 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; x=1; y=1;
9259 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=1; y=2;
9073 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=2; x=1; y=2;
21461 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; x=2; y=2;
7628 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=1; y=1;
16832 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; x=1; y=1;
27102 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=2; y=1;
6886 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=2; x=2; y=2;
61551 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=1; y=1;
36157 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; x=1; y=2;
74705 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; x=2; y=1;
41549 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=2; x=1; y=2;
119306:>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; x=1; y=2;
56265 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=2; x=1; y=2;
134761:>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; x=1; y=1;
52993 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=1; y=2;
41195 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; x=1; y=2;
64998 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; x=1; y=1;
21316 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=1; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0 /\ 2:r3=1) is NOT validated
Hash=ab6ad3d442222dbe0dc48b8dbc441808
Cycle=SyncdWW Rfe DpsW Rfe SyncdRR Fre SyncsWR Fre
Relax safe436 No
Safe=Fre SyncsWR DpsW ACSyncdRR BCSyncdWW
Time safe436 3.60
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe437.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe437
"LwSyncdWW Rfe SyncdRR Fre SyncsWR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | li r1,1 | li r1,2 ;
sync | stw r1,0(r2) | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwsync ;
| lwz r3,0(r2) | li r3,1 ;
| | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 0:r3=0 /\ 1:r3=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: lwz r10,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe437 Allowed
Histogram (13 states)
11 :>0:r1=0; 0:r3=1; 1:r3=2; y=2;
219 :>0:r1=1; 0:r3=2; 1:r3=1; y=1;
1114 :>0:r1=1; 0:r3=2; 1:r3=2; y=2;
13561 :>0:r1=0; 0:r3=0; 1:r3=1; y=2;
82487 :>0:r1=0; 0:r3=0; 1:r3=2; y=2;
86910 :>0:r1=0; 0:r3=1; 1:r3=1; y=2;
16256 :>0:r1=1; 0:r3=2; 1:r3=1; y=2;
297323:>0:r1=1; 0:r3=1; 1:r3=1; y=1;
26922 :>0:r1=0; 0:r3=2; 1:r3=1; y=1;
78457 :>0:r1=0; 0:r3=1; 1:r3=1; y=1;
288949:>0:r1=0; 0:r3=2; 1:r3=1; y=2;
66944 :>0:r1=0; 0:r3=0; 1:r3=1; y=1;
40847 :>0:r1=0; 0:r3=2; 1:r3=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 0:r3=0 /\ 1:r3=1) is NOT validated
Hash=9967332a48479c424871a02329050ca2
Cycle=LwSyncdWW Rfe SyncdRR Fre SyncsWR Fre
Relax safe437 No
Safe=Fre SyncsWR LwSyncdWW ACSyncdRR
Time safe437 1.56
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe438.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe438
"SyncdWW Rfe LwSyncdRW Rfe SyncdRR Fre SyncsWR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
lwsync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r4) | sync | sync ;
stw r3,0(r4) | | lwz r3,0(r2) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r9,1
_litmus_P2_1_: stw r9,0(r2)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe438 Allowed
Histogram (30 states)
1 :>0:r1=1; 1:r1=1; 1:r3=2; 2:r3=1; z=1;
8 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=2; z=2;
7 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; z=2;
1 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=2; z=2;
7 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; z=2;
90 :>0:r1=1; 1:r1=1; 1:r3=2; 2:r3=2; z=2;
332 :>0:r1=1; 1:r1=1; 1:r3=2; 2:r3=1; z=2;
406 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=2; z=2;
139 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=2; z=2;
55 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=1; z=2;
5997 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; z=2;
12814 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=1; z=1;
2095 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1; z=1;
2440 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; z=1;
1277 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=2; z=2;
4101 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=1; z=2;
1483 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=1; z=1;
12644 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; z=2;
57704 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=2; z=2;
17561 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; z=1;
29959 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; z=1;
41769 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; z=2;
25214 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=2; z=2;
127418:>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; z=1;
156090:>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; z=1;
94815 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; z=1;
178924:>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; z=2;
29751 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; z=2;
60097 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=2; z=2;
136801:>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=1) is NOT validated
Hash=82e1d5e64d4448d7c9668981ab0b1b51
Cycle=SyncdWW Rfe LwSyncdRW Rfe SyncdRR Fre SyncsWR Fre
Relax safe438 No
Safe=Fre SyncsWR LwSyncdRW ACSyncdRR BCSyncdWW
Time safe438 2.59
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe439.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe439
"SyncdWW Rfe LwSyncsRW Rfe SyncdRR Fre SyncsWR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 3:r2=y; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
lwsync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,2 | lwz r3,0(r4) | sync | sync ;
stw r3,0(r2) | | lwz r3,0(r2) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r9,1
_litmus_P2_1_: stw r9,0(r2)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe439 Allowed
Histogram (54 states)
4 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=2; x=1; y=2;
1 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; x=2; y=2;
13 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=2; x=2; y=2;
10 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; x=2; y=2;
15 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=1; x=2; y=1;
31 :>0:r1=1; 1:r1=1; 1:r3=2; 2:r3=1; x=2; y=2;
12 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=2; x=2; y=2;
25 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; x=2; y=1;
208 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=2; x=2; y=2;
30 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=1; x=2; y=2;
11 :>0:r1=1; 1:r1=1; 1:r3=2; 2:r3=2; x=2; y=2;
33 :>0:r1=0; 1:r1=2; 1:r3=0; 2:r3=1; x=1; y=2;
27 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=2; x=2; y=2;
3 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=2; x=1; y=2;
203 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; x=2; y=1;
706 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=2; y=2;
520 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=2; x=2; y=2;
582 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; x=1; y=1;
849 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=2; y=2;
1795 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; x=2; y=1;
893 :>0:r1=0; 1:r1=2; 1:r3=0; 2:r3=2; x=1; y=2;
6596 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; x=2; y=2;
1712 :>0:r1=0; 1:r1=2; 1:r3=0; 2:r3=1; x=1; y=1;
4846 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; x=2; y=1;
15207 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=2; y=1;
184 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; x=2; y=2;
2132 :>0:r1=1; 1:r1=1; 1:r3=2; 2:r3=1; x=2; y=1;
2323 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; x=2; y=1;
5366 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=1; y=2;
2831 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=1; x=2; y=2;
32771 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; x=1; y=2;
16813 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=1; x=2; y=1;
4320 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=2; x=2; y=2;
26911 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1; x=2; y=1;
4167 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=2; x=2; y=2;
3787 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=2; x=1; y=2;
14899 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=1; x=2; y=1;
10796 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; x=2; y=2;
15725 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; x=1; y=1;
34928 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=1; y=2;
6633 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=2; x=1; y=2;
129196:>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; x=1; y=2;
39136 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=2; x=1; y=2;
49408 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; x=1; y=1;
7410 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=1; y=1;
33509 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; x=1; y=1;
33980 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; x=1; y=2;
138716:>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; x=1; y=1;
39347 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; x=2; y=1;
54780 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=2; x=1; y=2;
31462 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=2; y=1;
90869 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=1; y=1;
48168 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; x=1; y=2;
85101 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0 /\ 2:r3=1) is NOT validated
Hash=b9054433224a337b2a73152a721a0eff
Cycle=SyncdWW Rfe LwSyncsRW Rfe SyncdRR Fre SyncsWR Fre
Relax safe439 No
Safe=Fre SyncsWR LwSyncsRW ACSyncdRR BCSyncdWW
Time safe439 3.56
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe440.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe440
"LwSyncdWW Rfe SyncsRW Rfe SyncdRR Fre SyncsWR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 3:r2=y; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,2 | lwz r3,0(r4) | sync | lwsync ;
stw r3,0(r2) | | lwz r3,0(r2) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r9,1
_litmus_P2_1_: stw r9,0(r2)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe440 Allowed
Histogram (53 states)
1 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=2; x=2; y=2;
3 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=2; x=2; y=2;
3 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=2; x=1; y=2;
449 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; x=1; y=1;
7 :>0:r1=0; 1:r1=2; 1:r3=0; 2:r3=1; x=1; y=2;
153 :>0:r1=1; 1:r1=1; 1:r3=2; 2:r3=2; x=2; y=2;
1598 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; x=2; y=1;
18 :>0:r1=1; 1:r1=2; 1:r3=2; 2:r3=1; x=2; y=2;
307 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=2; x=2; y=2;
135 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; x=2; y=2;
1215 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=2; x=2; y=2;
160 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; x=2; y=2;
852 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=2; x=2; y=2;
3259 :>0:r1=1; 1:r1=2; 1:r3=1; 2:r3=1; x=2; y=1;
5506 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=2; y=2;
352 :>0:r1=0; 1:r1=2; 1:r3=0; 2:r3=1; x=1; y=1;
3031 :>0:r1=1; 1:r1=1; 1:r3=2; 2:r3=1; x=2; y=1;
2419 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; x=2; y=1;
188 :>0:r1=0; 1:r1=2; 1:r3=0; 2:r3=2; x=1; y=2;
20738 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; x=2; y=2;
2131 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=2; x=1; y=2;
182 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; x=2; y=1;
11066 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; x=1; y=2;
2609 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; x=2; y=2;
17972 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=2; y=2;
23916 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=2; y=1;
4145 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=1; x=2; y=1;
371 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=2; x=2; y=2;
1858 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=1; x=2; y=2;
72771 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=1; y=1;
1410 :>0:r1=1; 1:r1=1; 1:r3=2; 2:r3=1; x=2; y=2;
32075 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; x=2; y=1;
3555 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; x=1; y=2;
7029 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=2; x=1; y=2;
5991 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; x=1; y=1;
21883 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; x=2; y=1;
112184:>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; x=1; y=2;
18333 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=2; x=2; y=2;
132087:>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1; x=2; y=1;
30350 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=1; y=2;
5297 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=1; x=1; y=1;
43411 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=2; x=2; y=2;
13717 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=1; y=1;
82430 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; x=1; y=2;
52415 :>0:r1=0; 1:r1=2; 1:r3=1; 2:r3=1; x=1; y=1;
15506 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; x=2; y=1;
33557 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; x=2; y=2;
47441 :>0:r1=0; 1:r1=2; 1:r3=2; 2:r3=2; x=1; y=2;
22112 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; x=2; y=1;
25949 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=2; x=1; y=2;
27577 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; x=1; y=2;
79442 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; x=1; y=1;
8834 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0 /\ 2:r3=1) is NOT validated
Hash=84913bfad39d8280909196253cdd84d0
Cycle=LwSyncdWW Rfe SyncsRW Rfe SyncdRR Fre SyncsWR Fre
Relax safe440 No
Safe=Fre SyncsWR LwSyncdWW ACSyncsRW ACSyncdRR
Time safe440 3.26
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe441.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe441
"Rfe SyncdRW Rfe SyncdRR Fre SyncsWR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r4) | sync | ;
stw r3,0(r4) | | lwz r3,0(r2) | ;
exists (y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r9,1
_litmus_P2_1_: stw r9,0(r2)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r10,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe441 Allowed
Histogram (38 states)
1 :>0:r1=2; 1:r1=0; 1:r3=1; 2:r3=2; y=2;
1 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=2; y=2;
3 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=2; y=2;
8 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=2; y=2;
15 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=1; y=1;
112 :>0:r1=2; 1:r1=1; 1:r3=2; 2:r3=1; y=1;
380 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; y=2;
56 :>0:r1=2; 1:r1=1; 1:r3=2; 2:r3=2; y=2;
78 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; y=2;
1058 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1; y=1;
585 :>0:r1=2; 1:r1=1; 1:r3=2; 2:r3=1; y=2;
6151 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; y=2;
3823 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; y=2;
3180 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; y=1;
10200 :>0:r1=2; 1:r1=1; 1:r3=1; 2:r3=1; y=1;
7506 :>0:r1=1; 1:r1=1; 1:r3=2; 2:r3=1; y=2;
3870 :>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=1; y=2;
15534 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=1; y=1;
11987 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; y=1;
43919 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; y=2;
7174 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=2; y=2;
25170 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; y=2;
6617 :>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=1; y=1;
7901 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; y=1;
26776 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; y=1;
23274 :>0:r1=2; 1:r1=0; 1:r3=2; 2:r3=2; y=2;
54607 :>0:r1=2; 1:r1=0; 1:r3=2; 2:r3=1; y=1;
28028 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=2; y=2;
119497:>0:r1=2; 1:r1=0; 1:r3=2; 2:r3=1; y=2;
31447 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; y=1;
89781 :>0:r1=2; 1:r1=0; 1:r3=1; 2:r3=1; y=1;
24521 :>0:r1=2; 1:r1=0; 1:r3=0; 2:r3=2; y=2;
105731:>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=1; y=2;
70854 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=2; y=2;
28510 :>0:r1=2; 1:r1=0; 1:r3=1; 2:r3=1; y=2;
4600 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; y=2;
128625:>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; y=1;
108420:>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=1) is NOT validated
Hash=0b5885c4a15a26ee6d02c74424f7c75e
Cycle=Rfe SyncdRW Rfe SyncdRR Fre SyncsWR Fre
Relax safe441 No
Safe=Fre SyncsWR ACSyncdRW ACSyncdRR
Time safe441 2.41
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe442.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe442
"LwSyncdWW Rfe SyncdRW Rfe SyncdRR Fre SyncsWR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 | li r1,2 ;
sync | sync | stw r1,0(r2) | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r4) | sync | lwsync ;
stw r3,0(r4) | | lwz r3,0(r2) | li r3,1 ;
| | | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r9,1
_litmus_P2_1_: stw r9,0(r2)
_litmus_P2_2_: sync
_litmus_P2_3_: lwz r10,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe442 Allowed
Histogram (29 states)
4 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=2; z=2;
6 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=1; z=2;
2 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=2; z=2;
50 :>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; z=2;
52 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; z=2;
918 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=2; z=2;
195 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=2; z=2;
180 :>0:r1=0; 1:r1=1; 1:r3=0; 2:r3=1; z=1;
625 :>0:r1=1; 1:r1=1; 1:r3=2; 2:r3=1; z=2;
4200 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; z=2;
2344 :>0:r1=1; 1:r1=1; 1:r3=1; 2:r3=1; z=1;
186 :>0:r1=1; 1:r1=1; 1:r3=2; 2:r3=2; z=2;
4455 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=1; z=1;
10541 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; z=2;
1852 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=2; z=2;
183553:>0:r1=1; 1:r1=0; 1:r3=1; 2:r3=1; z=1;
2506 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; z=1;
68350 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=2; z=2;
12418 :>0:r1=1; 1:r1=0; 1:r3=0; 2:r3=1; z=1;
83196 :>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=2; z=2;
32567 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=2; z=2;
20271 :>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; z=1;
17956 :>0:r1=1; 1:r1=0; 1:r3=2; 2:r3=1; z=2;
191006:>0:r1=0; 1:r1=0; 1:r3=2; 2:r3=1; z=2;
72698 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; z=1;
49366 :>0:r1=0; 1:r1=0; 1:r3=1; 2:r3=1; z=2;
124457:>0:r1=0; 1:r1=0; 1:r3=0; 2:r3=1; z=1;
67115 :>0:r1=0; 1:r1=1; 1:r3=1; 2:r3=1; z=1;
48931 :>0:r1=0; 1:r1=1; 1:r3=2; 2:r3=1; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=0 /\ 2:r3=1) is NOT validated
Hash=130cbc9fc1aab434d587039f361074fd
Cycle=LwSyncdWW Rfe SyncdRW Rfe SyncdRR Fre SyncsWR Fre
Relax safe442 No
Safe=Fre SyncsWR LwSyncdWW ACSyncdRW ACSyncdRR
Time safe442 2.52
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe443.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe443
"SyncdWW Rfe SyncsRR Fre SyncdWW Rfe SyncsRR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 3:r2=y; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r2) | sync | lwz r3,0(r2) | sync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r2)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r9,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe443 Allowed
Histogram (94 states)
1 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; x=2; y=1;
1 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; x=1; y=2;
1 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; x=2; y=1;
2 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; x=1; y=2;
7 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=1; x=2; y=1;
6 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; x=1; y=2;
4 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=1; x=2; y=1;
3 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=2; x=1; y=2;
5 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; x=2; y=1;
20 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=1; x=2; y=1;
15 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; x=2; y=1;
3 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=2; x=1; y=2;
10 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=1; y=2;
102 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; x=1; y=1;
113 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=2; x=1; y=2;
14 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=1; x=1; y=2;
50 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=1;
29 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=2; y=1;
170 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; x=1; y=2;
281 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; x=1; y=1;
281 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=2; y=1;
35 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=1;
30 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; x=1; y=1;
39 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=1; y=2;
266 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=1; y=2;
292 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; x=1; y=2;
29 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; x=1; y=2;
199 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=2; x=1; y=2;
302 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; x=1; y=1;
360 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; x=1; y=1;
203 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=1;
227 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; x=2; y=1;
771 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=1; x=2; y=1;
62 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=1; x=1; y=2;
264 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=1;
639 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=2; x=1; y=2;
245 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=1;
655 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=2; y=1;
591 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=1;
203 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=1;
614 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=1; y=2;
969 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; x=1; y=2;
374 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; x=1; y=1;
2786 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; x=1; y=1;
1956 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=1; x=1; y=1;
82 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; x=1; y=2;
1380 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; x=1; y=2;
1705 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r3=2; x=1; y=2;
5879 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=1; x=1; y=1;
2269 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; x=2; y=1;
145 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=2; x=1; y=1;
6769 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=1; y=2;
113 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; x=1; y=1;
2295 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=1;
6097 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=1; x=1; y=1;
897 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=2; x=1; y=1;
4679 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; x=2; y=1;
64 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=2; x=1; y=2;
7502 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; x=1; y=1;
2282 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=2; x=1; y=1;
3896 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=1;
23407 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=1; x=1; y=1;
46469 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=2; x=1; y=2;
18754 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; x=1; y=1;
11601 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r3=2; x=1; y=1;
17720 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=1; x=1; y=1;
33606 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=2; x=1; y=2;
28368 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; x=2; y=1;
1353 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=2; x=1; y=1;
10702 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=1;
15592 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; x=1; y=2;
15462 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=1;
5947 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; x=1; y=1;
38307 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=1;
24614 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=1; y=2;
20572 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=1; y=1;
36251 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=2; x=1; y=2;
40046 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=1; x=1; y=1;
20794 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; x=1; y=1;
190057:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=1; y=1;
74966 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; x=2; y=1;
23526 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; x=1; y=1;
18236 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; x=1; y=1;
6731 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=2; y=1;
18970 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; x=1; y=1;
3150 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=2; x=1; y=1;
12586 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=1; y=1;
38548 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=1; y=1;
35693 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=1; y=1;
21574 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r3=1; x=1; y=1;
8072 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=1; x=1; y=1;
11649 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=1; y=1;
67334 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; x=1; y=1;
60 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r3=1) is NOT validated
Hash=a81522a3e8f805d50728a24850911c20
Cycle=SyncdWW Rfe SyncsRR Fre SyncdWW Rfe SyncsRR Fre
Relax safe443 No
Safe=Fre SyncsRR BCSyncdWW
Time safe443 4.86
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe444.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe444
"SyncdWW Rfe LwSyncdRR Fre SyncdWW Rfe SyncsRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
lwsync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwz r3,0(r2) | sync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r2)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r9,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe444 Allowed
Histogram (41 states)
3 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=2; z=1;
4 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r3=1; z=1;
29 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=0; z=1;
27 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; z=2;
11 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; z=2;
22 :>0:r1=1; 0:r3=0; 2:r1=2; 2:r3=1; z=1;
28 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; z=2;
172 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; z=2;
51 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=2; z=2;
299 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; z=2;
670 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; z=1;
275 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; z=1;
237 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=2; z=2;
659 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; z=2;
513 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; z=2;
11024 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; z=1;
4669 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; z=2;
9392 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; z=1;
8112 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; z=1;
3281 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; z=2;
119 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; z=2;
8977 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; z=2;
7754 :>0:r1=1; 0:r3=0; 2:r1=2; 2:r3=2; z=1;
15737 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=2; z=2;
14937 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; z=2;
18546 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=1; z=1;
24131 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; z=1;
39266 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; z=2;
5064 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; z=1;
27980 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=1; z=1;
50015 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; z=2;
31996 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=1; z=1;
41422 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; z=1;
49466 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; z=1;
154361:>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; z=1;
21709 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; z=2;
173599:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; z=1;
38133 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; z=1;
151704:>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; z=1;
28444 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; z=1;
57162 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=1) is NOT validated
Hash=f9f36fac6764895801721af93dee9cf0
Cycle=SyncdWW Rfe LwSyncdRR Fre SyncdWW Rfe SyncsRR Fre
Relax safe444 No
Safe=Fre SyncsRR LwSyncdRR BCSyncdWW
Time safe444 3.03
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe445.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe445
"SyncdWW Rfe LwSyncsRR Fre SyncdWW Rfe SyncsRR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 3:r2=y; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
lwsync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r2) | sync | lwz r3,0(r2) | sync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r2)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r9,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe445 Allowed
Histogram (90 states)
1 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=1; x=1; y=2;
2 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r3=2; x=1; y=2;
2 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; x=1; y=2;
1 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=2; x=1; y=2;
5 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=1; y=2;
1 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=1;
1 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=2; x=1; y=2;
7 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r3=2; x=1; y=1;
5 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=2; x=1; y=2;
3 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; x=1; y=1;
1 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; x=1; y=2;
1 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=2; x=1; y=2;
28 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=2; x=1; y=2;
2 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=1; x=2; y=1;
31 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=1; x=1; y=1;
36 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; x=1; y=2;
4 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; x=2; y=1;
1 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=1;
15 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=1; y=2;
13 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; x=1; y=2;
8 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; x=1; y=2;
85 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=1; y=2;
16 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=2; x=1; y=2;
88 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; x=1; y=2;
225 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; x=1; y=2;
100 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=1; y=1;
1 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; x=1; y=2;
20 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=1;
61 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=1; x=1; y=1;
59 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=2; x=1; y=1;
92 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=1;
144 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; x=1; y=1;
101 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; x=2; y=1;
126 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=1;
20 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; x=2; y=1;
49 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r3=1; x=1; y=1;
124 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=1; x=1; y=1;
64 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=1;
221 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=1; x=2; y=1;
269 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; x=1; y=1;
68 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; x=1; y=1;
73 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; x=1; y=1;
1212 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; x=1; y=1;
116 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; x=1; y=1;
17 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; x=1; y=1;
90 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; x=1; y=1;
120 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=2; x=1; y=1;
285 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=2; y=1;
91 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=1;
728 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=2; y=1;
2792 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=1;
334 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=1; x=1; y=1;
30 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; x=2; y=1;
34 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=1;
683 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=1; x=2; y=1;
77 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; x=1; y=1;
705 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; x=1; y=2;
309 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=1;
8555 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; x=1; y=2;
6524 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; x=1; y=1;
92 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=2; y=1;
7399 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=1; y=1;
3262 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; x=2; y=1;
26283 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=1; y=1;
5237 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=2; x=1; y=1;
31517 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=1; x=1; y=1;
43454 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=2; x=1; y=2;
5024 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=1; y=2;
35544 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=1;
17889 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; x=1; y=1;
16606 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; x=1; y=2;
7111 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=1; y=2;
30604 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; x=1; y=1;
71980 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; x=2; y=1;
23330 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=1; x=1; y=1;
34886 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; x=2; y=1;
28218 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; x=1; y=1;
18218 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=1; y=1;
141 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=2; x=1; y=2;
35468 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=2; x=1; y=2;
31790 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; x=1; y=1;
40283 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=1; y=2;
30912 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=1; x=1; y=1;
14889 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=2; x=1; y=1;
49014 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=2; x=1; y=2;
242199:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=1; y=1;
61470 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; x=1; y=1;
48727 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=1; y=1;
13562 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=2; y=1;
15 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=2; x=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r3=1) is NOT validated
Hash=4d09bf4fffc0a9b32efc7dbe39f5f319
Cycle=SyncdWW Rfe LwSyncsRR Fre SyncdWW Rfe SyncsRR Fre
Relax safe445 No
Safe=Fre SyncsRR LwSyncsRR BCSyncdWW
Time safe445 4.94
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe446.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe446
"LwSyncdWW Rfe SyncsRR Fre SyncdWW Rfe SyncsRR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 3:r2=y; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r2) | sync | lwz r3,0(r2) | lwsync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r2)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r9,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe446 Allowed
Histogram (101 states)
2 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=1; x=2; y=1;
1 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; x=1; y=2;
6 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; x=1; y=2;
1 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; x=1; y=2;
3 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=2; x=1; y=2;
6 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; x=2; y=1;
2 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; x=1; y=2;
6 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; x=2; y=1;
9 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=1; y=2;
9 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=2; x=1; y=2;
52 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; x=2; y=1;
9 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; x=1; y=2;
46 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=1; x=2; y=1;
37 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=1; x=2; y=1;
16 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; x=1; y=1;
5 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; x=2; y=1;
287 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=1; y=2;
93 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; x=1; y=2;
61 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=2; x=1; y=2;
33 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=1; x=1; y=2;
452 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=2; y=1;
118 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=1; x=2; y=1;
159 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=1; x=1; y=2;
74 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; x=1; y=2;
218 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=1; y=2;
61 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; x=2; y=1;
16 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; x=2; y=1;
222 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=1;
209 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=2; x=1; y=1;
502 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; x=1; y=2;
606 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; x=2; y=1;
231 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=1;
351 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=2; y=1;
543 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=2; x=1; y=2;
115 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; x=2; y=1;
20 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; x=1; y=2;
206 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; x=1; y=1;
136 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=2; x=1; y=2;
352 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=1;
1090 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=1; x=2; y=1;
422 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; x=1; y=1;
123 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=2; x=1; y=2;
201 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; x=1; y=1;
822 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=2; y=1;
16779 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=1;
1733 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=1;
369 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; x=1; y=2;
341 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; x=1; y=1;
668 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=1; x=1; y=1;
554 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; x=1; y=1;
2253 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=2; x=1; y=1;
2850 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=2; x=1; y=2;
1838 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=1;
3923 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=2; x=1; y=1;
4235 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=1;
1576 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=2; x=1; y=1;
1134 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; x=1; y=1;
4886 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r3=1; x=1; y=1;
9874 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; x=1; y=2;
1482 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r3=2; x=1; y=2;
3912 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=1; y=2;
9918 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=1;
2267 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=1; x=1; y=1;
7113 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=1; x=1; y=1;
4595 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=1; y=2;
19346 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; x=1; y=1;
4059 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; x=1; y=2;
5789 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=1; x=1; y=1;
19793 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; x=1; y=1;
71920 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=1;
9778 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=1; x=1; y=1;
40360 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=2; x=1; y=2;
6706 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; x=1; y=1;
53900 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=1;
3464 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=1;
11242 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; x=1; y=2;
26090 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=2; y=1;
12965 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; x=1; y=1;
9585 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=1; x=1; y=1;
22823 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=2; x=1; y=2;
15848 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=1;
41035 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=1; y=2;
2777 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=2; x=1; y=1;
19064 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=1; y=1;
4036 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; x=2; y=1;
14146 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; x=1; y=1;
16876 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; x=1; y=1;
181764:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=1; y=1;
35350 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; x=1; y=1;
8329 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; x=1; y=1;
16469 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; x=1; y=1;
73788 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; x=2; y=1;
13882 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; x=2; y=1;
39520 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=2; x=1; y=2;
24467 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=1; y=1;
32603 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=1; x=1; y=1;
7179 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r3=2; x=1; y=1;
19230 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=1; y=1;
10994 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=1; y=1;
6301 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=1; y=1;
8289 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r3=1) is NOT validated
Hash=34a9c2b8737dee3cd098403ecfa5e76e
Cycle=LwSyncdWW Rfe SyncsRR Fre SyncdWW Rfe SyncsRR Fre
Relax safe446 No
Safe=Fre SyncsRR LwSyncdWW ACSyncsRR BCSyncdWW
Time safe446 4.99
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe447.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe447
"Rfe SyncdRR Fre SyncdWW Rfe SyncsRR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwz r3,0(r2) | ;
| li r3,1 | | ;
| stw r3,0(r4) | | ;
exists (y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r2)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r9,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe447 Allowed
Histogram (53 states)
1 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; y=2;
8 :>0:r1=2; 0:r3=0; 2:r1=1; 2:r3=1; y=1;
46 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=2; y=2;
27 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; y=2;
213 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=2; y=1;
106 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; y=2;
4480 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; y=2;
1831 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; y=2;
61 :>0:r1=2; 0:r3=0; 2:r1=2; 2:r3=1; y=1;
1469 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; y=1;
5573 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; y=1;
3404 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; y=2;
1891 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=1; y=2;
7511 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; y=2;
5030 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=0; y=1;
5102 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=2; y=2;
2115 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=2; y=2;
13403 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; y=2;
15268 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; y=1;
2191 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; y=2;
5177 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; y=2;
9123 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; y=1;
17550 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=2; y=2;
1566 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; y=1;
2291 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; y=1;
10771 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; y=1;
5664 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r3=2; y=2;
4525 :>0:r1=2; 0:r3=0; 2:r1=2; 2:r3=2; y=1;
6640 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=2; y=1;
10121 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=1; y=1;
4483 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; y=1;
423 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=1; y=2;
4108 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; y=2;
41394 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r3=1; y=1;
20518 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=1; y=1;
17192 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; y=2;
14165 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; y=1;
14826 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=2; y=2;
28828 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; y=1;
31609 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=1; y=1;
17801 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; y=2;
9477 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; y=2;
8081 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; y=2;
115298:>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; y=1;
8955 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=1; y=1;
140080:>0:r1=2; 0:r3=1; 2:r1=2; 2:r3=2; y=1;
15498 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; y=1;
90124 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; y=1;
17288 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=1; y=1;
12238 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; y=2;
92239 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; y=1;
124353:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; y=1;
27864 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=1) is NOT validated
Hash=199fbcc658cd3f92720644e21c81bba1
Cycle=Rfe SyncdRR Fre SyncdWW Rfe SyncsRR Fre
Relax safe447 No
Safe=Fre SyncsRR ACSyncdRR BCSyncdWW
Time safe447 2.95
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe448.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe448
"LwSyncdWW Rfe SyncdRR Fre SyncdWW Rfe SyncsRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwz r3,0(r2) | lwsync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r2)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r9,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe448 Allowed
Histogram (41 states)
5 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; z=2;
4 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r3=1; z=1;
127 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; z=2;
2 :>0:r1=1; 0:r3=0; 2:r1=2; 2:r3=1; z=1;
13 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; z=2;
16 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=2; z=1;
35 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=2; z=2;
12 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; z=2;
31 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; z=2;
1381 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; z=2;
536 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=0; z=1;
139 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=2; z=2;
224 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; z=2;
208 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; z=2;
825 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; z=1;
25339 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=1; z=1;
1753 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; z=2;
5898 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; z=1;
1216 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; z=1;
2537 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; z=2;
21730 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; z=1;
32036 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; z=1;
12486 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=2; z=2;
3552 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; z=2;
19018 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; z=1;
30015 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; z=2;
45615 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; z=2;
19672 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; z=1;
10323 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=1; z=1;
117642:>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; z=1;
7935 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; z=1;
21113 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; z=2;
13049 :>0:r1=1; 0:r3=0; 2:r1=2; 2:r3=2; z=1;
68554 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; z=1;
190765:>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; z=1;
865 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; z=1;
18372 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=1; z=1;
7864 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; z=2;
23272 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; z=1;
182121:>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; z=1;
113700:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=1) is NOT validated
Hash=60a35107f8b589c0a734497265f3ecbc
Cycle=LwSyncdWW Rfe SyncdRR Fre SyncdWW Rfe SyncsRR Fre
Relax safe448 No
Safe=Fre SyncsRR LwSyncdWW ACSyncdRR BCSyncdWW
Time safe448 2.92
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe449.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe449
"SyncdWW Rfe SyncsRW Rfe SyncdRW Rfe SyncsRR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 3:r2=y; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | sync | sync | stw r1,0(r2) ;
li r3,2 | li r3,1 | lwz r3,0(r2) | sync ;
stw r3,0(r2) | stw r3,0(r4) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r2)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r9,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe449 Allowed
Histogram (74 states)
4 :>0:r1=1; 1:r1=2; 2:r1=0; 2:r3=2; x=2; y=1;
1 :>0:r1=1; 1:r1=2; 2:r1=1; 2:r3=1; x=2; y=1;
1 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; x=2; y=1;
4 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=2;
5 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
16 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=2; y=1;
37 :>0:r1=1; 1:r1=2; 2:r1=2; 2:r3=1; x=2; y=1;
3 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=1; y=2;
135 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=1; x=2; y=1;
26 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
76 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=1; x=2; y=1;
7 :>0:r1=1; 1:r1=2; 2:r1=0; 2:r3=0; x=2; y=1;
76 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
46 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=2; x=1; y=2;
94 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=2;
27 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=1;
51 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=2; y=1;
82 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=1;
19 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
17 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
63 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=2; x=1; y=2;
213 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; x=1; y=1;
453 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
53 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=1; x=1; y=2;
254 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=1;
225 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=1;
769 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
1326 :>0:r1=1; 1:r1=1; 2:r1=2; 2:r3=1; x=2; y=1;
30 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
392 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; x=2; y=1;
844 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=1;
6633 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
6635 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=1; y=1;
461 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
455 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=1;
2084 :>0:r1=1; 1:r1=2; 2:r1=2; 2:r3=2; x=2; y=1;
1553 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=1;
14782 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; x=2; y=1;
17570 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=1;
6647 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=1; y=2;
6140 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=1;
5663 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; x=1; y=1;
1289 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=1;
8681 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; x=2; y=1;
3660 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=1; y=1;
412 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=2; y=1;
24834 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=1;
52840 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=1; x=1; y=1;
7386 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=1; x=1; y=1;
11505 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
2122 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=1;
21238 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=2; x=2; y=1;
18848 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
38154 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
30275 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=1; y=2;
31712 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=1;
5214 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=1;
17389 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=2; x=1; y=1;
14341 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=1; y=1;
97510 :>0:r1=1; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=1;
51610 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=1;
45955 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=2; x=1; y=1;
36407 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=1;
6663 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=1;
673 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; x=1; y=1;
17855 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; x=1; y=1;
56326 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
198428:>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=1; y=1;
3349 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=2; x=1; y=2;
20485 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=1;
46734 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
53384 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=1;
723 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=1; y=1;
26 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=2; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=1) is NOT validated
Hash=e0b3bd3699f1bfc76aec1b55c43cdb9f
Cycle=SyncdWW Rfe SyncsRW Rfe SyncdRW Rfe SyncsRR Fre
Relax safe449 No
Safe=Fre SyncsRR BCSyncsRW BCSyncdWW BCSyncdRW
Time safe449 4.31
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe450.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe450
"SyncdWW Rfe SyncdRW Rfe SyncsRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | sync | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r2) | sync ;
stw r3,0(r4) | | li r3,1 ;
| | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stw r8,0(r2)
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r9,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe450 Allowed
Histogram (17 states)
211 :>0:r1=1; 1:r1=0; 1:r3=2; y=1;
3214 :>0:r1=0; 1:r1=1; 1:r3=1; y=2;
359 :>0:r1=1; 1:r1=1; 1:r3=1; y=1;
5004 :>0:r1=0; 1:r1=0; 1:r3=1; y=2;
5623 :>0:r1=1; 1:r1=2; 1:r3=1; y=1;
3577 :>0:r1=1; 1:r1=0; 1:r3=0; y=1;
22165 :>0:r1=0; 1:r1=0; 1:r3=2; y=2;
39180 :>0:r1=0; 1:r1=0; 1:r3=0; y=2;
57667 :>0:r1=0; 1:r1=1; 1:r3=2; y=2;
22954 :>0:r1=0; 1:r1=0; 1:r3=1; y=1;
6688 :>0:r1=0; 1:r1=0; 1:r3=2; y=1;
191477:>0:r1=1; 1:r1=2; 1:r3=2; y=1;
57599 :>0:r1=0; 1:r1=1; 1:r3=1; y=1;
90439 :>0:r1=0; 1:r1=2; 1:r3=2; y=1;
313715:>0:r1=0; 1:r1=0; 1:r3=0; y=1;
65527 :>0:r1=0; 1:r1=2; 1:r3=2; y=2;
114601:>0:r1=0; 1:r1=2; 1:r3=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1) is NOT validated
Hash=70081d6c91e7fcd6671fba2ba6eef8e3
Cycle=SyncdWW Rfe SyncdRW Rfe SyncsRR Fre
Relax safe450 No
Safe=Fre SyncsRR BCSyncdWW BCSyncdRW
Time safe450 1.74
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe451.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe451
"SyncdWW Rfe SyncdRW Rfe SyncdRW Rfe SyncsRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | sync | sync | stw r1,0(r2) ;
li r3,1 | li r3,1 | lwz r3,0(r2) | sync ;
stw r3,0(r4) | stw r3,0(r4) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r2)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r9,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe451 Allowed
Histogram (39 states)
1 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=2; z=1;
32 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=2; z=2;
49 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
7 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
74 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
42 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
5 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; z=2;
5 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; z=1;
12 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
459 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; z=2;
61 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; z=2;
1074 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; z=2;
28 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; z=2;
669 :>0:r1=1; 1:r1=1; 2:r1=2; 2:r3=2; z=1;
2340 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; z=2;
335 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; z=1;
7571 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
1071 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; z=1;
7584 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; z=1;
311 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; z=1;
8343 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; z=1;
28456 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; z=1;
9713 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; z=1;
9722 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
23069 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
61813 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; z=1;
4073 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; z=1;
11623 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; z=1;
23868 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; z=1;
52900 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; z=2;
26416 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; z=1;
90828 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; z=1;
61179 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
167744:>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; z=1;
60609 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; z=1;
66822 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; z=1;
4195 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; z=1;
225318:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; z=1;
41579 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=1) is NOT validated
Hash=5606aaa7c8fcb4b158a037dc0226a642
Cycle=SyncdWW Rfe SyncdRW Rfe SyncdRW Rfe SyncsRR Fre
Relax safe451 No
Safe=Fre SyncsRR BCSyncdWW BCSyncdRW
Time safe451 2.82
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe452.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe452
"SyncsWW Rfe LwSyncdRR Fre SyncsWW Rfe LwSyncdRR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
lwsync | stw r1,0(r2) | lwsync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwz r3,0(r4) | sync ;
| li r3,2 | | li r3,2 ;
| stw r3,0(r2) | | stw r3,0(r2) ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe452 Allowed
Histogram (67 states)
1 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=0; x=2; y=2;
1 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=1; x=2; y=2;
1 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; x=2; y=2;
14 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; x=2; y=2;
6 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=2; x=2; y=2;
37 :>0:r1=1; 0:r3=0; 2:r1=2; 2:r3=2; x=2; y=2;
10 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=1; x=2; y=2;
1 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=1; x=2; y=2;
496 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=0; x=2; y=2;
12 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=2; x=2; y=2;
53 :>0:r1=2; 0:r3=0; 2:r1=2; 2:r3=2; x=2; y=2;
103 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=0; x=2; y=2;
14 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=0; x=2; y=2;
344 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=0; x=2; y=2;
3336 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=1; x=2; y=2;
52 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=2;
23 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=2; x=2; y=2;
56 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=1; x=2; y=2;
9 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=1; x=2; y=2;
399 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=0; x=2; y=2;
1555 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=1; x=2; y=2;
736 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r3=2; x=2; y=2;
208 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=0; x=2; y=2;
837 :>0:r1=2; 0:r3=0; 2:r1=1; 2:r3=2; x=2; y=2;
1672 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=0; x=2; y=2;
271 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=1; x=2; y=2;
1231 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=0; x=2; y=2;
15703 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=2; x=2; y=2;
35 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=2;
3757 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; x=2; y=2;
23579 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=2; y=2;
11673 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r3=2; x=2; y=2;
4970 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=2; y=2;
216 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; x=2; y=2;
8297 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=2; x=2; y=2;
27499 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=2;
3578 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; x=2; y=2;
795 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=0; x=2; y=2;
23974 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=2;
976 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; x=2; y=2;
53363 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; x=2; y=2;
468 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; x=2; y=2;
38374 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; x=2; y=2;
5746 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; x=2; y=2;
4441 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=0; x=2; y=2;
10878 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; x=2; y=2;
16551 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=2;
1540 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=2; x=2; y=2;
61981 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=0; x=2; y=2;
29605 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; x=2; y=2;
81854 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=2;
73450 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=2;
56117 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=2; y=2;
32134 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=2;
11271 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; x=2; y=2;
78741 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=2; x=2; y=2;
2823 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=2; y=2;
1931 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; x=2; y=2;
6526 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=2; x=2; y=2;
573 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=2;
34653 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=2;
55369 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; x=2; y=2;
33201 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=2; x=2; y=2;
10290 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=0; x=2; y=2;
84879 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=2;
66609 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=2; x=2; y=2;
10102 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r3=0) is NOT validated
Hash=013c2a27afe03feeb37245bf7eaf70a0
Cycle=SyncsWW Rfe LwSyncdRR Fre SyncsWW Rfe LwSyncdRR Fre
Relax safe452 No
Safe=Fre LwSyncdRR BCSyncsWW
Time safe452 3.73
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe453.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe453
"SyncdWW Rfe LwSyncdRR Fre SyncsWW Rfe LwSyncdRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
lwsync | stw r1,0(r2) | lwsync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwz r3,0(r4) | sync ;
| li r3,2 | | li r3,1 ;
| stw r3,0(r2) | | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe453 Allowed
Histogram (31 states)
4 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; y=2;
14 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; y=2;
112 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=0; y=2;
54 :>0:r1=1; 0:r3=0; 2:r1=2; 2:r3=1; y=2;
4 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=0; y=2;
148 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r3=1; y=2;
1868 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=1; y=2;
69 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=0; y=2;
134 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=0; y=2;
3564 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=0; y=2;
98 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=0; y=2;
1803 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=1; y=2;
24 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; y=2;
2762 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=0; y=2;
15410 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=1; y=2;
33831 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; y=2;
12664 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=0; y=2;
32446 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=1; y=2;
18332 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=0; y=2;
23671 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=1; y=2;
101468:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; y=2;
60214 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; y=2;
5443 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; y=2;
123928:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; y=2;
87812 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=1; y=2;
82203 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; y=2;
80816 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; y=2;
39119 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=1; y=2;
14909 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; y=2;
103176:>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; y=2;
153900:>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=1; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r3=0) is NOT validated
Hash=787aa4388bf04dc50be5a9b98ad6b2a7
Cycle=SyncdWW Rfe LwSyncdRR Fre SyncsWW Rfe LwSyncdRR Fre
Relax safe453 No
Safe=Fre LwSyncdRR BCSyncsWW BCSyncdWW
Time safe453 2.66
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe454.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe454
"Rfe SyncdRR Fre SyncsWW Rfe LwSyncdRR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | lwsync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwz r3,0(r4) | ;
| li r3,2 | | ;
| stw r3,0(r2) | | ;
exists (x=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
Test safe454 Allowed
Histogram (32 states)
28 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=0; x=2;
5 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=0; x=2;
7 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; x=2;
33 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=0; x=2;
343 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=0; x=2;
21 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; x=2;
617 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r3=1; x=2;
16929 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=2;
227 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=0; x=2;
2080 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=0; x=2;
7020 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=1; x=2;
39299 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; x=2;
38603 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=2;
359 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; x=2;
6345 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=1; x=2;
27365 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; x=2;
3702 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; x=2;
5180 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=0; x=2;
7670 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=1; x=2;
42176 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=1; x=2;
176725:>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=1; x=2;
13720 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; x=2;
18943 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=2;
18414 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=0; x=2;
49898 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=1; x=2;
51887 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; x=2;
54877 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=0; x=2;
114571:>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=2;
114241:>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=1; x=2;
144724:>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=0; x=2;
43960 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=1; x=2;
31 :>0:r1=1; 0:r3=0; 2:r1=2; 2:r3=1; x=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r3=0) is NOT validated
Hash=00a5b70db00f0527ccad07035b9476f9
Cycle=Rfe SyncdRR Fre SyncsWW Rfe LwSyncdRR Fre
Relax safe454 No
Safe=Fre LwSyncdRR ACSyncdRR BCSyncsWW
Time safe454 2.23
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe455.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe455
"LwSyncdWW Rfe SyncdRR Fre SyncsWW Rfe LwSyncdRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | lwsync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwz r3,0(r4) | lwsync ;
| li r3,2 | | li r3,1 ;
| stw r3,0(r2) | | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe455 Allowed
Histogram (32 states)
3 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=0; y=2;
1 :>0:r1=1; 0:r3=0; 2:r1=2; 2:r3=1; y=2;
14 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r3=1; y=2;
8 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; y=2;
27 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; y=2;
248 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=0; y=2;
70 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=0; y=2;
372 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=0; y=2;
205 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=0; y=2;
308 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=0; y=2;
2277 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=1; y=2;
3801 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=0; y=2;
3313 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=0; y=2;
1775 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=1; y=2;
6520 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=0; y=2;
23224 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; y=2;
80701 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; y=2;
5073 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=0; y=2;
64880 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; y=2;
79574 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=1; y=2;
102381:>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=1; y=2;
4354 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; y=2;
23379 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; y=2;
832 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=1; y=2;
1611 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; y=2;
41972 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=1; y=2;
152786:>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=1; y=2;
15894 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; y=2;
65458 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; y=2;
77629 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=1; y=2;
150174:>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; y=2;
91136 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r3=0) is NOT validated
Hash=c77d1b4fed3305c3c9a9fcb223312ac8
Cycle=LwSyncdWW Rfe SyncdRR Fre SyncsWW Rfe LwSyncdRR Fre
Relax safe455 No
Safe=Fre LwSyncdWW LwSyncdRR ACSyncdRR BCSyncsWW
Time safe455 2.64
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe456.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe456
"LwSyncsWW Rfe SyncdRR Fre SyncsWW Rfe LwSyncdRR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | lwsync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwz r3,0(r4) | lwsync ;
| li r3,2 | | li r3,2 ;
| stw r3,0(r2) | | stw r3,0(r2) ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: sync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe456 Allowed
Histogram (60 states)
2 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=1; x=2; y=2;
2 :>0:r1=1; 0:r3=0; 2:r1=2; 2:r3=2; x=2; y=2;
5 :>0:r1=2; 0:r3=0; 2:r1=2; 2:r3=2; x=2; y=2;
1 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=1; x=2; y=2;
1 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=1; x=2; y=2;
10 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r3=2; x=2; y=2;
2 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=0; x=2; y=2;
28 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=0; x=2; y=2;
111 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; x=2; y=2;
21 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=2; x=2; y=2;
26 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=1; x=2; y=2;
197 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=2; x=2; y=2;
21 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=0; x=2; y=2;
160 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=2;
215 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=1; x=2; y=2;
673 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; x=2; y=2;
77 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=1; x=2; y=2;
264 :>0:r1=2; 0:r3=0; 2:r1=1; 2:r3=2; x=2; y=2;
381 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; x=2; y=2;
11 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=2; x=2; y=2;
45 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=0; x=2; y=2;
10987 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; x=2; y=2;
415 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=0; x=2; y=2;
1000 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=0; x=2; y=2;
1255 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=0; x=2; y=2;
2506 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=2; y=2;
415 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=2;
8364 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; x=2; y=2;
2233 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=2; y=2;
106 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=0; x=2; y=2;
8487 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=2;
5049 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=2; y=2;
6174 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=0; x=2; y=2;
199 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; x=2; y=2;
1231 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; x=2; y=2;
3377 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=0; x=2; y=2;
6673 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=2;
10174 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=2;
10034 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r3=2; x=2; y=2;
39948 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=2;
31609 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=2;
8111 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; x=2; y=2;
22803 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=2; x=2; y=2;
101876:>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; x=2; y=2;
11088 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; x=2; y=2;
15335 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=0; x=2; y=2;
40729 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=2;
4924 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=2; x=2; y=2;
6573 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; x=2; y=2;
1989 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; x=2; y=2;
3860 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=0; x=2; y=2;
121429:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; x=2; y=2;
3365 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=2; x=2; y=2;
9566 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=2;
63543 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=2; y=2;
124931:>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=2; x=2; y=2;
190388:>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=2;
63728 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=2;
47412 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=2; x=2; y=2;
5861 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=2; x=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r3=0) is NOT validated
Hash=d2b4a72644e4ad0a6e53876d52f48cb1
Cycle=LwSyncsWW Rfe SyncdRR Fre SyncsWW Rfe LwSyncdRR Fre
Relax safe456 No
Safe=Fre LwSyncsWW LwSyncdRR ACSyncdRR BCSyncsWW
Time safe456 3.61
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe457.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe457
"SyncdWW Rfe SyncsRW Rfe LwSyncdRR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | lwsync | stw r1,0(r2) ;
li r3,2 | lwz r3,0(r4) | sync ;
stw r3,0(r2) | | li r3,1 ;
| | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: lwsync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe457 Allowed
Histogram (13 states)
1587 :>0:r1=1; 1:r1=2; 1:r3=1; x=2;
726 :>0:r1=1; 1:r1=0; 1:r3=0; x=2;
36891 :>0:r1=0; 1:r1=2; 1:r3=0; x=1;
54866 :>0:r1=0; 1:r1=0; 1:r3=0; x=2;
86767 :>0:r1=1; 1:r1=0; 1:r3=1; x=2;
63125 :>0:r1=1; 1:r1=1; 1:r3=1; x=2;
29662 :>0:r1=0; 1:r1=0; 1:r3=1; x=1;
271590:>0:r1=0; 1:r1=0; 1:r3=0; x=1;
264585:>0:r1=0; 1:r1=2; 1:r3=1; x=1;
31472 :>0:r1=0; 1:r1=1; 1:r3=1; x=2;
144908:>0:r1=0; 1:r1=0; 1:r3=1; x=2;
8191 :>0:r1=0; 1:r1=1; 1:r3=1; x=1;
5630 :>0:r1=0; 1:r1=2; 1:r3=1; x=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0) is NOT validated
Hash=0c35aba891cff8273f3e3b04f583524c
Cycle=SyncdWW Rfe SyncsRW Rfe LwSyncdRR Fre
Relax safe457 No
Safe=Fre LwSyncdRR BCSyncsRW BCSyncdWW
Time safe457 1.49
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe458.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe458
"SyncsWW Rfe SyncdRW Rfe SyncsRW Rfe LwSyncdRR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | sync | lwsync | stw r1,0(r2) ;
li r3,1 | li r3,2 | lwz r3,0(r4) | sync ;
stw r3,0(r4) | stw r3,0(r2) | | li r3,2 ;
| | | stw r3,0(r2) ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe458 Allowed
Histogram (61 states)
4 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; x=1; y=2;
2 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=0; x=2; y=2;
3 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
5 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=1; x=2; y=2;
9 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=2;
2 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=2;
4 :>0:r1=1; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=2;
86 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; x=1; y=2;
46 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=0; x=2; y=2;
15 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
19 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; x=2; y=2;
1169 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
883 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
40 :>0:r1=2; 1:r1=1; 2:r1=1; 2:r3=2; x=2; y=2;
748 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=2;
2353 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=0; x=2; y=2;
418 :>0:r1=2; 1:r1=0; 2:r1=2; 2:r3=0; x=1; y=2;
1847 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
3930 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
1964 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
4200 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
4487 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
946 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=2;
9606 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=2;
6995 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=2;
123 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=2;
109 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=2; x=2; y=2;
7211 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
43 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; x=1; y=2;
1249 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; x=2; y=2;
8882 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
5681 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
2671 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=1; y=2;
8997 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; x=2; y=2;
1794 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; x=2; y=2;
70765 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
4438 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
2181 :>0:r1=2; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
6129 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=0; x=1; y=2;
763 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
10486 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
13453 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
35731 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
13614 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
15684 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=2;
22232 :>0:r1=2; 1:r1=0; 2:r1=2; 2:r3=1; x=1; y=2;
9503 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
43302 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
7130 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
16342 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
97707 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
13976 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=2; y=2;
129986:>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=2; x=2; y=2;
83688 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
36823 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=0; x=1; y=2;
10257 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
125226:>0:r1=2; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
37336 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; x=1; y=2;
94236 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
1946 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=2;
20525 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0) is NOT validated
Hash=c6ba0b389c440b97ffc522f0bb5cab2a
Cycle=SyncsWW Rfe SyncdRW Rfe SyncsRW Rfe LwSyncdRR Fre
Relax safe458 No
Safe=Fre LwSyncdRR BCSyncsWW BCSyncsRW BCSyncdRW
Time safe458 3.56
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe459.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe459
"SyncdWW Rfe SyncdRW Rfe SyncsRW Rfe LwSyncdRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | sync | lwsync | stw r1,0(r2) ;
li r3,1 | li r3,2 | lwz r3,0(r4) | sync ;
stw r3,0(r4) | stw r3,0(r2) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe459 Allowed
Histogram (30 states)
5 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; y=2;
41 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=0; y=1;
2 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; y=2;
44 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; y=2;
11 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=1; y=2;
493 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; y=2;
27 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=0; y=2;
475 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1; y=2;
1371 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; y=1;
5136 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; y=2;
25854 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; y=2;
646 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; y=1;
1826 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=0; y=2;
26914 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; y=1;
111349:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; y=2;
2239 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; y=2;
21616 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=0; y=1;
47594 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; y=1;
8221 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; y=2;
53693 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; y=2;
90628 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; y=2;
14617 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; y=1;
132646:>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; y=2;
34243 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; y=2;
44205 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; y=1;
134104:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; y=1;
28922 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; y=2;
199964:>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; y=1;
12775 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; y=1;
339 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=0; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0) is NOT validated
Hash=736d2884e27806cdad6b73d151f280e7
Cycle=SyncdWW Rfe SyncdRW Rfe SyncsRW Rfe LwSyncdRR Fre
Relax safe459 No
Safe=Fre LwSyncdRR BCSyncsRW BCSyncdWW BCSyncdRW
Time safe459 2.56
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe460.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe460
"SyncdWW Rfe LwSyncdRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=x;}
P0 | P1 ;
lwz r1,0(r2) | li r1,1 ;
lwsync | stw r1,0(r2) ;
lwz r3,0(r4) | sync ;
| li r3,1 ;
| stw r3,0(r4) ;
exists (0:r1=1 /\ 0:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
Test safe460 Allowed
Histogram (3 states)
923860:>0:r1=0; 0:r3=1;
119155:>0:r1=1; 0:r3=1;
956985:>0:r1=0; 0:r3=0;
No
Witnesses
Positive: 0, Negative: 2000000
Condition exists (0:r1=1 /\ 0:r3=0) is NOT validated
Hash=a0c10f3d3ab885e707207b5eb56e09b9
Cycle=SyncdWW Rfe LwSyncdRR Fre
Relax safe460 No
Safe=Fre LwSyncdRR BCSyncdWW
Time safe460 1.21
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe461.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe461
"SyncdWW Rfe LwSyncdRR Fre SyncdWW Rfe LwSyncdRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
lwsync | stw r1,0(r2) | lwsync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwz r3,0(r4) | sync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe461 Allowed
Histogram (14 states)
10 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=0;
8 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=0;
22 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r3=1;
3003 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=0;
8308 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=1;
8803 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1;
8557 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0;
22879 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1;
71497 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0;
204769:>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0;
159071:>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1;
94678 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1;
138674:>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1;
279721:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=484728e6220e017406f38abbf101d22f
Cycle=SyncdWW Rfe LwSyncdRR Fre SyncdWW Rfe LwSyncdRR Fre
Relax safe461 No
Safe=Fre LwSyncdRR BCSyncdWW
Time safe461 2.13
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe462.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe462
"SyncdWW Rfe LwSyncsRR Fre SyncdWW Rfe LwSyncdRR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,1 ;
lwsync | stw r1,0(r2) | lwsync | stw r1,0(r2) ;
lwz r3,0(r2) | sync | lwz r3,0(r4) | sync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe462 Allowed
Histogram (34 states)
23 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=1; x=2;
2 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; x=1;
1 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=0; x=1;
49 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=2;
16 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; x=2;
70 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=2;
118 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=1; x=1;
50 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=2;
3491 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=1;
602 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; x=1;
149 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; x=2;
115 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=1; x=1;
4 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=0; x=1;
1113 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; x=1;
89 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=1;
10 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; x=1;
264 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=0; x=1;
299 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; x=1;
191 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=2;
3200 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=0; x=1;
4643 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; x=1;
6494 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=2;
20332 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=1;
400 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; x=2;
44114 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; x=2;
48277 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; x=2;
88282 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; x=1;
38222 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; x=1;
105066:>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=1;
177927:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; x=1;
150670:>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=1;
66720 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; x=2;
238960:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=1;
37 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; x=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=ed8906989cb31667749b81dee6b17c85
Cycle=SyncdWW Rfe LwSyncsRR Fre SyncdWW Rfe LwSyncdRR Fre
Relax safe462 No
Safe=Fre LwSyncsRR LwSyncdRR BCSyncdWW
Time safe462 2.70
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe463.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe463
"Rfe SyncsRR Fre SyncdWW Rfe LwSyncdRR Fre"
{0:r2=y; 1:r2=y; 1:r4=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | lwsync | stw r1,0(r2) ;
lwz r3,0(r2) | sync | lwz r3,0(r4) | ;
| li r3,1 | | ;
| stw r3,0(r4) | | ;
exists (y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
Test safe463 Allowed
Histogram (52 states)
5 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=2; y=1;
7 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=2; y=2;
3 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=2; y=1;
63 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=2; y=1;
39 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; y=1;
43 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=2; y=2;
124 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; y=1;
854 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; y=1;
62 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; y=1;
2150 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=2; y=1;
691 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; y=2;
863 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; y=1;
507 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=2; y=1;
11574 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; y=1;
4859 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; y=1;
472 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; y=1;
2961 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; y=1;
7080 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; y=2;
1727 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=2; y=2;
43180 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=0; y=2;
584 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=2; y=2;
1412 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; y=2;
12849 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; y=2;
5050 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; y=2;
77307 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; y=2;
17824 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; y=2;
3283 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=2; y=1;
892 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; y=1;
1449 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; y=2;
4920 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; y=1;
27430 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=2; y=1;
899 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; y=1;
2982 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; y=1;
9075 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; y=2;
46236 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=1; y=1;
6508 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=1; y=2;
11274 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; y=2;
19233 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; y=1;
36680 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; y=2;
27618 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; y=1;
33056 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; y=1;
6857 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; y=1;
19008 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; y=2;
7129 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; y=1;
181699:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; y=2;
100281:>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=2; y=2;
21607 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=1; y=1;
26299 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=2; y=2;
119087:>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; y=1;
2870 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=2; y=2;
1857 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=2; y=2;
89481 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=99aae97b0e5e87cacf9f30a2aed23af5
Cycle=Rfe SyncsRR Fre SyncdWW Rfe LwSyncdRR Fre
Relax safe463 No
Safe=Fre LwSyncdRR ACSyncsRR BCSyncdWW
Time safe463 2.76
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe464.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe464
"LwSyncdWW Rfe SyncsRR Fre SyncdWW Rfe LwSyncdRR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | lwsync | stw r1,0(r2) ;
lwz r3,0(r2) | sync | lwz r3,0(r4) | lwsync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe464 Allowed
Histogram (41 states)
3 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; x=2;
8 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=2;
7 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=0; x=1;
14 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=0; x=1;
17 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; x=2;
14 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=0; x=1;
76 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=1; x=2;
24 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; x=2;
88 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=0; x=1;
290 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; x=1;
719 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; x=2;
686 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=2;
712 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=0; x=2;
1157 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=2;
1473 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=2;
3514 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; x=1;
7851 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=2;
1154 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=2;
8368 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; x=2;
25954 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; x=2;
21485 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; x=2;
2606 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=0; x=1;
19685 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; x=2;
45500 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; x=1;
30575 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; x=1;
58517 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; x=2;
42061 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=1;
18074 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=1; x=1;
15029 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; x=1;
6162 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; x=1;
66876 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=1;
33667 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; x=1;
21676 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=1;
112103:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=1;
35422 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=1; x=1;
133787:>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=1;
153796:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; x=1;
46019 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; x=1;
63958 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=1; x=2;
19167 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=1;
1706 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; x=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=d28c8443b6dfdb08dee19cbe9fd14844
Cycle=LwSyncdWW Rfe SyncsRR Fre SyncdWW Rfe LwSyncdRR Fre
Relax safe464 No
Safe=Fre LwSyncdWW LwSyncdRR ACSyncsRR BCSyncdWW
Time safe464 2.87
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe465.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe465
"Rfe SyncdRR Fre SyncdWW Rfe LwSyncdRR Fre"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | lwsync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwz r3,0(r4) | ;
| li r3,1 | | ;
| stw r3,0(r4) | | ;
exists (0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
Test safe465 Allowed
Histogram (15 states)
4 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=0;
268 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=0;
7 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r3=1;
650 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=0;
13361 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=0;
1952 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1;
90837 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1;
47924 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=1;
24686 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1;
126215:>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0;
87918 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0;
195101:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1;
295677:>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1;
66996 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0;
48404 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=33ade93c76f3a530626408be2994466f
Cycle=Rfe SyncdRR Fre SyncdWW Rfe LwSyncdRR Fre
Relax safe465 No
Safe=Fre LwSyncdRR ACSyncdRR BCSyncdWW
Time safe465 1.90
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe466.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe466
"LwSyncdWW Rfe SyncdRR Fre SyncdWW Rfe LwSyncdRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | lwsync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwz r3,0(r4) | lwsync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe466 Allowed
Histogram (15 states)
1 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=0;
12 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r3=1;
11 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=0;
55 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=0;
4342 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=0;
16691 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=1;
34237 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0;
21821 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0;
62993 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1;
225497:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1;
90309 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1;
231298:>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0;
124494:>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1;
7582 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1;
180657:>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=3688292db6c87f2bd8ac3a93a49791ef
Cycle=LwSyncdWW Rfe SyncdRR Fre SyncdWW Rfe LwSyncdRR Fre
Relax safe466 No
Safe=Fre LwSyncdWW LwSyncdRR ACSyncdRR BCSyncdWW
Time safe466 2.11
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe467.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe467
"LwSyncsWW Rfe SyncdRR Fre SyncdWW Rfe LwSyncdRR Fre"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | lwsync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwz r3,0(r4) | lwsync ;
| li r3,1 | | li r3,2 ;
| stw r3,0(r4) | | stw r3,0(r2) ;
exists (z=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe467 Allowed
Histogram (28 states)
12 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=1; z=2;
2 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=0; z=2;
31 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; z=2;
43 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=0; z=2;
49 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=0; z=2;
10 :>0:r1=2; 0:r3=0; 2:r1=1; 2:r3=2; z=2;
58 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=1; z=2;
217 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=0; z=2;
322 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=2; z=2;
2356 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=0; z=2;
1828 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; z=2;
3137 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; z=2;
481 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=0; z=2;
3703 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=2; z=2;
68635 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=2; z=2;
1629 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=1; z=2;
3870 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=2; z=2;
13122 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; z=2;
8347 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; z=2;
42438 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=2; z=2;
71169 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; z=2;
93533 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=2; z=2;
21335 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; z=2;
130905:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; z=2;
88227 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; z=2;
229660:>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=2; z=2;
87977 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; z=2;
126904:>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=98a2c413d4179d63f7a31850b16fd0c5
Cycle=LwSyncsWW Rfe SyncdRR Fre SyncdWW Rfe LwSyncdRR Fre
Relax safe467 No
Safe=Fre LwSyncsWW LwSyncdRR ACSyncdRR BCSyncdWW
Time safe467 2.55
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe468.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe468
"SyncsWW Rfe SyncdRW Rfe LwSyncdRR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | lwsync | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r4) | sync ;
stw r3,0(r4) | | li r3,2 ;
| | stw r3,0(r2) ;
exists (y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stw r8,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: lwsync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r9,1
_litmus_P2_1_: stw r9,0(r2)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,2
_litmus_P2_4_: stw r11,0(r2)
Test safe468 Allowed
Histogram (14 states)
39 :>0:r1=1; 1:r1=0; 1:r3=1; y=2;
3753 :>0:r1=2; 1:r1=1; 1:r3=2; y=2;
4899 :>0:r1=1; 1:r1=1; 1:r3=2; y=2;
7871 :>0:r1=0; 1:r1=1; 1:r3=1; y=2;
1087 :>0:r1=0; 1:r1=1; 1:r3=0; y=2;
155835:>0:r1=1; 1:r1=0; 1:r3=0; y=2;
4854 :>0:r1=2; 1:r1=0; 1:r3=0; y=2;
55060 :>0:r1=0; 1:r1=0; 1:r3=2; y=2;
275817:>0:r1=2; 1:r1=0; 1:r3=2; y=2;
131338:>0:r1=0; 1:r1=0; 1:r3=0; y=2;
35769 :>0:r1=0; 1:r1=0; 1:r3=1; y=2;
26288 :>0:r1=2; 1:r1=0; 1:r3=1; y=2;
235956:>0:r1=0; 1:r1=1; 1:r3=2; y=2;
61434 :>0:r1=1; 1:r1=0; 1:r3=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=0) is NOT validated
Hash=a3dd011ac202881564c81ea1a1748a57
Cycle=SyncsWW Rfe SyncdRW Rfe LwSyncdRR Fre
Relax safe468 No
Safe=Fre LwSyncdRR BCSyncsWW BCSyncdRW
Time safe468 1.55
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe469.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe469
"SyncdWW Rfe SyncsRW Rfe SyncdRW Rfe LwSyncdRR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | sync | lwsync | stw r1,0(r2) ;
li r3,2 | li r3,1 | lwz r3,0(r4) | sync ;
stw r3,0(r2) | stw r3,0(r4) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe469 Allowed
Histogram (30 states)
2 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=0; x=2;
4 :>0:r1=1; 1:r1=2; 2:r1=0; 2:r3=0; x=2;
7 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=2;
8 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=1;
25 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=1; x=2;
177 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=0; x=1;
60 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; x=2;
196 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; x=2;
14 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=2;
725 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=2;
1449 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=1;
1279 :>0:r1=1; 1:r1=2; 2:r1=0; 2:r3=1; x=2;
5065 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; x=2;
22256 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2;
9120 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=2;
14445 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=1; x=2;
20002 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=1;
10188 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; x=1;
83327 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=2;
6751 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; x=1;
27399 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; x=2;
36377 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=2;
127626:>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1; x=2;
136259:>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=1;
75428 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2;
144653:>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=1; x=1;
24281 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1;
43193 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=2;
114128:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1;
95556 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=3d64a9065efd9c83b66f58e7ee114252
Cycle=SyncdWW Rfe SyncsRW Rfe SyncdRW Rfe LwSyncdRR Fre
Relax safe469 No
Safe=Fre LwSyncdRR BCSyncsRW BCSyncdWW BCSyncdRW
Time safe469 2.54
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe470.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe470
"SyncdWW Rfe SyncdRW Rfe LwSyncdRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | lwsync | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r4) | sync ;
stw r3,0(r4) | | li r3,1 ;
| | stw r3,0(r4) ;
exists (0:r1=1 /\ 1:r1=1 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stw r8,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: lwsync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe470 Allowed
Histogram (7 states)
456 :>0:r1=1; 1:r1=1; 1:r3=1;
1203 :>0:r1=0; 1:r1=1; 1:r3=0;
1569 :>0:r1=1; 1:r1=0; 1:r3=0;
176597:>0:r1=1; 1:r1=0; 1:r3=1;
341610:>0:r1=0; 1:r1=0; 1:r3=0;
157081:>0:r1=0; 1:r1=1; 1:r3=1;
321484:>0:r1=0; 1:r1=0; 1:r3=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 1:r1=1 /\ 1:r3=0) is NOT validated
Hash=f04c15037bfcdc82d0dc2d093841ac5c
Cycle=SyncdWW Rfe SyncdRW Rfe LwSyncdRR Fre
Relax safe470 No
Safe=Fre LwSyncdRR BCSyncdWW BCSyncdRW
Time safe470 1.57
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe471.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe471
"SyncsWW Rfe SyncdRW Rfe SyncdRW Rfe LwSyncdRR Fre"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | sync | lwsync | stw r1,0(r2) ;
li r3,1 | li r3,1 | lwz r3,0(r4) | sync ;
stw r3,0(r4) | stw r3,0(r4) | | li r3,2 ;
| | | stw r3,0(r2) ;
exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe471 Allowed
Histogram (31 states)
1 :>0:r1=2; 1:r1=1; 2:r1=1; 2:r3=2; z=2;
1 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=2; z=2;
2 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=0; z=2;
14 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
11 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=0; z=2;
11 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=0; z=2;
2 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
10 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; z=2;
119 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=0; z=2;
157 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; z=2;
21 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=1; z=2;
621 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
2328 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=2; z=2;
4913 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; z=2;
17011 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=2; z=2;
8883 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=2; z=2;
9785 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
9164 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
38383 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; z=2;
19272 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
42414 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; z=2;
53627 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
57438 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
61109 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
69376 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
154959:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
37483 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
84953 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
170061:>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
95097 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
62774 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=5aad9978588d284da89eedc249d90163
Cycle=SyncsWW Rfe SyncdRW Rfe SyncdRW Rfe LwSyncdRR Fre
Relax safe471 No
Safe=Fre LwSyncdRR BCSyncsWW BCSyncdRW
Time safe471 2.54
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe472.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe472
"SyncdWW Rfe SyncdRW Rfe SyncdRW Rfe LwSyncdRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | sync | lwsync | stw r1,0(r2) ;
li r3,1 | li r3,1 | lwz r3,0(r4) | sync ;
stw r3,0(r4) | stw r3,0(r4) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: lwsync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe472 Allowed
Histogram (14 states)
4 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=0;
11 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=0;
41 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=1;
706 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1;
4101 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0;
2307 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0;
33422 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1;
205276:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1;
44634 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0;
124479:>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1;
244623:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0;
206593:>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1;
5518 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1;
128285:>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=6e52866a134c47ed94a9424b5f135664
Cycle=SyncdWW Rfe SyncdRW Rfe SyncdRW Rfe LwSyncdRR Fre
Relax safe472 No
Safe=Fre LwSyncdRR BCSyncdWW BCSyncdRW
Time safe472 2.04
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe473.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe473
"SyncdWW Rfe LwSyncsRR Fre SyncdWW Rfe LwSyncsRR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 3:r2=y; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
lwsync | stw r1,0(r2) | lwsync | stw r1,0(r2) ;
lwz r3,0(r2) | sync | lwz r3,0(r2) | sync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: lwsync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r2)
_litmus_P2_1_: lwsync
_litmus_P2_2_: lwz r9,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe473 Allowed
Histogram (82 states)
3 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=1; x=1; y=2;
3 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; x=2; y=1;
1 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; x=2; y=1;
1 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; x=2; y=1;
1 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; x=2; y=1;
2 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; x=2; y=1;
5 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; x=1; y=1;
3 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=1; x=2; y=1;
3 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=1;
2 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=2; x=1; y=2;
4 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=2; x=1; y=2;
10 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=1;
17 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; x=1; y=1;
19 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=1; y=2;
10 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=2; x=1; y=2;
6 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r3=2; x=1; y=2;
1 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; x=1; y=2;
3 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=1; x=1; y=1;
44 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; x=2; y=1;
27 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=1; y=2;
32 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; x=1; y=1;
27 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; x=1; y=1;
5 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=2; x=1; y=1;
18 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=2; x=1; y=1;
35 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=1; x=1; y=1;
42 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=1;
22 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=1; x=1; y=1;
70 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=1; x=1; y=1;
137 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=1; x=1; y=1;
11 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=1;
23 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=1;
93 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=1; x=1; y=1;
11 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=2; x=1; y=2;
250 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; x=1; y=1;
5 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; x=1; y=1;
47 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r3=2; x=1; y=1;
59 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=1; x=2; y=1;
40 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; x=1; y=1;
8 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; x=1; y=2;
454 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=1; x=1; y=1;
485 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; x=1; y=2;
41 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; x=1; y=2;
142 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=1;
87 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=1; y=1;
409 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=2; y=1;
63 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=1;
56 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r3=1; x=1; y=1;
145 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; x=1; y=1;
31 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; x=2; y=1;
308 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; x=2; y=1;
160 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=1;
885 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=1;
2342 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; x=1; y=1;
118 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; x=1; y=2;
103 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=2; x=1; y=1;
641 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=2; y=1;
573 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=2; y=1;
55 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; x=1; y=1;
3066 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=1; y=2;
47 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=1; y=2;
435 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=2; x=1; y=1;
4151 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; x=1; y=1;
73 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; x=1; y=1;
9846 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=1; y=1;
6723 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; x=2; y=1;
45775 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=2; x=1; y=2;
16868 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=1;
392 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=1;
10470 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; x=1; y=1;
26119 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=1; y=1;
64386 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=1; y=2;
61555 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=1; y=2;
45699 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=2; y=1;
146157:>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; x=2; y=1;
40113 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=2; x=1; y=1;
7053 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; x=1; y=1;
103955:>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; x=1; y=1;
31404 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; x=1; y=1;
45612 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=1; y=1;
282556:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=1; y=1;
10335 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=1; y=1;
29012 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r3=1) is NOT validated
Hash=f5b0547ef9299709bb73e8210f5d494a
Cycle=SyncdWW Rfe LwSyncsRR Fre SyncdWW Rfe LwSyncsRR Fre
Relax safe473 No
Safe=Fre LwSyncsRR BCSyncdWW
Time safe473 4.82
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe474.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe474
"LwSyncdWW Rfe SyncsRR Fre SyncdWW Rfe LwSyncsRR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 3:r2=y; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | lwsync | stw r1,0(r2) ;
lwz r3,0(r2) | sync | lwz r3,0(r2) | lwsync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r2)
_litmus_P2_1_: lwsync
_litmus_P2_2_: lwz r9,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe474 Allowed
Histogram (90 states)
1 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; x=2; y=1;
1 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=1; x=1; y=1;
5 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=1; x=2; y=1;
1 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=2; x=1; y=2;
2 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=2; x=1; y=2;
6 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=1; x=2; y=1;
1 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; x=2; y=1;
3 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=1; x=2; y=1;
3 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=1; x=1; y=1;
3 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=2; x=1; y=2;
8 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=1; x=1; y=1;
18 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=2; x=1; y=1;
5 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=2; x=1; y=2;
12 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; x=1; y=1;
26 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; x=1; y=1;
4 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; x=2; y=1;
33 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=1;
5 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; x=2; y=1;
31 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=1; x=2; y=1;
1 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=2; x=1; y=2;
57 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=1;
3 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; x=1; y=2;
27 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=2; x=1; y=1;
28 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; x=2; y=1;
3 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; x=1; y=1;
4 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; x=2; y=1;
26 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; x=1; y=1;
17 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; x=2; y=1;
81 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=1;
165 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=1; y=2;
95 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=1;
258 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; x=1; y=2;
47 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; x=1; y=1;
269 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; x=1; y=2;
19 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; x=1; y=2;
36 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=1; x=1; y=1;
161 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; x=1; y=1;
79 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=2; x=1; y=1;
12 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; x=2; y=1;
1407 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r3=2; x=1; y=2;
210 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=1; x=1; y=1;
604 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; x=2; y=1;
487 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; x=1; y=2;
337 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=1; y=2;
10 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=2; x=1; y=2;
1224 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=2; y=1;
643 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=1; y=2;
47 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=1;
726 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; x=1; y=1;
230 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=1;
125 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; x=1; y=1;
48 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=1; x=1; y=1;
104 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=2; y=1;
531 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; x=1; y=1;
1153 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=1; x=1; y=2;
9605 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=1; x=1; y=1;
7274 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; x=1; y=1;
398 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=2; y=1;
4959 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=1;
780 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; x=1; y=1;
76 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r3=1; x=1; y=1;
12931 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=1; y=1;
5255 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=1;
3749 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=1; y=2;
52356 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=1; y=1;
7854 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; x=1; y=2;
18333 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=2; x=1; y=2;
3211 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=1;
577 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; x=2; y=1;
1322 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=2; x=1; y=1;
22737 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=1; y=2;
8726 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; x=1; y=1;
14419 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r3=2; x=1; y=1;
17444 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=1; y=1;
8947 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=1;
6475 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=2; x=1; y=1;
25745 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=1; y=1;
90239 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=1;
18971 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; x=2; y=1;
26224 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; x=1; y=1;
49103 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; x=1; y=1;
94306 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; x=1; y=1;
67893 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=1;
59381 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=1; y=1;
173761:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=1; y=1;
5823 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; x=1; y=1;
118758:>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=1; y=2;
28949 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=2; y=1;
18466 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; x=2; y=1;
5511 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r3=1) is NOT validated
Hash=adcce488fb2b40e6a12a003dab973688
Cycle=LwSyncdWW Rfe SyncsRR Fre SyncdWW Rfe LwSyncsRR Fre
Relax safe474 No
Safe=Fre LwSyncsRR LwSyncdWW ACSyncsRR BCSyncdWW
Time safe474 4.87
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe475.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe475
"Rfe SyncdRR Fre SyncdWW Rfe LwSyncsRR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | lwsync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwz r3,0(r2) | ;
| li r3,1 | | ;
| stw r3,0(r4) | | ;
exists (y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r2)
_litmus_P2_1_: lwsync
_litmus_P2_2_: lwz r9,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe475 Allowed
Histogram (47 states)
2 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; y=2;
1 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=2; y=2;
6 :>0:r1=2; 0:r3=0; 2:r1=2; 2:r3=1; y=1;
2 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=2; y=2;
5 :>0:r1=2; 0:r3=0; 2:r1=1; 2:r3=1; y=1;
9 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; y=1;
10 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; y=2;
5 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=1; y=1;
1 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=2; y=2;
2 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; y=2;
73 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; y=1;
92 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; y=1;
6 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=1; y=1;
31 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; y=1;
14 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; y=2;
10 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; y=2;
59 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=1; y=1;
29 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=2; y=1;
67 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; y=1;
3144 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; y=1;
383 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r3=1; y=1;
1959 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; y=1;
649 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=2; y=1;
2683 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; y=2;
6672 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=1; y=2;
8275 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; y=2;
4741 :>0:r1=2; 0:r3=0; 2:r1=2; 2:r3=2; y=1;
20254 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; y=2;
2446 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; y=2;
5145 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=0; y=1;
12265 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=1; y=1;
18496 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; y=2;
5259 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; y=1;
25781 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; y=2;
6143 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r3=2; y=2;
32968 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; y=1;
17883 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; y=2;
39864 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; y=1;
10793 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; y=1;
23937 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; y=1;
103454:>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; y=1;
129427:>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; y=1;
33745 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; y=2;
205840:>0:r1=2; 0:r3=1; 2:r1=2; 2:r3=2; y=1;
91637 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; y=1;
185236:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; y=1;
497 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=1) is NOT validated
Hash=153182deb1288bf6aed9bec8def550dc
Cycle=Rfe SyncdRR Fre SyncdWW Rfe LwSyncsRR Fre
Relax safe475 No
Safe=Fre LwSyncsRR ACSyncdRR BCSyncdWW
Time safe475 2.76
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe476.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe476
"LwSyncdWW Rfe SyncdRR Fre SyncdWW Rfe LwSyncsRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | lwsync | stw r1,0(r2) ;
lwz r3,0(r4) | sync | lwz r3,0(r2) | lwsync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: sync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r2)
_litmus_P2_1_: lwsync
_litmus_P2_2_: lwz r9,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe476 Allowed
Histogram (34 states)
2 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; z=2;
13 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=1; z=1;
10 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=2; z=2;
62 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; z=2;
48 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; z=1;
97 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; z=1;
6 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=1; z=1;
4 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; z=2;
64 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=1; z=1;
52 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; z=2;
110 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; z=1;
99 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; z=2;
246 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; z=2;
1096 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; z=2;
388 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; z=2;
2384 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; z=1;
44 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; z=2;
940 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; z=1;
4080 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; z=2;
1399 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; z=1;
3788 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; z=1;
21258 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; z=1;
790 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=0; z=1;
28412 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; z=2;
28986 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; z=2;
12770 :>0:r1=1; 0:r3=0; 2:r1=2; 2:r3=2; z=1;
39125 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; z=1;
92934 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; z=1;
224647:>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; z=1;
176504:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; z=1;
78675 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; z=2;
48056 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; z=1;
176783:>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; z=1;
56128 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=1) is NOT validated
Hash=8ea0aa0f484202cfa82ca7c7fa4a4344
Cycle=LwSyncdWW Rfe SyncdRR Fre SyncdWW Rfe LwSyncsRR Fre
Relax safe476 No
Safe=Fre LwSyncsRR LwSyncdWW ACSyncdRR BCSyncdWW
Time safe476 2.83
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe477.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe477
"SyncdWW Rfe SyncsRW Rfe SyncdRW Rfe LwSyncsRR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 3:r2=y; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | sync | lwsync | stw r1,0(r2) ;
li r3,2 | li r3,1 | lwz r3,0(r2) | sync ;
stw r3,0(r2) | stw r3,0(r4) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r2)
_litmus_P2_1_: lwsync
_litmus_P2_2_: lwz r9,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe477 Allowed
Histogram (65 states)
3 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=2; x=1; y=2;
4 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; x=1; y=1;
4 :>0:r1=1; 1:r1=2; 2:r1=0; 2:r3=0; x=2; y=1;
2 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
16 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=1; x=1; y=1;
5 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=1;
1 :>0:r1=1; 1:r1=2; 2:r1=2; 2:r3=1; x=2; y=1;
1 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1; x=2; y=1;
5 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; x=1; y=1;
1 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=1; x=2; y=1;
40 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=2; x=1; y=2;
81 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=1;
47 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=1;
39 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
60 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
13 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=2;
88 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=1;
36 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=1;
42 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; x=2; y=1;
13 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=2; x=2; y=1;
221 :>0:r1=1; 1:r1=1; 2:r1=2; 2:r3=1; x=2; y=1;
39 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=1; y=2;
7 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
212 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
17 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=2; y=1;
178 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=1; x=1; y=1;
144 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=1;
23 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
62 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=1; x=2; y=1;
252 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; x=2; y=1;
149 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=1;
2156 :>0:r1=1; 1:r1=2; 2:r1=2; 2:r3=2; x=2; y=1;
356 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=1;
1321 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=2;
7842 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=1;
51 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=2; y=1;
6041 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=1; y=1;
7882 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=1; y=2;
2768 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=1; y=1;
1780 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=1;
724 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=1; y=1;
431 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=2; y=1;
417 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; x=1; y=1;
1790 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
18812 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=1;
104323:>0:r1=1; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=1;
12704 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=1;
528 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=1;
56033 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
23607 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=2; x=2; y=1;
2645 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=2; x=1; y=1;
12779 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; x=1; y=1;
7776 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
45538 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=1;
47326 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=1;
21068 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=1;
30262 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=1;
81229 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=1; y=2;
187762:>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=1; y=1;
92593 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=2; x=1; y=1;
28611 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=1;
73275 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
105080:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=1;
12496 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=1; y=1;
189 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=1) is NOT validated
Hash=2534ef736ff1b3d3210271b063fb62a5
Cycle=SyncdWW Rfe SyncsRW Rfe SyncdRW Rfe LwSyncsRR Fre
Relax safe477 No
Safe=Fre LwSyncsRR BCSyncsRW BCSyncdWW BCSyncdRW
Time safe477 4.03
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe478.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe478
"SyncdWW Rfe SyncdRW Rfe LwSyncsRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | lwsync | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r2) | sync ;
stw r3,0(r4) | | li r3,1 ;
| | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stw r8,0(r2)
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: lwsync
_litmus_P1_2_: lwz r9,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe478 Allowed
Histogram (17 states)
81 :>0:r1=1; 1:r1=2; 1:r3=1; y=1;
38 :>0:r1=1; 1:r1=0; 1:r3=2; y=1;
84 :>0:r1=0; 1:r1=1; 1:r3=2; y=2;
83 :>0:r1=0; 1:r1=2; 1:r3=1; y=1;
37 :>0:r1=0; 1:r1=0; 1:r3=1; y=2;
264 :>0:r1=0; 1:r1=0; 1:r3=2; y=2;
1593 :>0:r1=0; 1:r1=0; 1:r3=1; y=1;
430 :>0:r1=0; 1:r1=0; 1:r3=2; y=1;
440 :>0:r1=1; 1:r1=0; 1:r3=0; y=1;
64101 :>0:r1=0; 1:r1=1; 1:r3=1; y=2;
58759 :>0:r1=0; 1:r1=1; 1:r3=1; y=1;
180587:>0:r1=0; 1:r1=2; 1:r3=2; y=1;
86705 :>0:r1=0; 1:r1=0; 1:r3=0; y=2;
219735:>0:r1=1; 1:r1=2; 1:r3=2; y=1;
322032:>0:r1=0; 1:r1=0; 1:r3=0; y=1;
64674 :>0:r1=0; 1:r1=2; 1:r3=2; y=2;
357 :>0:r1=1; 1:r1=1; 1:r3=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1) is NOT validated
Hash=42698f9a2d39a21963846b2bab2275ff
Cycle=SyncdWW Rfe SyncdRW Rfe LwSyncsRR Fre
Relax safe478 No
Safe=Fre LwSyncsRR BCSyncdWW BCSyncdRW
Time safe478 1.68
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe479.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe479
"SyncdWW Rfe SyncdRW Rfe SyncdRW Rfe LwSyncsRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | sync | lwsync | stw r1,0(r2) ;
li r3,1 | li r3,1 | lwz r3,0(r2) | sync ;
stw r3,0(r4) | stw r3,0(r4) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r2)
_litmus_P2_1_: lwsync
_litmus_P2_2_: lwz r9,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe479 Allowed
Histogram (35 states)
1 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
13 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; z=2;
6 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; z=1;
14 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; z=1;
61 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
3 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; z=2;
42 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; z=1;
56 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
32 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
18 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; z=2;
18 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; z=1;
21 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; z=1;
52 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; z=2;
201 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; z=1;
26 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
345 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
546 :>0:r1=1; 1:r1=1; 2:r1=2; 2:r3=2; z=1;
6579 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; z=1;
4905 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; z=2;
920 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; z=1;
407 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; z=1;
1444 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; z=1;
1919 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; z=1;
240 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; z=2;
3390 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; z=1;
8347 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; z=1;
138509:>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; z=1;
170536:>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; z=1;
43780 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; z=1;
52421 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
64517 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; z=2;
129937:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
86239 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; z=1;
232642:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; z=1;
51813 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=1) is NOT validated
Hash=fcb8b7c17704e1d6080df93c2fd2ffe9
Cycle=SyncdWW Rfe SyncdRW Rfe SyncdRW Rfe LwSyncsRR Fre
Relax safe479 No
Safe=Fre LwSyncsRR BCSyncdWW BCSyncdRW
Time safe479 2.80
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe480.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe480
"LwSyncdWW Rfe SyncdRR Fre Rfe SyncsRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 3:r2=y; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | | lwz r3,0(r2) | lwsync ;
| | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P2_0_: lwz r8,0(r2)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r9,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe480 Allowed
Histogram (53 states)
1 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=1; y=1;
1 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=2; y=1;
6 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=1; y=1;
243 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=1; y=2;
293 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; y=1;
387 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=2; y=2;
424 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=2; y=1;
51 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=0; y=1;
392 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=2; y=1;
216 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; y=2;
279 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; y=1;
330 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; y=1;
587 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; y=1;
1864 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; y=1;
2290 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=2; y=1;
13543 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; y=1;
1926 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; y=2;
1263 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; y=2;
4174 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; y=1;
438 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; y=2;
34065 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; y=1;
35982 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; y=1;
6647 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; y=2;
29951 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=2; y=2;
885 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; y=1;
29322 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=1; y=2;
71232 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=0; y=2;
14757 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; y=1;
12812 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; y=2;
14021 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; y=1;
10011 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=2; y=2;
2239 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=1; y=1;
61603 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; y=2;
49354 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; y=1;
3472 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; y=1;
5359 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=1; y=1;
23533 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=2; y=2;
1443 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; y=1;
6356 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=1; y=1;
103684:>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; y=2;
59501 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; y=2;
13105 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; y=2;
20689 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=1; y=1;
22755 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=2; y=2;
152819:>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; y=1;
36500 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=2; y=2;
1175 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=2; y=2;
2124 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; y=2;
24006 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; y=1;
13098 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; y=2;
14906 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; y=2;
66326 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; y=1;
27560 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=1) is NOT validated
Hash=7e304e4a082a5e2808e9087a3aff5dea
Cycle=LwSyncdWW Rfe SyncdRR Fre Rfe SyncsRR Fre
Relax safe480 No
Safe=Fre LwSyncdWW ACSyncsRR ACSyncdRR
Time safe480 2.72
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe481.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe481
"SyncdWW Rfe SyncsRW Rfe DpdR Fri Rfe SyncsRR Fre"
{0:r2=x; 1:r2=x; 1:r5=y; 2:r2=y; 3:r2=y; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | xor r3,r1,r1 | sync | stw r1,0(r2) ;
li r3,2 | lwzx r4,r3,r5 | lwz r3,0(r2) | sync ;
stw r3,0(r2) | li r6,1 | | li r3,1 ;
| stw r6,0(r5) | | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r4=0 /\ 2:r1=1 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r5,0(r9)
_litmus_P1_1_: xor r10,r5,r5
_litmus_P1_2_: lwzx r6,r10,r2
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r8,0(r2)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r9,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe481 Allowed
Histogram (98 states)
1 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=1; x=2; y=1;
1 :>0:r1=0; 1:r1=1; 1:r4=2; 2:r1=0; 2:r3=1; x=2; y=1;
7 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=2; x=2; y=1;
5 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=1; x=2; y=1;
4 :>0:r1=1; 1:r1=2; 1:r4=2; 2:r1=0; 2:r3=2; x=2; y=1;
6 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=2; x=2; y=2;
1 :>0:r1=0; 1:r1=2; 1:r4=2; 2:r1=2; 2:r3=1; x=2; y=1;
11 :>0:r1=1; 1:r1=0; 1:r4=2; 2:r1=0; 2:r3=1; x=2; y=1;
5 :>0:r1=1; 1:r1=2; 1:r4=2; 2:r1=0; 2:r3=0; x=2; y=1;
41 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=1; x=2; y=2;
1 :>0:r1=0; 1:r1=1; 1:r4=2; 2:r1=0; 2:r3=1; x=1; y=1;
7 :>0:r1=0; 1:r1=2; 1:r4=2; 2:r1=1; 2:r3=1; x=2; y=1;
27 :>0:r1=1; 1:r1=1; 1:r4=2; 2:r1=2; 2:r3=1; x=2; y=1;
8 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=2; x=2; y=1;
31 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=1; x=2; y=1;
14 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=1; x=2; y=1;
2 :>0:r1=1; 1:r1=2; 1:r4=2; 2:r1=2; 2:r3=1; x=2; y=1;
14 :>0:r1=0; 1:r1=1; 1:r4=2; 2:r1=2; 2:r3=1; x=1; y=1;
8 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=1; x=2; y=2;
17 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=0; x=2; y=2;
167 :>0:r1=1; 1:r1=0; 1:r4=2; 2:r1=0; 2:r3=2; x=2; y=1;
34 :>0:r1=0; 1:r1=2; 1:r4=2; 2:r1=0; 2:r3=2; x=2; y=1;
62 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=2; x=2; y=2;
132 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=1; x=2; y=2;
80 :>0:r1=1; 1:r1=0; 1:r4=2; 2:r1=2; 2:r3=1; x=2; y=1;
46 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=0; x=2; y=1;
186 :>0:r1=0; 1:r1=2; 1:r4=0; 2:r1=2; 2:r3=1; x=1; y=1;
73 :>0:r1=0; 1:r1=1; 1:r4=2; 2:r1=1; 2:r3=1; x=2; y=1;
175 :>0:r1=0; 1:r1=2; 1:r4=0; 2:r1=0; 2:r3=2; x=1; y=2;
54 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=2; x=2; y=2;
89 :>0:r1=1; 1:r1=1; 1:r4=2; 2:r1=0; 2:r3=0; x=2; y=1;
64 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=2; x=1; y=1;
106 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=2; x=2; y=2;
317 :>0:r1=1; 1:r1=1; 1:r4=2; 2:r1=1; 2:r3=1; x=2; y=1;
205 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=1; x=1; y=1;
128 :>0:r1=0; 1:r1=2; 1:r4=0; 2:r1=0; 2:r3=2; x=1; y=1;
195 :>0:r1=0; 1:r1=0; 1:r4=2; 2:r1=0; 2:r3=1; x=2; y=1;
45 :>0:r1=0; 1:r1=0; 1:r4=2; 2:r1=2; 2:r3=1; x=1; y=1;
56 :>0:r1=0; 1:r1=1; 1:r4=2; 2:r1=2; 2:r3=1; x=2; y=1;
38 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=1; x=2; y=1;
240 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=1; x=2; y=2;
58 :>0:r1=1; 1:r1=1; 1:r4=2; 2:r1=0; 2:r3=2; x=2; y=1;
168 :>0:r1=0; 1:r1=1; 1:r4=2; 2:r1=0; 2:r3=2; x=2; y=1;
15 :>0:r1=0; 1:r1=2; 1:r4=0; 2:r1=0; 2:r3=1; x=1; y=2;
13 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=2; x=2; y=1;
526 :>0:r1=0; 1:r1=2; 1:r4=2; 2:r1=0; 2:r3=0; x=2; y=1;
32 :>0:r1=0; 1:r1=2; 1:r4=0; 2:r1=2; 2:r3=2; x=1; y=1;
500 :>0:r1=0; 1:r1=2; 1:r4=0; 2:r1=1; 2:r3=1; x=1; y=2;
168 :>0:r1=0; 1:r1=0; 1:r4=2; 2:r1=2; 2:r3=1; x=2; y=1;
99 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=2; x=1; y=1;
2599 :>0:r1=1; 1:r1=2; 1:r4=2; 2:r1=2; 2:r3=2; x=2; y=1;
603 :>0:r1=0; 1:r1=2; 1:r4=0; 2:r1=0; 2:r3=1; x=1; y=1;
709 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=2; x=2; y=2;
968 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=1; x=2; y=1;
4523 :>0:r1=0; 1:r1=2; 1:r4=0; 2:r1=1; 2:r3=2; x=1; y=2;
145 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=0; x=2; y=2;
10385 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=2; x=2; y=2;
1571 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=0; x=2; y=1;
487 :>0:r1=0; 1:r1=0; 1:r4=2; 2:r1=0; 2:r3=2; x=2; y=1;
367 :>0:r1=0; 1:r1=2; 1:r4=0; 2:r1=1; 2:r3=1; x=1; y=1;
331 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=2; x=1; y=2;
3990 :>0:r1=0; 1:r1=1; 1:r4=2; 2:r1=0; 2:r3=0; x=2; y=1;
5763 :>0:r1=0; 1:r1=2; 1:r4=0; 2:r1=2; 2:r3=2; x=1; y=2;
294 :>0:r1=0; 1:r1=1; 1:r4=2; 2:r1=1; 2:r3=1; x=1; y=1;
530 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=1; x=1; y=1;
388 :>0:r1=0; 1:r1=0; 1:r4=2; 2:r1=0; 2:r3=2; x=1; y=1;
988 :>0:r1=0; 1:r1=0; 1:r4=2; 2:r1=0; 2:r3=1; x=1; y=1;
2344 :>0:r1=0; 1:r1=0; 1:r4=2; 2:r1=1; 2:r3=1; x=2; y=1;
33062 :>0:r1=0; 1:r1=2; 1:r4=0; 2:r1=0; 2:r3=0; x=1; y=1;
1543 :>0:r1=0; 1:r1=1; 1:r4=2; 2:r1=0; 2:r3=2; x=1; y=1;
6800 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=1; x=1; y=2;
5004 :>0:r1=1; 1:r1=0; 1:r4=2; 2:r1=0; 2:r3=0; x=2; y=1;
17609 :>0:r1=0; 1:r1=2; 1:r4=2; 2:r1=0; 2:r3=1; x=1; y=1;
259 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=1; x=1; y=1;
3965 :>0:r1=0; 1:r1=0; 1:r4=2; 2:r1=2; 2:r3=2; x=1; y=1;
7843 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=0; x=1; y=2;
1151 :>0:r1=0; 1:r1=0; 1:r4=2; 2:r1=1; 2:r3=1; x=1; y=1;
242 :>0:r1=0; 1:r1=2; 1:r4=2; 2:r1=2; 2:r3=1; x=1; y=1;
94071 :>0:r1=1; 1:r1=0; 1:r4=2; 2:r1=2; 2:r3=2; x=2; y=1;
38241 :>0:r1=1; 1:r1=1; 1:r4=2; 2:r1=2; 2:r3=2; x=2; y=1;
4211 :>0:r1=0; 1:r1=2; 1:r4=0; 2:r1=0; 2:r3=0; x=1; y=2;
19140 :>0:r1=0; 1:r1=2; 1:r4=2; 2:r1=0; 2:r3=2; x=1; y=1;
22815 :>0:r1=0; 1:r1=2; 1:r4=2; 2:r1=1; 2:r3=1; x=1; y=1;
51100 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=2; x=1; y=2;
3211 :>0:r1=1; 1:r1=0; 1:r4=2; 2:r1=1; 2:r3=1; x=2; y=1;
12657 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=0; x=1; y=1;
39730 :>0:r1=0; 1:r1=1; 1:r4=2; 2:r1=2; 2:r3=2; x=2; y=1;
27545 :>0:r1=0; 1:r1=0; 1:r4=2; 2:r1=0; 2:r3=0; x=2; y=1;
28063 :>0:r1=0; 1:r1=0; 1:r4=2; 2:r1=2; 2:r3=2; x=2; y=1;
29579 :>0:r1=0; 1:r1=0; 1:r4=2; 2:r1=0; 2:r3=0; x=1; y=1;
71331 :>0:r1=0; 1:r1=2; 1:r4=2; 2:r1=2; 2:r3=2; x=1; y=1;
57987 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=1; x=1; y=2;
205736:>0:r1=0; 1:r1=2; 1:r4=2; 2:r1=0; 2:r3=0; x=1; y=1;
22581 :>0:r1=0; 1:r1=2; 1:r4=2; 2:r1=2; 2:r3=2; x=2; y=1;
112295:>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=2; x=1; y=2;
4832 :>0:r1=0; 1:r1=1; 1:r4=2; 2:r1=0; 2:r3=0; x=1; y=1;
36129 :>0:r1=0; 1:r1=1; 1:r4=2; 2:r1=2; 2:r3=2; x=1; y=1;
1 :>0:r1=1; 1:r1=2; 1:r4=2; 2:r1=1; 2:r3=1; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r4=0 /\ 2:r1=1 /\ 2:r3=1) is NOT validated
Hash=f07804368627bc49b897b6c300ec99c8
Cycle=SyncdWW Rfe SyncsRW Rfe DpdR Fri Rfe SyncsRR Fre
Relax safe481 No
Safe=Fri Fre DpdR ACSyncsRR BCSyncsRW BCSyncdWW
Time safe481 5.56
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe482.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe482
"SyncdWW Rfe DpdR Fri Rfe SyncsRR Fre"
{0:r2=x; 0:r5=y; 1:r2=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | sync | stw r1,0(r2) ;
lwzx r4,r3,r5 | lwz r3,0(r2) | sync ;
li r6,1 | | li r3,1 ;
stw r6,0(r5) | | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 0:r4=0 /\ 1:r1=1 /\ 1:r3=1)
Generated assembler
_litmus_P0_0_: lwz r5,0(r9)
_litmus_P0_1_: xor r10,r5,r5
_litmus_P0_2_: lwzx r6,r10,r2
_litmus_P0_3_: li r11,1
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r9,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe482 Allowed
Histogram (24 states)
1 :>0:r1=1; 0:r4=2; 1:r1=0; 1:r3=1; y=1;
118 :>0:r1=1; 0:r4=2; 1:r1=2; 1:r3=1; y=1;
641 :>0:r1=1; 0:r4=2; 1:r1=1; 1:r3=1; y=1;
418 :>0:r1=0; 0:r4=0; 1:r1=0; 1:r3=2; y=1;
286 :>0:r1=0; 0:r4=0; 1:r1=2; 1:r3=2; y=1;
353 :>0:r1=1; 0:r4=2; 1:r1=0; 1:r3=2; y=1;
8874 :>0:r1=0; 0:r4=0; 1:r1=0; 1:r3=2; y=2;
4336 :>0:r1=0; 0:r4=0; 1:r1=2; 1:r3=1; y=1;
615 :>0:r1=0; 0:r4=2; 1:r1=2; 1:r3=1; y=1;
4782 :>0:r1=0; 0:r4=2; 1:r1=0; 1:r3=2; y=1;
16422 :>0:r1=1; 0:r4=2; 1:r1=0; 1:r3=0; y=1;
1631 :>0:r1=0; 0:r4=0; 1:r1=0; 1:r3=1; y=1;
11906 :>0:r1=0; 0:r4=0; 1:r1=1; 1:r3=1; y=1;
5015 :>0:r1=0; 0:r4=0; 1:r1=0; 1:r3=1; y=2;
14567 :>0:r1=0; 0:r4=0; 1:r1=1; 1:r3=1; y=2;
112315:>0:r1=0; 0:r4=0; 1:r1=1; 1:r3=2; y=2;
16816 :>0:r1=0; 0:r4=0; 1:r1=0; 1:r3=0; y=2;
3297 :>0:r1=0; 0:r4=2; 1:r1=0; 1:r3=1; y=1;
134465:>0:r1=1; 0:r4=2; 1:r1=2; 1:r3=2; y=1;
267403:>0:r1=0; 0:r4=2; 1:r1=0; 1:r3=0; y=1;
146694:>0:r1=0; 0:r4=0; 1:r1=2; 1:r3=2; y=2;
196422:>0:r1=0; 0:r4=2; 1:r1=2; 1:r3=2; y=1;
41419 :>0:r1=0; 0:r4=0; 1:r1=0; 1:r3=0; y=1;
11204 :>0:r1=0; 0:r4=2; 1:r1=1; 1:r3=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 0:r4=0 /\ 1:r1=1 /\ 1:r3=1) is NOT validated
Hash=e338da619d119217441048ae05fe41fc
Cycle=SyncdWW Rfe DpdR Fri Rfe SyncsRR Fre
Relax safe482 No
Safe=Fri Fre DpdR ACSyncsRR BCSyncdWW
Time safe482 1.98
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe483.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe483
"SyncdWW Rfe SyncdRW Rfe DpdR Fri Rfe SyncsRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r5=z; 2:r2=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | xor r3,r1,r1 | sync | stw r1,0(r2) ;
li r3,1 | lwzx r4,r3,r5 | lwz r3,0(r2) | sync ;
stw r3,0(r4) | li r6,1 | | li r3,1 ;
| stw r6,0(r5) | | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r4=0 /\ 2:r1=1 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r5,0(r9)
_litmus_P1_1_: xor r10,r5,r5
_litmus_P1_2_: lwzx r6,r10,r2
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r8,0(r2)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r9,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe483 Allowed
Histogram (57 states)
1 :>0:r1=1; 1:r1=1; 1:r4=2; 2:r1=2; 2:r3=1; z=1;
7 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=2; z=2;
6 :>0:r1=1; 1:r1=1; 1:r4=2; 2:r1=0; 2:r3=0; z=1;
5 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=1; z=2;
29 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=2; 2:r3=2; z=1;
374 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=0; 2:r3=2; z=1;
61 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=0; z=1;
803 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=0; 2:r3=1; z=1;
4 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=2; z=1;
36 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=1; z=2;
41 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=1; z=1;
462 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=1; 2:r3=1; z=2;
72 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=2; z=2;
19 :>0:r1=1; 1:r1=0; 1:r4=2; 2:r1=0; 2:r3=1; z=1;
250 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=1; z=1;
101 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=2; 2:r3=1; z=1;
56 :>0:r1=1; 1:r1=0; 1:r4=2; 2:r1=0; 2:r3=2; z=1;
224 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=2; z=1;
14 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=0; z=2;
975 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=2; z=1;
71 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=1; 2:r3=1; z=1;
356 :>0:r1=1; 1:r1=0; 1:r4=2; 2:r1=2; 2:r3=1; z=1;
225 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=0; 2:r3=2; z=2;
65 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=2; z=1;
110 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=1; z=1;
2685 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=1; 2:r3=2; z=2;
2889 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=1; z=1;
21999 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=0; 2:r3=0; z=1;
4394 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=1; z=2;
2298 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=2; 2:r3=2; z=2;
3249 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=2; z=2;
415 :>0:r1=0; 1:r1=1; 1:r4=2; 2:r1=2; 2:r3=1; z=1;
4360 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=1; z=1;
1141 :>0:r1=1; 1:r1=1; 1:r4=2; 2:r1=2; 2:r3=2; z=1;
2261 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=2; z=2;
13259 :>0:r1=0; 1:r1=1; 1:r4=2; 2:r1=0; 2:r3=1; z=1;
8557 :>0:r1=1; 1:r1=0; 1:r4=2; 2:r1=1; 2:r3=1; z=1;
969 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=1; z=1;
73 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=0; 2:r3=1; z=2;
9809 :>0:r1=0; 1:r1=1; 1:r4=2; 2:r1=1; 2:r3=1; z=1;
1062 :>0:r1=0; 1:r1=0; 1:r4=2; 2:r1=2; 2:r3=1; z=1;
20046 :>0:r1=0; 1:r1=0; 1:r4=2; 2:r1=1; 2:r3=1; z=1;
87476 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=2; z=2;
10564 :>0:r1=0; 1:r1=1; 1:r4=2; 2:r1=0; 2:r3=2; z=1;
67459 :>0:r1=0; 1:r1=1; 1:r4=2; 2:r1=0; 2:r3=0; z=1;
35885 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=0; z=2;
6390 :>0:r1=0; 1:r1=0; 1:r4=2; 2:r1=0; 2:r3=2; z=1;
105857:>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=2; z=2;
120157:>0:r1=1; 1:r1=0; 1:r4=2; 2:r1=2; 2:r3=2; z=1;
2170 :>0:r1=1; 1:r1=0; 1:r4=2; 2:r1=0; 2:r3=0; z=1;
23140 :>0:r1=0; 1:r1=0; 1:r4=2; 2:r1=0; 2:r3=1; z=1;
50173 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=1; z=2;
49860 :>0:r1=0; 1:r1=1; 1:r4=2; 2:r1=2; 2:r3=2; z=1;
76335 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=0; z=1;
107747:>0:r1=0; 1:r1=0; 1:r4=2; 2:r1=2; 2:r3=2; z=1;
149004:>0:r1=0; 1:r1=0; 1:r4=2; 2:r1=0; 2:r3=0; z=1;
3950 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=0; 2:r3=0; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r4=0 /\ 2:r1=1 /\ 2:r3=1) is NOT validated
Hash=283deb59951caa08dbd56ff2ebb8edcf
Cycle=SyncdWW Rfe SyncdRW Rfe DpdR Fri Rfe SyncsRR Fre
Relax safe483 No
Safe=Fri Fre DpdR ACSyncsRR BCSyncdWW BCSyncdRW
Time safe483 3.91
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe484.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe484
"SyncdWW Rfe SyncsRW Rfe DpdW Rfe SyncsRR Fre"
{0:r2=x; 1:r2=x; 1:r5=y; 2:r2=y; 3:r2=y; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | xor r3,r1,r1 | sync | stw r1,0(r2) ;
li r3,2 | li r4,1 | lwz r3,0(r2) | sync ;
stw r3,0(r2) | stwx r4,r3,r5 | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: xor r11,r7,r7
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stwx r8,r11,r2
_litmus_P2_0_: lwz r8,0(r2)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r9,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe484 Allowed
Histogram (76 states)
2 :>0:r1=1; 1:r1=2; 2:r1=0; 2:r3=0; x=2; y=1;
7 :>0:r1=1; 1:r1=2; 2:r1=2; 2:r3=1; x=2; y=1;
1 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1; x=2; y=1;
1 :>0:r1=1; 1:r1=2; 2:r1=1; 2:r3=1; x=2; y=1;
8 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; x=1; y=1;
2 :>0:r1=1; 1:r1=2; 2:r1=0; 2:r3=2; x=2; y=1;
5 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
8 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; x=2; y=1;
1 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
36 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=1;
237 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
235 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
87 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
540 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=1;
78 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=2;
338 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=1; y=2;
36 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=2; y=1;
1758 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; x=2; y=1;
1558 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=1; x=1; y=2;
304 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=1;
3038 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=2; x=1; y=2;
1987 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
107 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
68 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=1;
5031 :>0:r1=1; 1:r1=1; 2:r1=2; 2:r3=1; x=2; y=1;
1282 :>0:r1=1; 1:r1=2; 2:r1=2; 2:r3=2; x=2; y=1;
1010 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; x=1; y=1;
259 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=2; y=1;
14526 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=1; y=2;
2399 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=2; x=1; y=2;
100 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=1; x=2; y=1;
1060 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
7036 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=2; y=1;
1944 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=1; x=2; y=1;
13437 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=2; x=1; y=2;
115 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=2; x=2; y=1;
187 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=1;
7974 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=2;
1969 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
5169 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; x=1; y=1;
22322 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=1;
18613 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=1;
1686 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=1;
22156 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=1;
3926 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
4871 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=1; y=1;
399 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=1;
13460 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; x=2; y=1;
13897 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=1; y=1;
67577 :>0:r1=1; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=1;
22012 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
12481 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=1;
829 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=1;
22666 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=1;
40740 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
23591 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=1;
3681 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=1;
4355 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=1;
17411 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=2; x=2; y=1;
9610 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=2; x=1; y=1;
46474 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
19817 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=1; x=1; y=1;
17251 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; x=1; y=1;
59247 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=2; x=1; y=1;
91285 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=1; y=2;
44768 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=1;
606 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; x=1; y=1;
12820 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=1;
48896 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
114257:>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=1; y=1;
42296 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=1; x=1; y=1;
4860 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=1; y=1;
30540 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
35051 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=1;
1143 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=1; y=1;
30466 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=1) is NOT validated
Hash=6adc389a1f25d71475e48e9ae19e9f03
Cycle=SyncdWW Rfe SyncsRW Rfe DpdW Rfe SyncsRR Fre
Relax safe484 No
Safe=Fre DpdW ACSyncsRR BCSyncsRW BCSyncdWW
Time safe484 4.26
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe485.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe485
"SyncdWW Rfe DpdW Rfe SyncsRR Fre"
{0:r2=x; 0:r5=y; 1:r2=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | sync | stw r1,0(r2) ;
li r4,1 | lwz r3,0(r2) | sync ;
stwx r4,r3,r5 | | li r3,1 ;
| | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: xor r11,r7,r7
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stwx r8,r11,r2
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r9,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe485 Allowed
Histogram (18 states)
3 :>0:r1=1; 1:r1=0; 1:r3=1; y=1;
437 :>0:r1=1; 1:r1=0; 1:r3=2; y=1;
412 :>0:r1=1; 1:r1=1; 1:r3=1; y=1;
2678 :>0:r1=1; 1:r1=2; 1:r3=1; y=1;
3827 :>0:r1=0; 1:r1=0; 1:r3=1; y=2;
24270 :>0:r1=1; 1:r1=0; 1:r3=0; y=1;
76307 :>0:r1=0; 1:r1=1; 1:r3=2; y=2;
27775 :>0:r1=0; 1:r1=1; 1:r3=1; y=2;
5956 :>0:r1=0; 1:r1=0; 1:r3=2; y=1;
8078 :>0:r1=0; 1:r1=0; 1:r3=1; y=1;
24361 :>0:r1=0; 1:r1=0; 1:r3=0; y=2;
11488 :>0:r1=0; 1:r1=0; 1:r3=2; y=2;
13694 :>0:r1=0; 1:r1=1; 1:r3=1; y=1;
246635:>0:r1=1; 1:r1=2; 1:r3=2; y=1;
61991 :>0:r1=0; 1:r1=2; 1:r3=2; y=1;
284757:>0:r1=0; 1:r1=0; 1:r3=0; y=1;
178267:>0:r1=0; 1:r1=2; 1:r3=2; y=2;
29064 :>0:r1=0; 1:r1=2; 1:r3=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1) is NOT validated
Hash=ff48ed5263d486c74c82192e24738185
Cycle=SyncdWW Rfe DpdW Rfe SyncsRR Fre
Relax safe485 No
Safe=Fre DpdW ACSyncsRR BCSyncdWW
Time safe485 1.69
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe486.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe486
"SyncdWW Rfe SyncdRW Rfe DpdW Rfe SyncsRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r5=z; 2:r2=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | xor r3,r1,r1 | sync | stw r1,0(r2) ;
li r3,1 | li r4,1 | lwz r3,0(r2) | sync ;
stw r3,0(r4) | stwx r4,r3,r5 | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: xor r11,r7,r7
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stwx r8,r11,r2
_litmus_P2_0_: lwz r8,0(r2)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r9,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe486 Allowed
Histogram (38 states)
1 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
2 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; z=1;
30 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
69 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
43 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; z=2;
39 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; z=1;
221 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; z=1;
299 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; z=2;
418 :>0:r1=1; 1:r1=1; 2:r1=2; 2:r3=2; z=1;
17 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
179 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
16202 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; z=1;
8681 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; z=2;
3209 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; z=2;
8757 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; z=1;
348 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=2; z=2;
30345 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; z=1;
5110 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; z=2;
14826 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; z=1;
3764 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
39160 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
14371 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; z=1;
12461 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; z=1;
7763 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; z=1;
15485 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
46493 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; z=1;
6714 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; z=1;
62554 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
40096 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; z=1;
43902 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
77117 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; z=1;
73584 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; z=1;
34891 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; z=1;
3573 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; z=1;
130323:>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; z=2;
100766:>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; z=1;
197851:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; z=1;
336 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=1) is NOT validated
Hash=67d1ac542609877623a798689f3d023b
Cycle=SyncdWW Rfe SyncdRW Rfe DpdW Rfe SyncsRR Fre
Relax safe486 No
Safe=Fre DpdW ACSyncsRR BCSyncdWW BCSyncdRW
Time safe486 2.83
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe487.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe487
"LwSyncdWW Rfe SyncsRR Fre LwSyncdWW Rfe SyncsRR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 3:r2=y; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r2) | lwsync | lwz r3,0(r2) | lwsync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r9,0(r2)
_litmus_P1_0_: li r11,2
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r2)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r9,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe487 Allowed
Histogram (103 states)
1 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=1; x=2; y=1;
2 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; x=1; y=2;
6 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; x=2; y=1;
9 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; x=2; y=1;
2 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; x=1; y=2;
2 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; x=1; y=2;
12 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; x=2; y=1;
10 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; x=2; y=1;
50 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=2; x=1; y=2;
14 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; x=1; y=2;
89 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; x=2; y=1;
4 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; x=2; y=1;
23 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; x=1; y=2;
93 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; x=1; y=2;
93 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; x=1; y=1;
50 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=2; x=1; y=2;
277 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; x=1; y=2;
156 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=1; x=2; y=1;
317 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=1; x=2; y=1;
309 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; x=2; y=1;
252 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=1; x=2; y=1;
478 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=1; y=2;
23 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; x=2; y=1;
543 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=2; x=1; y=2;
421 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=1; y=2;
1566 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=1; x=2; y=1;
3973 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=2; x=1; y=2;
710 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; x=1; y=1;
624 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=2; y=1;
823 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=2; y=1;
1203 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=1; x=1; y=2;
1061 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=2; x=1; y=1;
415 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; x=1; y=1;
135 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=1;
1279 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; x=1; y=1;
480 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; x=1; y=1;
2029 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=1; y=2;
513 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; x=1; y=1;
85 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; x=1; y=2;
4085 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=1; x=1; y=1;
1851 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=1; x=1; y=2;
3277 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; x=1; y=2;
4147 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=2; x=1; y=2;
656 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=1;
3191 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=1;
2656 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; x=2; y=1;
4687 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=1;
1137 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=1; x=1; y=1;
5961 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=1;
408 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=2; x=1; y=2;
1311 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; x=2; y=1;
660 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; x=1; y=1;
12054 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=1; x=1; y=1;
5660 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=1; y=1;
5141 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=2; x=1; y=2;
36989 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=1;
4905 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; x=1; y=2;
1410 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=2; x=1; y=1;
5142 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; x=2; y=1;
28965 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; x=1; y=1;
4695 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; x=1; y=2;
16065 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=1; x=1; y=1;
23292 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; x=1; y=2;
162 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=1;
6953 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; x=1; y=1;
10295 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=2; y=1;
5697 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=1;
30586 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=1;
1933 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=1; x=1; y=1;
19929 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=2; x=1; y=2;
8427 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; x=1; y=1;
22238 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=2; y=1;
563 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=2; x=1; y=1;
12080 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=1; y=1;
12879 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=1;
22772 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=1; y=2;
5820 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r3=1; x=1; y=1;
11452 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; x=1; y=2;
9525 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; x=1; y=1;
50697 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=2; x=1; y=2;
4682 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=1; x=1; y=1;
45594 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; x=1; y=1;
120389:>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; x=2; y=1;
13307 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; x=1; y=1;
9918 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=1; x=1; y=1;
10098 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; x=1; y=1;
3924 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r3=2; x=1; y=1;
9043 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=1; y=1;
2063 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; x=1; y=2;
4959 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; x=2; y=1;
5465 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=1; y=1;
53278 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=1; y=1;
1396 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=2; x=1; y=1;
13862 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=1; y=2;
9863 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; x=1; y=1;
17311 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r3=2; x=1; y=2;
49748 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=1;
10118 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; x=1; y=1;
62627 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=1;
52472 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=2; x=1; y=2;
61013 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=1; y=2;
10169 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=1; y=1;
216 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=2; x=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r3=1 /\ 2:r1=1 /\ 2:r3=1) is NOT validated
Hash=cc0cbfe5c32dbb25861a9484f5ae5e5e
Cycle=LwSyncdWW Rfe SyncsRR Fre LwSyncdWW Rfe SyncsRR Fre
Relax safe487 No
Safe=Fre LwSyncdWW ACSyncsRR
Time safe487 4.98
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe488.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe488
"Rfe SyncdRR Fre LwSyncdWW Rfe SyncsRR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | lwsync | lwz r3,0(r2) | ;
| li r3,1 | | ;
| stw r3,0(r4) | | ;
exists (y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r2)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r9,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe488 Allowed
Histogram (53 states)
64 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; y=2;
197 :>0:r1=2; 0:r3=0; 2:r1=2; 2:r3=1; y=1;
32 :>0:r1=2; 0:r3=0; 2:r1=1; 2:r3=1; y=1;
481 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; y=1;
305 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; y=2;
453 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=0; y=1;
1038 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; y=2;
1652 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=1; y=2;
715 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=1; y=2;
919 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=1; y=1;
8845 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; y=2;
13103 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; y=2;
2621 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; y=1;
28831 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; y=1;
69 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=2; y=1;
29639 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=1; y=1;
7045 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; y=2;
3411 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=1; y=1;
7471 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=2; y=2;
12560 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; y=2;
6253 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; y=2;
1839 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; y=1;
2453 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; y=2;
4304 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; y=2;
17651 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; y=1;
1676 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; y=2;
37253 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; y=2;
5204 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; y=1;
5806 :>0:r1=2; 0:r3=0; 2:r1=2; 2:r3=2; y=1;
11227 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; y=1;
38352 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r3=2; y=2;
8240 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; y=1;
1216 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; y=1;
6601 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; y=2;
15070 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; y=1;
33081 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=1; y=1;
4603 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=2; y=2;
143479:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; y=1;
9541 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; y=2;
2911 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=2; y=2;
39619 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; y=2;
76585 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; y=1;
30264 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; y=1;
19145 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; y=1;
2644 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=2; y=1;
10763 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; y=2;
94054 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r3=2; y=1;
19668 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=2; y=2;
58115 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r3=1; y=1;
6626 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=2; y=2;
49981 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; y=1;
80295 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=1; y=1;
36030 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=1) is NOT validated
Hash=394569c2f8392fd542c9535ef8a0fe58
Cycle=Rfe SyncdRR Fre LwSyncdWW Rfe SyncsRR Fre
Relax safe488 No
Safe=Fre LwSyncdWW ACSyncsRR ACSyncdRR
Time safe488 2.85
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe489.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe489
"LwSyncdWW Rfe SyncdRR Fre LwSyncdWW Rfe SyncsRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,2 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | lwsync | lwz r3,0(r2) | lwsync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r2)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r9,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe489 Allowed
Histogram (41 states)
1 :>0:r1=1; 0:r3=0; 2:r1=2; 2:r3=1; z=1;
1 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r3=1; z=1;
5 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=2; z=1;
24 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; z=2;
75 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=0; z=1;
182 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; z=2;
171 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; z=2;
110 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; z=2;
82 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; z=2;
574 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=2; z=2;
167 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; z=2;
1787 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=2; z=2;
2031 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; z=2;
5163 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; z=2;
451 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; z=1;
6865 :>0:r1=1; 0:r3=0; 2:r1=2; 2:r3=2; z=1;
13053 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; z=1;
21498 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; z=2;
7087 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; z=2;
11952 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; z=1;
11403 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; z=1;
3493 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; z=2;
339 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; z=1;
32347 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=1; z=1;
54578 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=2; z=2;
100992:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; z=1;
9509 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; z=1;
11783 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; z=2;
38457 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; z=1;
75606 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; z=2;
5782 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; z=1;
25390 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; z=2;
33755 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; z=2;
35509 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; z=1;
12066 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; z=1;
51560 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; z=1;
182711:>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; z=1;
21081 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=1; z=1;
23213 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=1; z=1;
179785:>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; z=1;
19362 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=1) is NOT validated
Hash=ff5b3ca0079d1e45750d67de6259407d
Cycle=LwSyncdWW Rfe SyncdRR Fre LwSyncdWW Rfe SyncsRR Fre
Relax safe489 No
Safe=Fre LwSyncdWW ACSyncsRR ACSyncdRR
Time safe489 2.84
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe490.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe490
"SyncdWW Rfe SyncsRW Rfe LwSyncdRW Rfe SyncsRR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 3:r2=y; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | lwsync | sync | stw r1,0(r2) ;
li r3,2 | li r3,1 | lwz r3,0(r2) | sync ;
stw r3,0(r2) | stw r3,0(r4) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: lwsync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r2)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r9,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe490 Allowed
Histogram (74 states)
1 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1; x=2; y=1;
6 :>0:r1=1; 1:r1=2; 2:r1=2; 2:r3=1; x=2; y=1;
2 :>0:r1=1; 1:r1=2; 2:r1=0; 2:r3=2; x=2; y=1;
3 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; x=2; y=1;
5 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
4 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; x=1; y=1;
55 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
21 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=2;
823 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=2; y=1;
69 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=1;
12 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
107 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=1;
312 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
51 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=1;
719 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=1; x=1; y=2;
67 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=2; x=2; y=1;
578 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
127 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=1; y=2;
11438 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=1;
1550 :>0:r1=1; 1:r1=2; 2:r1=2; 2:r3=2; x=2; y=1;
309 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=1;
100 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=1; x=2; y=1;
283 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=2; y=1;
520 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
7701 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=2; x=1; y=2;
2396 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
2286 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=2; x=1; y=2;
1396 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=2;
76 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=2; y=1;
1337 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; x=2; y=1;
2467 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=1;
990 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; x=1; y=1;
3142 :>0:r1=1; 1:r1=1; 2:r1=2; 2:r3=1; x=2; y=1;
1105 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=1; x=2; y=1;
434 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=1;
734 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; x=1; y=1;
1938 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=2; x=1; y=2;
3577 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=1;
5472 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
21045 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=1;
1640 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=1;
10905 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; x=2; y=1;
18525 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=1;
8148 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; x=1; y=1;
29198 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=1;
21062 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
8751 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=1; y=1;
15281 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=1; x=1; y=1;
11257 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
60330 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
12834 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=1; y=2;
20815 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=1;
18931 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=1; y=1;
15908 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; x=1; y=1;
1380 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
48314 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=1; x=1; y=1;
3959 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=1;
11494 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=2; x=1; y=1;
74920 :>0:r1=1; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=1;
127449:>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=1; y=1;
1614 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=1; y=1;
20274 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; x=2; y=1;
10022 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=1;
57248 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=1;
43789 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=2; x=1; y=1;
14678 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=1;
55104 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=1; y=2;
47609 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
14966 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
13684 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=1;
47552 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
50530 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=1;
1162 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=1; y=1;
27409 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=2; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=1) is NOT validated
Hash=fb04fbb173eac04a5d3b705b41d3e287
Cycle=SyncdWW Rfe SyncsRW Rfe LwSyncdRW Rfe SyncsRR Fre
Relax safe490 No
Safe=Fre LwSyncdRW ACSyncsRR BCSyncsRW BCSyncdWW
Time safe490 4.16
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe491.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe491
"SyncdWW Rfe LwSyncdRW Rfe SyncsRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
lwsync | sync | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r2) | sync ;
stw r3,0(r4) | | li r3,1 ;
| | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stw r8,0(r2)
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r9,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe491 Allowed
Histogram (18 states)
2 :>0:r1=1; 1:r1=0; 1:r3=1; y=1;
245 :>0:r1=1; 1:r1=0; 1:r3=2; y=1;
24416 :>0:r1=0; 1:r1=1; 1:r3=1; y=2;
3260 :>0:r1=1; 1:r1=2; 1:r3=1; y=1;
133340:>0:r1=0; 1:r1=2; 1:r3=2; y=2;
462 :>0:r1=1; 1:r1=0; 1:r3=0; y=1;
95038 :>0:r1=0; 1:r1=1; 1:r3=2; y=2;
14487 :>0:r1=0; 1:r1=0; 1:r3=2; y=2;
6249 :>0:r1=0; 1:r1=0; 1:r3=1; y=2;
4357 :>0:r1=0; 1:r1=0; 1:r3=2; y=1;
58712 :>0:r1=0; 1:r1=0; 1:r3=0; y=2;
15982 :>0:r1=0; 1:r1=0; 1:r3=1; y=1;
58415 :>0:r1=0; 1:r1=2; 1:r3=2; y=1;
87145 :>0:r1=0; 1:r1=2; 1:r3=1; y=1;
166415:>0:r1=1; 1:r1=2; 1:r3=2; y=1;
277697:>0:r1=0; 1:r1=0; 1:r3=0; y=1;
49255 :>0:r1=0; 1:r1=1; 1:r3=1; y=1;
4523 :>0:r1=1; 1:r1=1; 1:r3=1; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1) is NOT validated
Hash=393cc5005fdacc2df1fd2b3127e02a9e
Cycle=SyncdWW Rfe LwSyncdRW Rfe SyncsRR Fre
Relax safe491 No
Safe=Fre LwSyncdRW ACSyncsRR BCSyncdWW
Time safe491 1.64
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe492.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe492
"SyncdWW Rfe SyncdRW Rfe LwSyncdRW Rfe SyncsRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | lwsync | sync | stw r1,0(r2) ;
li r3,1 | li r3,1 | lwz r3,0(r2) | sync ;
stw r3,0(r4) | stw r3,0(r4) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: lwsync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r2)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r9,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe492 Allowed
Histogram (38 states)
5 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; z=1;
6 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
50 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
16 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
61 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; z=2;
101 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
187 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; z=1;
114 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; z=1;
611 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=2; z=2;
769 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; z=2;
28 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
491 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; z=2;
430 :>0:r1=1; 1:r1=1; 2:r1=2; 2:r3=2; z=1;
2151 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; z=2;
20808 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; z=1;
7807 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; z=1;
17059 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; z=1;
24556 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; z=1;
3185 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; z=2;
9906 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
35976 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
4476 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; z=2;
17313 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; z=1;
38617 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; z=1;
115472:>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; z=1;
58836 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; z=1;
20521 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; z=1;
23979 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
86244 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; z=2;
75970 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; z=1;
4219 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; z=1;
73335 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
34894 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; z=1;
68051 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
56869 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; z=1;
14404 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; z=1;
175920:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; z=1;
6563 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=1) is NOT validated
Hash=269c8b12113f842015e4532d6c67644c
Cycle=SyncdWW Rfe SyncdRW Rfe LwSyncdRW Rfe SyncsRR Fre
Relax safe492 No
Safe=Fre LwSyncdRW ACSyncsRR BCSyncdWW BCSyncdRW
Time safe492 2.78
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe493.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe493
"SyncdWW Rfe DpdR Fri Rfe SyncdRW Rfe SyncsRR Fre"
{0:r2=x; 0:r5=y; 1:r2=y; 1:r4=z; 2:r2=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | sync | sync | stw r1,0(r2) ;
lwzx r4,r3,r5 | li r3,1 | lwz r3,0(r2) | sync ;
li r6,1 | stw r3,0(r4) | | li r3,1 ;
stw r6,0(r5) | | | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 0:r4=0 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r5,0(r9)
_litmus_P0_1_: xor r10,r5,r5
_litmus_P0_2_: lwzx r6,r10,r2
_litmus_P0_3_: li r11,1
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r2)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r9,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe493 Allowed
Histogram (40 states)
1 :>0:r1=1; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=2; z=1;
36 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
7 :>0:r1=1; 0:r4=0; 1:r1=1; 2:r1=2; 2:r3=1; z=1;
10 :>0:r1=1; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=0; z=1;
72 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=1; 2:r3=1; z=2;
270 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
244 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=2; z=1;
147 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
1048 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=1; 2:r3=2; z=2;
958 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=2; 2:r3=2; z=2;
887 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=2; 2:r3=2; z=2;
744 :>0:r1=1; 0:r4=0; 1:r1=1; 2:r1=2; 2:r3=2; z=1;
12204 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=2; z=2;
2361 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=1; z=2;
6398 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=1; 2:r3=1; z=1;
32 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
231 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
5316 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=0; z=1;
23280 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=1; z=1;
6970 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=1; z=1;
17310 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=2; 2:r3=1; z=1;
17655 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=0; z=2;
8223 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
10919 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
62333 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
36717 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=2; 2:r3=1; z=1;
472 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=1; z=1;
13905 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=2; 2:r3=1; z=1;
26735 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=1; z=1;
74541 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=2; 2:r3=2; z=2;
26990 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
50520 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=2; 2:r3=2; z=1;
38389 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
132908:>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=2; 2:r3=2; z=1;
30326 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=2; z=1;
120944:>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=0; z=1;
33433 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=1; z=1;
58210 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=2; 2:r3=2; z=1;
172203:>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=0; z=1;
6051 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=2; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 0:r4=0 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=1) is NOT validated
Hash=09e8031cbfe51d1dbbf722af4f1dfe45
Cycle=SyncdWW Rfe DpdR Fri Rfe SyncdRW Rfe SyncsRR Fre
Relax safe493 No
Safe=Fri Fre DpdR ACSyncsRR ACSyncdRW BCSyncdWW
Time safe493 3.08
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe494.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe494
"SyncdWW Rfe DpsR Fri Rfe SyncdRW Rfe SyncsRR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 3:r2=y; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | sync | sync | stw r1,0(r2) ;
lwzx r4,r3,r2 | li r3,1 | lwz r3,0(r2) | sync ;
li r5,2 | stw r3,0(r4) | | li r3,1 ;
stw r5,0(r2) | | | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r4=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r6,0(r2)
_litmus_P0_1_: xor r10,r6,r6
_litmus_P0_2_: lwzx r9,r10,r2
_litmus_P0_3_: li r11,2
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r2)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r9,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe494 Allowed
Histogram (88 states)
1 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=1; x=2; y=1;
2 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=1; x=1; y=1;
2 :>0:r1=0; 0:r4=1; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
1 :>0:r1=0; 0:r4=1; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
1 :>0:r1=0; 0:r4=1; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=1;
2 :>0:r1=0; 0:r4=1; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
6 :>0:r1=0; 0:r4=1; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=1;
8 :>0:r1=0; 0:r4=1; 1:r1=2; 2:r1=2; 2:r3=2; x=2; y=1;
5 :>0:r1=0; 0:r4=1; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=1;
4 :>0:r1=0; 0:r4=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=1;
9 :>0:r1=0; 0:r4=1; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=1;
6 :>0:r1=1; 0:r4=1; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
24 :>0:r1=1; 0:r4=1; 1:r1=2; 2:r1=2; 2:r3=1; x=2; y=1;
11 :>0:r1=0; 0:r4=0; 1:r1=2; 2:r1=1; 2:r3=1; x=1; y=2;
4 :>0:r1=0; 0:r4=1; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
1 :>0:r1=0; 0:r4=1; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=1;
28 :>0:r1=0; 0:r4=0; 1:r1=2; 2:r1=0; 2:r3=2; x=2; y=1;
9 :>0:r1=0; 0:r4=0; 1:r1=2; 2:r1=1; 2:r3=1; x=2; y=1;
37 :>0:r1=1; 0:r4=1; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
7 :>0:r1=0; 0:r4=1; 1:r1=0; 2:r1=2; 2:r3=1; x=2; y=1;
44 :>0:r1=1; 0:r4=1; 1:r1=2; 2:r1=1; 2:r3=1; x=2; y=1;
30 :>0:r1=1; 0:r4=1; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
129 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=1; 2:r3=1; x=2; y=1;
65 :>0:r1=1; 0:r4=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
25 :>0:r1=1; 0:r4=1; 1:r1=2; 2:r1=0; 2:r3=0; x=2; y=1;
156 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=2; 2:r3=1; x=2; y=1;
414 :>0:r1=1; 0:r4=1; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=1;
4 :>0:r1=0; 0:r4=1; 1:r1=1; 2:r1=2; 2:r3=1; x=2; y=1;
184 :>0:r1=0; 0:r4=0; 1:r1=2; 2:r1=1; 2:r3=2; x=1; y=2;
40 :>0:r1=1; 0:r4=1; 1:r1=2; 2:r1=0; 2:r3=2; x=2; y=1;
11 :>0:r1=1; 0:r4=1; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=2;
734 :>0:r1=1; 0:r4=1; 1:r1=1; 2:r1=1; 2:r3=1; x=2; y=1;
114 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
76 :>0:r1=1; 0:r4=1; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=1;
80 :>0:r1=0; 0:r4=0; 1:r1=2; 2:r1=0; 2:r3=0; x=2; y=1;
2183 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=1;
2786 :>0:r1=0; 0:r4=0; 1:r1=2; 2:r1=0; 2:r3=0; x=1; y=2;
212 :>0:r1=0; 0:r4=0; 1:r1=2; 2:r1=2; 2:r3=2; x=1; y=2;
570 :>0:r1=0; 0:r4=0; 1:r1=2; 2:r1=0; 2:r3=1; x=1; y=2;
305 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=2;
894 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=1;
1983 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
156 :>0:r1=1; 0:r4=1; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=1;
1258 :>0:r1=1; 0:r4=1; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
1400 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
83 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=1;
2149 :>0:r1=1; 0:r4=1; 1:r1=1; 2:r1=2; 2:r3=1; x=2; y=1;
4998 :>0:r1=0; 0:r4=0; 1:r1=2; 2:r1=0; 2:r3=2; x=1; y=2;
1445 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
1180 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=2; 2:r3=1; x=1; y=1;
13763 :>0:r1=0; 0:r4=0; 1:r1=2; 2:r1=0; 2:r3=1; x=1; y=1;
3016 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=1;
36360 :>0:r1=1; 0:r4=1; 1:r1=0; 2:r1=2; 2:r3=1; x=2; y=1;
15276 :>0:r1=0; 0:r4=0; 1:r1=2; 2:r1=2; 2:r3=2; x=2; y=1;
20 :>0:r1=0; 0:r4=0; 1:r1=2; 2:r1=2; 2:r3=1; x=2; y=1;
19205 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=1;
15638 :>0:r1=0; 0:r4=0; 1:r1=2; 2:r1=1; 2:r3=1; x=1; y=1;
981 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=1; 2:r3=1; x=1; y=1;
8565 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=1;
21172 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=2; 2:r3=1; x=2; y=1;
13370 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
13221 :>0:r1=1; 0:r4=1; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=1;
8737 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
23268 :>0:r1=1; 0:r4=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=1;
11113 :>0:r1=1; 0:r4=1; 1:r1=2; 2:r1=2; 2:r3=2; x=2; y=1;
6079 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=1; x=1; y=1;
300 :>0:r1=1; 0:r4=1; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=1;
17833 :>0:r1=1; 0:r4=1; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=1;
20165 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
41841 :>0:r1=0; 0:r4=0; 1:r1=2; 2:r1=2; 2:r3=1; x=1; y=1;
15407 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=1;
5231 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=1;
2408 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=1;
25314 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
24293 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=1;
34159 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=1;
3972 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=2; 2:r3=1; x=1; y=1;
29969 :>0:r1=0; 0:r4=0; 1:r1=2; 2:r1=0; 2:r3=2; x=1; y=1;
16781 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=1;
20775 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=1; x=1; y=2;
2652 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=2; x=1; y=1;
79284 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
177677:>0:r1=0; 0:r4=0; 1:r1=2; 2:r1=0; 2:r3=0; x=1; y=1;
110811:>0:r1=0; 0:r4=0; 1:r1=2; 2:r1=2; 2:r3=2; x=1; y=1;
38224 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
6405 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=0; x=1; y=1;
70630 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=2; 2:r3=2; x=1; y=1;
22209 :>0:r1=1; 0:r4=1; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 0:r4=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=1) is NOT validated
Hash=dc2f37accf825401bea9d4d5d56dfab8
Cycle=SyncdWW Rfe DpsR Fri Rfe SyncdRW Rfe SyncsRR Fre
Relax safe494 No
Safe=Fri Fre DpsR ACSyncsRR ACSyncdRW BCSyncdWW
Time safe494 5.06
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe495.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe495
"SyncdWW Rfe DpdW Rfe SyncdRW Rfe SyncsRR Fre"
{0:r2=x; 0:r5=y; 1:r2=y; 1:r4=z; 2:r2=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | sync | sync | stw r1,0(r2) ;
li r4,1 | li r3,1 | lwz r3,0(r2) | sync ;
stwx r4,r3,r5 | stw r3,0(r4) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: xor r11,r7,r7
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stwx r8,r11,r2
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r2)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r9,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe495 Allowed
Histogram (38 states)
31 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
18 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
68 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
5 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; z=1;
15 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
56 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
88 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; z=1;
187 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; z=1;
237 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; z=2;
394 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; z=2;
2952 :>0:r1=1; 1:r1=1; 2:r1=2; 2:r3=2; z=1;
2240 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; z=1;
5916 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; z=1;
13575 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; z=1;
39006 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; z=1;
9332 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; z=1;
2312 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=2; z=2;
22729 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; z=1;
17090 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; z=1;
21142 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; z=1;
2812 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; z=2;
34934 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; z=2;
19673 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
17850 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; z=1;
29534 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
69417 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; z=1;
85065 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; z=2;
28516 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; z=2;
46379 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
9909 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; z=1;
130498:>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; z=1;
49662 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; z=1;
57853 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
3397 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; z=1;
12363 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
119612:>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; z=1;
142354:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; z=1;
2779 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=1) is NOT validated
Hash=24568a04b7a1279324e10dc6790b095b
Cycle=SyncdWW Rfe DpdW Rfe SyncdRW Rfe SyncsRR Fre
Relax safe495 No
Safe=Fre DpdW ACSyncsRR ACSyncdRW BCSyncdWW
Time safe495 2.74
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe496.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe496
"SyncdWW Rfe DpsW Rfe SyncdRW Rfe SyncsRR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 3:r2=y; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
xor r3,r1,r1 | sync | sync | stw r1,0(r2) ;
li r4,2 | li r3,1 | lwz r3,0(r2) | sync ;
stwx r4,r3,r2 | stw r3,0(r4) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: xor r11,r8,r8
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stwx r9,r11,r2
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r2)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r9,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe496 Allowed
Histogram (74 states)
1 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; x=1; y=1;
1 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=1; x=2; y=1;
3 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=2; y=1;
4 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
45 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=1;
2 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=2; x=2; y=1;
6 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
19 :>0:r1=1; 1:r1=2; 2:r1=0; 2:r3=2; x=2; y=1;
12 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
57 :>0:r1=1; 1:r1=2; 2:r1=2; 2:r3=1; x=2; y=1;
24 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=1;
103 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
76 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=1; x=2; y=1;
213 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
16 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=1; y=2;
35 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=1;
13 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
13 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=1;
87 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; x=2; y=1;
17 :>0:r1=1; 1:r1=2; 2:r1=1; 2:r3=1; x=2; y=1;
14 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=2; y=1;
30 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=2; y=1;
487 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; x=1; y=1;
106 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
58 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=2;
702 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=2; x=1; y=2;
261 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=1;
480 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=2; x=1; y=2;
1606 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
31 :>0:r1=1; 1:r1=2; 2:r1=0; 2:r3=0; x=2; y=1;
2626 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=1;
763 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=1;
703 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=1;
950 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=1; y=1;
828 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=1;
468 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
1438 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; x=1; y=1;
194 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=1; x=1; y=2;
11 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=2;
354 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=1;
2309 :>0:r1=1; 1:r1=1; 2:r1=2; 2:r3=1; x=2; y=1;
15961 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=2; x=1; y=2;
2833 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=1;
4831 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; x=2; y=1;
8635 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=1; y=2;
4221 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=1;
1823 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=2; x=2; y=1;
5552 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=1;
7023 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
18549 :>0:r1=1; 1:r1=2; 2:r1=2; 2:r3=2; x=2; y=1;
29749 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=1; x=1; y=1;
20632 :>0:r1=1; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=1;
20776 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
11945 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=1; y=1;
19608 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=1; y=2;
50572 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=1; x=1; y=1;
64325 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; x=1; y=1;
11377 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
5564 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; x=1; y=1;
102679:>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
33725 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=1;
50445 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=2; x=1; y=1;
11458 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=1;
65138 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
213253:>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=1; y=1;
31472 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=2; x=1; y=1;
6163 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=1;
26182 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=1;
4836 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=1; y=1;
70440 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=1;
62 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
5176 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=1;
23516 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=1; y=1;
36313 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=1) is NOT validated
Hash=e5fdd1279a9911e0d9d09e31bc7e48eb
Cycle=SyncdWW Rfe DpsW Rfe SyncdRW Rfe SyncsRR Fre
Relax safe496 No
Safe=Fre DpsW ACSyncsRR ACSyncdRW BCSyncdWW
Time safe496 4.41
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe497.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe497
"LwSyncdWW Rfe SyncdRW Rfe SyncsRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | sync | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r2) | lwsync ;
stw r3,0(r4) | | li r3,1 ;
| | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stw r8,0(r2)
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r9,0(r2)
_litmus_P2_0_: li r10,2
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe497 Allowed
Histogram (18 states)
1 :>0:r1=1; 1:r1=0; 1:r3=1; y=1;
368 :>0:r1=1; 1:r1=1; 1:r3=1; y=1;
3931 :>0:r1=1; 1:r1=2; 1:r3=1; y=1;
55251 :>0:r1=1; 1:r1=0; 1:r3=0; y=1;
1255 :>0:r1=1; 1:r1=0; 1:r3=2; y=1;
8984 :>0:r1=0; 1:r1=1; 1:r3=1; y=2;
8058 :>0:r1=0; 1:r1=0; 1:r3=1; y=2;
55727 :>0:r1=0; 1:r1=0; 1:r3=0; y=2;
42732 :>0:r1=0; 1:r1=2; 1:r3=1; y=1;
61974 :>0:r1=0; 1:r1=1; 1:r3=2; y=2;
8172 :>0:r1=0; 1:r1=0; 1:r3=2; y=1;
57996 :>0:r1=0; 1:r1=0; 1:r3=2; y=2;
96250 :>0:r1=0; 1:r1=2; 1:r3=2; y=1;
16472 :>0:r1=0; 1:r1=0; 1:r3=1; y=1;
26519 :>0:r1=0; 1:r1=1; 1:r3=1; y=1;
269954:>0:r1=0; 1:r1=0; 1:r3=0; y=1;
54061 :>0:r1=0; 1:r1=2; 1:r3=2; y=2;
232295:>0:r1=1; 1:r1=2; 1:r3=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r3=1) is NOT validated
Hash=40d1f6d6eeffe534135fc68d3c47f4e2
Cycle=LwSyncdWW Rfe SyncdRW Rfe SyncsRR Fre
Relax safe497 No
Safe=Fre LwSyncdWW ACSyncsRR ACSyncdRW
Time safe497 1.63
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe498.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe498
"SyncdWW Rfe LwSyncdRW Rfe SyncdRW Rfe SyncsRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
lwsync | sync | sync | stw r1,0(r2) ;
li r3,1 | li r3,1 | lwz r3,0(r2) | sync ;
stw r3,0(r4) | stw r3,0(r4) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r2)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r9,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe498 Allowed
Histogram (40 states)
1 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=2; z=1;
2 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
3 :>0:r1=1; 1:r1=1; 2:r1=2; 2:r3=1; z=1;
7 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; z=1;
12 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
33 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
7 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; z=2;
47 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
40 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
208 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; z=2;
124 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; z=1;
240 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; z=2;
176 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; z=1;
4796 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; z=1;
2087 :>0:r1=1; 1:r1=1; 2:r1=2; 2:r3=2; z=1;
1290 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; z=2;
9731 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; z=2;
12834 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; z=1;
206 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=2; z=2;
4061 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; z=1;
5741 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; z=2;
17147 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; z=1;
37081 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
27731 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; z=1;
58370 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; z=1;
38455 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; z=1;
123398:>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; z=1;
40619 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
53567 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
31546 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; z=1;
14496 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
130774:>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; z=1;
8446 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; z=1;
6266 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; z=1;
49144 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; z=2;
35158 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; z=1;
19011 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
63449 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; z=1;
189625:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; z=1;
14071 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=1) is NOT validated
Hash=34fed52d1295184bcf294c521f681f03
Cycle=SyncdWW Rfe LwSyncdRW Rfe SyncdRW Rfe SyncsRR Fre
Relax safe498 No
Safe=Fre LwSyncdRW ACSyncsRR ACSyncdRW BCSyncdWW
Time safe498 2.76
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe499.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe499
"SyncdWW Rfe LwSyncsRW Rfe SyncdRW Rfe SyncsRR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 3:r2=y; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
lwsync | sync | sync | stw r1,0(r2) ;
li r3,2 | li r3,1 | lwz r3,0(r2) | sync ;
stw r3,0(r2) | stw r3,0(r4) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r2)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r9,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe499 Allowed
Histogram (75 states)
2 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; x=1; y=1;
7 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=2; y=1;
115 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=2;
10 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
1 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; x=2; y=1;
6 :>0:r1=1; 1:r1=2; 2:r1=1; 2:r3=1; x=2; y=1;
3 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
39 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=2; y=1;
7 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=2; x=2; y=1;
11 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=1; y=2;
54 :>0:r1=1; 1:r1=2; 2:r1=0; 2:r3=2; x=2; y=1;
20 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=1; x=2; y=1;
26 :>0:r1=1; 1:r1=2; 2:r1=0; 2:r3=0; x=2; y=1;
83 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=1;
66 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=2; y=1;
28 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
809 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=1; x=2; y=1;
3 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=2;
325 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
16 :>0:r1=1; 1:r1=2; 2:r1=2; 2:r3=1; x=2; y=1;
21 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
9 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
286 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=1;
251 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; x=2; y=1;
70 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=1;
448 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=2; x=1; y=2;
947 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
1075 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
23 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=1;
1247 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
4299 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=1;
283 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=2; x=1; y=2;
38 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=1;
3341 :>0:r1=1; 1:r1=1; 2:r1=2; 2:r3=1; x=2; y=1;
1076 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; x=1; y=1;
1532 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=1; x=1; y=2;
4916 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=1;
6020 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
16285 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; x=2; y=1;
22163 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=2; x=1; y=2;
45347 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; x=2; y=1;
2981 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=1;
794 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=1;
9634 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
1803 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=2; x=2; y=1;
942 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; x=1; y=1;
8001 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=1;
2300 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=1;
13145 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=1; y=2;
16713 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=1;
10469 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=1; y=2;
29410 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=1; x=1; y=1;
5003 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; x=1; y=1;
46808 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=1;
34204 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=1; y=1;
15665 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=1;
19022 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
12320 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=1; y=1;
35149 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
28918 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=2; x=1; y=1;
2567 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=1;
8973 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=1;
42601 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; x=1; y=1;
16043 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=1; y=1;
23068 :>0:r1=1; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=1;
53428 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=1;
93449 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
29336 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=1; x=1; y=1;
15802 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=1;
1723 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=1;
83206 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=2; x=1; y=1;
47849 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
163815:>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=1; y=1;
846 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=1; y=1;
12705 :>0:r1=1; 1:r1=2; 2:r1=2; 2:r3=2; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=1) is NOT validated
Hash=87ca5d9d41e3f8f0ad1b06cfb557c751
Cycle=SyncdWW Rfe LwSyncsRW Rfe SyncdRW Rfe SyncsRR Fre
Relax safe499 No
Safe=Fre LwSyncsRW ACSyncsRR ACSyncdRW BCSyncdWW
Time safe499 4.18
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe500.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe500
"LwSyncdWW Rfe SyncsRW Rfe SyncdRW Rfe SyncsRR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 3:r2=y; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | sync | sync | stw r1,0(r2) ;
li r3,2 | li r3,1 | lwz r3,0(r2) | lwsync ;
stw r3,0(r2) | stw r3,0(r4) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r2)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r9,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe500 Allowed
Histogram (75 states)
7 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1; x=2; y=1;
11 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; x=2; y=1;
4 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; x=1; y=1;
23 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=2;
7 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
70 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=2; x=1; y=2;
105 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=2; x=1; y=2;
899 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=1; x=1; y=2;
46 :>0:r1=1; 1:r1=2; 2:r1=0; 2:r3=0; x=2; y=1;
8 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=1; y=2;
9 :>0:r1=1; 1:r1=2; 2:r1=0; 2:r3=2; x=2; y=1;
8 :>0:r1=1; 1:r1=2; 2:r1=2; 2:r3=1; x=2; y=1;
133 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
152 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
245 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=2; y=1;
499 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; x=1; y=1;
230 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=2; x=2; y=1;
254 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=1; x=2; y=1;
807 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=1;
3064 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
1026 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
2339 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=1; x=2; y=1;
1215 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=2;
5113 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=2; y=1;
2283 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; x=2; y=1;
440 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=1;
475 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=1;
487 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=1;
11814 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=1;
8966 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=1;
10276 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
61 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=2; y=1;
13712 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=2; x=1; y=2;
18535 :>0:r1=1; 1:r1=1; 2:r1=2; 2:r3=1; x=2; y=1;
14972 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
164 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
37476 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
3146 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=1; y=1;
5671 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
16941 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=1; x=1; y=1;
7954 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
8907 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=1;
26483 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=1;
2581 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=1;
12841 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; x=2; y=1;
9383 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; x=2; y=1;
2616 :>0:r1=1; 1:r1=2; 2:r1=2; 2:r3=2; x=2; y=1;
20174 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=1; y=1;
4752 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=1; y=2;
15543 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
4811 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=1;
14049 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=2; x=1; y=1;
5328 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=1; y=1;
50902 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=1;
6846 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=1;
2699 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=1;
16151 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=1;
8581 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=1; y=2;
21885 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=1; x=1; y=1;
49922 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
40454 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=1;
71909 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=1; y=1;
130875:>0:r1=1; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=1;
23350 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
2177 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; x=1; y=1;
5347 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; x=1; y=1;
87762 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; x=1; y=1;
14805 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=1;
27728 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
27095 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=2; x=1; y=1;
18669 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=1;
7679 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=1;
76356 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=1;
674 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=1; y=1;
11019 :>0:r1=0; 1:r1=2; 2:r1=2; 2:r3=2; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=1) is NOT validated
Hash=16fea2678032243c1b741ce3ace3e8e3
Cycle=LwSyncdWW Rfe SyncsRW Rfe SyncdRW Rfe SyncsRR Fre
Relax safe500 No
Safe=Fre LwSyncdWW ACSyncsRW ACSyncsRR ACSyncdRW
Time safe500 4.15
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe501.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe501
"Rfe SyncdRW Rfe SyncdRW Rfe SyncsRR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | sync | sync | stw r1,0(r2) ;
li r3,1 | li r3,1 | lwz r3,0(r2) | ;
stw r3,0(r4) | stw r3,0(r4) | | ;
exists (y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r2)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r9,0(r2)
_litmus_P3_0_: li r9,2
_litmus_P3_1_: stw r9,0(r2)
Test safe501 Allowed
Histogram (53 states)
2 :>0:r1=2; 1:r1=1; 2:r1=1; 2:r3=1; y=1;
1 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; y=2;
16 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=2; y=2;
19 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=2; y=1;
19 :>0:r1=2; 1:r1=1; 2:r1=2; 2:r3=1; y=1;
9 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; y=2;
426 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=0; y=1;
850 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; y=2;
498 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; y=2;
94 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; y=2;
2711 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; y=1;
570 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; y=1;
3452 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; y=1;
4110 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; y=1;
1420 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=1; y=2;
1257 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=1; y=2;
23722 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; y=1;
2839 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; y=2;
5312 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; y=1;
35072 :>0:r1=2; 1:r1=0; 2:r1=2; 2:r3=1; y=1;
10750 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; y=2;
1496 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; y=2;
9648 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=2; y=2;
3054 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; y=1;
7749 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; y=2;
50814 :>0:r1=2; 1:r1=0; 2:r1=2; 2:r3=2; y=2;
5303 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; y=1;
4740 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; y=2;
4512 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; y=2;
22568 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; y=1;
5211 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=2; y=2;
1544 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; y=2;
29180 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; y=1;
52835 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=1; y=1;
7074 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; y=1;
3569 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=2; y=1;
26629 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; y=1;
2065 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; y=2;
10114 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; y=2;
6407 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; y=1;
2710 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=1; y=1;
6103 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; y=2;
6227 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; y=2;
126063:>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; y=1;
39841 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; y=1;
118063:>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; y=1;
181926:>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=0; y=1;
68020 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; y=1;
93151 :>0:r1=2; 1:r1=0; 2:r1=2; 2:r3=2; y=1;
4962 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=0; y=2;
3314 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; y=2;
1214 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; y=1;
745 :>0:r1=2; 1:r1=1; 2:r1=2; 2:r3=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=1) is NOT validated
Hash=3abc87b1c1499565872f69ab7e61ce57
Cycle=Rfe SyncdRW Rfe SyncdRW Rfe SyncsRR Fre
Relax safe501 No
Safe=Fre ACSyncsRR ACSyncdRW
Time safe501 2.69
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe502.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe502
"LwSyncdWW Rfe SyncdRW Rfe SyncdRW Rfe SyncsRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,2 ;
sync | sync | sync | stw r1,0(r2) ;
li r3,1 | li r3,1 | lwz r3,0(r2) | lwsync ;
stw r3,0(r4) | stw r3,0(r4) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r2)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r9,0(r2)
_litmus_P3_0_: li r11,2
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe502 Allowed
Histogram (40 states)
1 :>0:r1=1; 1:r1=1; 2:r1=2; 2:r3=1; z=1;
2 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=2; z=1;
1 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; z=2;
8 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
34 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=2; z=2;
89 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
162 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
153 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; z=2;
143 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; z=1;
24 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
49 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; z=2;
74 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
266 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; z=1;
829 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; z=1;
2191 :>0:r1=1; 1:r1=1; 2:r1=2; 2:r3=2; z=1;
1863 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; z=2;
2196 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; z=2;
1196 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; z=1;
5953 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; z=1;
1814 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; z=2;
36663 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; z=1;
7533 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
43659 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
8052 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
29869 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; z=1;
6101 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; z=1;
12931 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; z=1;
11609 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; z=1;
42501 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
55381 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; z=1;
22198 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; z=1;
150505:>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; z=1;
68389 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; z=1;
23215 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; z=1;
19671 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; z=1;
34068 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
70158 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; z=2;
52760 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; z=1;
227074:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; z=1;
60615 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; z=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=1) is NOT validated
Hash=f7b9852da008a9bd3cfa235f5eb9d4ce
Cycle=LwSyncdWW Rfe SyncdRW Rfe SyncdRW Rfe SyncsRR Fre
Relax safe502 No
Safe=Fre LwSyncdWW ACSyncsRR ACSyncdRW
Time safe502 2.95
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe503.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe503
"Rfe SyncdRR Fre Rfe SyncdRR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | | lwz r3,0(r4) | ;
exists (0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
Test safe503 Allowed
Histogram (15 states)
108 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=0;
58 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r3=1;
1326 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=0;
22046 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0;
329 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=0;
59274 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0;
18415 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1;
12533 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=0;
142302:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1;
59760 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1;
397952:>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1;
61898 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1;
171544:>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0;
50345 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1;
2110 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=636f71f6ac76c8070d3470d463d1e541
Cycle=Rfe SyncdRR Fre Rfe SyncdRR Fre
Relax safe503 No
Safe=Fre ACSyncdRR
Time safe503 1.55
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe504.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe504
"LwSyncdWW Rfe SyncdRR Fre Rfe SyncdRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | | lwz r3,0(r4) | lwsync ;
| | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe504 Allowed
Histogram (15 states)
1 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r3=1;
50 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=0;
269 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=0;
228 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=0;
2656 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=1;
6179 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=0;
158057:>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1;
12996 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0;
69871 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1;
150834:>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0;
52728 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1;
142312:>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1;
160284:>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1;
34378 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0;
209157:>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=0b500f135d4455d5c0047e4093dc89b4
Cycle=LwSyncdWW Rfe SyncdRR Fre Rfe SyncdRR Fre
Relax safe504 No
Safe=Fre LwSyncdWW ACSyncdRR
Time safe504 1.76
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe505.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe505
"LwSyncsWW Rfe SyncdRR Fre Rfe SyncdRR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | | lwz r3,0(r4) | lwsync ;
| | | li r3,2 ;
| | | stw r3,0(r2) ;
exists (y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe505 Allowed
Histogram (31 states)
7 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=1; y=2;
3 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1; y=2;
22 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r3=2; y=2;
3 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1; y=2;
117 :>0:r1=2; 0:r3=0; 2:r1=1; 2:r3=2; y=2;
28 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=0; y=2;
146 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=0; y=2;
137 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=2; y=2;
2548 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=1; y=2;
4202 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; y=2;
10047 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=2; y=2;
1603 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=2; y=2;
643 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=0; y=2;
4433 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; y=2;
627 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=0; y=2;
498 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=0; y=2;
3405 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; y=2;
10078 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; y=2;
4710 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; y=2;
4217 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=1; y=2;
2066 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; y=2;
30264 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; y=2;
22675 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; y=2;
20847 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=0; y=2;
80714 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=2; y=2;
52925 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=2; y=2;
8751 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; y=2;
84955 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=2; y=2;
179852:>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; y=2;
133593:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; y=2;
335884:>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=493544190c0c2b3ed30c044114091244
Cycle=LwSyncsWW Rfe SyncdRR Fre Rfe SyncdRR Fre
Relax safe505 No
Safe=Fre LwSyncsWW ACSyncdRR
Time safe505 2.36
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe506.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe506
"SyncsWW Rfe DpdR Fri Rfe SyncdRR Fre"
{0:r2=y; 0:r5=x; 1:r2=x; 1:r4=y; 2:r2=y;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
xor r3,r1,r1 | sync | stw r1,0(r2) ;
lwzx r4,r3,r5 | lwz r3,0(r4) | sync ;
li r6,1 | | li r3,2 ;
stw r6,0(r5) | | stw r3,0(r2) ;
exists (y=2 /\ 0:r1=2 /\ 0:r4=0 /\ 1:r1=1 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r5,0(r9)
_litmus_P0_1_: xor r10,r5,r5
_litmus_P0_2_: lwzx r6,r10,r2
_litmus_P0_3_: li r11,1
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r9,1
_litmus_P2_1_: stw r9,0(r2)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,2
_litmus_P2_4_: stw r11,0(r2)
Test safe506 Allowed
Histogram (15 states)
3 :>0:r1=1; 0:r4=0; 1:r1=1; 1:r3=1; y=2;
6 :>0:r1=1; 0:r4=0; 1:r1=0; 1:r3=1; y=2;
9596 :>0:r1=0; 0:r4=0; 1:r1=1; 1:r3=0; y=2;
3471 :>0:r1=2; 0:r4=0; 1:r1=0; 1:r3=0; y=2;
102474:>0:r1=0; 0:r4=0; 1:r1=1; 1:r3=1; y=2;
9022 :>0:r1=0; 0:r4=0; 1:r1=0; 1:r3=2; y=2;
56113 :>0:r1=1; 0:r4=0; 1:r1=0; 1:r3=2; y=2;
18549 :>0:r1=1; 0:r4=0; 1:r1=1; 1:r3=2; y=2;
29579 :>0:r1=2; 0:r4=0; 1:r1=0; 1:r3=1; y=2;
33548 :>0:r1=2; 0:r4=0; 1:r1=1; 1:r3=2; y=2;
122485:>0:r1=0; 0:r4=0; 1:r1=0; 1:r3=0; y=2;
45712 :>0:r1=1; 0:r4=0; 1:r1=0; 1:r3=0; y=2;
126246:>0:r1=0; 0:r4=0; 1:r1=0; 1:r3=1; y=2;
192919:>0:r1=0; 0:r4=0; 1:r1=1; 1:r3=2; y=2;
250277:>0:r1=2; 0:r4=0; 1:r1=0; 1:r3=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=2 /\ 0:r4=0 /\ 1:r1=1 /\ 1:r3=0) is NOT validated
Hash=0b3ec71c0ddd1a30e0e11b80739af1da
Cycle=SyncsWW Rfe DpdR Fri Rfe SyncdRR Fre
Relax safe506 No
Safe=Fri Fre DpdR ACSyncdRR BCSyncsWW
Time safe506 1.64
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe507.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe507
"SyncdWW Rfe SyncsRW Rfe DpdR Fri Rfe SyncdRR Fre"
{0:r2=x; 1:r2=x; 1:r5=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | xor r3,r1,r1 | sync | stw r1,0(r2) ;
li r3,2 | lwzx r4,r3,r5 | lwz r3,0(r4) | sync ;
stw r3,0(r2) | li r6,1 | | li r3,1 ;
| stw r6,0(r5) | | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r4=0 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r5,0(r9)
_litmus_P1_1_: xor r10,r5,r5
_litmus_P1_2_: lwzx r6,r10,r2
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe507 Allowed
Histogram (30 states)
4 :>0:r1=1; 1:r1=2; 1:r4=0; 2:r1=1; 2:r3=1; x=2;
11 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=0; x=2;
26 :>0:r1=1; 1:r1=1; 1:r4=0; 2:r1=0; 2:r3=0; x=2;
38 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=0; x=2;
14 :>0:r1=0; 1:r1=2; 1:r4=0; 2:r1=1; 2:r3=1; x=2;
1046 :>0:r1=0; 1:r1=2; 1:r4=0; 2:r1=1; 2:r3=0; x=1;
50 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=1; 2:r3=1; x=1;
646 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=0; 2:r3=0; x=2;
460 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=1; 2:r3=1; x=2;
732 :>0:r1=1; 1:r1=1; 1:r4=0; 2:r1=1; 2:r3=1; x=2;
159 :>0:r1=0; 1:r1=2; 1:r4=0; 2:r1=0; 2:r3=0; x=2;
2245 :>0:r1=1; 1:r1=2; 1:r4=0; 2:r1=0; 2:r3=1; x=2;
10200 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=1; x=2;
48002 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=1; x=2;
1471 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=0; x=2;
34258 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=0; x=1;
36224 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=0; x=2;
41844 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=0; 2:r3=1; x=2;
65463 :>0:r1=0; 1:r1=2; 1:r4=0; 2:r1=1; 2:r3=1; x=1;
65361 :>0:r1=1; 1:r1=1; 1:r4=0; 2:r1=0; 2:r3=1; x=2;
153235:>0:r1=0; 1:r1=2; 1:r4=0; 2:r1=0; 2:r3=0; x=1;
43279 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=1; x=2;
128527:>0:r1=0; 1:r1=2; 1:r4=0; 2:r1=0; 2:r3=1; x=1;
21764 :>0:r1=0; 1:r1=2; 1:r4=0; 2:r1=0; 2:r3=1; x=2;
94770 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=0; x=1;
18734 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=1; x=1;
149238:>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=1; x=1;
12805 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=0; 2:r3=1; x=1;
1553 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=0; 2:r3=0; x=1;
67841 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=1; x=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r4=0 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=369ad8a83d5805d2d6bedb1dbc4ee7c0
Cycle=SyncdWW Rfe SyncsRW Rfe DpdR Fri Rfe SyncdRR Fre
Relax safe507 No
Safe=Fri Fre DpdR ACSyncdRR BCSyncsRW BCSyncdWW
Time safe507 2.59
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe508.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe508
"SyncdWW Rfe DpdR Fri Rfe SyncdRR Fre"
{0:r2=x; 0:r5=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
xor r3,r1,r1 | sync | stw r1,0(r2) ;
lwzx r4,r3,r5 | lwz r3,0(r4) | sync ;
li r6,1 | | li r3,1 ;
stw r6,0(r5) | | stw r3,0(r4) ;
exists (0:r1=1 /\ 0:r4=0 /\ 1:r1=1 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r5,0(r9)
_litmus_P0_1_: xor r10,r5,r5
_litmus_P0_2_: lwzx r6,r10,r2
_litmus_P0_3_: li r11,1
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe508 Allowed
Histogram (7 states)
1026 :>0:r1=1; 0:r4=0; 1:r1=0; 1:r3=0;
2404 :>0:r1=1; 0:r4=0; 1:r1=1; 1:r3=1;
4620 :>0:r1=0; 0:r4=0; 1:r1=1; 1:r3=0;
132321:>0:r1=1; 0:r4=0; 1:r1=0; 1:r3=1;
199505:>0:r1=0; 0:r4=0; 1:r1=0; 1:r3=0;
329237:>0:r1=0; 0:r4=0; 1:r1=1; 1:r3=1;
330887:>0:r1=0; 0:r4=0; 1:r1=0; 1:r3=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 0:r4=0 /\ 1:r1=1 /\ 1:r3=0) is NOT validated
Hash=4d4406523cfc2162149ae0d1afbf99f7
Cycle=SyncdWW Rfe DpdR Fri Rfe SyncdRR Fre
Relax safe508 No
Safe=Fri Fre DpdR ACSyncdRR BCSyncdWW
Time safe508 1.52
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe509.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe509
"SyncsWW Rfe SyncdRW Rfe DpdR Fri Rfe SyncdRR Fre"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r5=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | xor r3,r1,r1 | sync | stw r1,0(r2) ;
li r3,1 | lwzx r4,r3,r5 | lwz r3,0(r4) | sync ;
stw r3,0(r4) | li r6,1 | | li r3,2 ;
| stw r6,0(r5) | | stw r3,0(r2) ;
exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r4=0 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r5,0(r9)
_litmus_P1_1_: xor r10,r5,r5
_litmus_P1_2_: lwzx r6,r10,r2
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe509 Allowed
Histogram (31 states)
2 :>0:r1=1; 1:r1=1; 1:r4=0; 2:r1=0; 2:r3=1; z=2;
2 :>0:r1=2; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=0; z=2;
2 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=1; 2:r3=0; z=2;
4 :>0:r1=2; 1:r1=1; 1:r4=0; 2:r1=0; 2:r3=1; z=2;
2 :>0:r1=2; 1:r1=1; 1:r4=0; 2:r1=1; 2:r3=2; z=2;
11 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=1; z=2;
7 :>0:r1=2; 1:r1=1; 1:r4=0; 2:r1=0; 2:r3=0; z=2;
8 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=1; z=2;
124 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=1; 2:r3=1; z=2;
3956 :>0:r1=2; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=0; z=2;
165 :>0:r1=1; 1:r1=1; 1:r4=0; 2:r1=0; 2:r3=0; z=2;
253 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=0; z=2;
7255 :>0:r1=2; 1:r1=1; 1:r4=0; 2:r1=0; 2:r3=2; z=2;
4759 :>0:r1=1; 1:r1=1; 1:r4=0; 2:r1=0; 2:r3=2; z=2;
2282 :>0:r1=2; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=1; z=2;
9585 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=0; z=2;
7281 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=1; 2:r3=2; z=2;
57604 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=1; z=2;
71399 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=1; z=2;
41177 :>0:r1=2; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=2; z=2;
3705 :>0:r1=2; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=1; z=2;
49425 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=0; 2:r3=0; z=2;
27921 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=2; z=2;
87356 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=2; z=2;
35861 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=2; z=2;
133112:>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=0; z=2;
47160 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=0; 2:r3=1; z=2;
86052 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=2; z=2;
182661:>0:r1=2; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=2; z=2;
77302 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=0; z=2;
63567 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=0; 2:r3=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r4=0 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=e8233dc24f1ae9eacee337126dbed9a6
Cycle=SyncsWW Rfe SyncdRW Rfe DpdR Fri Rfe SyncdRR Fre
Relax safe509 No
Safe=Fri Fre DpdR ACSyncdRR BCSyncsWW BCSyncdRW
Time safe509 2.69
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe510.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe510
"SyncdWW Rfe SyncdRW Rfe DpdR Fri Rfe SyncdRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r5=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | xor r3,r1,r1 | sync | stw r1,0(r2) ;
li r3,1 | lwzx r4,r3,r5 | lwz r3,0(r4) | sync ;
stw r3,0(r4) | li r6,1 | | li r3,1 ;
| stw r6,0(r5) | | stw r3,0(r4) ;
exists (0:r1=1 /\ 1:r1=1 /\ 1:r4=0 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r5,0(r9)
_litmus_P1_1_: xor r10,r5,r5
_litmus_P1_2_: lwzx r6,r10,r2
_litmus_P1_3_: li r11,1
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe510 Allowed
Histogram (14 states)
4 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=0;
23 :>0:r1=1; 1:r1=1; 1:r4=0; 2:r1=1; 2:r3=1;
20 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=1; 2:r3=0;
2195 :>0:r1=1; 1:r1=1; 1:r4=0; 2:r1=0; 2:r3=1;
3945 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=0;
11306 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=1; 2:r3=1;
18551 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=1;
20237 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=0;
83951 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=1;
254794:>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=1;
212317:>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=0;
143898:>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=1;
187147:>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=0; 2:r3=1;
61612 :>0:r1=0; 1:r1=1; 1:r4=0; 2:r1=0; 2:r3=0;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 1:r1=1 /\ 1:r4=0 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=b024947f198aa1e1bd89acce7e79f22e
Cycle=SyncdWW Rfe SyncdRW Rfe DpdR Fri Rfe SyncdRR Fre
Relax safe510 No
Safe=Fri Fre DpdR ACSyncdRR BCSyncdWW BCSyncdRW
Time safe510 2.15
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe511.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe511
"SyncdWW Rfe DpsR Fri Rfe SyncdRR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
xor r3,r1,r1 | sync | stw r1,0(r2) ;
lwzx r4,r3,r2 | lwz r3,0(r4) | sync ;
li r5,2 | | li r3,1 ;
stw r5,0(r2) | | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 0:r4=1 /\ 1:r1=2 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r6,0(r2)
_litmus_P0_1_: xor r10,r6,r6
_litmus_P0_2_: lwzx r9,r10,r2
_litmus_P0_3_: li r11,2
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe511 Allowed
Histogram (15 states)
2 :>0:r1=0; 0:r4=1; 1:r1=1; 1:r3=1; x=2;
19 :>0:r1=0; 0:r4=1; 1:r1=0; 1:r3=1; x=2;
14323 :>0:r1=0; 0:r4=0; 1:r1=2; 1:r3=0; x=1;
1546 :>0:r1=1; 0:r4=1; 1:r1=0; 1:r3=0; x=2;
10937 :>0:r1=0; 0:r4=0; 1:r1=0; 1:r3=0; x=2;
3976 :>0:r1=0; 0:r4=0; 1:r1=2; 1:r3=1; x=2;
26116 :>0:r1=0; 0:r4=0; 1:r1=1; 1:r3=1; x=2;
34752 :>0:r1=1; 0:r4=1; 1:r1=1; 1:r3=1; x=2;
59703 :>0:r1=1; 0:r4=1; 1:r1=0; 1:r3=1; x=2;
3531 :>0:r1=1; 0:r4=1; 1:r1=2; 1:r3=1; x=2;
49561 :>0:r1=0; 0:r4=0; 1:r1=0; 1:r3=1; x=1;
339758:>0:r1=0; 0:r4=0; 1:r1=2; 1:r3=1; x=1;
248346:>0:r1=0; 0:r4=0; 1:r1=0; 1:r3=0; x=1;
76788 :>0:r1=0; 0:r4=0; 1:r1=1; 1:r3=1; x=1;
130642:>0:r1=0; 0:r4=0; 1:r1=0; 1:r3=1; x=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 0:r4=1 /\ 1:r1=2 /\ 1:r3=0) is NOT validated
Hash=48ff6168375f2a9057be419d15d7f68e
Cycle=SyncdWW Rfe DpsR Fri Rfe SyncdRR Fre
Relax safe511 No
Safe=Fri Fre DpsR ACSyncdRR BCSyncdWW
Time safe511 1.71
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe512.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe512
"SyncsWW Rfe SyncdRW Rfe DpsR Fri Rfe SyncdRR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | xor r3,r1,r1 | sync | stw r1,0(r2) ;
li r3,1 | lwzx r4,r3,r2 | lwz r3,0(r4) | sync ;
stw r3,0(r4) | li r5,2 | | li r3,2 ;
| stw r5,0(r2) | | stw r3,0(r2) ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r4=1 /\ 2:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r6,0(r2)
_litmus_P1_1_: xor r10,r6,r6
_litmus_P1_2_: lwzx r9,r10,r2
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe512 Allowed
Histogram (67 states)
1 :>0:r1=0; 1:r1=0; 1:r4=1; 2:r1=0; 2:r3=1; x=2; y=2;
1 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=0; x=2; y=2;
1 :>0:r1=0; 1:r1=0; 1:r4=1; 2:r1=0; 2:r3=2; x=2; y=2;
3 :>0:r1=0; 1:r1=0; 1:r4=1; 2:r1=1; 2:r3=2; x=2; y=2;
1 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=1; x=2; y=2;
2 :>0:r1=2; 1:r1=1; 1:r4=1; 2:r1=0; 2:r3=0; x=2; y=2;
9 :>0:r1=0; 1:r1=0; 1:r4=1; 2:r1=2; 2:r3=2; x=2; y=2;
33 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=1; x=1; y=2;
4 :>0:r1=0; 1:r1=0; 1:r4=1; 2:r1=0; 2:r3=0; x=2; y=2;
1 :>0:r1=2; 1:r1=0; 1:r4=1; 2:r1=0; 2:r3=1; x=2; y=2;
4 :>0:r1=0; 1:r1=1; 1:r4=1; 2:r1=2; 2:r3=0; x=2; y=2;
30 :>0:r1=2; 1:r1=1; 1:r4=1; 2:r1=0; 2:r3=1; x=2; y=2;
1 :>0:r1=1; 1:r1=0; 1:r4=1; 2:r1=0; 2:r3=2; x=2; y=2;
154 :>0:r1=0; 1:r1=1; 1:r4=1; 2:r1=2; 2:r3=1; x=2; y=2;
11 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=0; x=2; y=2;
44 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=0; x=1; y=2;
12 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=1; x=1; y=2;
506 :>0:r1=2; 1:r1=1; 1:r4=1; 2:r1=1; 2:r3=2; x=2; y=2;
113 :>0:r1=2; 1:r1=1; 1:r4=1; 2:r1=2; 2:r3=2; x=2; y=2;
191 :>0:r1=1; 1:r1=1; 1:r4=1; 2:r1=2; 2:r3=2; x=2; y=2;
148 :>0:r1=2; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=0; x=2; y=2;
46 :>0:r1=2; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=0; x=1; y=2;
252 :>0:r1=2; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=1; x=2; y=2;
59 :>0:r1=1; 1:r1=1; 1:r4=1; 2:r1=0; 2:r3=0; x=2; y=2;
2051 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=1; x=1; y=2;
734 :>0:r1=1; 1:r1=1; 1:r4=1; 2:r1=1; 2:r3=2; x=2; y=2;
2026 :>0:r1=1; 1:r1=1; 1:r4=1; 2:r1=0; 2:r3=2; x=2; y=2;
2916 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=2; x=2; y=2;
2599 :>0:r1=0; 1:r1=1; 1:r4=1; 2:r1=1; 2:r3=0; x=2; y=2;
26 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=1; x=2; y=2;
1025 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=1; x=2; y=2;
11327 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=2; x=2; y=2;
5134 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=2; x=2; y=2;
16003 :>0:r1=0; 1:r1=1; 1:r4=1; 2:r1=1; 2:r3=1; x=2; y=2;
567 :>0:r1=2; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=0; x=1; y=2;
718 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=2; x=1; y=2;
6128 :>0:r1=2; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=2; x=2; y=2;
22022 :>0:r1=0; 1:r1=1; 1:r4=1; 2:r1=0; 2:r3=1; x=2; y=2;
1562 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=0; x=1; y=2;
39343 :>0:r1=2; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=1; x=1; y=2;
13455 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=2; x=1; y=2;
5393 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=0; x=2; y=2;
2765 :>0:r1=2; 1:r1=1; 1:r4=1; 2:r1=0; 2:r3=2; x=2; y=2;
2278 :>0:r1=2; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=2; x=2; y=2;
19877 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=1; x=2; y=2;
10486 :>0:r1=2; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=1; x=1; y=2;
7436 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=2; x=2; y=2;
3210 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=2; x=2; y=2;
13313 :>0:r1=2; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=2; x=2; y=2;
46680 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=1; x=1; y=2;
27511 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=0; x=1; y=2;
13843 :>0:r1=2; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=2; x=1; y=2;
9568 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=2; x=2; y=2;
96487 :>0:r1=0; 1:r1=1; 1:r4=1; 2:r1=1; 2:r3=2; x=2; y=2;
18483 :>0:r1=0; 1:r1=1; 1:r4=1; 2:r1=0; 2:r3=0; x=2; y=2;
5196 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=1; x=1; y=2;
13930 :>0:r1=0; 1:r1=1; 1:r4=1; 2:r1=0; 2:r3=2; x=2; y=2;
8088 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=2; x=1; y=2;
103710:>0:r1=2; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=2; x=1; y=2;
43415 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=2; x=1; y=2;
73739 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=0; x=2; y=2;
44859 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=2; x=1; y=2;
79123 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=2; x=1; y=2;
42533 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=0; x=1; y=2;
89106 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=0; x=1; y=2;
30310 :>0:r1=0; 1:r1=1; 1:r4=1; 2:r1=2; 2:r3=2; x=2; y=2;
59398 :>0:r1=2; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=2; x=1; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r4=1 /\ 2:r1=2 /\ 2:r3=0) is NOT validated
Hash=4a39d3ba4b483bb612a9a430178145f8
Cycle=SyncsWW Rfe SyncdRW Rfe DpsR Fri Rfe SyncdRR Fre
Relax safe512 No
Safe=Fri Fre DpsR ACSyncdRR BCSyncsWW BCSyncdRW
Time safe512 3.99
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe513.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe513
"SyncdWW Rfe SyncdRW Rfe DpsR Fri Rfe SyncdRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | xor r3,r1,r1 | sync | stw r1,0(r2) ;
li r3,1 | lwzx r4,r3,r2 | lwz r3,0(r4) | sync ;
stw r3,0(r4) | li r5,2 | | li r3,1 ;
| stw r5,0(r2) | | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r4=1 /\ 2:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r6,0(r2)
_litmus_P1_1_: xor r10,r6,r6
_litmus_P1_2_: lwzx r9,r10,r2
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe513 Allowed
Histogram (34 states)
1 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=0; y=2;
1 :>0:r1=1; 1:r1=1; 1:r4=1; 2:r1=2; 2:r3=1; y=2;
3 :>0:r1=0; 1:r1=0; 1:r4=1; 2:r1=2; 2:r3=1; y=2;
1 :>0:r1=1; 1:r1=1; 1:r4=1; 2:r1=0; 2:r3=0; y=2;
6 :>0:r1=0; 1:r1=0; 1:r4=1; 2:r1=0; 2:r3=1; y=2;
63 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=1; y=2;
3 :>0:r1=1; 1:r1=1; 1:r4=1; 2:r1=1; 2:r3=1; y=2;
11 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=1; y=2;
37 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=0; y=2;
13 :>0:r1=0; 1:r1=0; 1:r4=1; 2:r1=0; 2:r3=0; y=2;
29 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=0; y=1;
278 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=0; y=2;
157 :>0:r1=0; 1:r1=1; 1:r4=1; 2:r1=2; 2:r3=0; y=2;
939 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=0; y=1;
511 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=1; y=1;
608 :>0:r1=1; 1:r1=1; 1:r4=1; 2:r1=0; 2:r3=1; y=2;
5213 :>0:r1=0; 1:r1=1; 1:r4=1; 2:r1=1; 2:r3=0; y=2;
2112 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=0; y=1;
16861 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=1; y=2;
71272 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=0; y=2;
43925 :>0:r1=0; 1:r1=1; 1:r4=1; 2:r1=2; 2:r3=1; y=2;
29947 :>0:r1=0; 1:r1=1; 1:r4=1; 2:r1=0; 2:r3=1; y=2;
10114 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=1; y=2;
79087 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=0; y=1;
35402 :>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=1; y=1;
34719 :>0:r1=0; 1:r1=1; 1:r4=1; 2:r1=0; 2:r3=0; y=2;
114531:>0:r1=1; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=1; y=1;
54936 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=1; 2:r3=1; y=1;
140895:>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=0; y=1;
61773 :>0:r1=0; 1:r1=1; 1:r4=1; 2:r1=1; 2:r3=1; y=2;
190348:>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=1; y=1;
54933 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=1; y=2;
46428 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=0; 2:r3=1; y=1;
4843 :>0:r1=0; 1:r1=0; 1:r4=0; 2:r1=2; 2:r3=1; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 1:r4=1 /\ 2:r1=2 /\ 2:r3=0) is NOT validated
Hash=c44d887c1a476588dd90cca5f8153c85
Cycle=SyncdWW Rfe SyncdRW Rfe DpsR Fri Rfe SyncdRR Fre
Relax safe513 No
Safe=Fri Fre DpsR ACSyncdRR BCSyncdWW BCSyncdRW
Time safe513 2.74
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe514.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe514
"SyncsWW Rfe DpdW Rfe SyncdRR Fre"
{0:r2=y; 0:r5=x; 1:r2=x; 1:r4=y; 2:r2=y;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
xor r3,r1,r1 | sync | stw r1,0(r2) ;
li r4,1 | lwz r3,0(r4) | sync ;
stwx r4,r3,r5 | | li r3,2 ;
| | stw r3,0(r2) ;
exists (y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: xor r11,r7,r7
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stwx r8,r11,r2
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r9,1
_litmus_P2_1_: stw r9,0(r2)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,2
_litmus_P2_4_: stw r11,0(r2)
Test safe514 Allowed
Histogram (15 states)
2 :>0:r1=1; 1:r1=1; 1:r3=1; y=2;
38 :>0:r1=1; 1:r1=0; 1:r3=1; y=2;
18949 :>0:r1=0; 1:r1=1; 1:r3=1; y=2;
18155 :>0:r1=1; 1:r1=1; 1:r3=2; y=2;
888 :>0:r1=0; 1:r1=1; 1:r3=0; y=2;
9725 :>0:r1=2; 1:r1=0; 1:r3=0; y=2;
47888 :>0:r1=2; 1:r1=1; 1:r3=2; y=2;
75609 :>0:r1=1; 1:r1=0; 1:r3=2; y=2;
69340 :>0:r1=0; 1:r1=0; 1:r3=1; y=2;
41098 :>0:r1=1; 1:r1=0; 1:r3=0; y=2;
89367 :>0:r1=0; 1:r1=0; 1:r3=0; y=2;
6613 :>0:r1=0; 1:r1=0; 1:r3=2; y=2;
67467 :>0:r1=2; 1:r1=0; 1:r3=1; y=2;
303339:>0:r1=0; 1:r1=1; 1:r3=2; y=2;
251522:>0:r1=2; 1:r1=0; 1:r3=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=0) is NOT validated
Hash=3a0936b5dfc2c07163f6681c1fecd472
Cycle=SyncsWW Rfe DpdW Rfe SyncdRR Fre
Relax safe514 No
Safe=Fre DpdW ACSyncdRR BCSyncsWW
Time safe514 1.62
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe515.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe515
"SyncdWW Rfe SyncsRW Rfe DpdW Rfe SyncdRR Fre"
{0:r2=x; 1:r2=x; 1:r5=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | xor r3,r1,r1 | sync | stw r1,0(r2) ;
li r3,2 | li r4,1 | lwz r3,0(r4) | sync ;
stw r3,0(r2) | stwx r4,r3,r5 | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: xor r11,r7,r7
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stwx r8,r11,r2
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe515 Allowed
Histogram (30 states)
1 :>0:r1=1; 1:r1=2; 2:r1=0; 2:r3=0; x=2;
13 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=0; x=2;
141 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; x=2;
77 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; x=2;
11 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=2;
68 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=1;
449 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=0; x=1;
209 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=2;
2028 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2;
2114 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=1; x=2;
1812 :>0:r1=1; 1:r1=2; 2:r1=0; 2:r3=1; x=2;
948 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=2;
15360 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; x=1;
88456 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1; x=2;
37188 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; x=2;
38004 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=2;
15646 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=1; x=2;
43652 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=1;
85045 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=1;
14095 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; x=1;
2965 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=1;
5333 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=2;
156565:>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=1; x=1;
138868:>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=2;
32770 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=2;
114623:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1;
25635 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1;
25209 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; x=2;
44477 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2;
108238:>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=1b2c4a3725908ada453ec7a559a5668e
Cycle=SyncdWW Rfe SyncsRW Rfe DpdW Rfe SyncdRR Fre
Relax safe515 No
Safe=Fre DpdW ACSyncdRR BCSyncsRW BCSyncdWW
Time safe515 2.44
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe516.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe516
"SyncdWW Rfe DpdW Rfe SyncdRR Fre"
{0:r2=x; 0:r5=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
xor r3,r1,r1 | sync | stw r1,0(r2) ;
li r4,1 | lwz r3,0(r4) | sync ;
stwx r4,r3,r5 | | li r3,1 ;
| | stw r3,0(r4) ;
exists (0:r1=1 /\ 1:r1=1 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: xor r11,r7,r7
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stwx r8,r11,r2
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe516 Allowed
Histogram (7 states)
1725 :>0:r1=0; 1:r1=1; 1:r3=0;
2117 :>0:r1=1; 1:r1=1; 1:r3=1;
1053 :>0:r1=1; 1:r1=0; 1:r3=0;
149232:>0:r1=1; 1:r1=0; 1:r3=1;
233872:>0:r1=0; 1:r1=0; 1:r3=0;
325334:>0:r1=0; 1:r1=1; 1:r3=1;
286667:>0:r1=0; 1:r1=0; 1:r3=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 1:r1=1 /\ 1:r3=0) is NOT validated
Hash=d04732ed7343b6ae019b5d29748597c5
Cycle=SyncdWW Rfe DpdW Rfe SyncdRR Fre
Relax safe516 No
Safe=Fre DpdW ACSyncdRR BCSyncdWW
Time safe516 1.56
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe517.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe517
"SyncsWW Rfe SyncdRW Rfe DpdW Rfe SyncdRR Fre"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r5=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | xor r3,r1,r1 | sync | stw r1,0(r2) ;
li r3,1 | li r4,1 | lwz r3,0(r4) | sync ;
stw r3,0(r4) | stwx r4,r3,r5 | | li r3,2 ;
| | | stw r3,0(r2) ;
exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: xor r11,r7,r7
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stwx r8,r11,r2
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe517 Allowed
Histogram (32 states)
2 :>0:r1=2; 1:r1=1; 2:r1=1; 2:r3=2; z=2;
5 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=0; z=2;
1 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1; z=2;
5 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=2; z=2;
5 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=0; z=2;
6 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=0; z=2;
66 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=0; z=2;
13 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
22 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=1; z=2;
15 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
152 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; z=2;
1235 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
4043 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=2; z=2;
166 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; z=2;
8020 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=2; z=2;
6600 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=2; z=2;
31087 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
4077 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; z=2;
18420 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
10520 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
12763 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
66749 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; z=2;
45770 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
36772 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
94969 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
27927 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; z=2;
71477 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
57666 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
102044:>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
158675:>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
153550:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
87178 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=040608af9cf71d2edac3469f099d0bd5
Cycle=SyncsWW Rfe SyncdRW Rfe DpdW Rfe SyncdRR Fre
Relax safe517 No
Safe=Fre DpdW ACSyncdRR BCSyncsWW BCSyncdRW
Time safe517 2.58
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe518.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe518
"SyncdWW Rfe SyncdRW Rfe DpdW Rfe SyncdRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r5=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | xor r3,r1,r1 | sync | stw r1,0(r2) ;
li r3,1 | li r4,1 | lwz r3,0(r4) | sync ;
stw r3,0(r4) | stwx r4,r3,r5 | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: xor r11,r7,r7
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stwx r8,r11,r2
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe518 Allowed
Histogram (14 states)
2 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0;
17 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=0;
41 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=1;
1763 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1;
19495 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0;
4775 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0;
8272 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0;
50112 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1;
57846 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1;
171151:>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1;
177213:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0;
289248:>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1;
14374 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1;
205691:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=001a1138fe781a9f437b31a91ecbe100
Cycle=SyncdWW Rfe SyncdRW Rfe DpdW Rfe SyncdRR Fre
Relax safe518 No
Safe=Fre DpdW ACSyncdRR BCSyncdWW BCSyncdRW
Time safe518 2.07
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe519.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe519
"SyncdWW Rfe DpsW Rfe SyncdRR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
xor r3,r1,r1 | sync | stw r1,0(r2) ;
li r4,2 | lwz r3,0(r4) | sync ;
stwx r4,r3,r2 | | li r3,1 ;
| | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: xor r11,r8,r8
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stwx r9,r11,r2
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe519 Allowed
Histogram (13 states)
7369 :>0:r1=0; 1:r1=1; 1:r3=1; x=2;
11702 :>0:r1=0; 1:r1=0; 1:r3=0; x=2;
1976 :>0:r1=1; 1:r1=0; 1:r3=0; x=2;
3196 :>0:r1=0; 1:r1=2; 1:r3=1; x=2;
25683 :>0:r1=1; 1:r1=2; 1:r3=1; x=2;
4395 :>0:r1=0; 1:r1=2; 1:r3=0; x=1;
32157 :>0:r1=1; 1:r1=1; 1:r3=1; x=2;
85507 :>0:r1=0; 1:r1=0; 1:r3=1; x=2;
243529:>0:r1=0; 1:r1=0; 1:r3=0; x=1;
366750:>0:r1=0; 1:r1=2; 1:r3=1; x=1;
69395 :>0:r1=0; 1:r1=0; 1:r3=1; x=1;
77671 :>0:r1=0; 1:r1=1; 1:r3=1; x=1;
70670 :>0:r1=1; 1:r1=0; 1:r3=1; x=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0) is NOT validated
Hash=f2e58a90a18c6fa4889f4a6f0b121199
Cycle=SyncdWW Rfe DpsW Rfe SyncdRR Fre
Relax safe519 No
Safe=Fre DpsW ACSyncdRR BCSyncdWW
Time safe519 1.60
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe520.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe520
"SyncsWW Rfe SyncdRW Rfe DpsW Rfe SyncdRR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | xor r3,r1,r1 | sync | stw r1,0(r2) ;
li r3,1 | li r4,2 | lwz r3,0(r4) | sync ;
stw r3,0(r4) | stwx r4,r3,r2 | | li r3,2 ;
| | | stw r3,0(r2) ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: xor r11,r8,r8
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stwx r9,r11,r2
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe520 Allowed
Histogram (61 states)
1 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
1 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; x=1; y=2;
4 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=2;
4 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=0; x=2; y=2;
6 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
17 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
5 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
81 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
17 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=0; x=2; y=2;
43 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; x=2; y=2;
33 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=2;
41 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
9 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=1; x=2; y=2;
219 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; x=2; y=2;
106 :>0:r1=2; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=2;
75 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
90 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; x=2; y=2;
195 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
138 :>0:r1=2; 1:r1=1; 2:r1=1; 2:r3=2; x=2; y=2;
101 :>0:r1=1; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=2;
403 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=0; x=2; y=2;
47 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; x=1; y=2;
122 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; x=1; y=2;
216 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=2;
1391 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=1; y=2;
2344 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=2;
1297 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
935 :>0:r1=2; 1:r1=0; 2:r1=2; 2:r3=0; x=1; y=2;
145 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=2; x=2; y=2;
2051 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
35 :>0:r1=2; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
3001 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=2;
3873 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
21594 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
4633 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=2; y=2;
5353 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
2829 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
39922 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
3570 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
11072 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; x=2; y=2;
26819 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
29950 :>0:r1=2; 1:r1=0; 2:r1=2; 2:r3=1; x=1; y=2;
15350 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
44303 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
6799 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=0; x=1; y=2;
2800 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
16626 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=2;
3596 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
2956 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
7793 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
7292 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
37183 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
42484 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
60672 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
86465 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; x=1; y=2;
70425 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=2; x=2; y=2;
172105:>0:r1=2; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
73596 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=0; x=1; y=2;
110618:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
71333 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=2;
4816 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0) is NOT validated
Hash=615e545f1391ec45bc808c7cf0757029
Cycle=SyncsWW Rfe SyncdRW Rfe DpsW Rfe SyncdRR Fre
Relax safe520 No
Safe=Fre DpsW ACSyncdRR BCSyncsWW BCSyncdRW
Time safe520 3.92
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe521.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe521
"SyncdWW Rfe SyncdRW Rfe DpsW Rfe SyncdRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | xor r3,r1,r1 | sync | stw r1,0(r2) ;
li r3,1 | li r4,2 | lwz r3,0(r4) | sync ;
stw r3,0(r4) | stwx r4,r3,r2 | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r2)
_litmus_P1_1_: xor r11,r8,r8
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stwx r9,r11,r2
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe521 Allowed
Histogram (31 states)
1 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; y=2;
6 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; y=2;
3 :>0:r1=1; 1:r1=1; 2:r1=2; 2:r3=1; y=2;
23 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; y=2;
1 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=1; y=2;
4 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; y=2;
16 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=0; y=1;
130 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=0; y=2;
37 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=0; y=2;
4313 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; y=1;
368 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1; y=2;
103 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; y=2;
1069 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; y=1;
9400 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; y=2;
1277 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; y=1;
4760 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; y=2;
3049 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; y=2;
119659:>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; y=1;
38031 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; y=2;
15609 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=0; y=1;
24311 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; y=2;
43635 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; y=2;
3531 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; y=2;
114889:>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; y=1;
22178 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; y=2;
20493 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; y=1;
45646 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; y=2;
276597:>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; y=1;
50213 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; y=1;
199652:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; y=1;
996 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=0; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0) is NOT validated
Hash=86935b15dfee05cf317f05d66fe630d8
Cycle=SyncdWW Rfe SyncdRW Rfe DpsW Rfe SyncdRR Fre
Relax safe521 No
Safe=Fre DpsW ACSyncdRR BCSyncdWW BCSyncdRW
Time safe521 2.67
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe522.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe522
"LwSyncdWW Rfe SyncdRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=x;}
P0 | P1 ;
lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) ;
lwz r3,0(r4) | lwsync ;
| li r3,1 ;
| stw r3,0(r4) ;
exists (0:r1=1 /\ 0:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
Test safe522 Allowed
Histogram (3 states)
881968:>0:r1=0; 0:r3=0;
431933:>0:r1=0; 0:r3=1;
686099:>0:r1=1; 0:r3=1;
No
Witnesses
Positive: 0, Negative: 2000000
Condition exists (0:r1=1 /\ 0:r3=0) is NOT validated
Hash=325f1282195d47aa49976527d09cfcf7
Cycle=LwSyncdWW Rfe SyncdRR Fre
Relax safe522 No
Safe=Fre LwSyncdWW ACSyncdRR
Time safe522 1.24
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe523.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe523
"LwSyncdWW Rfe SyncdRR Fre LwSyncdWW Rfe SyncdRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | lwsync | lwz r3,0(r4) | lwsync ;
| li r3,1 | | li r3,1 ;
| stw r3,0(r4) | | stw r3,0(r4) ;
exists (0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe523 Allowed
Histogram (15 states)
24 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=0;
1 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=0;
60 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=0;
48 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r3=1;
1623 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=0;
17698 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=1;
10171 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0;
172630:>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=1;
40388 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0;
159409:>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0;
123165:>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1;
62196 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=1;
177734:>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1;
9216 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1;
225637:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=52e5ae57db2f1fa758cf486269e9d69c
Cycle=LwSyncdWW Rfe SyncdRR Fre LwSyncdWW Rfe SyncdRR Fre
Relax safe523 No
Safe=Fre LwSyncdWW ACSyncdRR
Time safe523 2.08
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe524.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe524
"LwSyncsWW Rfe SyncdRR Fre LwSyncdWW Rfe SyncdRR Fre"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | lwsync | lwz r3,0(r4) | lwsync ;
| li r3,1 | | li r3,2 ;
| stw r3,0(r4) | | stw r3,0(r2) ;
exists (z=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r11,1
_litmus_P1_1_: stw r11,0(r9)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r10,1
_litmus_P1_4_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe524 Allowed
Histogram (28 states)
2 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=0; z=2;
31 :>0:r1=2; 0:r3=0; 2:r1=1; 2:r3=2; z=2;
5 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=0; z=2;
39 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; z=2;
10 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=1; z=2;
8 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=0; z=2;
135 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=0; z=2;
562 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=0; z=2;
208 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=1; z=2;
440 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=2; z=2;
1365 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=0; z=2;
10006 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=2; z=2;
8795 :>0:r1=1; 0:r3=1; 2:r1=1; 2:r3=2; z=2;
3556 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=1; z=2;
5542 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; z=2;
1822 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=1; z=2;
20783 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; z=2;
12098 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; z=2;
28115 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=2; z=2;
52396 :>0:r1=0; 0:r3=1; 2:r1=1; 2:r3=2; z=2;
193746:>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=2; z=2;
56597 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; z=2;
9403 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; z=2;
108270:>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; z=2;
169947:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; z=2;
241252:>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=2; z=2;
47909 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; z=2;
26958 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=f8ff06431deb45da2f6e766492a42b25
Cycle=LwSyncsWW Rfe SyncdRR Fre LwSyncdWW Rfe SyncdRR Fre
Relax safe524 No
Safe=Fre LwSyncsWW LwSyncdWW ACSyncdRR
Time safe524 2.55
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe525.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe525
"SyncsWW Rfe LwSyncdRW Rfe SyncdRR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
lwsync | sync | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r4) | sync ;
stw r3,0(r4) | | li r3,2 ;
| | stw r3,0(r2) ;
exists (y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stw r8,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r9,1
_litmus_P2_1_: stw r9,0(r2)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,2
_litmus_P2_4_: stw r11,0(r2)
Test safe525 Allowed
Histogram (15 states)
7 :>0:r1=1; 1:r1=1; 1:r3=1; y=2;
130 :>0:r1=1; 1:r1=0; 1:r3=1; y=2;
140 :>0:r1=0; 1:r1=1; 1:r3=0; y=2;
5350 :>0:r1=2; 1:r1=0; 1:r3=0; y=2;
55230 :>0:r1=1; 1:r1=1; 1:r3=2; y=2;
3056 :>0:r1=0; 1:r1=1; 1:r3=1; y=2;
58074 :>0:r1=2; 1:r1=1; 1:r3=2; y=2;
14198 :>0:r1=0; 1:r1=0; 1:r3=2; y=2;
37782 :>0:r1=1; 1:r1=0; 1:r3=0; y=2;
154503:>0:r1=0; 1:r1=0; 1:r3=0; y=2;
54847 :>0:r1=0; 1:r1=0; 1:r3=1; y=2;
188079:>0:r1=2; 1:r1=0; 1:r3=2; y=2;
45741 :>0:r1=2; 1:r1=0; 1:r3=1; y=2;
313149:>0:r1=0; 1:r1=1; 1:r3=2; y=2;
69714 :>0:r1=1; 1:r1=0; 1:r3=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=0) is NOT validated
Hash=03378b12edcedfc22681875ee012e89c
Cycle=SyncsWW Rfe LwSyncdRW Rfe SyncdRR Fre
Relax safe525 No
Safe=Fre LwSyncdRW ACSyncdRR BCSyncsWW
Time safe525 1.61
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe526.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe526
"SyncdWW Rfe SyncsRW Rfe LwSyncdRW Rfe SyncdRR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | lwsync | sync | stw r1,0(r2) ;
li r3,2 | li r3,1 | lwz r3,0(r4) | sync ;
stw r3,0(r2) | stw r3,0(r4) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: lwsync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe526 Allowed
Histogram (29 states)
1 :>0:r1=1; 1:r1=2; 2:r1=0; 2:r3=0; x=2;
28 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=2;
693 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=2;
4 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; x=2;
144 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=1;
661 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=1; x=2;
372 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=0; x=1;
188 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=2;
587 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=1;
932 :>0:r1=1; 1:r1=2; 2:r1=0; 2:r3=1; x=2;
785 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=2;
28633 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=1; x=2;
5676 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; x=1;
57886 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=1;
41 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; x=2;
13870 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; x=1;
22831 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; x=2;
123640:>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=2;
46762 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; x=2;
4635 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2;
22905 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=2;
46243 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2;
69437 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1; x=2;
122105:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1;
143211:>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=1; x=1;
121867:>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=1;
51833 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=2;
87912 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=1;
26118 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=d16fb7a4db6e270019a38fa6f48767cc
Cycle=SyncdWW Rfe SyncsRW Rfe LwSyncdRW Rfe SyncdRR Fre
Relax safe526 No
Safe=Fre LwSyncdRW ACSyncdRR BCSyncsRW BCSyncdWW
Time safe526 2.54
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe527.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe527
"SyncdWW Rfe LwSyncdRW Rfe SyncdRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
lwsync | sync | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r4) | sync ;
stw r3,0(r4) | | li r3,1 ;
| | stw r3,0(r4) ;
exists (0:r1=1 /\ 1:r1=1 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stw r8,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe527 Allowed
Histogram (7 states)
378 :>0:r1=1; 1:r1=0; 1:r3=0;
2187 :>0:r1=1; 1:r1=1; 1:r3=1;
3364 :>0:r1=0; 1:r1=1; 1:r3=0;
236073:>0:r1=0; 1:r1=0; 1:r3=1;
289300:>0:r1=0; 1:r1=0; 1:r3=0;
309121:>0:r1=0; 1:r1=1; 1:r3=1;
159577:>0:r1=1; 1:r1=0; 1:r3=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 1:r1=1 /\ 1:r3=0) is NOT validated
Hash=06443128ce1d19aa597ce96fd9ac958a
Cycle=SyncdWW Rfe LwSyncdRW Rfe SyncdRR Fre
Relax safe527 No
Safe=Fre LwSyncdRW ACSyncdRR BCSyncdWW
Time safe527 1.57
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe528.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe528
"SyncsWW Rfe SyncdRW Rfe LwSyncdRW Rfe SyncdRR Fre"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | lwsync | sync | stw r1,0(r2) ;
li r3,1 | li r3,1 | lwz r3,0(r4) | sync ;
stw r3,0(r4) | stw r3,0(r4) | | li r3,2 ;
| | | stw r3,0(r2) ;
exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: lwsync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe528 Allowed
Histogram (32 states)
1 :>0:r1=2; 1:r1=1; 2:r1=1; 2:r3=2; z=2;
1 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=0; z=2;
1 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1; z=2;
3 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=0; z=2;
3 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=2; z=2;
4 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=0; z=2;
13 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
48 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=1; z=2;
54 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; z=2;
15 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
214 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; z=2;
1128 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
12 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=0; z=2;
3205 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=2; z=2;
1331 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
3232 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=2; z=2;
8175 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
2980 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=2; z=2;
7265 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; z=2;
31344 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
52031 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
125089:>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; z=2;
36528 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; z=2;
53986 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
51533 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
138204:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
150590:>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
21633 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
148336:>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
109198:>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
53560 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
283 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=a305ff76850575d5548d409affca0512
Cycle=SyncsWW Rfe SyncdRW Rfe LwSyncdRW Rfe SyncdRR Fre
Relax safe528 No
Safe=Fre LwSyncdRW ACSyncdRR BCSyncsWW BCSyncdRW
Time safe528 2.50
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe529.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe529
"SyncdWW Rfe SyncdRW Rfe LwSyncdRW Rfe SyncdRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | lwsync | sync | stw r1,0(r2) ;
li r3,1 | li r3,1 | lwz r3,0(r4) | sync ;
stw r3,0(r4) | stw r3,0(r4) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: lwsync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe529 Allowed
Histogram (14 states)
52 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=1;
18 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=0;
436 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1;
1494 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0;
1057 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0;
27626 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1;
99263 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1;
57612 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0;
213379:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1;
154649:>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1;
211237:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0;
229412:>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1;
3764 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1;
1 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=38d7c20537d5428800f0a33f536d4234
Cycle=SyncdWW Rfe SyncdRW Rfe LwSyncdRW Rfe SyncdRR Fre
Relax safe529 No
Safe=Fre LwSyncdRW ACSyncdRR BCSyncdWW BCSyncdRW
Time safe529 2.05
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe530.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe530
"LwSyncsWW Rfe SyncdRR Fre LwSyncsWW Rfe SyncdRR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | li r1,1 | lwz r1,0(r2) | li r1,1 ;
sync | stw r1,0(r2) | sync | stw r1,0(r2) ;
lwz r3,0(r4) | lwsync | lwz r3,0(r4) | lwsync ;
| li r3,2 | | li r3,2 ;
| stw r3,0(r2) | | stw r3,0(r2) ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: lwz r8,0(r2)
_litmus_P1_0_: li r9,1
_litmus_P1_1_: stw r9,0(r2)
_litmus_P1_2_: lwsync
_litmus_P1_3_: li r11,2
_litmus_P1_4_: stw r11,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe530 Allowed
Histogram (58 states)
1 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=0; x=2; y=2;
1 :>0:r1=2; 0:r3=1; 2:r1=1; 2:r3=2; x=2; y=2;
3 :>0:r1=1; 0:r3=0; 2:r1=1; 2:r3=2; x=2; y=2;
1 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=1; x=2; y=2;
5 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=0; x=2; y=2;
3 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=1; x=2; y=2;
1 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=2;
7 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=0; x=2; y=2;
33 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=1; x=2; y=2;
34 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=0; x=2; y=2;
10 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=1; x=2; y=2;
13 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=1; x=2; y=2;
15 :>0:r1=1; 0:r3=0; 2:r1=2; 2:r3=2; x=2; y=2;
96 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=1; x=2; y=2;
56 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=0; x=2; y=2;
30 :>0:r1=2; 0:r3=0; 2:r1=1; 2:r3=2; x=2; y=2;
191 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=0; x=2; y=2;
48 :>0:r1=2; 0:r3=0; 2:r1=2; 2:r3=2; x=2; y=2;
178 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=0; x=2; y=2;
550 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=0; x=2; y=2;
237 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=0; x=2; y=2;
74 :>0:r1=1; 0:r3=0; 2:r1=0; 2:r3=2; x=2; y=2;
55 :>0:r1=1; 0:r3=1; 2:r1=2; 2:r3=2; x=2; y=2;
141 :>0:r1=1; 0:r3=1; 2:r1=0; 2:r3=2; x=2; y=2;
1819 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=1; x=2; y=2;
1092 :>0:r1=2; 0:r3=0; 2:r1=0; 2:r3=2; x=2; y=2;
2432 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=0; x=2; y=2;
1163 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=2;
2257 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=0; x=2; y=2;
890 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=1; x=2; y=2;
527 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=0; x=2; y=2;
4821 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=2; x=2; y=2;
515 :>0:r1=0; 0:r3=2; 2:r1=1; 2:r3=1; x=2; y=2;
71 :>0:r1=1; 0:r3=2; 2:r1=1; 2:r3=2; x=2; y=2;
6755 :>0:r1=0; 0:r3=1; 2:r1=2; 2:r3=2; x=2; y=2;
2525 :>0:r1=2; 0:r3=1; 2:r1=0; 2:r3=2; x=2; y=2;
3772 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=1; x=2; y=2;
4430 :>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=2;
2893 :>0:r1=2; 0:r3=1; 2:r1=2; 2:r3=2; x=2; y=2;
12136 :>0:r1=1; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=2;
2580 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=0; x=2; y=2;
962 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=1; x=2; y=2;
26225 :>0:r1=0; 0:r3=0; 2:r1=1; 2:r3=2; x=2; y=2;
10289 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=2;
372 :>0:r1=1; 0:r3=2; 2:r1=2; 2:r3=0; x=2; y=2;
25221 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=1; x=2; y=2;
4768 :>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=2;
26569 :>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=0; x=2; y=2;
108964:>0:r1=0; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=2;
35681 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=2;
3466 :>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=1; x=2; y=2;
116213:>0:r1=0; 0:r3=0; 2:r1=0; 2:r3=2; x=2; y=2;
10968 :>0:r1=2; 0:r3=2; 2:r1=1; 2:r3=2; x=2; y=2;
2436 :>0:r1=0; 0:r3=1; 2:r1=0; 2:r3=2; x=2; y=2;
315439:>0:r1=2; 0:r3=2; 2:r1=2; 2:r3=2; x=2; y=2;
185179:>0:r1=0; 0:r3=2; 2:r1=0; 2:r3=0; x=2; y=2;
41381 :>0:r1=0; 0:r3=0; 2:r1=2; 2:r3=2; x=2; y=2;
33406 :>0:r1=2; 0:r3=2; 2:r1=0; 2:r3=2; x=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r3=0 /\ 2:r1=2 /\ 2:r3=0) is NOT validated
Hash=783517a65569416b72a754e8391af996
Cycle=LwSyncsWW Rfe SyncdRR Fre LwSyncsWW Rfe SyncdRR Fre
Relax safe530 No
Safe=Fre LwSyncsWW ACSyncdRR
Time safe530 3.64
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe531.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe531
"SyncdWW Rfe LwSyncsRW Rfe SyncdRR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
lwsync | sync | stw r1,0(r2) ;
li r3,2 | lwz r3,0(r4) | sync ;
stw r3,0(r2) | | li r3,1 ;
| | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: sync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe531 Allowed
Histogram (13 states)
1974 :>0:r1=0; 1:r1=2; 1:r3=1; x=2;
501 :>0:r1=1; 1:r1=0; 1:r3=0; x=2;
16899 :>0:r1=1; 1:r1=2; 1:r3=1; x=2;
10025 :>0:r1=0; 1:r1=2; 1:r3=0; x=1;
6204 :>0:r1=0; 1:r1=0; 1:r3=0; x=2;
7825 :>0:r1=0; 1:r1=1; 1:r3=1; x=2;
27711 :>0:r1=1; 1:r1=1; 1:r3=1; x=2;
30823 :>0:r1=0; 1:r1=0; 1:r3=1; x=1;
358388:>0:r1=0; 1:r1=2; 1:r3=1; x=1;
23770 :>0:r1=1; 1:r1=0; 1:r3=1; x=2;
292002:>0:r1=0; 1:r1=0; 1:r3=0; x=1;
128372:>0:r1=0; 1:r1=1; 1:r3=1; x=1;
95506 :>0:r1=0; 1:r1=0; 1:r3=1; x=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0) is NOT validated
Hash=bf8d30426e33bff9385eaf56396a1d3c
Cycle=SyncdWW Rfe LwSyncsRW Rfe SyncdRR Fre
Relax safe531 No
Safe=Fre LwSyncsRW ACSyncdRR BCSyncdWW
Time safe531 1.60
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe532.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe532
"SyncsWW Rfe SyncdRW Rfe LwSyncsRW Rfe SyncdRR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | lwsync | sync | stw r1,0(r2) ;
li r3,1 | li r3,2 | lwz r3,0(r4) | sync ;
stw r3,0(r4) | stw r3,0(r2) | | li r3,2 ;
| | | stw r3,0(r2) ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: lwsync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe532 Allowed
Histogram (59 states)
3 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
6 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=0; x=2; y=2;
4 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
10 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=2;
21 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
22 :>0:r1=2; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=2;
3 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; x=2; y=2;
42 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; x=2; y=2;
23 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=0; x=2; y=2;
25 :>0:r1=1; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=2;
3 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
41 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; x=1; y=2;
35 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; x=1; y=2;
9 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=1; x=2; y=2;
54 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
67 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=2; x=2; y=2;
236 :>0:r1=2; 1:r1=0; 2:r1=2; 2:r3=0; x=1; y=2;
178 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
1408 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
162 :>0:r1=2; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
108 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=2;
1432 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
1082 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=2; y=2;
947 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
2798 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=1; y=2;
2447 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=2;
5600 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
10811 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
13798 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=2;
17513 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=2;
3029 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
55 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=2;
2450 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
6254 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
2080 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; x=2; y=2;
16688 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
1188 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=0; x=1; y=2;
30913 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
52 :>0:r1=2; 1:r1=1; 2:r1=1; 2:r3=2; x=2; y=2;
11660 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
5575 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
8599 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
32218 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
11872 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=2;
38257 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
32391 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
12581 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
35 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; x=2; y=2;
15058 :>0:r1=2; 1:r1=0; 2:r1=2; 2:r3=1; x=1; y=2;
31063 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
96246 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=2; x=2; y=2;
47701 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
48998 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=0; x=1; y=2;
134227:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
120170:>0:r1=2; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
103764:>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; x=1; y=2;
29578 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
72152 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=2;
26258 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0) is NOT validated
Hash=3fc1d33af763684557321909501ee107
Cycle=SyncsWW Rfe SyncdRW Rfe LwSyncsRW Rfe SyncdRR Fre
Relax safe532 No
Safe=Fre LwSyncsRW ACSyncdRR BCSyncsWW BCSyncdRW
Time safe532 3.69
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe533.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe533
"SyncdWW Rfe SyncdRW Rfe LwSyncsRW Rfe SyncdRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | lwsync | sync | stw r1,0(r2) ;
li r3,1 | li r3,2 | lwz r3,0(r4) | sync ;
stw r3,0(r4) | stw r3,0(r2) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: lwsync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe533 Allowed
Histogram (31 states)
1 :>0:r1=1; 1:r1=1; 2:r1=2; 2:r3=1; y=2;
1 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; y=2;
1 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=1; y=2;
3 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; y=2;
9 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; y=2;
37 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=0; y=1;
3 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; y=2;
28 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=0; y=2;
86 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=0; y=2;
224 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; y=1;
121 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; y=2;
489 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1; y=2;
1559 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; y=1;
11067 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; y=2;
2359 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=0; y=2;
4770 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; y=2;
48476 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; y=2;
31762 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; y=2;
71204 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=0; y=1;
2849 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; y=2;
35646 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; y=1;
134852:>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; y=1;
77529 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; y=1;
49179 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; y=1;
63490 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; y=2;
201167:>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; y=1;
168726:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; y=1;
43701 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; y=2;
3942 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; y=1;
26629 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; y=2;
20090 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0) is NOT validated
Hash=3ac1d37269821e1a4527cf835829b679
Cycle=SyncdWW Rfe SyncdRW Rfe LwSyncsRW Rfe SyncdRR Fre
Relax safe533 No
Safe=Fre LwSyncsRW ACSyncdRR BCSyncdWW BCSyncdRW
Time safe533 2.55
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe534.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe534
"SyncsWW Rfe DpdR Fri Rfe SyncsRW Rfe SyncdRR Fre"
{0:r2=y; 0:r5=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
xor r3,r1,r1 | sync | sync | stw r1,0(r2) ;
lwzx r4,r3,r5 | li r3,2 | lwz r3,0(r4) | sync ;
li r6,1 | stw r3,0(r2) | | li r3,2 ;
stw r6,0(r5) | | | stw r3,0(r2) ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r4=0 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r5,0(r9)
_litmus_P0_1_: xor r10,r5,r5
_litmus_P0_2_: lwzx r6,r10,r2
_litmus_P0_3_: li r11,1
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe534 Allowed
Histogram (79 states)
1 :>0:r1=1; 0:r4=2; 1:r1=0; 2:r1=1; 2:r3=1; x=1; y=2;
4 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=2; 2:r3=0; x=2; y=2;
2 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=2; 2:r3=1; x=1; y=2;
5 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
3 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=1; x=1; y=2;
44 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=0; x=2; y=2;
2 :>0:r1=0; 0:r4=2; 1:r1=0; 2:r1=1; 2:r3=0; x=1; y=2;
60 :>0:r1=1; 0:r4=2; 1:r1=0; 2:r1=2; 2:r3=1; x=1; y=2;
342 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
47 :>0:r1=1; 0:r4=0; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=2;
148 :>0:r1=1; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=2;
5 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=2; 2:r3=0; x=2; y=2;
72 :>0:r1=0; 0:r4=2; 1:r1=0; 2:r1=1; 2:r3=1; x=1; y=2;
50 :>0:r1=2; 0:r4=0; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=2;
28 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
40 :>0:r1=2; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=1; x=2; y=2;
12 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=2; 2:r3=1; x=2; y=2;
69 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=2; 2:r3=1; x=1; y=2;
299 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=2; 2:r3=1; x=2; y=2;
35 :>0:r1=2; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
624 :>0:r1=2; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
517 :>0:r1=2; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
19 :>0:r1=2; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=2;
1328 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=1; 2:r3=0; x=2; y=2;
758 :>0:r1=2; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
623 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=2;
1170 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
412 :>0:r1=2; 0:r4=0; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
92 :>0:r1=2; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
150 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
82 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
994 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
1613 :>0:r1=2; 0:r4=2; 1:r1=0; 2:r1=2; 2:r3=0; x=1; y=2;
804 :>0:r1=2; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
1591 :>0:r1=1; 0:r4=0; 1:r1=1; 2:r1=1; 2:r3=2; x=2; y=2;
5 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=2; 2:r3=0; x=1; y=2;
895 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
326 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
8872 :>0:r1=2; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=2;
53582 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=1; 2:r3=1; x=2; y=2;
1353 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
3285 :>0:r1=0; 0:r4=2; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
560 :>0:r1=1; 0:r4=2; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
2038 :>0:r1=2; 0:r4=0; 1:r1=1; 2:r1=1; 2:r3=2; x=2; y=2;
5610 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=1; x=2; y=2;
3671 :>0:r1=2; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
132 :>0:r1=1; 0:r4=2; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
12416 :>0:r1=2; 0:r4=0; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
2149 :>0:r1=1; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=2;
3687 :>0:r1=0; 0:r4=2; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
2025 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
874 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
6735 :>0:r1=1; 0:r4=2; 1:r1=0; 2:r1=2; 2:r3=0; x=1; y=2;
17547 :>0:r1=2; 0:r4=2; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
13905 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
11382 :>0:r1=2; 0:r4=2; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
937 :>0:r1=0; 0:r4=2; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
53070 :>0:r1=2; 0:r4=2; 1:r1=0; 2:r1=2; 2:r3=1; x=1; y=2;
53365 :>0:r1=0; 0:r4=2; 1:r1=0; 2:r1=2; 2:r3=1; x=1; y=2;
2519 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
5116 :>0:r1=0; 0:r4=2; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
52452 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=2;
1382 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
13210 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
3888 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
43213 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
33968 :>0:r1=2; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
19972 :>0:r1=2; 0:r4=2; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
6162 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
29633 :>0:r1=0; 0:r4=2; 1:r1=0; 2:r1=2; 2:r3=0; x=1; y=2;
6167 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=2;
3172 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=2;
115512:>0:r1=2; 0:r4=2; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
54771 :>0:r1=1; 0:r4=2; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
83414 :>0:r1=1; 0:r4=2; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
7078 :>0:r1=1; 0:r4=2; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
61790 :>0:r1=0; 0:r4=2; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
105566:>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=1; 2:r3=2; x=2; y=2;
80549 :>0:r1=2; 0:r4=2; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 0:r4=0 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0) is NOT validated
Hash=66d4baf84b2470075be5f0cacc62ad5b
Cycle=SyncsWW Rfe DpdR Fri Rfe SyncsRW Rfe SyncdRR Fre
Relax safe534 No
Safe=Fri Fre DpdR ACSyncsRW ACSyncdRR BCSyncsWW
Time safe534 4.60
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe535.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe535
"SyncdWW Rfe DpdR Fri Rfe SyncsRW Rfe SyncdRR Fre"
{0:r2=x; 0:r5=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
xor r3,r1,r1 | sync | sync | stw r1,0(r2) ;
lwzx r4,r3,r5 | li r3,2 | lwz r3,0(r4) | sync ;
li r6,1 | stw r3,0(r2) | | li r3,1 ;
stw r6,0(r5) | | | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 0:r4=0 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r5,0(r9)
_litmus_P0_1_: xor r10,r5,r5
_litmus_P0_2_: lwzx r6,r10,r2
_litmus_P0_3_: li r11,1
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe535 Allowed
Histogram (41 states)
1 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=0; y=2;
3 :>0:r1=1; 0:r4=0; 1:r1=1; 2:r1=2; 2:r3=1; y=2;
5 :>0:r1=1; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=0; y=2;
6 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=0; y=1;
11 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=0; y=1;
23 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=2; 2:r3=1; y=2;
43 :>0:r1=0; 0:r4=2; 1:r1=0; 2:r1=1; 2:r3=0; y=1;
19 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=1; y=1;
139 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=2; 2:r3=0; y=2;
210 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=2; 2:r3=0; y=2;
202 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=1; y=2;
692 :>0:r1=1; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=1; y=2;
26 :>0:r1=1; 0:r4=2; 1:r1=0; 2:r1=2; 2:r3=0; y=1;
1433 :>0:r1=1; 0:r4=2; 1:r1=0; 2:r1=1; 2:r3=1; y=1;
222 :>0:r1=1; 0:r4=0; 1:r1=1; 2:r1=1; 2:r3=1; y=2;
7572 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=1; y=2;
754 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=1; y=1;
1805 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=2; 2:r3=1; y=1;
793 :>0:r1=1; 0:r4=2; 1:r1=0; 2:r1=0; 2:r3=0; y=1;
33658 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=1; y=1;
146 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=2; 2:r3=0; y=1;
9141 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=2; 2:r3=1; y=2;
13522 :>0:r1=0; 0:r4=2; 1:r1=0; 2:r1=2; 2:r3=0; y=1;
26691 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=0; y=2;
834 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=0; y=2;
11856 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=1; y=2;
58784 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=0; y=2;
35619 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=1; 2:r3=0; y=2;
40886 :>0:r1=0; 0:r4=2; 1:r1=0; 2:r1=1; 2:r3=1; y=1;
26867 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=2; 2:r3=1; y=1;
9705 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=2; 2:r3=1; y=2;
72799 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=0; y=1;
14281 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=1; y=1;
11248 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=1; y=2;
44022 :>0:r1=0; 0:r4=2; 1:r1=0; 2:r1=0; 2:r3=1; y=1;
164428:>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=1; 2:r3=1; y=2;
183549:>0:r1=0; 0:r4=2; 1:r1=0; 2:r1=2; 2:r3=1; y=1;
93674 :>0:r1=0; 0:r4=2; 1:r1=0; 2:r1=0; 2:r3=0; y=1;
22096 :>0:r1=1; 0:r4=2; 1:r1=0; 2:r1=2; 2:r3=1; y=1;
99610 :>0:r1=1; 0:r4=2; 1:r1=0; 2:r1=0; 2:r3=1; y=1;
12625 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=1; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 0:r4=0 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0) is NOT validated
Hash=6f39287eaaedd519e80f65be187dfd17
Cycle=SyncdWW Rfe DpdR Fri Rfe SyncsRW Rfe SyncdRR Fre
Relax safe535 No
Safe=Fri Fre DpdR ACSyncsRW ACSyncdRR BCSyncdWW
Time safe535 3.05
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe536.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe536
"SyncsWW Rfe DpdW Rfe SyncsRW Rfe SyncdRR Fre"
{0:r2=y; 0:r5=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
xor r3,r1,r1 | sync | sync | stw r1,0(r2) ;
li r4,1 | li r3,2 | lwz r3,0(r4) | sync ;
stwx r4,r3,r5 | stw r3,0(r2) | | li r3,2 ;
| | | stw r3,0(r2) ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: xor r11,r7,r7
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stwx r8,r11,r2
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe536 Allowed
Histogram (62 states)
1 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1; x=2; y=2;
1 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=0; x=2; y=2;
4 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; x=1; y=2;
105 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=2;
19 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; x=1; y=2;
83 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=1; x=2; y=2;
29 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
17 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=0; x=2; y=2;
9 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
63 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; x=1; y=2;
105 :>0:r1=2; 1:r1=0; 2:r1=2; 2:r3=0; x=1; y=2;
400 :>0:r1=2; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=2;
264 :>0:r1=1; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=2;
211 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; x=2; y=2;
34 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; x=2; y=2;
17068 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
1320 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
1218 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=2;
3457 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=2; x=2; y=2;
4325 :>0:r1=2; 1:r1=1; 2:r1=1; 2:r3=2; x=2; y=2;
3083 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=2;
616 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=1; y=2;
1956 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
3446 :>0:r1=2; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
4319 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=2;
96 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; x=2; y=2;
4747 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; x=2; y=2;
2139 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=0; x=1; y=2;
150 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
2426 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
3997 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
1829 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
11394 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
1504 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
2054 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
10485 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=0; x=2; y=2;
49870 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=2;
3345 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
17636 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
358 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=2;
7460 :>0:r1=2; 1:r1=0; 2:r1=2; 2:r3=1; x=1; y=2;
32760 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
20210 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
31227 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=2; y=2;
11105 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
35225 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
4175 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
1850 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
72035 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; x=1; y=2;
56351 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=0; x=1; y=2;
49681 :>0:r1=2; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
2497 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
69925 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
52412 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
4259 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
49370 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
168892:>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=2; x=2; y=2;
86315 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
7184 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
39106 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
28260 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=2;
15518 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0) is NOT validated
Hash=36489c521f75675b075f6a0d577ab84b
Cycle=SyncsWW Rfe DpdW Rfe SyncsRW Rfe SyncdRR Fre
Relax safe536 No
Safe=Fre DpdW ACSyncsRW ACSyncdRR BCSyncsWW
Time safe536 3.80
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe537.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe537
"SyncdWW Rfe DpdW Rfe SyncsRW Rfe SyncdRR Fre"
{0:r2=x; 0:r5=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
xor r3,r1,r1 | sync | sync | stw r1,0(r2) ;
li r4,1 | li r3,2 | lwz r3,0(r4) | sync ;
stwx r4,r3,r5 | stw r3,0(r2) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: xor r11,r7,r7
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stwx r8,r11,r2
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe537 Allowed
Histogram (30 states)
1 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; y=2;
4 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; y=2;
13 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=0; y=1;
374 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; y=2;
35 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; y=2;
896 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=0; y=2;
3246 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; y=1;
33 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=1; y=2;
1708 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1; y=2;
520 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; y=2;
225 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=0; y=2;
774 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; y=1;
4570 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; y=1;
44698 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; y=1;
66566 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; y=2;
51448 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=0; y=1;
48125 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; y=1;
11441 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; y=2;
23198 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; y=2;
28483 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; y=1;
27089 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=0; y=2;
23054 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; y=2;
82749 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; y=2;
75043 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; y=2;
50908 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; y=2;
118257:>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; y=2;
150369:>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; y=1;
24911 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; y=1;
152229:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; y=1;
9033 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0) is NOT validated
Hash=ca26e33c037e3e8cf603abe2e4a75bb8
Cycle=SyncdWW Rfe DpdW Rfe SyncsRW Rfe SyncdRR Fre
Relax safe537 No
Safe=Fre DpdW ACSyncsRW ACSyncdRR BCSyncdWW
Time safe537 2.53
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe538.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe538
"LwSyncdWW Rfe SyncsRW Rfe SyncdRR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | sync | stw r1,0(r2) ;
li r3,2 | lwz r3,0(r4) | lwsync ;
stw r3,0(r2) | | li r3,1 ;
| | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe538 Allowed
Histogram (13 states)
3656 :>0:r1=0; 1:r1=2; 1:r3=1; x=2;
2552 :>0:r1=1; 1:r1=0; 1:r3=0; x=2;
1939 :>0:r1=1; 1:r1=2; 1:r3=1; x=2;
39387 :>0:r1=0; 1:r1=0; 1:r3=0; x=2;
33019 :>0:r1=0; 1:r1=2; 1:r3=0; x=1;
13869 :>0:r1=0; 1:r1=0; 1:r3=1; x=1;
62912 :>0:r1=0; 1:r1=0; 1:r3=1; x=2;
236911:>0:r1=1; 1:r1=1; 1:r3=1; x=2;
269644:>0:r1=0; 1:r1=2; 1:r3=1; x=1;
20409 :>0:r1=0; 1:r1=1; 1:r3=1; x=2;
264549:>0:r1=0; 1:r1=0; 1:r3=0; x=1;
23818 :>0:r1=0; 1:r1=1; 1:r3=1; x=1;
27335 :>0:r1=1; 1:r1=0; 1:r3=1; x=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 1:r3=0) is NOT validated
Hash=a3db7c32c0281e8a6a430a39ab5211f1
Cycle=LwSyncdWW Rfe SyncsRW Rfe SyncdRR Fre
Relax safe538 No
Safe=Fre LwSyncdWW ACSyncsRW ACSyncdRR
Time safe538 1.55
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe539.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe539
"SyncsWW Rfe LwSyncdRW Rfe SyncsRW Rfe SyncdRR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
lwsync | sync | sync | stw r1,0(r2) ;
li r3,1 | li r3,2 | lwz r3,0(r4) | sync ;
stw r3,0(r4) | stw r3,0(r2) | | li r3,2 ;
| | | stw r3,0(r2) ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe539 Allowed
Histogram (61 states)
1 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; x=2; y=2;
6 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=0; x=2; y=2;
5 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
10 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; x=2; y=2;
8 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=1; x=2; y=2;
20 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=2;
4 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=0; x=2; y=2;
25 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
95 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; x=1; y=2;
105 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; x=2; y=2;
27 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; x=1; y=2;
97 :>0:r1=2; 1:r1=0; 2:r1=2; 2:r3=0; x=1; y=2;
253 :>0:r1=2; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=2;
1189 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=2;
1879 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
535 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=0; x=2; y=2;
1276 :>0:r1=2; 1:r1=1; 2:r1=1; 2:r3=2; x=2; y=2;
344 :>0:r1=1; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=2;
2607 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=2;
31949 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
1902 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=2; x=2; y=2;
1411 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=1; y=2;
1353 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
580 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; x=2; y=2;
9675 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
2314 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; x=2; y=2;
1189 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=0; x=1; y=2;
7223 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=2;
10130 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=2; y=2;
6687 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=2;
5083 :>0:r1=2; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
4794 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=2;
7366 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=2;
5122 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
1943 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
6841 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
23133 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
46112 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
11245 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
22448 :>0:r1=2; 1:r1=0; 2:r1=2; 2:r3=1; x=1; y=2;
9845 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
12935 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
17219 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
18802 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
4985 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
40592 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
53958 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
8814 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
3805 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
61112 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; x=1; y=2;
22770 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
24558 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
44211 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
5843 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
71582 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
146488:>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=2; x=2; y=2;
13576 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
49356 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=0; x=1; y=2;
67498 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
15214 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=2;
89851 :>0:r1=2; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0) is NOT validated
Hash=10bd5fbbd1276f08d3257b352ce0f661
Cycle=SyncsWW Rfe LwSyncdRW Rfe SyncsRW Rfe SyncdRR Fre
Relax safe539 No
Safe=Fre LwSyncdRW ACSyncsRW ACSyncdRR BCSyncsWW
Time safe539 3.65
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe540.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe540
"SyncdWW Rfe LwSyncdRW Rfe SyncsRW Rfe SyncdRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
lwsync | sync | sync | stw r1,0(r2) ;
li r3,1 | li r3,2 | lwz r3,0(r4) | sync ;
stw r3,0(r4) | stw r3,0(r2) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe540 Allowed
Histogram (29 states)
6 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; y=2;
4 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=1; y=2;
39 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; y=2;
21 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=0; y=1;
98 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=0; y=2;
434 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=0; y=2;
368 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; y=2;
11381 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=0; y=2;
3865 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; y=1;
1402 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1; y=2;
1535 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; y=2;
530 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; y=1;
52941 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=0; y=1;
43819 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; y=1;
125010:>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; y=2;
37063 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; y=2;
8310 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; y=2;
65328 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; y=2;
25660 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; y=2;
93517 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; y=2;
29506 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; y=2;
67839 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; y=2;
32279 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; y=1;
158078:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; y=1;
28142 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; y=1;
155944:>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; y=1;
30593 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; y=1;
6534 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; y=1;
19754 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0) is NOT validated
Hash=7d25d451cd94ff834a1e78350e429c10
Cycle=SyncdWW Rfe LwSyncdRW Rfe SyncsRW Rfe SyncdRR Fre
Relax safe540 No
Safe=Fre LwSyncdRW ACSyncsRW ACSyncdRR BCSyncdWW
Time safe540 2.50
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe541.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe541
"Rfe SyncdRW Rfe SyncsRW Rfe SyncdRR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | sync | sync | stw r1,0(r2) ;
li r3,1 | li r3,2 | lwz r3,0(r4) | ;
stw r3,0(r4) | stw r3,0(r2) | | ;
exists (x=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
Test safe541 Allowed
Histogram (30 states)
12 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; x=1;
12 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=0; x=2;
134 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; x=2;
27 :>0:r1=1; 1:r1=1; 2:r1=2; 2:r3=1; x=2;
84 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; x=2;
880 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=0; x=2;
4251 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1; x=2;
3260 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; x=2;
13555 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; x=1;
2422 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; x=2;
9369 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; x=2;
9206 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2;
50688 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=2;
2972 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=0; x=1;
8344 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=1;
45159 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=0; x=1;
4610 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1;
37073 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=2;
31435 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=2;
7304 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=2;
18368 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; x=2;
215562:>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; x=1;
95386 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=1;
13856 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1;
150302:>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=2;
178783:>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=1;
54817 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; x=1;
35712 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2;
6064 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; x=2;
353 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=1; x=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0) is NOT validated
Hash=1ab4d71fc1764670c74dbefd8cd0f262
Cycle=Rfe SyncdRW Rfe SyncsRW Rfe SyncdRR Fre
Relax safe541 No
Safe=Fre ACSyncsRW ACSyncdRW ACSyncdRR
Time safe541 2.17
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe542.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe542
"LwSyncdWW Rfe SyncdRW Rfe SyncsRW Rfe SyncdRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | sync | sync | stw r1,0(r2) ;
li r3,1 | li r3,2 | lwz r3,0(r4) | lwsync ;
stw r3,0(r4) | stw r3,0(r2) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe542 Allowed
Histogram (30 states)
8 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=1; y=2;
11 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=0; y=2;
149 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; y=2;
104 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=0; y=2;
257 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; y=1;
220 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; y=1;
154 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; y=2;
2081 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1; y=2;
2851 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=0; y=2;
947 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; y=2;
369 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; y=2;
4571 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; y=2;
1060 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; y=2;
83390 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; y=2;
63445 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; y=2;
14982 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; y=1;
23970 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; y=2;
56 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=0; y=1;
30990 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=1; y=1;
99601 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; y=2;
77034 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; y=2;
59701 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=0; y=1;
27722 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; y=1;
22370 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; y=2;
29416 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; y=1;
43453 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; y=2;
141632:>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; y=1;
128308:>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; y=1;
107492:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; y=1;
33656 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0) is NOT validated
Hash=3dcdd37a2747ad28202012884c0f2b35
Cycle=LwSyncdWW Rfe SyncdRW Rfe SyncsRW Rfe SyncdRR Fre
Relax safe542 No
Safe=Fre LwSyncdWW ACSyncsRW ACSyncdRW ACSyncdRR
Time safe542 2.60
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe543.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe543
"LwSyncsWW Rfe SyncdRW Rfe SyncsRW Rfe SyncdRR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | sync | sync | stw r1,0(r2) ;
li r3,1 | li r3,2 | lwz r3,0(r4) | lwsync ;
stw r3,0(r4) | stw r3,0(r2) | | li r3,2 ;
| | | stw r3,0(r2) ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe543 Allowed
Histogram (57 states)
1 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=1; x=2; y=2;
1 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
2 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=1; x=2; y=2;
3 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=0; x=2; y=2;
8 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; x=1; y=2;
11 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=0; x=2; y=2;
1 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
12 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=2; x=2; y=2;
39 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; x=2; y=2;
108 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
48 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=2;
113 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=2;
186 :>0:r1=2; 1:r1=1; 2:r1=1; 2:r3=2; x=2; y=2;
399 :>0:r1=2; 1:r1=0; 2:r1=2; 2:r3=0; x=1; y=2;
52 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
95 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
360 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
131 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; x=2; y=2;
141 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=1; y=2;
1812 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=2; y=2;
1073 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; x=2; y=2;
1978 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
479 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=0; x=2; y=2;
10946 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
33 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=2;
7473 :>0:r1=2; 1:r1=0; 2:r1=2; 2:r3=1; x=1; y=2;
4222 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
2022 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=2; y=2;
1690 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
3322 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=2; y=2;
43298 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
11298 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
2939 :>0:r1=2; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
8371 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; x=1; y=2;
6006 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
14346 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=2;
1427 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1; y=2;
2223 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=2; y=2;
179 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=0; x=1; y=2;
21494 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
3840 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
34062 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=2; x=2; y=2;
8494 :>0:r1=1; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
12555 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=1; x=1; y=2;
37290 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
25411 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2; y=2;
18485 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=0; x=1; y=2;
30177 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; x=2; y=2;
125660:>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=2; x=1; y=2;
31569 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
148838:>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=2; x=2; y=2;
99421 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
14305 :>0:r1=0; 1:r1=0; 2:r1=2; 2:r3=2; x=2; y=2;
242559:>0:r1=2; 1:r1=0; 2:r1=2; 2:r3=2; x=1; y=2;
14194 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=1; y=2;
3581 :>0:r1=0; 1:r1=1; 2:r1=2; 2:r3=2; x=2; y=2;
1217 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=2; x=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=2 /\ 2:r3=0) is NOT validated
Hash=4006595f2326248602f31b82b15fe323
Cycle=LwSyncsWW Rfe SyncdRW Rfe SyncsRW Rfe SyncdRR Fre
Relax safe543 No
Safe=Fre LwSyncsWW ACSyncsRW ACSyncdRW ACSyncdRR
Time safe543 3.51
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe544.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe544
"Rfe SyncdRW Rfe SyncdRR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | sync | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r4) | ;
stw r3,0(r4) | | ;
exists (0:r1=1 /\ 1:r1=1 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stw r8,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r9,1
_litmus_P2_1_: stw r9,0(r2)
Test safe544 Allowed
Histogram (7 states)
276 :>0:r1=0; 1:r1=1; 1:r3=0;
6700 :>0:r1=1; 1:r1=1; 1:r3=1;
45922 :>0:r1=1; 1:r1=0; 1:r3=0;
398736:>0:r1=1; 1:r1=0; 1:r3=1;
156819:>0:r1=0; 1:r1=0; 1:r3=0;
249813:>0:r1=0; 1:r1=1; 1:r3=1;
141734:>0:r1=0; 1:r1=0; 1:r3=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 1:r1=1 /\ 1:r3=0) is NOT validated
Hash=613a02fe0f0573df5bef595d1b359e5b
Cycle=Rfe SyncdRW Rfe SyncdRR Fre
Relax safe544 No
Safe=Fre ACSyncdRW ACSyncdRR
Time safe544 1.25
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe545.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe545
"SyncsWW Rfe DpdR Fri Rfe SyncdRW Rfe SyncdRR Fre"
{0:r2=z; 0:r5=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
xor r3,r1,r1 | sync | sync | stw r1,0(r2) ;
lwzx r4,r3,r5 | li r3,1 | lwz r3,0(r4) | sync ;
li r6,1 | stw r3,0(r4) | | li r3,2 ;
stw r6,0(r5) | | | stw r3,0(r2) ;
exists (z=2 /\ 0:r1=2 /\ 0:r4=0 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r5,0(r9)
_litmus_P0_1_: xor r10,r5,r5
_litmus_P0_2_: lwzx r6,r10,r2
_litmus_P0_3_: li r11,1
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe545 Allowed
Histogram (32 states)
1 :>0:r1=1; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=1; z=2;
2 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
2 :>0:r1=1; 0:r4=0; 1:r1=1; 2:r1=1; 2:r3=2; z=2;
2 :>0:r1=2; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=0; z=2;
4 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=1; 2:r3=0; z=2;
5 :>0:r1=2; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=1; z=2;
18 :>0:r1=2; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=0; z=2;
12 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
7 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=0; z=2;
14 :>0:r1=2; 0:r4=0; 1:r1=1; 2:r1=1; 2:r3=2; z=2;
120 :>0:r1=1; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=0; z=2;
125 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=1; 2:r3=1; z=2;
877 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=0; z=2;
16099 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=0; z=2;
14824 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=1; 2:r3=2; z=2;
50475 :>0:r1=2; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=2; z=2;
819 :>0:r1=2; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
11924 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
16814 :>0:r1=2; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
41048 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=1; z=2;
2493 :>0:r1=1; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=2; z=2;
56422 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
30087 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
9856 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
115139:>0:r1=2; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
20654 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
165406:>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
170893:>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=2; z=2;
25590 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
198917:>0:r1=2; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
35321 :>0:r1=2; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
16030 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=2 /\ 0:r4=0 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=7a087034c56903badbfbe6f2f4d3de63
Cycle=SyncsWW Rfe DpdR Fri Rfe SyncdRW Rfe SyncdRR Fre
Relax safe545 No
Safe=Fri Fre DpdR ACSyncdRW ACSyncdRR BCSyncsWW
Time safe545 2.65
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe546.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe546
"SyncdWW Rfe DpdR Fri Rfe SyncdRW Rfe SyncdRR Fre"
{0:r2=x; 0:r5=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
xor r3,r1,r1 | sync | sync | stw r1,0(r2) ;
lwzx r4,r3,r5 | li r3,1 | lwz r3,0(r4) | sync ;
li r6,1 | stw r3,0(r4) | | li r3,1 ;
stw r6,0(r5) | | | stw r3,0(r4) ;
exists (0:r1=1 /\ 0:r4=0 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r5,0(r9)
_litmus_P0_1_: xor r10,r5,r5
_litmus_P0_2_: lwzx r6,r10,r2
_litmus_P0_3_: li r11,1
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe546 Allowed
Histogram (15 states)
14 :>0:r1=1; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=0;
6 :>0:r1=1; 0:r4=0; 1:r1=1; 2:r1=1; 2:r3=1;
15 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=1; 2:r3=0;
2011 :>0:r1=1; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=1;
2860 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=0;
19031 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=1; 2:r3=1;
9749 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=0;
31258 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=1;
30669 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=0;
129795:>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=1;
179293:>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=1;
222442:>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=0;
152144:>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=1;
220711:>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=1;
2 :>0:r1=1; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=0;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 0:r4=0 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=fc894138eb70b49472f0e14b6d58d0ac
Cycle=SyncdWW Rfe DpdR Fri Rfe SyncdRW Rfe SyncdRR Fre
Relax safe546 No
Safe=Fri Fre DpdR ACSyncdRW ACSyncdRR BCSyncdWW
Time safe546 2.18
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe547.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe547
"SyncdWW Rfe DpsR Fri Rfe SyncdRW Rfe SyncdRR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
xor r3,r1,r1 | sync | sync | stw r1,0(r2) ;
lwzx r4,r3,r2 | li r3,1 | lwz r3,0(r4) | sync ;
li r5,2 | stw r3,0(r4) | | li r3,1 ;
stw r5,0(r2) | | | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 0:r4=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r6,0(r2)
_litmus_P0_1_: xor r10,r6,r6
_litmus_P0_2_: lwzx r9,r10,r2
_litmus_P0_3_: li r11,2
_litmus_P0_4_: stw r11,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe547 Allowed
Histogram (37 states)
1 :>0:r1=0; 0:r4=1; 1:r1=1; 2:r1=1; 2:r3=1; x=2;
1 :>0:r1=0; 0:r4=1; 1:r1=1; 2:r1=0; 2:r3=1; x=2;
2 :>0:r1=0; 0:r4=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2;
3 :>0:r1=1; 0:r4=1; 1:r1=0; 2:r1=1; 2:r3=0; x=2;
2 :>0:r1=1; 0:r4=1; 1:r1=2; 2:r1=1; 2:r3=1; x=2;
5 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=0; x=2;
1 :>0:r1=0; 0:r4=0; 1:r1=2; 2:r1=1; 2:r3=1; x=2;
37 :>0:r1=1; 0:r4=1; 1:r1=1; 2:r1=0; 2:r3=0; x=2;
6 :>0:r1=0; 0:r4=1; 1:r1=0; 2:r1=0; 2:r3=1; x=2;
12 :>0:r1=0; 0:r4=1; 1:r1=2; 2:r1=0; 2:r3=1; x=2;
3 :>0:r1=0; 0:r4=1; 1:r1=0; 2:r1=1; 2:r3=1; x=2;
22 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=1; 2:r3=1; x=2;
44 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=1; 2:r3=1; x=1;
38 :>0:r1=0; 0:r4=0; 1:r1=2; 2:r1=0; 2:r3=0; x=2;
451 :>0:r1=0; 0:r4=0; 1:r1=2; 2:r1=1; 2:r3=0; x=1;
4352 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=0; x=1;
917 :>0:r1=1; 0:r4=1; 1:r1=1; 2:r1=1; 2:r3=1; x=2;
1958 :>0:r1=1; 0:r4=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2;
155 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=0; x=2;
27078 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2;
14294 :>0:r1=1; 0:r4=1; 1:r1=0; 2:r1=1; 2:r3=1; x=2;
4227 :>0:r1=0; 0:r4=0; 1:r1=2; 2:r1=0; 2:r3=1; x=2;
7911 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=1; x=2;
40945 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=1; x=2;
940 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=0; x=1;
49104 :>0:r1=1; 0:r4=1; 1:r1=0; 2:r1=0; 2:r3=1; x=2;
76113 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1;
138643:>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1;
27821 :>0:r1=0; 0:r4=0; 1:r1=1; 2:r1=0; 2:r3=1; x=1;
26563 :>0:r1=1; 0:r4=1; 1:r1=2; 2:r1=0; 2:r3=1; x=2;
14 :>0:r1=1; 0:r4=1; 1:r1=2; 2:r1=0; 2:r3=0; x=2;
60811 :>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=0; 2:r3=1; x=2;
135863:>0:r1=0; 0:r4=0; 1:r1=2; 2:r1=0; 2:r3=0; x=1;
46188 :>0:r1=0; 0:r4=0; 1:r1=2; 2:r1=1; 2:r3=1; x=1;
57079 :>0:r1=1; 0:r4=1; 1:r1=1; 2:r1=0; 2:r3=1; x=2;
176948:>0:r1=0; 0:r4=0; 1:r1=2; 2:r1=0; 2:r3=1; x=1;
101448:>0:r1=0; 0:r4=0; 1:r1=0; 2:r1=1; 2:r3=1; x=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 0:r4=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=05df3334a523d797ad5fda324b09ccb2
Cycle=SyncdWW Rfe DpsR Fri Rfe SyncdRW Rfe SyncdRR Fre
Relax safe547 No
Safe=Fri Fre DpsR ACSyncdRW ACSyncdRR BCSyncdWW
Time safe547 2.96
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe548.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe548
"SyncsWW Rfe DpdW Rfe SyncdRW Rfe SyncdRR Fre"
{0:r2=z; 0:r5=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
xor r3,r1,r1 | sync | sync | stw r1,0(r2) ;
li r4,1 | li r3,1 | lwz r3,0(r4) | sync ;
stwx r4,r3,r5 | stw r3,0(r4) | | li r3,2 ;
| | | stw r3,0(r2) ;
exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: xor r11,r7,r7
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stwx r8,r11,r2
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe548 Allowed
Histogram (31 states)
1 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1; z=2;
9 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
5 :>0:r1=2; 1:r1=1; 2:r1=1; 2:r3=2; z=2;
17 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=1; z=2;
15 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=0; z=2;
29 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
18 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=2; z=2;
26 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=0; z=2;
76 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; z=2;
488 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; z=2;
11 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=0; z=2;
1165 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
2709 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; z=2;
65341 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; z=2;
30554 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
18676 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=2; z=2;
24731 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
34899 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=2; z=2;
21243 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=2; z=2;
22233 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; z=2;
29576 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
38462 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
120243:>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; z=2;
61537 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
99230 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
59800 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
115651:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
12172 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
198276:>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
8600 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
34207 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=1e8f9588372fc0d4b4afc4ecbb9575f1
Cycle=SyncsWW Rfe DpdW Rfe SyncdRW Rfe SyncdRR Fre
Relax safe548 No
Safe=Fre DpdW ACSyncdRW ACSyncdRR BCSyncsWW
Time safe548 2.48
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe549.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe549
"SyncdWW Rfe DpdW Rfe SyncdRW Rfe SyncdRR Fre"
{0:r2=x; 0:r5=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
xor r3,r1,r1 | sync | sync | stw r1,0(r2) ;
li r4,1 | li r3,1 | lwz r3,0(r4) | sync ;
stwx r4,r3,r5 | stw r3,0(r4) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r7,0(r9)
_litmus_P0_1_: xor r11,r7,r7
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stwx r8,r11,r2
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe549 Allowed
Histogram (15 states)
1 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=0;
1 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0;
59 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=1;
45 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=0;
1635 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0;
7293 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0;
28453 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1;
4174 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1;
84751 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1;
62810 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0;
178548:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0;
173882:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1;
198836:>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1;
30742 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1;
228770:>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=848950897a5884e12445afd415fd4ca8
Cycle=SyncdWW Rfe DpdW Rfe SyncdRW Rfe SyncdRR Fre
Relax safe549 No
Safe=Fre DpdW ACSyncdRW ACSyncdRR BCSyncdWW
Time safe549 2.08
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe550.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe550
"SyncdWW Rfe DpsW Rfe SyncdRW Rfe SyncdRR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
xor r3,r1,r1 | sync | sync | stw r1,0(r2) ;
li r4,2 | li r3,1 | lwz r3,0(r4) | sync ;
stwx r4,r3,r2 | stw r3,0(r4) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r2)
_litmus_P0_1_: xor r11,r8,r8
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stwx r9,r11,r2
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe550 Allowed
Histogram (30 states)
1 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=0; x=2;
7 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=2;
1 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=2;
13 :>0:r1=1; 1:r1=2; 2:r1=0; 2:r3=0; x=2;
22 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=2;
12 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=2;
32 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; x=2;
11 :>0:r1=1; 1:r1=2; 2:r1=1; 2:r3=1; x=2;
953 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=1;
204 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=1;
501 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=0; x=1;
4233 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2;
141 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=1; x=2;
4802 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=1; x=2;
27642 :>0:r1=1; 1:r1=2; 2:r1=0; 2:r3=1; x=2;
6823 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; x=2;
6044 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; x=1;
40087 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=1;
37705 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=2;
24560 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1; x=2;
22423 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=2;
22333 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=2;
103453:>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; x=1;
20840 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2;
156837:>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=1;
44167 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1;
42445 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1;
3938 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; x=2;
225389:>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=1;
204381:>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=1; x=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=928394efa59aad0370132bf75331a827
Cycle=SyncdWW Rfe DpsW Rfe SyncdRW Rfe SyncdRR Fre
Relax safe550 No
Safe=Fre DpsW ACSyncdRW ACSyncdRR BCSyncdWW
Time safe550 2.64
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe551.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe551
"LwSyncdWW Rfe SyncdRW Rfe SyncdRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=x;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | sync | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r4) | lwsync ;
stw r3,0(r4) | | li r3,1 ;
| | stw r3,0(r4) ;
exists (0:r1=1 /\ 1:r1=1 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stw r8,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r10,1
_litmus_P2_1_: stw r10,0(r9)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r11,1
_litmus_P2_4_: stw r11,0(r2)
Test safe551 Allowed
Histogram (7 states)
1939 :>0:r1=0; 1:r1=1; 1:r3=0;
618 :>0:r1=1; 1:r1=1; 1:r3=1;
4138 :>0:r1=1; 1:r1=0; 1:r3=0;
252024:>0:r1=1; 1:r1=0; 1:r3=1;
308013:>0:r1=0; 1:r1=0; 1:r3=0;
263486:>0:r1=0; 1:r1=0; 1:r3=1;
169782:>0:r1=0; 1:r1=1; 1:r3=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 1:r1=1 /\ 1:r3=0) is NOT validated
Hash=bd25aa31e3ab9b9e78ba84b30502ad12
Cycle=LwSyncdWW Rfe SyncdRW Rfe SyncdRR Fre
Relax safe551 No
Safe=Fre LwSyncdWW ACSyncdRW ACSyncdRR
Time safe551 1.56
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe552.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe552
"SyncsWW Rfe LwSyncdRW Rfe SyncdRW Rfe SyncdRR Fre"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
lwsync | sync | sync | stw r1,0(r2) ;
li r3,1 | li r3,1 | lwz r3,0(r4) | sync ;
stw r3,0(r4) | stw r3,0(r4) | | li r3,2 ;
| | | stw r3,0(r2) ;
exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: sync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe552 Allowed
Histogram (32 states)
2 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=0; z=2;
1 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=0; z=2;
4 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=0; z=2;
26 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; z=2;
29 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
12 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
31 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=0; z=2;
18 :>0:r1=2; 1:r1=1; 2:r1=1; 2:r3=2; z=2;
43 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=2; z=2;
329 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; z=2;
35 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=1; z=2;
3 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1; z=2;
4584 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=2; z=2;
533 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
1122 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; z=2;
52344 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; z=2;
44620 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
51775 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=2; z=2;
52149 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
33212 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
31149 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
34310 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
124859:>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
32139 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; z=2;
22371 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
29548 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
71193 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
147702:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
83657 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
28808 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=2; z=2;
6353 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
147039:>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=2184320e3f271c8c7cfc993e1f43cfce
Cycle=SyncsWW Rfe LwSyncdRW Rfe SyncdRW Rfe SyncdRR Fre
Relax safe552 No
Safe=Fre LwSyncdRW ACSyncdRW ACSyncdRR BCSyncsWW
Time safe552 2.56
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe553.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe553
"SyncdWW Rfe LwSyncdRW Rfe SyncdRW Rfe SyncdRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
lwsync | sync | sync | stw r1,0(r2) ;
li r3,1 | li r3,1 | lwz r3,0(r4) | sync ;
stw r3,0(r4) | stw r3,0(r4) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe553 Allowed
Histogram (13 states)
8 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=0;
47 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=1;
2552 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1;
3667 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0;
3961 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0;
45225 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0;
35034 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1;
134031:>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1;
170330:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1;
225212:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0;
170788:>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1;
10735 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1;
198410:>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=a27ed5a862cdc0ac890702c7da10056b
Cycle=SyncdWW Rfe LwSyncdRW Rfe SyncdRW Rfe SyncdRR Fre
Relax safe553 No
Safe=Fre LwSyncdRW ACSyncdRW ACSyncdRR BCSyncdWW
Time safe553 2.04
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe554.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe554
"LwSyncsWW Rfe SyncdRW Rfe SyncdRR Fre"
{0:r2=y; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | sync | stw r1,0(r2) ;
li r3,1 | lwz r3,0(r4) | lwsync ;
stw r3,0(r4) | | li r3,2 ;
| | stw r3,0(r2) ;
exists (y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stw r8,0(r2)
_litmus_P1_0_: lwz r7,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: lwz r8,0(r2)
_litmus_P2_0_: li r9,1
_litmus_P2_1_: stw r9,0(r2)
_litmus_P2_2_: lwsync
_litmus_P2_3_: li r11,2
_litmus_P2_4_: stw r11,0(r2)
Test safe554 Allowed
Histogram (14 states)
156 :>0:r1=0; 1:r1=1; 1:r3=0; y=2;
220 :>0:r1=1; 1:r1=1; 1:r3=2; y=2;
873 :>0:r1=0; 1:r1=1; 1:r3=1; y=2;
14413 :>0:r1=2; 1:r1=1; 1:r3=2; y=2;
21871 :>0:r1=1; 1:r1=0; 1:r3=0; y=2;
5 :>0:r1=1; 1:r1=0; 1:r3=1; y=2;
21978 :>0:r1=2; 1:r1=0; 1:r3=0; y=2;
4661 :>0:r1=1; 1:r1=0; 1:r3=2; y=2;
31801 :>0:r1=0; 1:r1=0; 1:r3=1; y=2;
121846:>0:r1=0; 1:r1=0; 1:r3=2; y=2;
9199 :>0:r1=2; 1:r1=0; 1:r3=1; y=2;
149184:>0:r1=0; 1:r1=0; 1:r3=0; y=2;
237488:>0:r1=0; 1:r1=1; 1:r3=2; y=2;
386305:>0:r1=2; 1:r1=0; 1:r3=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 1:r3=0) is NOT validated
Hash=2f8338c056770ad8a702bf8101f36c21
Cycle=LwSyncsWW Rfe SyncdRW Rfe SyncdRR Fre
Relax safe554 No
Safe=Fre LwSyncsWW ACSyncdRW ACSyncdRR
Time safe554 1.63
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe555.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe555
"SyncdWW Rfe LwSyncsRW Rfe SyncdRW Rfe SyncdRR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
lwsync | sync | sync | stw r1,0(r2) ;
li r3,2 | li r3,1 | lwz r3,0(r4) | sync ;
stw r3,0(r2) | stw r3,0(r4) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: lwsync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: sync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe555 Allowed
Histogram (29 states)
3 :>0:r1=1; 1:r1=2; 2:r1=1; 2:r3=1; x=2;
217 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=2;
1 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=0; x=2;
15 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=2;
13 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=2;
1 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=2;
2 :>0:r1=1; 1:r1=2; 2:r1=0; 2:r3=0; x=2;
227 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=1; x=2;
5892 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=1;
526 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2;
11238 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; x=2;
2863 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=1; x=2;
2663 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; x=2;
35 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=1;
231 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=0; x=1;
36881 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=2;
34943 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=2;
33015 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=1;
86415 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1;
4356 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; x=1;
37755 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1;
31942 :>0:r1=1; 1:r1=2; 2:r1=0; 2:r3=1; x=2;
63625 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=2;
9471 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2;
206928:>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=1; x=1;
173471:>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=1;
33531 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1; x=2;
173612:>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=1;
50128 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; x=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=4e891f60cc35b032d466127db752d9ad
Cycle=SyncdWW Rfe LwSyncsRW Rfe SyncdRW Rfe SyncdRR Fre
Relax safe555 No
Safe=Fre LwSyncsRW ACSyncdRW ACSyncdRR BCSyncdWW
Time safe555 2.57
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe556.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe556
"Rfe SyncsRW Rfe SyncdRW Rfe SyncdRR Fre"
{0:r2=y; 1:r2=y; 1:r4=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | sync | sync | stw r1,0(r2) ;
li r3,2 | li r3,1 | lwz r3,0(r4) | ;
stw r3,0(r2) | stw r3,0(r4) | | ;
exists (y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
Test safe556 Allowed
Histogram (45 states)
1 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; y=2;
6 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=2; y=1;
36 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=0; y=2;
623 :>0:r1=1; 1:r1=2; 2:r1=0; 2:r3=0; y=2;
2718 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; y=1;
1616 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; y=2;
651 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=1; y=2;
1237 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; y=1;
17178 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; y=2;
6406 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; y=1;
22857 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; y=2;
10171 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; y=2;
6911 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; y=1;
108 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=2; y=2;
22892 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; y=2;
32475 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=1; y=1;
602 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; y=1;
4354 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; y=1;
265 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=2; y=2;
9316 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; y=2;
6483 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; y=2;
651 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; y=2;
10293 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; y=1;
10434 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; y=2;
19218 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; y=2;
3910 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=2; y=1;
30537 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=2; y=2;
7216 :>0:r1=1; 1:r1=2; 2:r1=0; 2:r3=1; y=2;
19535 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; y=2;
9944 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; y=2;
17845 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; y=2;
390 :>0:r1=1; 1:r1=2; 2:r1=1; 2:r3=2; y=2;
1827 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=1; y=2;
12380 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=2; y=2;
23415 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; y=1;
47176 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; y=2;
179016:>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; y=1;
102826:>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; y=2;
141006:>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1; y=2;
5728 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; y=1;
129537:>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=2; y=2;
40612 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; y=2;
8402 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; y=1;
3111 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; y=1;
28085 :>0:r1=1; 1:r1=2; 2:r1=0; 2:r3=2; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=cbcfdff2b9b01e83d1ed59b2e100e3ac
Cycle=Rfe SyncsRW Rfe SyncdRW Rfe SyncdRR Fre
Relax safe556 No
Safe=Fre ACSyncsRW ACSyncdRW ACSyncdRR
Time safe556 2.61
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe557.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe557
"LwSyncdWW Rfe SyncsRW Rfe SyncdRW Rfe SyncdRR Fre"
{0:r2=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | sync | sync | stw r1,0(r2) ;
li r3,2 | li r3,1 | lwz r3,0(r4) | lwsync ;
stw r3,0(r2) | stw r3,0(r4) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r10,0(r2)
_litmus_P0_1_: sync
_litmus_P0_2_: li r9,2
_litmus_P0_3_: stw r9,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe557 Allowed
Histogram (31 states)
1 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=0; x=2;
11 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=0; x=1;
19 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=2;
40 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; x=2;
4 :>0:r1=1; 1:r1=2; 2:r1=1; 2:r3=1; x=2;
32 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=1;
1697 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; x=2;
809 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; x=1;
770 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=1; x=2;
707 :>0:r1=1; 1:r1=2; 2:r1=0; 2:r3=0; x=2;
13590 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=2;
13804 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; x=1;
4494 :>0:r1=1; 1:r1=2; 2:r1=0; 2:r3=1; x=2;
128 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1; x=2;
6863 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=2;
1716 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; x=2;
11950 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=1; x=2;
32905 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=1;
22812 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; x=2;
66825 :>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=0; x=1;
37510 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; x=1;
81583 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=2;
27165 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1; x=2;
150711:>0:r1=0; 1:r1=2; 2:r1=0; 2:r3=1; x=1;
22734 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1; x=2;
70244 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; x=2;
111609:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=1;
92301 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; x=1;
156138:>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1; x=2;
56169 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; x=2;
14659 :>0:r1=0; 1:r1=2; 2:r1=1; 2:r3=1; x=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ 0:r1=1 /\ 1:r1=2 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=9081e70e3046cf850a28d43c664066cc
Cycle=LwSyncdWW Rfe SyncsRW Rfe SyncdRW Rfe SyncdRR Fre
Relax safe557 No
Safe=Fre LwSyncdWW ACSyncsRW ACSyncdRW ACSyncdRR
Time safe557 2.68
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe558.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe558
"Rfe SyncdRW Rfe SyncdRW Rfe SyncdRR Fre"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | sync | sync | stw r1,0(r2) ;
li r3,1 | li r3,1 | lwz r3,0(r4) | ;
stw r3,0(r4) | stw r3,0(r4) | | ;
exists (0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
Test safe558 Allowed
Histogram (14 states)
2 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=1;
89 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=0;
1804 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1;
7718 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0;
21256 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1;
737 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0;
26298 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0;
121690:>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1;
73828 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0;
63945 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1;
67049 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1;
297004:>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1;
148798:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0;
169782:>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=792f83bb83b6e1025c4e1fc03041fa91
Cycle=Rfe SyncdRW Rfe SyncdRW Rfe SyncdRR Fre
Relax safe558 No
Safe=Fre ACSyncdRW ACSyncdRR
Time safe558 1.75
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe559.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe559
"LwSyncdWW Rfe SyncdRW Rfe SyncdRW Rfe SyncdRR Fre"
{0:r2=x; 0:r4=y; 1:r2=y; 1:r4=z; 2:r2=z; 2:r4=a; 3:r2=a; 3:r4=x;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | sync | sync | stw r1,0(r2) ;
li r3,1 | li r3,1 | lwz r3,0(r4) | lwsync ;
stw r3,0(r4) | stw r3,0(r4) | | li r3,1 ;
| | | stw r3,0(r4) ;
exists (0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r11,1
_litmus_P3_1_: stw r11,0(r9)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r10,1
_litmus_P3_4_: stw r10,0(r2)
Test safe559 Allowed
Histogram (15 states)
1 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=0;
4 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0;
3 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=0;
341 :>0:r1=1; 1:r1=1; 2:r1=1; 2:r3=1;
14998 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0;
5448 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1;
42547 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0;
3913 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0;
34058 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=1;
162046:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0;
201683:>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=1;
179945:>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1;
192346:>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1;
5109 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=1;
157558:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=ac134c58e99342a2b4f39bd6f3635e6f
Cycle=LwSyncdWW Rfe SyncdRW Rfe SyncdRW Rfe SyncdRR Fre
Relax safe559 No
Safe=Fre LwSyncdWW ACSyncdRW ACSyncdRR
Time safe559 2.06
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe560.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe560
"LwSyncsWW Rfe SyncdRW Rfe SyncdRW Rfe SyncdRR Fre"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | li r1,1 ;
sync | sync | sync | stw r1,0(r2) ;
li r3,1 | li r3,1 | lwz r3,0(r4) | lwsync ;
stw r3,0(r4) | stw r3,0(r4) | | li r3,2 ;
| | | stw r3,0(r2) ;
exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r7,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: lwz r8,0(r2)
_litmus_P3_0_: li r9,1
_litmus_P3_1_: stw r9,0(r2)
_litmus_P3_2_: lwsync
_litmus_P3_3_: li r11,2
_litmus_P3_4_: stw r11,0(r2)
Test safe560 Allowed
Histogram (26 states)
1 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=0; z=2;
11 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=1; z=2;
6 :>0:r1=2; 1:r1=1; 2:r1=1; 2:r3=2; z=2;
1 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=1; z=2;
215 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=0; z=2;
320 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=2; z=2;
67 :>0:r1=1; 1:r1=1; 2:r1=0; 2:r3=0; z=2;
897 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=0; z=2;
220 :>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
7742 :>0:r1=1; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
5418 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=1; z=2;
526 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=1; z=2;
27608 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
9390 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
13298 :>0:r1=2; 1:r1=1; 2:r1=0; 2:r3=2; z=2;
8405 :>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=0; z=2;
6720 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=1; z=2;
35562 :>0:r1=0; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
63102 :>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
9427 :>0:r1=1; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
29745 :>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
167986:>0:r1=0; 1:r1=1; 2:r1=0; 2:r3=2; z=2;
184269:>0:r1=2; 1:r1=0; 2:r1=1; 2:r3=2; z=2;
309343:>0:r1=2; 1:r1=0; 2:r1=0; 2:r3=2; z=2;
118542:>0:r1=0; 1:r1=0; 2:r1=0; 2:r3=0; z=2;
1179 :>0:r1=0; 1:r1=1; 2:r1=1; 2:r3=2; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=1 /\ 2:r3=0) is NOT validated
Hash=34d8bf211bb80e5828e9dadc671c21fa
Cycle=LwSyncsWW Rfe SyncdRW Rfe SyncdRW Rfe SyncdRR Fre
Relax safe560 No
Safe=Fre LwSyncsWW ACSyncdRW ACSyncdRR
Time safe560 2.44
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe561.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe561
"Rfe SyncdRW Rfe SyncsRW Rfe SyncdRW Rfe SyncsRW"
{0:r2=y; 0:r4=x; 1:r2=x; 2:r2=x; 2:r4=y; 3:r2=y;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) ;
sync | sync | sync | sync ;
li r3,1 | li r3,2 | li r3,1 | li r3,2 ;
stw r3,0(r4) | stw r3,0(r2) | stw r3,0(r4) | stw r3,0(r2) ;
exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=2 /\ 3:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r10,0(r2)
_litmus_P1_1_: sync
_litmus_P1_2_: li r9,2
_litmus_P1_3_: stw r9,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: lwz r10,0(r2)
_litmus_P3_1_: sync
_litmus_P3_2_: li r9,2
_litmus_P3_3_: stw r9,0(r2)
Test safe561 Allowed
Histogram (56 states)
1 :>0:r1=2; 1:r1=1; 2:r1=0; 3:r1=1; x=2; y=2;
26 :>0:r1=0; 1:r1=0; 2:r1=2; 3:r1=1; x=2; y=2;
7 :>0:r1=2; 1:r1=1; 2:r1=0; 3:r1=0; x=2; y=2;
8 :>0:r1=2; 1:r1=0; 2:r1=0; 3:r1=1; x=2; y=2;
31 :>0:r1=0; 1:r1=0; 2:r1=1; 3:r1=1; x=1; y=2;
100 :>0:r1=0; 1:r1=1; 2:r1=2; 3:r1=1; x=2; y=2;
19 :>0:r1=2; 1:r1=1; 2:r1=2; 3:r1=0; x=2; y=1;
78 :>0:r1=0; 1:r1=0; 2:r1=1; 3:r1=1; x=2; y=2;
12 :>0:r1=0; 1:r1=1; 2:r1=2; 3:r1=0; x=2; y=2;
24 :>0:r1=2; 1:r1=0; 2:r1=2; 3:r1=1; x=1; y=2;
4 :>0:r1=1; 1:r1=1; 2:r1=0; 3:r1=0; x=2; y=1;
494 :>0:r1=1; 1:r1=0; 2:r1=2; 3:r1=1; x=1; y=2;
198 :>0:r1=2; 1:r1=0; 2:r1=0; 3:r1=0; x=2; y=2;
2187 :>0:r1=1; 1:r1=1; 2:r1=0; 3:r1=1; x=2; y=2;
687 :>0:r1=0; 1:r1=1; 2:r1=1; 3:r1=1; x=2; y=2;
480 :>0:r1=2; 1:r1=1; 2:r1=1; 3:r1=0; x=2; y=1;
2014 :>0:r1=0; 1:r1=0; 2:r1=1; 3:r1=0; x=1; y=2;
35 :>0:r1=1; 1:r1=1; 2:r1=0; 3:r1=0; x=2; y=2;
329 :>0:r1=1; 1:r1=0; 2:r1=0; 3:r1=0; x=2; y=1;
7506 :>0:r1=0; 1:r1=1; 2:r1=2; 3:r1=0; x=2; y=1;
1625 :>0:r1=1; 1:r1=0; 2:r1=0; 3:r1=0; x=2; y=2;
5452 :>0:r1=2; 1:r1=0; 2:r1=1; 3:r1=0; x=1; y=1;
1377 :>0:r1=2; 1:r1=0; 2:r1=2; 3:r1=0; x=2; y=1;
14077 :>0:r1=2; 1:r1=1; 2:r1=0; 3:r1=0; x=2; y=1;
2029 :>0:r1=2; 1:r1=0; 2:r1=1; 3:r1=0; x=2; y=1;
6743 :>0:r1=0; 1:r1=0; 2:r1=0; 3:r1=1; x=1; y=2;
8258 :>0:r1=0; 1:r1=0; 2:r1=1; 3:r1=0; x=2; y=2;
7304 :>0:r1=1; 1:r1=0; 2:r1=2; 3:r1=0; x=1; y=2;
6877 :>0:r1=0; 1:r1=1; 2:r1=0; 3:r1=1; x=2; y=2;
5121 :>0:r1=2; 1:r1=0; 2:r1=2; 3:r1=0; x=1; y=2;
36847 :>0:r1=2; 1:r1=0; 2:r1=0; 3:r1=0; x=2; y=1;
6723 :>0:r1=0; 1:r1=0; 2:r1=0; 3:r1=0; x=1; y=1;
13245 :>0:r1=0; 1:r1=1; 2:r1=1; 3:r1=0; x=2; y=2;
2331 :>0:r1=1; 1:r1=0; 2:r1=2; 3:r1=0; x=1; y=1;
1848 :>0:r1=0; 1:r1=0; 2:r1=2; 3:r1=0; x=2; y=2;
9741 :>0:r1=2; 1:r1=0; 2:r1=0; 3:r1=1; x=1; y=2;
37700 :>0:r1=1; 1:r1=0; 2:r1=0; 3:r1=1; x=2; y=2;
6881 :>0:r1=0; 1:r1=1; 2:r1=0; 3:r1=0; x=2; y=1;
7112 :>0:r1=1; 1:r1=0; 2:r1=0; 3:r1=0; x=1; y=1;
27168 :>0:r1=0; 1:r1=0; 2:r1=2; 3:r1=1; x=1; y=2;
10791 :>0:r1=0; 1:r1=1; 2:r1=0; 3:r1=0; x=2; y=2;
95752 :>0:r1=1; 1:r1=0; 2:r1=0; 3:r1=1; x=1; y=2;
16385 :>0:r1=0; 1:r1=0; 2:r1=0; 3:r1=0; x=1; y=2;
27171 :>0:r1=0; 1:r1=0; 2:r1=1; 3:r1=0; x=1; y=1;
11213 :>0:r1=1; 1:r1=0; 2:r1=0; 3:r1=0; x=1; y=2;
36159 :>0:r1=0; 1:r1=0; 2:r1=2; 3:r1=0; x=2; y=1;
31682 :>0:r1=0; 1:r1=0; 2:r1=0; 3:r1=1; x=2; y=2;
37296 :>0:r1=0; 1:r1=0; 2:r1=1; 3:r1=0; x=2; y=1;
100977:>0:r1=2; 1:r1=0; 2:r1=0; 3:r1=0; x=1; y=1;
91619 :>0:r1=0; 1:r1=0; 2:r1=2; 3:r1=0; x=1; y=2;
12557 :>0:r1=2; 1:r1=0; 2:r1=0; 3:r1=0; x=1; y=2;
69508 :>0:r1=2; 1:r1=0; 2:r1=2; 3:r1=0; x=1; y=1;
64529 :>0:r1=0; 1:r1=0; 2:r1=2; 3:r1=0; x=1; y=1;
47815 :>0:r1=0; 1:r1=0; 2:r1=0; 3:r1=0; x=2; y=2;
102439:>0:r1=0; 1:r1=1; 2:r1=1; 3:r1=0; x=2; y=1;
21408 :>0:r1=0; 1:r1=0; 2:r1=0; 3:r1=0; x=2; y=1;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (x=2 /\ y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=2 /\ 3:r1=1) is NOT validated
Hash=251110008660c757ea294cff34ad7d9a
Cycle=Rfe SyncdRW Rfe SyncsRW Rfe SyncdRW Rfe SyncsRW
Relax safe561 No
Safe=ACSyncsRW ACSyncdRW
Time safe561 3.57
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe562.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe562
"Rfe SyncdRW Rfe SyncdRW Rfe SyncsRW"
{0:r2=y; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) ;
sync | sync | sync ;
li r3,1 | li r3,1 | li r3,2 ;
stw r3,0(r4) | stw r3,0(r4) | stw r3,0(r2) ;
exists (y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stw r8,0(r2)
_litmus_P1_0_: lwz r10,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stw r8,0(r2)
_litmus_P2_0_: lwz r10,0(r2)
_litmus_P2_1_: sync
_litmus_P2_2_: li r9,2
_litmus_P2_3_: stw r9,0(r2)
Test safe562 Allowed
Histogram (13 states)
3460 :>0:r1=2; 1:r1=0; 2:r1=1; y=2;
169 :>0:r1=0; 1:r1=1; 2:r1=1; y=2;
8968 :>0:r1=2; 1:r1=1; 2:r1=0; y=1;
9500 :>0:r1=0; 1:r1=1; 2:r1=0; y=2;
17232 :>0:r1=1; 1:r1=0; 2:r1=0; y=1;
41093 :>0:r1=1; 1:r1=0; 2:r1=1; y=2;
260439:>0:r1=2; 1:r1=0; 2:r1=0; y=1;
66386 :>0:r1=0; 1:r1=0; 2:r1=1; y=2;
178816:>0:r1=0; 1:r1=0; 2:r1=0; y=2;
135989:>0:r1=0; 1:r1=0; 2:r1=0; y=1;
59483 :>0:r1=1; 1:r1=0; 2:r1=0; y=2;
200210:>0:r1=0; 1:r1=1; 2:r1=0; y=1;
18255 :>0:r1=2; 1:r1=0; 2:r1=0; y=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (y=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=1) is NOT validated
Hash=73e3b9f8fb84789f5f3fd8de625ba457
Cycle=Rfe SyncdRW Rfe SyncdRW Rfe SyncsRW
Relax safe562 No
Safe=ACSyncsRW ACSyncdRW
Time safe562 1.46
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe563.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe563
"Rfe SyncdRW Rfe SyncdRW Rfe SyncdRW Rfe SyncsRW"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) ;
sync | sync | sync | sync ;
li r3,1 | li r3,1 | li r3,1 | li r3,2 ;
stw r3,0(r4) | stw r3,0(r4) | stw r3,0(r4) | stw r3,0(r2) ;
exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=1 /\ 3:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: lwz r10,0(r2)
_litmus_P3_1_: sync
_litmus_P3_2_: li r9,2
_litmus_P3_3_: stw r9,0(r2)
Test safe563 Allowed
Histogram (30 states)
1 :>0:r1=2; 1:r1=0; 2:r1=1; 3:r1=1; z=2;
1 :>0:r1=0; 1:r1=1; 2:r1=1; 3:r1=0; z=2;
3 :>0:r1=2; 1:r1=1; 2:r1=1; 3:r1=0; z=1;
32 :>0:r1=1; 1:r1=0; 2:r1=1; 3:r1=1; z=2;
89 :>0:r1=2; 1:r1=0; 2:r1=1; 3:r1=0; z=2;
195 :>0:r1=2; 1:r1=1; 2:r1=0; 3:r1=1; z=2;
613 :>0:r1=1; 1:r1=0; 2:r1=1; 3:r1=0; z=2;
884 :>0:r1=1; 1:r1=0; 2:r1=1; 3:r1=0; z=1;
467 :>0:r1=1; 1:r1=1; 2:r1=0; 3:r1=0; z=2;
4132 :>0:r1=2; 1:r1=0; 2:r1=0; 3:r1=1; z=2;
839 :>0:r1=0; 1:r1=1; 2:r1=1; 3:r1=0; z=1;
268 :>0:r1=1; 1:r1=1; 2:r1=0; 3:r1=0; z=1;
162 :>0:r1=2; 1:r1=1; 2:r1=0; 3:r1=0; z=2;
880 :>0:r1=0; 1:r1=0; 2:r1=1; 3:r1=1; z=2;
10108 :>0:r1=0; 1:r1=1; 2:r1=0; 3:r1=1; z=2;
50244 :>0:r1=0; 1:r1=0; 2:r1=0; 3:r1=1; z=2;
14569 :>0:r1=0; 1:r1=0; 2:r1=1; 3:r1=0; z=2;
118522:>0:r1=1; 1:r1=0; 2:r1=0; 3:r1=1; z=2;
54223 :>0:r1=1; 1:r1=0; 2:r1=0; 3:r1=0; z=2;
52762 :>0:r1=0; 1:r1=0; 2:r1=1; 3:r1=0; z=1;
25530 :>0:r1=2; 1:r1=0; 2:r1=0; 3:r1=0; z=2;
90390 :>0:r1=0; 1:r1=0; 2:r1=0; 3:r1=0; z=2;
89765 :>0:r1=0; 1:r1=0; 2:r1=0; 3:r1=0; z=1;
60227 :>0:r1=2; 1:r1=0; 2:r1=1; 3:r1=0; z=1;
24658 :>0:r1=1; 1:r1=0; 2:r1=0; 3:r1=0; z=1;
96788 :>0:r1=0; 1:r1=1; 2:r1=0; 3:r1=0; z=1;
218634:>0:r1=2; 1:r1=0; 2:r1=0; 3:r1=0; z=1;
9233 :>0:r1=2; 1:r1=1; 2:r1=0; 3:r1=0; z=1;
1120 :>0:r1=1; 1:r1=1; 2:r1=0; 3:r1=1; z=2;
74661 :>0:r1=0; 1:r1=1; 2:r1=0; 3:r1=0; z=2;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (z=2 /\ 0:r1=2 /\ 1:r1=1 /\ 2:r1=1 /\ 3:r1=1) is NOT validated
Hash=7c4de38e4535b2ac06fb37c75b38a5e8
Cycle=Rfe SyncdRW Rfe SyncdRW Rfe SyncdRW Rfe SyncsRW
Relax safe563 No
Safe=ACSyncsRW ACSyncdRW
Time safe563 2.29
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe564.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe564
"Rfe SyncdRW Rfe SyncdRW"
{0:r2=y; 0:r4=x; 1:r2=x; 1:r4=y;}
P0 | P1 ;
lwz r1,0(r2) | lwz r1,0(r2) ;
sync | sync ;
li r3,1 | li r3,1 ;
stw r3,0(r4) | stw r3,0(r4) ;
exists (0:r1=1 /\ 1:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
Test safe564 Allowed
Histogram (3 states)
275612:>0:r1=0; 1:r1=1;
351337:>0:r1=1; 1:r1=0;
1373051:>0:r1=0; 1:r1=0;
No
Witnesses
Positive: 0, Negative: 2000000
Condition exists (0:r1=1 /\ 1:r1=1) is NOT validated
Hash=594183612285ea19f22ca74320b9670d
Cycle=Rfe SyncdRW Rfe SyncdRW
Relax safe564 No
Safe=ACSyncdRW
Time safe564 1.16
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe565.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe565
"Rfe SyncdRW Rfe SyncdRW Rfe SyncdRW"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z;}
P0 | P1 | P2 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) ;
sync | sync | sync ;
li r3,1 | li r3,1 | li r3,1 ;
stw r3,0(r4) | stw r3,0(r4) | stw r3,0(r4) ;
exists (0:r1=1 /\ 1:r1=1 /\ 2:r1=1)
Generated assembler
_litmus_P0_0_: lwz r10,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r8,1
_litmus_P0_3_: stw r8,0(r2)
_litmus_P1_0_: lwz r10,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r8,1
_litmus_P1_3_: stw r8,0(r2)
_litmus_P2_0_: lwz r10,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r8,1
_litmus_P2_3_: stw r8,0(r2)
Test safe565 Allowed
Histogram (7 states)
544 :>0:r1=1; 1:r1=0; 2:r1=1;
802 :>0:r1=1; 1:r1=1; 2:r1=0;
162 :>0:r1=0; 1:r1=1; 2:r1=1;
443721:>0:r1=0; 1:r1=0; 2:r1=0;
193384:>0:r1=0; 1:r1=0; 2:r1=1;
172608:>0:r1=0; 1:r1=1; 2:r1=0;
188779:>0:r1=1; 1:r1=0; 2:r1=0;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 1:r1=1 /\ 2:r1=1) is NOT validated
Hash=e9f79bffdc4009277d2d5ec18c343e3a
Cycle=Rfe SyncdRW Rfe SyncdRW Rfe SyncdRW
Relax safe565 No
Safe=ACSyncdRW
Time safe565 1.50
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for src/safe566.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
safe566
"Rfe SyncdRW Rfe SyncdRW Rfe SyncdRW Rfe SyncdRW"
{0:r2=a; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=a;}
P0 | P1 | P2 | P3 ;
lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) ;
sync | sync | sync | sync ;
li r3,1 | li r3,1 | li r3,1 | li r3,1 ;
stw r3,0(r4) | stw r3,0(r4) | stw r3,0(r4) | stw r3,0(r4) ;
exists (0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 3:r1=1)
Generated assembler
_litmus_P0_0_: lwz r8,0(r9)
_litmus_P0_1_: sync
_litmus_P0_2_: li r10,1
_litmus_P0_3_: stw r10,0(r2)
_litmus_P1_0_: lwz r8,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r8,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: lwz r8,0(r9)
_litmus_P3_1_: sync
_litmus_P3_2_: li r10,1
_litmus_P3_3_: stw r10,0(r2)
Test safe566 Allowed
Histogram (14 states)
1 :>0:r1=1; 1:r1=1; 2:r1=0; 3:r1=1;
15 :>0:r1=1; 1:r1=1; 2:r1=1; 3:r1=0;
296 :>0:r1=0; 1:r1=0; 2:r1=1; 3:r1=1;
1294 :>0:r1=1; 1:r1=1; 2:r1=0; 3:r1=0;
399 :>0:r1=0; 1:r1=1; 2:r1=1; 3:r1=0;
1508 :>0:r1=1; 1:r1=0; 2:r1=0; 3:r1=1;
42069 :>0:r1=0; 1:r1=1; 2:r1=0; 3:r1=1;
14459 :>0:r1=1; 1:r1=0; 2:r1=1; 3:r1=0;
142940:>0:r1=0; 1:r1=0; 2:r1=1; 3:r1=0;
156011:>0:r1=1; 1:r1=0; 2:r1=0; 3:r1=0;
206768:>0:r1=0; 1:r1=0; 2:r1=0; 3:r1=1;
252825:>0:r1=0; 1:r1=0; 2:r1=0; 3:r1=0;
56 :>0:r1=0; 1:r1=1; 2:r1=1; 3:r1=1;
181359:>0:r1=0; 1:r1=1; 2:r1=0; 3:r1=0;
No
Witnesses
Positive: 0, Negative: 1000000
Condition exists (0:r1=1 /\ 1:r1=1 /\ 2:r1=1 /\ 3:r1=1) is NOT validated
Hash=43fcee2c783ce4df2d729acef9bebaf0
Cycle=Rfe SyncdRW Rfe SyncdRW Rfe SyncdRW Rfe SyncdRW
Relax safe566 No
Safe=ACSyncdRW
Time safe566 2.08
$Revision: 3163 $
Parameters
#ifndef SIZE_OF_TEST
#define SIZE_OF_TEST 1000000
#endif
#ifndef NUMBER_OF_RUN
#define NUMBER_OF_RUN 1
#endif
#ifndef N_EXE
#define N_EXE (4 < N ? 1 : 4 / N)
#endif
/* gcc options: -Wall -std=gnu99 */
/* barrier: user */
/* tread start/join: changing */
/* memory: indirect */
/* safer: false */
/* preload: true */
/* para: self */
/* changes: false */
/* speedcheck: false */
/* proc used: 4 */
GCCOPTS="-Wall -std=gnu99 "
LITMUSOPTS=
Wed Dec 23 19:22:51 CET 2009