keep track of indentation of extracted code
[pet.git] / tests / matmul.scop
blob40900dc94200927a53adedaef133fdc3f25cf67d
1 start: 95
2 end: 277
3 indent: "\t"
4 context: '[N, K, M] -> {  : K >= 0 and N >= 0 and N <= 2147483647 and K <= 2147483647
5   and M <= 2147483647 and M >= -2147483648 }'
6 arrays:
7 - context: '[K] -> {  : K >= 0 }'
8   extent: '[N, K, M] -> { A[i0, i1] : i1 >= 0 and i0 >= 0 and i1 <= -1 + K }'
9   element_type: float
10   element_size: 4
11 - context: '[N] -> {  : N >= 0 }'
12   extent: '[N, K, M] -> { B[i0, i1] : i1 >= 0 and i0 >= 0 and i1 <= -1 + N }'
13   element_type: float
14   element_size: 4
15 - context: '[N] -> {  : N >= 0 }'
16   extent: '[N, K, M] -> { C[i0, i1] : i1 >= 0 and i0 >= 0 and i1 <= -1 + N }'
17   element_type: float
18   element_size: 4
19   live_out: 1
20 statements:
21 - line: 9
22   domain: '[N, K, M] -> { S_0[i, j] : j <= -1 + N and j >= 0 and i <= -1 + M and i
23     >= 0 }'
24   schedule: '[M, N] -> { S_0[i, j] -> [0, i, j, 0] }'
25   body:
26     type: op
27     operation: =
28     arguments:
29     - type: access
30       relation: '[N, K, M] -> { S_0[i, j] -> C[i, j] }'
31       index: '[N, K, M] -> { S_0[i, j] -> C[(i), (j)] }'
32       reference: __pet_ref_0
33       read: 0
34       write: 1
35     - type: int
36       value: 0
37 - line: 11
38   domain: '[N, K, M] -> { S_1[i, j, k] : k <= -1 + K and k >= 0 and j <= -1 + N and
39     j >= 0 and i <= -1 + M and i >= 0 }'
40   schedule: '[M, N, K] -> { S_1[i, j, k] -> [0, i, j, 1, k] }'
41   body:
42     type: op
43     operation: +=
44     arguments:
45     - type: access
46       relation: '[N, K, M] -> { S_1[i, j, k] -> C[i, j] }'
47       index: '[N, K, M] -> { S_1[i, j, k] -> C[(i), (j)] }'
48       reference: __pet_ref_1
49       read: 1
50       write: 1
51     - type: op
52       operation: '*'
53       arguments:
54       - type: access
55         relation: '[N, K, M] -> { S_1[i, j, k] -> A[i, k] }'
56         index: '[N, K, M] -> { S_1[i, j, k] -> A[(i), (k)] }'
57         reference: __pet_ref_2
58         read: 1
59         write: 0
60       - type: access
61         relation: '[N, K, M] -> { S_1[i, j, k] -> B[k, j] }'
62         index: '[N, K, M] -> { S_1[i, j, k] -> B[(k), (j)] }'
63         reference: __pet_ref_3
64         read: 1
65         write: 0