print.c: rename pet_expr_build_ast_expr to pet_expr_access_build_ast_expr
[pet.git] / tests / independent3.scop
blob44b2f9154c39516523dec588fea3d3f3d0189a6e
1 start: 44
2 end: 209
3 indent: "\t"
4 context: '[n] -> {  : 0 <= n <= 1073741824 }'
5 schedule: '{ domain: "[n] -> { S_2[i, j] : 0 <= i < n and 0 <= j < n; S_0[i, j] :
6   0 <= i < n and 0 <= j < n; S_3[i, j] : 0 <= i < n and 0 <= j < n; S_1[i, j] : 0
7   <= i < n and 0 <= j < n }", child: { schedule: "[n] -> L_0[{ S_2[i, j] -> [(i)];
8   S_0[i, j] -> [(i)]; S_3[i, j] -> [(i)]; S_1[i, j] -> [(i)] }]", child: { schedule:
9   "[n] -> L_1[{ S_2[i, j] -> [(j)]; S_0[i, j] -> [(j)]; S_3[i, j] -> [(j)]; S_1[i,
10   j] -> [(j)] }]", child: { sequence: [ { filter: "[n] -> { S_0[i, j] }" }, { filter:
11   "[n] -> { S_1[i, j] }" }, { filter: "[n] -> { S_3[i, j] }" }, { filter: "[n] ->
12   { S_2[i, j] }" } ] } } } }'
13 arrays:
14 - context: '{  :  }'
15   extent: '[n] -> { t[] }'
16   element_type: float
17   element_size: 4
18   declared: 1
19 - context: '[n] -> {  : n >= 0 }'
20   extent: '[n] -> { A[i0, i1] : i0 >= 0 and 0 <= i1 < n }'
21   element_type: int
22   element_size: 4
23 - context: '[n] -> {  : n >= 0 }'
24   extent: '[n] -> { B[i0, i1] : i0 >= 0 and 0 <= i1 < n }'
25   element_type: int
26   element_size: 4
27 statements:
28 - line: 7
29   domain: '[n] -> { S_0[i, j] : 0 <= i < n and 0 <= j < n }'
30   body:
31     type: expression
32     expr:
33       type: op
34       operation: kill
35       arguments:
36       - type: access
37         killed: '[n] -> { S_0[i, j] -> t[] }'
38         index: '[n] -> { S_0[i, j] -> t[] }'
39         reference: __pet_ref_0
40         kill: 1
41 - line: 7
42   domain: '[n] -> { S_1[i, j] : 0 <= i < n and 0 <= j < n }'
43   body:
44     type: expression
45     expr:
46       type: op
47       operation: =
48       arguments:
49       - type: access
50         index: '[n] -> { S_1[i, j] -> t[] }'
51         reference: __pet_ref_1
52         read: 0
53         write: 1
54       - type: access
55         index: '[n] -> { S_1[i, j] -> [(i + j)] }'
56         reference: __pet_ref_2
57         read: 1
58         write: 0
59 - line: 8
60   domain: '[n] -> { S_3[i, j] : 0 <= i < n and 0 <= j < n }'
61   body:
62     type: expression
63     expr:
64       type: op
65       operation: =
66       arguments:
67       - type: access
68         index: '[n] -> { [S_3[i, j] -> [i2]] -> B[(i), ((i2) : i2 >= 0)] }'
69         reference: __pet_ref_4
70         read: 0
71         write: 1
72         arguments:
73         - type: access
74           index: '[n] -> { S_3[i, j] -> A[(i), (j)] }'
75           reference: __pet_ref_3
76           read: 1
77           write: 0
78       - type: access
79         index: '[n] -> { S_3[i, j] -> t[] }'
80         reference: __pet_ref_5
81         read: 1
82         write: 0
83 - line: 7
84   domain: '[n] -> { S_2[i, j] : 0 <= i < n and 0 <= j < n }'
85   body:
86     type: expression
87     expr:
88       type: op
89       operation: kill
90       arguments:
91       - type: access
92         killed: '[n] -> { S_2[i, j] -> t[] }'
93         index: '[n] -> { S_2[i, j] -> t[] }'
94         reference: __pet_ref_6
95         kill: 1
96 independences:
97 - filter: '[n] -> { S_2[i, j] -> S_2[i'' = i, j''] : j'' > j; S_0[i, j] -> S_1[i''
98     = i, j''] : j'' > j; S_2[i, j] -> S_1[i'' = i, j''] : j'' > j; S_3[i, j] -> S_1[i''
99     = i, j''] : j'' > j; S_0[i, j] -> S_2[i'' = i, j''] : j'' > j; S_3[i, j] -> S_2[i''
100     = i, j''] : j'' > j; S_1[i, j] -> S_0[i'' = i, j''] : j'' > j; S_2[i, j] -> S_0[i''
101     = i, j''] : j'' > j; S_0[i, j] -> S_0[i'' = i, j''] : j'' > j; S_0[i, j] -> S_3[i''
102     = i, j''] : j'' > j; S_1[i, j] -> S_2[i'' = i, j''] : j'' > j; S_3[i, j] -> S_0[i''
103     = i, j''] : j'' > j; S_3[i, j] -> S_3[i'' = i, j''] : j'' > j; S_1[i, j] -> S_3[i''
104     = i, j''] : j'' > j; S_1[i, j] -> S_1[i'' = i, j''] : j'' > j; S_2[i, j] -> S_3[i''
105     = i, j''] : j'' > j }'
106   local: '{ t[] }'