scop.c: extract out expr_collect_access
[pet.git] / tests / cuervo.scop
blobbe49d65883415eae0aa1d01d28ad31885065ae8f
1 start: 52
2 end: 176
3 context: '[n, m] -> {  : n <= 2147483647 and m <= 2147483647 - n and m >= -2147483648
4   and n >= -2147483648 and m <= 2147483647 }'
5 arrays:
6 - context: '{  :  }'
7   extent: '[n, m] -> { A[i0] : i0 >= 0 }'
8   element_type: int
9   element_size: 4
10 - context: '{  :  }'
11   extent: '[n, m] -> { B[i0] : i0 >= 0 }'
12   element_type: int
13   element_size: 4
14 - context: '{  :  }'
15   extent: '[n, m] -> { C[i0] : i0 >= 0 }'
16   element_type: int
17   element_size: 4
18 statements:
19 - line: 6
20   domain: '[n, m] -> { S_0[i, j] : i >= 0 and j <= m and j >= 0 and i <= n }'
21   schedule: '[m, n] -> { S_0[i, j] -> [0, i, j] }'
22   body:
23     type: binary
24     operation: =
25     arguments:
26     - type: access
27       relation: '[n, m] -> { S_0[i, j] -> C[i + j] }'
28       index: '[n, m] -> { S_0[i, j] -> C[(i + j)] }'
29       reference: __pet_ref_0
30       read: 0
31       write: 1
32     - type: binary
33       operation: +
34       arguments:
35       - type: access
36         relation: '[n, m] -> { S_0[i, j] -> C[i + j] }'
37         index: '[n, m] -> { S_0[i, j] -> C[(i + j)] }'
38         reference: __pet_ref_1
39         read: 1
40         write: 0
41       - type: binary
42         operation: '*'
43         arguments:
44         - type: access
45           relation: '[n, m] -> { S_0[i, j] -> A[i] }'
46           index: '[n, m] -> { S_0[i, j] -> A[(i)] }'
47           reference: __pet_ref_2
48           read: 1
49           write: 0
50         - type: access
51           relation: '[n, m] -> { S_0[i, j] -> B[j] }'
52           index: '[n, m] -> { S_0[i, j] -> B[(j)] }'
53           reference: __pet_ref_3
54           read: 1
55           write: 0