privately export pet_stmt_is_affine_assume
[pet.git] / tests / dec.scop
blob3914a9f8cc143721b7925262442caedd8cde1c5f
1 start: 38
2 end: 109
3 indent: "\t"
4 context: '[N] -> {  : 0 <= N <= 2147483647 }'
5 schedule: '{ domain: "[N] -> { S_4[]; S_0[]; S_3[]; S_1[i] : 0 <= i < N; S_2[i] :
6   0 <= i < N }", child: { sequence: [ { filter: "[N] -> { S_0[] }" }, { filter: "[N]
7   -> { S_1[i]; S_2[i] }", child: { schedule: "[N] -> L_0[{ S_1[i] -> [(-i)]; S_2[i]
8   -> [(-i)] }]", child: { sequence: [ { filter: "[N] -> { S_1[i] }" }, { filter: "[N]
9   -> { S_2[i] }" } ] } } }, { filter: "[N] -> { S_4[]; S_3[] }", child: { set: [ {
10   filter: "{ S_3[] }" }, { filter: "{ S_4[] }" } ] } } ] } }'
11 arrays:
12 - context: '[N] -> {  : N >= 0 }'
13   extent: '[N] -> { a[i0] : 0 <= i0 < N }'
14   element_type: int
15   element_size: 4
16 - context: '{  :  }'
17   extent: '[N] -> { i[] }'
18   element_type: int
19   element_size: 4
20 statements:
21 - line: 7
22   domain: '[N] -> { S_0[] }'
23   body:
24     type: expression
25     expr:
26       type: op
27       operation: =
28       arguments:
29       - type: access
30         index: '[N] -> { S_0[] -> i[] }'
31         reference: __pet_ref_0
32         read: 0
33         write: 1
34       - type: access
35         index: '[N] -> { S_0[] -> [(-1 + N)] }'
36         reference: __pet_ref_1
37         read: 1
38         write: 0
39 - line: 8
40   domain: '[N] -> { S_1[i] : 0 <= i < N }'
41   body:
42     type: expression
43     expr:
44       type: op
45       operation: =
46       arguments:
47       - type: access
48         index: '[N] -> { S_1[i] -> a[(i)] }'
49         reference: __pet_ref_2
50         read: 0
51         write: 1
52       - type: access
53         index: '[N] -> { S_1[i] -> [(i)] }'
54         reference: __pet_ref_3
55         read: 1
56         write: 0
57 - line: 7
58   domain: '[N] -> { S_2[i] : 0 <= i < N }'
59   body:
60     type: expression
61     expr:
62       type: op
63       operation: =
64       arguments:
65       - type: access
66         index: '[N] -> { S_2[i] -> i[] }'
67         reference: __pet_ref_4
68         read: 0
69         write: 1
70       - type: access
71         index: '[N] -> { S_2[i] -> [(-1 + i)] }'
72         reference: __pet_ref_5
73         read: 1
74         write: 0
75 - line: -1
76   domain: '[N] -> { S_3[] }'
77   body:
78     type: expression
79     expr:
80       type: op
81       operation: kill
82       arguments:
83       - type: access
84         killed: '[N] -> { S_3[] -> i[] }'
85         index: '[N] -> { S_3[] -> i[] }'
86         reference: __pet_ref_6
87         kill: 1
88 - line: -1
89   domain: '[N] -> { S_4[] }'
90   body:
91     type: expression
92     expr:
93       type: op
94       operation: kill
95       arguments:
96       - type: access
97         killed: '[N] -> { S_4[] -> a[o0] : 0 <= o0 < N }'
98         index: '[N] -> { S_4[] -> a[] }'
99         depth: 1
100         reference: __pet_ref_7
101         kill: 1