update isl for introduction of isl_stat
[pet.git] / tests / struct8.scop
blob2fc38fbe4f162e943997fc8b5ee1faa0a4bcd9d1
1 start: 101
2 end: 225
3 indent: "\t"
4 context: '{  :  }'
5 schedule: '{ domain: "{ S_0[i, j] : i >= 0 and i <= 9 and j >= 0 and j <= 9; S_1[]
6   }", child: { sequence: [ { filter: "{ S_0[i, j] }", child: { schedule: "L_0[{ S_0[i,
7   j] -> [(i)] }]", child: { schedule: "L_1[{ S_0[i, j] -> [(j)] }]" } } }, { filter:
8   "{ S_1[] }" } ] } }'
9 types:
10 - name: s
11   definition: "struct s {\n    struct {\n        struct {\n            int a[10];\n
12     \       } f[10];\n        int b;\n    };\n}"
13 arrays:
14 - context: '{  :  }'
15   extent: '{ s[] }'
16   element_type: struct s
17   element_size: 404
18   element_is_record: 1
19 - context: '{  :  }'
20   extent: '{ s_b[s[] -> b[]] }'
21   element_type: int
22   element_size: 4
23 - context: '{  :  }'
24   extent: '{ s_f[s[] -> f[i0]] : i0 >= 0 and i0 <= 9 }'
25   element_type: <subfield>
26   element_size: 40
27   element_is_record: 1
28 - context: '{  :  }'
29   extent: '{ s_f_a[s_f[s[] -> f[i0]] -> a[i1]] : i0 >= 0 and i0 <= 9 and i1 >= 0 and
30     i1 <= 9 }'
31   element_type: int
32   element_size: 4
33 statements:
34 - line: 17
35   domain: '{ S_0[i, j] : i >= 0 and i <= 9 and j >= 0 and j <= 9 }'
36   body:
37     type: expression
38     expr:
39       type: op
40       operation: =
41       arguments:
42       - type: access
43         index: '{ S_0[i, j] -> s_f_a[s_f[s[] -> f[(i)]] -> a[(j)]] }'
44         reference: __pet_ref_0
45         read: 0
46         write: 1
47       - type: op
48         operation: '*'
49         arguments:
50         - type: access
51           index: '{ S_0[i, j] -> [(i)] }'
52           reference: __pet_ref_1
53           read: 1
54           write: 0
55         - type: access
56           index: '{ S_0[i, j] -> [(j)] }'
57           reference: __pet_ref_2
58           read: 1
59           write: 0
60 - line: 18
61   domain: '{ S_1[] }'
62   body:
63     type: expression
64     expr:
65       type: op
66       operation: =
67       arguments:
68       - type: access
69         index: '{ S_1[] -> s_b[s[] -> b[]] }'
70         reference: __pet_ref_3
71         read: 0
72         write: 1
73       - type: int
74         value: 1