buildtools/cloog/test/openscop/matmult.scop
Jerome Duval 5873a060ca imported PPL 0.11.1 and CLooG 0.18.0.
* 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.
2013-04-06 15:10:34 +02:00

141 lines
4.0 KiB
Plaintext

# [File generated by the OpenScop Library 0.8.0]
<OpenScop>
# =============================================== Global
# Language
C
# Context
CONTEXT
1 3 0 0 0 1
# e/i| N | 1
1 1 -1 ## N-1 >= 0
# Parameters are provided
1
<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| c1 c2 c3 c4 c5 | i j | N | 1
0 -1 0 0 0 0 0 0 0 0 ## c1 == 0
0 0 -1 0 0 0 1 0 0 0 ## c2 == i
0 0 0 -1 0 0 0 0 0 0 ## c3 == 0
0 0 0 0 -1 0 0 1 0 0 ## c4 == j
0 0 0 0 0 -1 0 0 0 0 ## c5 == 0
# ---------------------------------------------- 1.3 Access
WRITE
3 8 3 2 0 1
# e/i| A1 [1] [2]| i j | N | 1
0 -1 0 0 0 0 0 1 ## A1
0 0 -1 0 1 0 0 0 ## [1] == i
0 0 0 -1 0 1 0 0 ## [2] == j
# ---------------------------------------------- 1.4 Body
# Statement body is provided
1
<body>
# Number of original iterators
2
# Original iterators
i j
# Body expression
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| c1 c2 c3 c4 c5 c6 c7 | i j k | N | 1
0 -1 0 0 0 0 0 0 0 0 0 0 0 ## c1 == 0
0 0 -1 0 0 0 0 0 1 0 0 0 0 ## c2 == i
0 0 0 -1 0 0 0 0 0 0 0 0 0 ## c3 == 0
0 0 0 0 -1 0 0 0 0 1 0 0 0 ## c4 == j
0 0 0 0 0 -1 0 0 0 0 0 0 1 ## c5 == 1
0 0 0 0 0 0 -1 0 0 0 1 0 0 ## c6 == k
0 0 0 0 0 0 0 -1 0 0 0 0 0 ## c7 == 0
# ---------------------------------------------- 2.3 Access
WRITE
3 9 3 3 0 1
# e/i| A1 [1] [2]| i j k | N | 1
0 -1 0 0 0 0 0 0 1 ## A1
0 0 -1 0 1 0 0 0 0 ## [1] == i
0 0 0 -1 0 1 0 0 0 ## [2] == j
READ
3 9 3 3 0 1
# e/i| A1 [1] [2]| i j k | N | 1
0 -1 0 0 0 0 0 0 1 ## A1
0 0 -1 0 1 0 0 0 0 ## [1] == i
0 0 0 -1 0 1 0 0 0 ## [2] == j
READ
3 9 3 3 0 1
# e/i| A2 [1] [2]| i j k | N | 1
0 -1 0 0 0 0 0 0 2 ## A2
0 0 -1 0 1 0 0 0 0 ## [1] == i
0 0 0 -1 0 0 1 0 0 ## [2] == k
READ
3 9 3 3 0 1
# e/i| A3 [1] [2]| i j k | N | 1
0 -1 0 0 0 0 0 0 3 ## A3
0 0 -1 0 0 0 1 0 0 ## [1] == k
0 0 0 -1 0 1 0 0 0 ## [2] == j
# ---------------------------------------------- 2.4 Body
# Statement body is provided
1
<body>
# Number of original iterators
3
# Original iterators
i j k
# Body expression
C[i][j] = C[i][j] + A[i][k] * B[k][j];
</body>
# =============================================== Extensions
</OpenScop>