scop.c: extract out expr_collect_access
[pet.git] / tests / data_dependent2.scop
blobf34c029db1fdc19c035ebc8720e2755085447816
1 start: 59
2 end: 206
3 context: '{  :  }'
4 arrays:
5 - context: '{  :  }'
6   extent: '{ __pet_test_0[i] : i >= 0 and i <= 9 }'
7   value_bounds: '{ [i0] : i0 >= 0 and i0 <= 1 }'
8   element_type: int
9   element_size: 4
10   uniquely_defined: 1
11 - context: '{  :  }'
12   extent: '{ a[i0] : i0 >= 0 and i0 <= 9 }'
13   element_type: int
14   element_size: 4
15 - context: '{  :  }'
16   extent: '{ N[] }'
17   element_type: int
18   element_size: 4
19 statements:
20 - line: 10
21   domain: '{ S_0[] }'
22   schedule: '{ S_0[] -> [0] }'
23   body:
24     type: binary
25     operation: =
26     arguments:
27     - type: access
28       relation: '{ S_0[] -> N[] }'
29       index: '{ S_0[] -> N[] }'
30       reference: __pet_ref_0
31       read: 0
32       write: 1
33     - type: access
34       relation: '{ S_0[] -> [5] }'
35       index: '{ S_0[] -> [(5)] }'
36       reference: __pet_ref_1
37       read: 1
38       write: 0
39 - line: 12
40   domain: '{ S_1[i] : i >= 0 and i <= 9 }'
41   schedule: '{ S_1[i] -> [1, i, 0] }'
42   body:
43     type: binary
44     operation: =
45     arguments:
46     - type: access
47       relation: '{ S_1[i] -> __pet_test_0[i] }'
48       index: '{ S_1[i] -> __pet_test_0[(i)] }'
49       reference: __pet_ref_2
50       read: 0
51       write: 1
52     - type: binary
53       operation: <=
54       arguments:
55       - type: access
56         relation: '{ S_1[i] -> N[] }'
57         index: '{ S_1[i] -> N[] }'
58         reference: __pet_ref_3
59         read: 1
60         write: 0
61       - type: access
62         relation: '{ S_1[i] -> [4] }'
63         index: '{ S_1[i] -> [(4)] }'
64         reference: __pet_ref_4
65         read: 1
66         write: 0
67 - line: 14
68   domain: '{ [S_2[i, j] -> [1]] : i >= 0 and i <= 9 and j >= 0 and j <= 9 }'
69   schedule: '{ S_2[i, j] -> [1, i, 1, j, 0] }'
70   body:
71     type: binary
72     operation: =
73     arguments:
74     - type: access
75       relation: '{ S_2[i, j] -> a[j] }'
76       index: '{ S_2[i, j] -> a[(j)] }'
77       reference: __pet_ref_6
78       read: 0
79       write: 1
80     - type: binary
81       operation: +
82       arguments:
83       - type: binary
84         operation: +
85         arguments:
86         - type: access
87           relation: '{ S_2[i, j] -> [5] }'
88           index: '{ S_2[i, j] -> [(5)] }'
89           reference: __pet_ref_7
90           read: 1
91           write: 0
92         - type: access
93           relation: '{ S_2[i, j] -> [j] }'
94           index: '{ S_2[i, j] -> [(j)] }'
95           reference: __pet_ref_8
96           read: 1
97           write: 0
98       - type: access
99         relation: '{ S_2[i, j] -> N[] }'
100         index: '{ S_2[i, j] -> N[] }'
101         reference: __pet_ref_9
102         read: 1
103         write: 0
104   arguments:
105   - type: access
106     relation: '{ S_2[i, j] -> __pet_test_0[i] }'
107     index: '{ S_2[i, j] -> __pet_test_0[(i)] }'
108     reference: __pet_ref_5
109     read: 1
110     write: 0
111 - line: 15
112   domain: '{ [S_3[i, j] -> [1]] : i >= 0 and i <= 9 and j >= 0 and j <= 9 }'
113   schedule: '{ S_3[i, j] -> [1, i, 1, j, 1] }'
114   body:
115     type: binary
116     operation: =
117     arguments:
118     - type: access
119       relation: '{ S_3[i, j] -> N[] }'
120       index: '{ S_3[i, j] -> N[] }'
121       reference: __pet_ref_11
122       read: 0
123       write: 1
124     - type: call
125       name: f
126   arguments:
127   - type: access
128     relation: '{ S_3[i, j] -> __pet_test_0[i] }'
129     index: '{ S_3[i, j] -> __pet_test_0[(i)] }'
130     reference: __pet_ref_10
131     read: 1
132     write: 0