keep track of indentation of extracted code
[pet.git] / tests / quasi_affine.scop
blob429fd2c357ecc0e26582b322e1018c6811571820
1 start: 84
2 end: 218
3 indent: "\t"
4 context: '[N, in] -> {  : N <= 2147483647 and N >= 0 and in <= 2147483647 and in >=
5   -2147483648 }'
6 arrays:
7 - context: '[N] -> {  : N >= 0 }'
8   extent: '[N, in] -> { A[i0] : i0 <= -1 + N and i0 >= 0 }'
9   element_type: int
10   element_size: 4
11 - context: '{  :  }'
12   extent: '[N, in] -> { out[] }'
13   element_type: int
14   element_size: 4
15 statements:
16 - line: 14
17   domain: '[N, in] -> { S_0[] }'
18   schedule: '[N] -> { S_0[] -> [0, 0] }'
19   body:
20     type: op
21     operation: =
22     arguments:
23     - type: access
24       relation: '[N, in] -> { S_0[] -> A[0] }'
25       index: '[N, in] -> { S_0[] -> A[(0)] }'
26       reference: __pet_ref_0
27       read: 0
28       write: 1
29     - type: access
30       relation: '[N, in] -> { S_0[] -> [in] }'
31       index: '[N, in] -> { S_0[] -> [(in)] }'
32       reference: __pet_ref_1
33       read: 1
34       write: 0
35 - line: 16
36   domain: '[N, in] -> { S_1[i] : i <= N and i >= 1 }'
37   schedule: '[N] -> { S_1[i] -> [0, 1, i, 0] }'
38   body:
39     type: op
40     operation: =
41     arguments:
42     - type: access
43       relation: '[N, in] -> { S_1[i] -> A[i] }'
44       index: '[N, in] -> { S_1[i] -> A[(i)] }'
45       reference: __pet_ref_2
46       read: 0
47       write: 1
48     - type: call
49       name: f
50       arguments:
51       - type: call
52         name: g
53         arguments:
54         - type: access
55           relation: '[N, in] -> { S_1[i] -> A[o0] : 2o0 >= -1 + i and 2o0 <= i }'
56           index: '[N, in] -> { S_1[i] -> A[(floor((i)/2))] }'
57           reference: __pet_ref_3
58           read: 1
59           write: 0
60 - line: 18
61   domain: '[N, in] -> { S_2[] }'
62   schedule: '[N] -> { S_2[] -> [0, 2] }'
63   body:
64     type: op
65     operation: =
66     arguments:
67     - type: access
68       relation: '[N, in] -> { S_2[] -> out[] }'
69       index: '[N, in] -> { S_2[] -> out[] }'
70       reference: __pet_ref_4
71       read: 0
72       write: 1
73     - type: call
74       name: g
75       arguments:
76       - type: access
77         relation: '[N, in] -> { S_2[] -> A[N] }'
78         index: '[N, in] -> { S_2[] -> A[(N)] }'
79         reference: __pet_ref_5
80         read: 1
81         write: 0