push affine conditions into index expressions
[pet.git] / tests / min2.scop
blob36c3231efed3e67b7c48c5846b6815c07b0b1179
1 start: 83
2 end: 166
3 indent: "\t"
4 context: '[N] -> {  : 0 <= N <= 1073741823 }'
5 schedule: '{ domain: "[N] -> { S_1[]; S_0[i] : 0 <= i < N and i <= -11 + 2N; S_2[]
6   }", child: { sequence: [ { filter: "[N] -> { S_0[i] }", child: { schedule: "[N]
7   -> L_0[{ S_0[i] -> [(i)] }]" } }, { filter: "[N] -> { S_1[]; S_2[] }", child: {
8   set: [ { filter: "{ S_1[] }" }, { filter: "{ S_2[] }" } ] } } ] } }'
9 arrays:
10 - context: '[N] -> {  : N >= 0 }'
11   extent: '[N] -> { a[i0] : 0 <= i0 < N }'
12   element_type: int
13   element_size: 4
14 - context: '{  :  }'
15   extent: '[N] -> { i[] }'
16   element_type: int
17   element_size: 4
18 statements:
19 - line: 10
20   domain: '[N] -> { S_0[i] : 0 <= i < N and i <= -11 + 2N }'
21   body:
22     type: expression
23     expr:
24       type: op
25       operation: =
26       arguments:
27       - type: access
28         index: '[N] -> { S_0[i] -> a[(i)] }'
29         reference: __pet_ref_0
30         read: 0
31         write: 1
32       - type: access
33         index: '[N] -> { S_0[i] -> [(i)] }'
34         reference: __pet_ref_1
35         read: 1
36         write: 0
37 - line: -1
38   domain: '[N] -> { S_1[] }'
39   body:
40     type: expression
41     expr:
42       type: op
43       operation: kill
44       arguments:
45       - type: access
46         killed: '[N] -> { S_1[] -> i[] }'
47         index: '[N] -> { S_1[] -> i[] }'
48         reference: __pet_ref_2
49         kill: 1
50 - line: -1
51   domain: '[N] -> { S_2[] }'
52   body:
53     type: expression
54     expr:
55       type: op
56       operation: kill
57       arguments:
58       - type: access
59         killed: '[N] -> { S_2[] -> a[o0] : 0 <= o0 < N }'
60         index: '[N] -> { S_2[] -> a[] }'
61         depth: 1
62         reference: __pet_ref_3
63         kill: 1