handle pencil independent pragmas
[pet.git] / tests / struct5.scop
blobff2e58a51eb814dfac612c31c6384d438d92a95c
1 start: 77
2 end: 191
3 indent: "\t"
4 context: '{  :  }'
5 types:
6 - name: s
7   definition: "struct s {\n    struct f {\n        int a[10];\n    };\n    struct
8     f f[10];\n}"
9 arrays:
10 - context: '{  :  }'
11   extent: '{ s[] }'
12   element_type: struct s
13   element_size: 400
14   element_is_record: 1
15 - context: '{  :  }'
16   extent: '{ s_f[s[] -> f[i0]] : i0 >= 0 and i0 <= 9 }'
17   element_type: <subfield>
18   element_size: 40
19   element_is_record: 1
20 - context: '{  :  }'
21   extent: '{ s_f_a[s_f[s[] -> f[i0]] -> a[i1]] : i0 >= 0 and i0 <= 9 and i1 >= 0 and
22     i1 <= 9 }'
23   element_type: int
24   element_size: 4
25 statements:
26 - line: 14
27   domain: '{ S_0[i, j] : i >= 0 and i <= 9 and j <= 9 and j >= 0 }'
28   schedule: '{ S_0[i, j] -> [0, i, j] }'
29   body:
30     type: expression
31     expr:
32       type: op
33       operation: =
34       arguments:
35       - type: access
36         relation: '{ S_0[i, j] -> s_f_a[s_f[s[] -> f[i]] -> a[j]] }'
37         index: '{ S_0[i, j] -> s_f_a[s_f[s[] -> f[(i)]] -> a[(j)]] }'
38         reference: __pet_ref_0
39         read: 0
40         write: 1
41       - type: op
42         operation: '*'
43         arguments:
44         - type: access
45           relation: '{ S_0[i, j] -> [i] }'
46           index: '{ S_0[i, j] -> [(i)] }'
47           reference: __pet_ref_1
48           read: 1
49           write: 0
50         - type: access
51           relation: '{ S_0[i, j] -> [j] }'
52           index: '{ S_0[i, j] -> [(j)] }'
53           reference: __pet_ref_2
54           read: 1
55           write: 0