scop.c: extract out expr_collect_access
[pet.git] / tests / break3.scop
blob5bd246292dfa640fd8c6ad33bfa75243160845e5
1 start: 43
2 end: 186
3 context: '{  :  }'
4 arrays:
5 - context: '{  :  }'
6   extent: '{ __pet_test_0[i, j] : i >= 0 and i <= 99 and j >= 0 and j <= 99 }'
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 <= 99 }'
13   element_type: int
14   element_size: 4
15 statements:
16 - line: 10
17   domain: '{ [S_0[i, j] -> [0]] : i >= 0 and i <= 99 and j >= 0 and j <= 99 }'
18   schedule: '{ S_0[i, j] -> [0, i, j, 0] }'
19   body:
20     type: binary
21     operation: =
22     arguments:
23     - type: access
24       relation: '{ S_0[i, j] -> a[i] }'
25       index: '{ S_0[i, j] -> a[(i)] }'
26       reference: __pet_ref_1
27       read: 0
28       write: 1
29     - type: access
30       relation: '{ S_0[i, j] -> [0] }'
31       index: '{ S_0[i, j] -> [(0)] }'
32       reference: __pet_ref_2
33       read: 1
34       write: 0
35   arguments:
36   - type: access
37     relation: '{ S_0[i, j] -> __pet_test_0[i, -1 + j] : j >= 1 }'
38     index: '{ S_0[i, j] -> __pet_test_0[(i), ((-1 + j) : j >= 1)] }'
39     reference: __pet_ref_0
40     read: 1
41     write: 0
42 - line: 11
43   domain: '{ [S_1[i, j] -> [0]] : i >= 0 and i <= 99 and j >= 0 and j <= 99 }'
44   schedule: '{ S_1[i, j] -> [0, i, j, 1, 0] }'
45   body:
46     type: binary
47     operation: =
48     arguments:
49     - type: access
50       relation: '{ S_1[i, j] -> __pet_test_0[i, j] }'
51       index: '{ S_1[i, j] -> __pet_test_0[(i), (j)] }'
52       reference: __pet_ref_4
53       read: 0
54       write: 1
55     - type: call
56       name: f
57   arguments:
58   - type: access
59     relation: '{ S_1[i, j] -> __pet_test_0[i, -1 + j] : j >= 1 }'
60     index: '{ S_1[i, j] -> __pet_test_0[(i), ((-1 + j) : j >= 1)] }'
61     reference: __pet_ref_3
62     read: 1
63     write: 0
64 - line: 13
65   domain: '{ [S_2[i, j] -> [0]] : i >= 0 and i <= 99 and j >= 0 and j <= 99 }'
66   schedule: '{ S_2[i, j] -> [0, i, j, 2] }'
67   body:
68     type: binary
69     operation: =
70     arguments:
71     - type: access
72       relation: '{ S_2[i, j] -> a[i] }'
73       index: '{ S_2[i, j] -> a[(i)] }'
74       reference: __pet_ref_6
75       read: 0
76       write: 1
77     - type: binary
78       operation: +
79       arguments:
80       - type: access
81         relation: '{ S_2[i, j] -> [i] }'
82         index: '{ S_2[i, j] -> [(i)] }'
83         reference: __pet_ref_7
84         read: 1
85         write: 0
86       - type: access
87         relation: '{ S_2[i, j] -> [j] }'
88         index: '{ S_2[i, j] -> [(j)] }'
89         reference: __pet_ref_8
90         read: 1
91         write: 0
92   arguments:
93   - type: access
94     relation: '{ S_2[i, j] -> __pet_test_0[i, j] }'
95     index: '{ S_2[i, j] -> __pet_test_0[(i), (j)] }'
96     reference: __pet_ref_5
97     read: 1
98     write: 0
99 implications:
100 - satisfied: 0
101   extension: '{ __pet_test_0[i, j] -> __pet_test_0[i, j''] : i >= 0 and i <= 99 and
102     j'' <= j and j'' >= 0 and j'' <= 99 }'