Mon Dec 28 14:17:12 CET 2009
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for ./src/podrw000.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
podrw000
"Wse SyncdWW Rfe PodRW"
{0:r2=y; 0:r4=x; 1:r2=x; 1:r4=y;}
P0 | P1 ;
li r1,2 | lwz r1,0(r2) ;
stw r1,0(r2) | li r3,1 ;
sync | stw r3,0(r4) ;
li r3,1 | ;
stw r3,0(r4) | ;
exists (y=2 /\ 1: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 r11,0(r9)
_litmus_P1_1_: li r10,1
_litmus_P1_2_: stw r10,0(r2)
Test podrw000 Allowed
Histogram (3 states)
4686537:>1:r1=1; y=1;
37205648:>1:r1=0; y=2;
38107815:>1:r1=0; y=1;
No
Witnesses
Positive: 0, Negative: 80000000
Condition exists (y=2 /\ 1:r1=1) is NOT validated
Hash=cdbca6b42640c1c580bfff55409bff0a
Cycle=Wse SyncdWW Rfe PodRW
Relax podrw000 No PodRW
Safe=Wse BCSyncdWW
Time podrw000 34.21
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for ./src/podrw001.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
podrw001
"Wse SyncdWW Rfe PodRW Wse SyncdWW Rfe PodRW"
{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 ;
li r1,2 | lwz r1,0(r2) | li r1,2 | lwz r1,0(r2) ;
stw r1,0(r2) | li r3,1 | stw r1,0(r2) | li r3,1 ;
sync | stw r3,0(r4) | sync | stw r3,0(r4) ;
li r3,1 | | li r3,1 | ;
stw r3,0(r4) | | stw r3,0(r4) | ;
exists (a=2 /\ y=2 /\ 1:r1=1 /\ 3: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 r11,0(r9)
_litmus_P1_1_: li r10,1
_litmus_P1_2_: 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_: lwz r11,0(r9)
_litmus_P3_1_: li r10,1
_litmus_P3_2_: stw r10,0(r2)
Test podrw001 Allowed
Histogram (15 states)
565 :>1:r1=1; 3:r1=1; a=2; y=1;
364 :>1:r1=1; 3:r1=1; a=1; y=2;
1527 :>1:r1=0; 3:r1=1; a=2; y=2;
2649 :>1:r1=1; 3:r1=0; a=2; y=2;
272496:>1:r1=0; 3:r1=1; a=2; y=1;
249898:>1:r1=1; 3:r1=0; a=1; y=2;
283640:>1:r1=0; 3:r1=1; a=1; y=2;
6533967:>1:r1=1; 3:r1=0; a=1; y=1;
4724698:>1:r1=0; 3:r1=0; a=2; y=2;
452331:>1:r1=1; 3:r1=0; a=2; y=1;
4048799:>1:r1=0; 3:r1=0; a=1; y=1;
7988603:>1:r1=0; 3:r1=0; a=1; y=2;
9018602:>1:r1=0; 3:r1=0; a=2; y=1;
1038265:>1:r1=1; 3:r1=1; a=1; y=1;
5383596:>1:r1=0; 3:r1=1; a=1; y=1;
No
Witnesses
Positive: 0, Negative: 40000000
Condition exists (a=2 /\ y=2 /\ 1:r1=1 /\ 3:r1=1) is NOT validated
Hash=1bf24e0898e097d6dee5319da0f77d12
Cycle=Wse SyncdWW Rfe PodRW Wse SyncdWW Rfe PodRW
Relax podrw001 No PodRW
Safe=Wse BCSyncdWW
Time podrw001 64.45
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for ./src/podrw002.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
podrw002
"Wse SyncdWW Rfe SyncdRW Rfe PodRW"
{0:r2=z; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z;}
P0 | P1 | P2 ;
li r1,2 | lwz r1,0(r2) | lwz r1,0(r2) ;
stw r1,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 (z=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 r11,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r11,0(r9)
_litmus_P2_1_: li r10,1
_litmus_P2_2_: stw r10,0(r2)
Test podrw002 Allowed
Histogram (7 states)
256823:>1:r1=0; 2:r1=1; z=2;
20511 :>1:r1=1; 2:r1=1; z=1;
8216456:>1:r1=0; 2:r1=1; z=1;
11552286:>1:r1=0; 2:r1=0; z=1;
13779402:>1:r1=0; 2:r1=0; z=2;
6045448:>1:r1=1; 2:r1=0; z=1;
129074:>1:r1=1; 2:r1=0; z=2;
No
Witnesses
Positive: 0, Negative: 40000000
Condition exists (z=2 /\ 1:r1=1 /\ 2:r1=1) is NOT validated
Hash=63fda5260d684056b54f65990cd3e6c9
Cycle=Wse SyncdWW Rfe SyncdRW Rfe PodRW
Relax podrw002 No PodRW
Safe=Wse BCSyncdWW BCSyncdRW
Time podrw002 42.38
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for ./src/podrw003.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
podrw003
"Wse SyncdWW Rfe SyncdRW Rfe SyncdRW Rfe PodRW"
{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 ;
li r1,2 | lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) ;
stw r1,0(r2) | sync | sync | li r3,1 ;
sync | li r3,1 | li r3,1 | stw r3,0(r4) ;
li r3,1 | stw r3,0(r4) | stw r3,0(r4) | ;
stw r3,0(r4) | | | ;
exists (a=2 /\ 1:r1=1 /\ 2:r1=1 /\ 3: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 r11,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r11,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: lwz r11,0(r9)
_litmus_P3_1_: li r10,1
_litmus_P3_2_: stw r10,0(r2)
Test podrw003 Allowed
Histogram (15 states)
324 :>1:r1=0; 2:r1=1; 3:r1=1; a=2;
716 :>1:r1=1; 2:r1=0; 3:r1=1; a=2;
83793 :>1:r1=0; 2:r1=1; 3:r1=1; a=1;
77 :>1:r1=1; 2:r1=1; 3:r1=1; a=1;
912 :>1:r1=1; 2:r1=1; 3:r1=0; a=2;
522196:>1:r1=0; 2:r1=0; 3:r1=1; a=2;
65838 :>1:r1=1; 2:r1=1; 3:r1=0; a=1;
2835628:>1:r1=0; 2:r1=1; 3:r1=0; a=2;
6052972:>1:r1=1; 2:r1=0; 3:r1=0; a=1;
4868982:>1:r1=0; 2:r1=1; 3:r1=0; a=1;
6872271:>1:r1=0; 2:r1=0; 3:r1=1; a=1;
6237179:>1:r1=0; 2:r1=0; 3:r1=0; a=1;
11384533:>1:r1=0; 2:r1=0; 3:r1=0; a=2;
284968:>1:r1=1; 2:r1=0; 3:r1=0; a=2;
789611:>1:r1=1; 2:r1=0; 3:r1=1; a=1;
No
Witnesses
Positive: 0, Negative: 40000000
Condition exists (a=2 /\ 1:r1=1 /\ 2:r1=1 /\ 3:r1=1) is NOT validated
Hash=3ecc0c0abdbd62deb73054a63399a7c3
Cycle=Wse SyncdWW Rfe SyncdRW Rfe SyncdRW Rfe PodRW
Relax podrw003 No PodRW
Safe=Wse BCSyncdWW BCSyncdRW
Time podrw003 59.07
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Results for ./src/podrw004.litmus %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PPC
podrw004
"Wse SyncdWW Rfe SyncdRW Rfe SyncdRW Rfe SyncdRW Rfe PodRW"
{0:r2=b; 0:r4=x; 1:r2=x; 1:r4=y; 2:r2=y; 2:r4=z; 3:r2=z; 3:r4=a; 4:r2=a; 4:r4=b;}
P0 | P1 | P2 | P3 | P4 ;
li r1,2 | lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) | lwz r1,0(r2) ;
stw r1,0(r2) | sync | sync | sync | li r3,1 ;
sync | li r3,1 | li r3,1 | li r3,1 | stw r3,0(r4) ;
li r3,1 | stw r3,0(r4) | stw r3,0(r4) | stw r3,0(r4) | ;
stw r3,0(r4) | | | | ;
exists (b=2 /\ 1:r1=1 /\ 2:r1=1 /\ 3:r1=1 /\ 4: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 r11,0(r9)
_litmus_P1_1_: sync
_litmus_P1_2_: li r10,1
_litmus_P1_3_: stw r10,0(r2)
_litmus_P2_0_: lwz r11,0(r9)
_litmus_P2_1_: sync
_litmus_P2_2_: li r10,1
_litmus_P2_3_: stw r10,0(r2)
_litmus_P3_0_: lwz r11,0(r9)
_litmus_P3_1_: sync
_litmus_P3_2_: li r10,1
_litmus_P3_3_: stw r10,0(r2)
_litmus_P4_0_: lwz r11,0(r9)
_litmus_P4_1_: li r10,1
_litmus_P4_2_: stw r10,0(r2)
$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 -O2 */
/* 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 -O2"
LITMUSOPTS=-r 40
Tue Dec 29 15:05:58 CET 2009