mirror of
https://review.haiku-os.org/buildtools
synced 2025-02-23 22:27:43 +01:00
* these are dependencies for gcc 4 Graphite engine build. * CLooG 0.18.0 includes ISL 0.11.1 which is the backend that the build script enables. * PPL is needed by GCC build even if it isn't the chosen backend.
137 lines
3.9 KiB
Plaintext
137 lines
3.9 KiB
Plaintext
# Matmul example, relation representation
|
|
|
|
<OpenScop>
|
|
|
|
# =============================================== Global
|
|
# Backend Language
|
|
C
|
|
|
|
# Context
|
|
CONTEXT
|
|
1 3 0 0 0 1
|
|
1 1 -1 ## N-1 >= 0
|
|
|
|
# Parameter names are provided
|
|
1
|
|
# Parameter names
|
|
<strings>
|
|
N
|
|
</strings>
|
|
|
|
# Number of statements
|
|
2
|
|
|
|
# =============================================== Statement 1
|
|
# Number of relations describing the statement
|
|
3
|
|
|
|
# ---------------------------------------------- 1.1 Domain
|
|
DOMAIN
|
|
4 5 2 0 0 1
|
|
# e/i i j N 1
|
|
1 1 0 0 0 ## i >= 0
|
|
1 -1 0 1 -1 ## -i+N-1 >= 0
|
|
1 0 1 0 0 ## j >= 0
|
|
1 0 -1 1 -1 ## -j+N-1 >= 0
|
|
|
|
# ---------------------------------------------- 1.2 Scattering
|
|
SCATTERING
|
|
5 10 5 2 0 1
|
|
# e/i s1 s2 s3 s4 s5 i j N 1
|
|
0 -1 0 0 0 0 0 0 0 0 ## s1 = 0
|
|
0 0 -1 0 0 0 1 0 0 0 ## s2 = i
|
|
0 0 0 -1 0 0 0 0 0 0 ## s3 = 0
|
|
0 0 0 0 -1 0 0 1 0 0 ## s4 = j
|
|
0 0 0 0 0 -1 0 0 0 0 ## s5 = 0
|
|
|
|
# ---------------------------------------------- 1.3 Access
|
|
WRITE
|
|
3 8 3 2 0 1
|
|
# e/i Arr [1] [2] i j N 1
|
|
0 -1 0 0 0 0 0 1 ## C
|
|
0 0 -1 0 1 0 0 0 ## [i]
|
|
0 0 0 -1 0 1 0 0 ## [j]
|
|
|
|
# ---------------------------------------------- 1.4 Body
|
|
# Statement body is provided
|
|
1
|
|
<body>
|
|
# Number of original iterators
|
|
2
|
|
# Original iterator names
|
|
i j
|
|
# Statement body
|
|
C[i][j] = 0.0;
|
|
</body>
|
|
|
|
# =============================================== Statement 2
|
|
# Number of relations describing the statement
|
|
6
|
|
|
|
# ---------------------------------------------- 2.1 Domain
|
|
DOMAIN
|
|
6 6 3 0 0 1
|
|
# e/i i j k N 1
|
|
1 1 0 0 0 0 ## i >= 0
|
|
1 -1 0 0 1 -1 ## -i+N-1 >= 0
|
|
1 0 1 0 0 0 ## j >= 0
|
|
1 0 -1 0 1 -1 ## -j+N-1 >= 0
|
|
1 0 0 1 0 0 ## k >= 0
|
|
1 0 0 -1 1 -1 ## -k+N-1 >= 0
|
|
|
|
# ---------------------------------------------- 2.2 Scattering
|
|
SCATTERING
|
|
7 13 7 3 0 1
|
|
# e/i s1 s2 s3 s4 s5 s6 s7 i j k N 1
|
|
0 -1 0 0 0 0 0 0 0 0 0 0 0 ## s1 = 0
|
|
0 0 -1 0 0 0 0 0 1 0 0 0 0 ## s2 = i
|
|
0 0 0 -1 0 0 0 0 0 0 0 0 0 ## s3 = 0
|
|
0 0 0 0 -1 0 0 0 0 1 0 0 0 ## s4 = j
|
|
0 0 0 0 0 -1 0 0 0 0 0 0 1 ## s5 = 1
|
|
0 0 0 0 0 0 -1 0 0 0 1 0 0 ## s6 = k
|
|
0 0 0 0 0 0 0 -1 0 0 0 0 0 ## s7 = 0
|
|
|
|
# ---------------------------------------------- 2.3 Access
|
|
WRITE
|
|
3 9 3 3 0 1
|
|
# e/i Arr [1] [2] i j k N 1
|
|
0 -1 0 0 0 0 0 0 1 ## C
|
|
0 0 -1 0 1 0 0 0 0 ## [i]
|
|
0 0 0 -1 0 1 0 0 0 ## [j]
|
|
|
|
READ
|
|
3 9 3 3 0 1
|
|
# e/i Arr [1] [2] i j k N 1
|
|
0 -1 0 0 0 0 0 0 1 ## C
|
|
0 0 -1 0 1 0 0 0 0 ## [i]
|
|
0 0 0 -1 0 1 0 0 0 ## [j]
|
|
|
|
READ
|
|
3 9 3 3 0 1
|
|
# e/i Arr [1] [2] i j k N 1
|
|
0 -1 0 0 0 0 0 0 2 ## A
|
|
0 0 -1 0 1 0 0 0 0 ## [i]
|
|
0 0 0 -1 0 0 1 0 0 ## [k]
|
|
|
|
READ
|
|
3 9 3 3 0 1
|
|
# e/i Arr [1] [2] i j k N 1
|
|
0 -1 0 0 0 0 0 0 3 ## B
|
|
0 0 -1 0 0 0 1 0 0 ## [k]
|
|
0 0 0 -1 0 1 0 0 0 ## [j]
|
|
|
|
# ---------------------------------------------- 2.4 Body
|
|
# Statement body is provided
|
|
1
|
|
<body>
|
|
# Number of original iterators
|
|
3
|
|
# Original iterator names
|
|
i j k
|
|
# Statement body
|
|
C[i][j] = C[i][j] + A[i][k] * B[k][j];
|
|
</body>
|
|
|
|
</OpenScop>
|
|
|