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