PetScan::extract_for: explicitly keep track of when iterator is virtual
[pet.git] / tests / inf2.scop
blobabf256ed4f13747e305b8b642c1eb541b0311f6b
1 context: '[N] -> {  : N >= 8 and N <= 16 }'
2 arrays:
3 - context: '[N] -> {  : N >= 0 }'
4   extent: '[N] -> { a[i0] : i0 >= 0 and i0 <= -1 + N }'
5   element_type: int
6 - context: '[N] -> {  : N >= 0 }'
7   extent: '[N] -> { b[i0] : i0 >= 0 and i0 <= -1 + N }'
8   element_type: int
9 statements:
10 - line: 12
11   domain: '[N] -> { S_0[t, j] : t >= 0 and j >= 0 and j <= -1 + N }'
12   schedule: '[N] -> { S_0[t, j] -> [0, t, 0, j] }'
13   body:
14     type: binary
15     operation: =
16     arguments:
17     - type: access
18       relation: '[N] -> { S_0[t, j] -> a[j] }'
19       read: 0
20       write: 1
21     - type: access
22       relation: '[N] -> { S_0[t, j] -> [0] }'
23       read: 1
24       write: 0
25 - line: 14
26   domain: '[N] -> { S_1[t, j] : t >= 0 and j >= 0 and j <= -1 + N }'
27   schedule: '[N] -> { S_1[t, j] -> [0, t, 1, j] }'
28   body:
29     type: binary
30     operation: =
31     arguments:
32     - type: access
33       relation: '[N] -> { S_1[t, j] -> b[j] }'
34       read: 0
35       write: 1
36     - type: access
37       relation: '[N] -> { S_1[t, j] -> a[j] }'
38       read: 1
39       write: 0