support any affine condition in a while
[pet.git] / tests / while_affine.scop
blobb4a3d035b04871d04e73339e692d7c65fb8547e2
1 context: '[N] -> {  : N >= 0 and N <= 2147483647 }'
2 arrays:
3 - context: '[N] -> {  : N >= 0 }'
4   extent: '[N] -> { a[i0] : i0 >= 0 and i0 <= -1 + N }'
5   element_type: int
6   element_size: 4
7 - context: '[N] -> {  : N >= 0 }'
8   extent: '[N] -> { b[i0] : i0 >= 0 and i0 <= -1 + N }'
9   element_type: int
10   element_size: 4
11 statements:
12 - line: 9
13   domain: '[N] -> { S_0[99, t, j] : j <= -1 + N and t >= 0 and j >= 0 }'
14   schedule: '[N] -> { S_0[i, t, j] -> [0, i, t, 0, j] }'
15   body:
16     type: binary
17     operation: =
18     arguments:
19     - type: access
20       relation: '[N] -> { S_0[i, t, j] -> a[j] }'
21       read: 0
22       write: 1
23     - type: access
24       relation: '[N] -> { S_0[i, t, j] -> [0] }'
25       read: 1
26       write: 0
27 - line: 11
28   domain: '[N] -> { S_1[99, t, j] : j <= -1 + N and t >= 0 and j >= 0 }'
29   schedule: '[N] -> { S_1[i, t, j] -> [0, i, t, 1, j] }'
30   body:
31     type: binary
32     operation: =
33     arguments:
34     - type: access
35       relation: '[N] -> { S_1[i, t, j] -> b[j] }'
36       read: 0
37       write: 1
38     - type: access
39       relation: '[N] -> { S_1[i, t, j] -> a[j] }'
40       read: 1
41       write: 0