pet_codegen.c: add missing include
[pet.git] / tests / inf.scop
bloba02e6f7312dd09eb4fa053f6d40689f467991b25
1 start: 74
2 end: 207
3 indent: '    '
4 context: '[N] -> {  : 8 <= N <= 16 }'
5 schedule: '{ domain: "[N] -> { S_3[t] : t >= 0; S_4[t, j] : t >= 0 and 0 <= j < N;
6   S_7[]; S_2[t, j] : t >= 0 and 0 <= j < N; S_6[]; S_1[t, j] : t >= 0 and 0 <= j <
7   N; S_8[]; S_0[t] : t >= 0; S_5[t, j] : t >= 0 and 0 <= j < N }", child: { sequence:
8   [ { filter: "[N] -> { S_3[t]; S_4[t, j]; S_2[t, j]; S_1[t, j]; S_0[t]; S_5[t, j]
9   }", child: { schedule: "[N] -> L_0[{ S_3[t] -> [(t)]; S_4[t, j] -> [(t)]; S_2[t,
10   j] -> [(t)]; S_1[t, j] -> [(t)]; S_0[t] -> [(t)]; S_5[t, j] -> [(t)] }]", child:
11   { sequence: [ { filter: "[N] -> { S_0[t] }" }, { filter: "[N] -> { S_2[t, j]; S_1[t,
12   j] }", child: { schedule: "[N] -> L_1[{ S_2[t, j] -> [(j)]; S_1[t, j] -> [(j)] }]",
13   child: { sequence: [ { filter: "[N] -> { S_1[t, j] }" }, { filter: "[N] -> { S_2[t,
14   j] }" } ] } } }, { filter: "[N] -> { S_3[t] }" }, { filter: "[N] -> { S_4[t, j];
15   S_5[t, j] }", child: { schedule: "[N] -> L_2[{ S_4[t, j] -> [(j)]; S_5[t, j] ->
16   [(j)] }]", child: { sequence: [ { filter: "[N] -> { S_4[t, j] }" }, { filter: "[N]
17   -> { S_5[t, j] }" } ] } } } ] } } }, { filter: "[N] -> { S_7[]; S_6[]; S_8[] }",
18   child: { set: [ { filter: "{ S_6[] }" }, { filter: "{ S_7[] }" }, { filter: "{ S_8[]
19   }" } ] } } ] } }'
20 arrays:
21 - context: '[N] -> {  : N >= 0 }'
22   extent: '[N] -> { a[i0] : 0 <= i0 < N }'
23   element_type: int
24   element_size: 4
25 - context: '[N] -> {  : N >= 0 }'
26   extent: '[N] -> { b[i0] : 0 <= i0 < N }'
27   element_type: int
28   element_size: 4
29 - context: '{  :  }'
30   extent: '[N] -> { j[] }'
31   element_type: int
32   element_size: 4
33 statements:
34 - line: 11
35   domain: '[N] -> { S_0[t] : t >= 0 }'
36   body:
37     type: expression
38     expr:
39       type: op
40       operation: =
41       arguments:
42       - type: access
43         index: '[N] -> { S_0[t] -> j[] }'
44         reference: __pet_ref_0
45         read: 0
46         write: 1
47       - type: int
48         value: 0
49 - line: 12
50   domain: '[N] -> { S_1[t, j] : t >= 0 and 0 <= j < N }'
51   body:
52     type: expression
53     expr:
54       type: op
55       operation: =
56       arguments:
57       - type: access
58         index: '[N] -> { S_1[t, j] -> a[(j)] }'
59         reference: __pet_ref_1
60         read: 0
61         write: 1
62       - type: int
63         value: 0
64 - line: 11
65   domain: '[N] -> { S_2[t, j] : t >= 0 and 0 <= j < N }'
66   body:
67     type: expression
68     expr:
69       type: op
70       operation: =
71       arguments:
72       - type: access
73         index: '[N] -> { S_2[t, j] -> j[] }'
74         reference: __pet_ref_2
75         read: 0
76         write: 1
77       - type: access
78         index: '[N] -> { S_2[t, j] -> [(1 + j)] }'
79         reference: __pet_ref_3
80         read: 1
81         write: 0
82 - line: 13
83   domain: '[N] -> { S_3[t] : t >= 0 }'
84   body:
85     type: expression
86     expr:
87       type: op
88       operation: =
89       arguments:
90       - type: access
91         index: '[N] -> { S_3[t] -> j[] }'
92         reference: __pet_ref_4
93         read: 0
94         write: 1
95       - type: int
96         value: 0
97 - line: 14
98   domain: '[N] -> { S_4[t, j] : t >= 0 and 0 <= j < N }'
99   body:
100     type: expression
101     expr:
102       type: op
103       operation: =
104       arguments:
105       - type: access
106         index: '[N] -> { S_4[t, j] -> b[(j)] }'
107         reference: __pet_ref_5
108         read: 0
109         write: 1
110       - type: access
111         index: '[N] -> { S_4[t, j] -> a[(j)] }'
112         reference: __pet_ref_6
113         read: 1
114         write: 0
115 - line: 13
116   domain: '[N] -> { S_5[t, j] : t >= 0 and 0 <= j < N }'
117   body:
118     type: expression
119     expr:
120       type: op
121       operation: =
122       arguments:
123       - type: access
124         index: '[N] -> { S_5[t, j] -> j[] }'
125         reference: __pet_ref_7
126         read: 0
127         write: 1
128       - type: access
129         index: '[N] -> { S_5[t, j] -> [(1 + j)] }'
130         reference: __pet_ref_8
131         read: 1
132         write: 0
133 - line: -1
134   domain: '[N] -> { S_6[] }'
135   body:
136     type: expression
137     expr:
138       type: op
139       operation: kill
140       arguments:
141       - type: access
142         killed: '[N] -> { S_6[] -> j[] }'
143         index: '[N] -> { S_6[] -> j[] }'
144         reference: __pet_ref_9
145         kill: 1
146 - line: -1
147   domain: '[N] -> { S_7[] }'
148   body:
149     type: expression
150     expr:
151       type: op
152       operation: kill
153       arguments:
154       - type: access
155         killed: '[N] -> { S_7[] -> a[o0] : 0 <= o0 < N }'
156         index: '[N] -> { S_7[] -> a[] }'
157         depth: 1
158         reference: __pet_ref_10
159         kill: 1
160 - line: -1
161   domain: '[N] -> { S_8[] }'
162   body:
163     type: expression
164     expr:
165       type: op
166       operation: kill
167       arguments:
168       - type: access
169         killed: '[N] -> { S_8[] -> b[o0] : 0 <= o0 < N }'
170         index: '[N] -> { S_8[] -> b[] }'
171         depth: 1
172         reference: __pet_ref_11
173         kill: 1