push affine conditions into index expressions
[pet.git] / tests / call6.scop
blobb32cb2f9a9d2316d25fd4a45e4693ed38cc071a9
1 start: 149
2 end: 217
3 indent: "\t"
4 context: '[n] -> {  : 4 <= n <= 2147483647 }'
5 schedule: '{ domain: "[n] -> { S_0[]; S_1[] }", child: { sequence: [ { filter: "{
6   S_0[] }" }, { filter: "{ S_1[] }" } ] } }'
7 arrays:
8 - context: '[n] -> {  : n >= 0 }'
9   extent: '[n] -> { A[i0] : 0 <= i0 < n }'
10   element_type: int
11   element_size: 4
12 statements:
13 - line: 10
14   domain: '[n] -> { S_0[] }'
15   body:
16     type: expression
17     expr:
18       type: op
19       operation: assume
20       arguments:
21       - type: access
22         index: '[n] -> { S_0[] -> [(1)] }'
23         reference: __pet_ref_0
24         read: 1
25         write: 0
26 - line: 11
27   domain: '[n] -> { S_1[] }'
28   body:
29     type: expression
30     expr:
31       type: call
32       name: foo
33       arguments:
34       - type: access
35         index: '[n] -> { S_1[] -> [(-1)] }'
36         reference: __pet_ref_1
37         read: 1
38         write: 0
39       - type: access
40         may_read: '[n] -> { S_1[] -> A[o0] : 0 <= o0 <= 3 }'
41         may_write: '[n] -> { S_1[] -> A[o0] : 0 <= o0 <= 3 }'
42         must_write: '[n] -> { S_1[] -> A[o0] : 0 <= o0 <= 3 }'
43         index: '[n] -> { S_1[] -> A[] }'
44         depth: 1
45         reference: __pet_ref_2
46         read: 1
47         write: 1