update isl for change in isl_map_subtract
[pet.git] / tests / struct3.scop
blob35fd377e0a81782492c99d0be549887c61e72dee
1 start: 66
2 end: 259
3 indent: "\t"
4 context: '{  :  }'
5 types:
6 - name: s
7   definition: "struct s {\n    int a[30][40];\n}"
8 arrays:
9 - context: '{  :  }'
10   extent: '{ s[i0, i1] : i0 >= 0 and i1 >= 0 and i0 <= 9 and i1 <= 19 }'
11   element_type: struct s
12   element_size: 4800
13   element_is_record: 1
14 - context: '{  :  }'
15   extent: '{ s_a[s[i0, i1] -> a[i2, i3]] : i0 >= 0 and i1 >= 0 and i0 <= 9 and i1
16     <= 19 and i2 >= 0 and i3 >= 0 and i2 <= 29 and i3 <= 39 }'
17   element_type: int
18   element_size: 4
19 statements:
20 - line: 14
21   domain: '{ S_0[i, j, k, l] : i >= 0 and i <= 9 and j <= 19 and j >= 0 and k <= 29
22     and k >= 0 and l <= 39 and l >= 0 }'
23   schedule: '{ S_0[i, j, k, l] -> [0, i, j, k, l] }'
24   body:
25     type: expression
26     expr:
27       type: op
28       operation: =
29       arguments:
30       - type: access
31         index: '{ S_0[i, j, k, l] -> s_a[s[(i), (j)] -> a[(k), (l)]] }'
32         reference: __pet_ref_0
33         read: 0
34         write: 1
35       - type: op
36         operation: +
37         arguments:
38         - type: op
39           operation: +
40           arguments:
41           - type: op
42             operation: +
43             arguments:
44             - type: access
45               index: '{ S_0[i, j, k, l] -> [(i)] }'
46               reference: __pet_ref_1
47               read: 1
48               write: 0
49             - type: access
50               index: '{ S_0[i, j, k, l] -> [(j)] }'
51               reference: __pet_ref_2
52               read: 1
53               write: 0
54           - type: access
55             index: '{ S_0[i, j, k, l] -> [(k)] }'
56             reference: __pet_ref_3
57             read: 1
58             write: 0
59         - type: access
60           index: '{ S_0[i, j, k, l] -> [(l)] }'
61           reference: __pet_ref_4
62           read: 1
63           write: 0