diff options
Diffstat (limited to 'test-chill/test-cases/examples/chill')
32 files changed, 0 insertions, 703 deletions
diff --git a/test-chill/test-cases/examples/chill/gemm.c b/test-chill/test-cases/examples/chill/gemm.c deleted file mode 100644 index 2c90ea5..0000000 --- a/test-chill/test-cases/examples/chill/gemm.c +++ /dev/null @@ -1,25 +0,0 @@ - -#ifndef N -#define N 512 -#endif - -/* -<test name=gemm define="{'N':512}"> -procedure int gemm( -    in  float[N][N] a = matrix([,], lambda i,j: random(2,-2)), -    in  float[N][N] b = matrix([,], lambda i,j: random(2,-2)), -    out float[N][N] c = matrix([,], lambda i,j: 0)) -</test> -*/ -int gemm(float a[N][N], float b[N][N], float c[N][N]) { -	int i, j, k; -	int n = N; -	for (j = 0; j < n; j++) -		for (k = 0; k < n; k++) -			for (i = 0; i < n; i++) { -				c[i][j] = c[i][j] + a[i][k] * b[k][j]; -			} - -	return 0; -} - diff --git a/test-chill/test-cases/examples/chill/gemm.script b/test-chill/test-cases/examples/chill/gemm.script deleted file mode 100644 index 393f236..0000000 --- a/test-chill/test-cases/examples/chill/gemm.script +++ /dev/null @@ -1,31 +0,0 @@ -#matrix multiply large array size for intel machine -source: gemm.c -procedure: gemm -format: rose -loop: 0 - -TI = 128 -TJ = 8 -TK = 512 -UI = 2 -UJ = 2 - -permute([3,1,2]) -tile(0,2,TJ) -#print space -tile(0,2,TI) -#print space -tile(0,5,TK) -#print space - -datacopy(0,3,a,false,1) -#print space - -datacopy(0,4,b) -print -unroll(0,4,UI)#print space -print  -unroll(0,5,UJ) -#print space -print - diff --git a/test-chill/test-cases/examples/chill/gemv.c b/test-chill/test-cases/examples/chill/gemv.c deleted file mode 100644 index 39b083c..0000000 --- a/test-chill/test-cases/examples/chill/gemv.c +++ /dev/null @@ -1,21 +0,0 @@ -#ifndef N -#define N 512 -#endif - -/* -<test name=gemv define="{'N':512}"> -procedure int gemv( -    out float[N]    a = matrix([],  lambda i:   random(2,-2)), -    in  float[N]    b = matrix([],  lambda i:   random(2,-2)), -    in  float[N][N] c = matrix([,], lambda i,j: random(2,-2))) -</test> -*/ -int gemv(float a[N], float b[N], float c[N][N]) { -    int i, j; - -    for (i = 1; i < N; i++) -        for (j = 1; j < N; j++) -            a[i] = a[i] + c[i][j] * b[j]; - -    return 0; -} diff --git a/test-chill/test-cases/examples/chill/gemv.script b/test-chill/test-cases/examples/chill/gemv.script deleted file mode 100644 index 73b3b58..0000000 --- a/test-chill/test-cases/examples/chill/gemv.script +++ /dev/null @@ -1,9 +0,0 @@ -source: gemv.c # matrix-vector multiply -procedure: gemv -format : rose -loop: 0 - - - -original() -print diff --git a/test-chill/test-cases/examples/chill/jacobi1.c b/test-chill/test-cases/examples/chill/jacobi1.c deleted file mode 100644 index e7ff8f8..0000000 --- a/test-chill/test-cases/examples/chill/jacobi1.c +++ /dev/null @@ -1,19 +0,0 @@ - -#ifndef N -#define N 512 -#endif - -/* -<test name=jacobi define="{'N':512}"> -procedure int jacobi( -    in out float[N][N] a = matrix [i,j] random(2,-2)) -</test> -*/ -int jacobi(float a[N][N]) { -    int t, i; -	for (t = 2; t <= 100; t++) -		for (i = 2; i <= N - 1; i++) -			a[t][i] = a[t - 1][i - 1] + a[t - 1][i] + a[t - 1][i + 1]; - -	return 0; -} diff --git a/test-chill/test-cases/examples/chill/jacobi1.script b/test-chill/test-cases/examples/chill/jacobi1.script deleted file mode 100644 index 604f763..0000000 --- a/test-chill/test-cases/examples/chill/jacobi1.script +++ /dev/null @@ -1,18 +0,0 @@ -# -# tiling perfect jacobi loop nest with time step, use -# unimodular transformation first (only applicable to the -# perfect loop nest) to make tiling legal. -# - -source: jacobi1.c -procedure: jacobi -format : rose -loop: 0 - -print dep - -nonsingular([[1,0],[1,1]])  # unimodular matrix, determinant is one -tile(0,2,64) - -print dep -print diff --git a/test-chill/test-cases/examples/chill/jacobi2.c b/test-chill/test-cases/examples/chill/jacobi2.c deleted file mode 100644 index b8d8d7b..0000000 --- a/test-chill/test-cases/examples/chill/jacobi2.c +++ /dev/null @@ -1,15 +0,0 @@ -#define N 512 - -int main() { -	double a[N]; -	double b[N]; -	int t, i; -	for (t = 1; t <= 100; t++) { -		for (i = 2; i <= N - 1; i++) -			b[i] = (double) 0.25 * (a[i - 1] + a[i + 1]) + (double) 0.5 * a[i]; - -		for (i = 2; i <= N - 1; i++) -			a[i] = b[i]; -	} -	return 0; -} diff --git a/test-chill/test-cases/examples/chill/jacobi2.script b/test-chill/test-cases/examples/chill/jacobi2.script deleted file mode 100644 index afe14c6..0000000 --- a/test-chill/test-cases/examples/chill/jacobi2.script +++ /dev/null @@ -1,21 +0,0 @@ -# -# tiling imperfect jacobi loop nest, more details in the paper -# "Automatic Tiling of Iterative Stencil Loops" by Zhiyuan Li and -# Yonghong Song, TOPLAS, 2004. -# - -source: jacobi2.c -procedure: main -format: rose -loop: 0 - -print dep - -original() -shift([1], 2, 1) -fuse([0,1], 2)  # optional -skew([0,1], 2, [2,1]) -tile(0, 2, 32, 1) - -print dep -print diff --git a/test-chill/test-cases/examples/chill/qr.c b/test-chill/test-cases/examples/chill/qr.c deleted file mode 100644 index 8d18b72..0000000 --- a/test-chill/test-cases/examples/chill/qr.c +++ /dev/null @@ -1,44 +0,0 @@ -#include <math.h> - -int main() { - -	int M, N; -	float** A; -	float *s; -	float *Rdiag; -	float *nrm; -	int i, j, k; -        float t; -	for (k = 0; k < N; k++) { -		nrm[k] = 0; - -		for (i = k; i < M; i++) -			nrm[k] = sqrt(nrm[k] * nrm[k] + A[i][k] * A[i][k]); -                //t = A[k][k]; - -		//if (t < 0) -		//	nrm[k] = -nrm[k]; -		for (i = k; i < M; i++) -			A[i][k] = A[i][k] / nrm[k]; - -		A[k][k] = A[k][k] + 1; - -		for (j = k + 1; j < N; j++) { -			s[j] = 0; //S6 - -			for (i = k; i < M; i++) -				s[j] = s[j] + A[i][k] * A[i][j]; //S7 - -			s[j] = -s[j] / A[k][k]; //S8 - -			for (i = k; i < M; i++) -				A[i][j] = A[i][j] + s[j] * A[i][k]; //S9 - -		} - -		Rdiag[k] = -nrm[k]; - -	} - -	return 0; -} diff --git a/test-chill/test-cases/examples/chill/qr.script b/test-chill/test-cases/examples/chill/qr.script deleted file mode 100644 index 6b4cd46..0000000 --- a/test-chill/test-cases/examples/chill/qr.script +++ /dev/null @@ -1,13 +0,0 @@ -# -# tiling imperfect jacobi loop nest, more details in the paper -# "Automatic Tiling of Iterative Stencil Loops" by Zhiyuan Li and -# Yonghong Song, TOPLAS, 2004. -# - -source: qr.c -procedure: main -format: rose -loop: 0 -original() -print  - diff --git a/test-chill/test-cases/examples/chill/scalar_test.c b/test-chill/test-cases/examples/chill/scalar_test.c deleted file mode 100644 index 733c882..0000000 --- a/test-chill/test-cases/examples/chill/scalar_test.c +++ /dev/null @@ -1,16 +0,0 @@ -int a[10][10]; -int main() { - -	int temp; -	int i, j; - -	for (i = 0; i < 10; i++) { -		for (j = 0; j < 10; j++) { -			a[i + 1][j - 1] = a[i][j]; -		} - -	} - -	return 0; - -} diff --git a/test-chill/test-cases/examples/chill/scalar_test.script b/test-chill/test-cases/examples/chill/scalar_test.script deleted file mode 100644 index f5b0aa8..0000000 --- a/test-chill/test-cases/examples/chill/scalar_test.script +++ /dev/null @@ -1,10 +0,0 @@ -#Simple Scalar dependence check -source: scalar_test.c -procedure: main -format : rose -loop: 0 - -original() -permute([2,1]) -print dep -print space diff --git a/test-chill/test-cases/examples/chill/swim.c b/test-chill/test-cases/examples/chill/swim.c deleted file mode 100644 index a21ef24..0000000 --- a/test-chill/test-cases/examples/chill/swim.c +++ /dev/null @@ -1,159 +0,0 @@ -#define M 100 -#define N 100 -#define  N3 10  - -int main() { - -	int DX; -	int DY; -	int FSDX; -	int FSDY; -	int TDT; -	int TDTS8; -	int TDTSDX; -	int TDTSDY; -	int t, i, j; -	double CU[M + 1][N + 1]; -	double CV[M + 1][N + 1]; -	double Z[M + 1][N + 1]; -	double H[M + 1][N + 1]; -	double P[M + 1][N + 1]; -	double U[M + 1][N + 1]; -	double V[M + 1][N + 1]; -	double UNEW[M + 1][N + 1]; -	double UOLD[M + 1][N + 1]; -	double PNEW[M + 1][N + 1]; -	double POLD[M + 1][N + 1]; -	double VNEW[M + 1][N + 1]; -	double VOLD[M + 1][N + 1]; -	double ALPHA; - -	for (t = 0; t < N3; t++) { - -		FSDX = 4 / DX; -		FSDY = 4 / DY; - -		for (i = 0; i < M; i++) { -			for (j = 0; j < N; j++) { -				CU[i + 1][j] = (double) 0.5 * (P[i + 1][j] + P[i][j]) -						* U[i + 1][j]; -				CV[i][j + 1] = (double) 0.5 * (P[i][j + 1] + P[i][j]) -						* V[i][j + 1]; -				Z[i + 1][j + 1] = -						(FSDX * (V[i + 1][j + 1] - V[i][j + 1]) -								- FSDY * (U[i + 1][j + 1] - U[i + 1][j])) -								/ (P[i][j] + P[i + 1][j] + P[i + 1][j + 1] -										+ P[i][j + 1]); -				H[i][j] = P[i][j] -						+ (double) 0.25 -								* (U[i + 1][j] * U[i + 1][j] + U[i][j] * U[i][j] -										+ V[i][j + 1] * V[i][j + 1] -										+ V[i][j] * V[i][j]); -			} -		} - -		for (j = 0; j < N; j++) { -			// CU[0][j] = CU[M+1][j]; -			CU[0][j] = CU[M][j]; -			CV[M][j + 1] = CV[0][j + 1]; -			Z[0][j + 1] = Z[M][j + 1]; -			H[M][j] = H[0][j]; -		} - -		for (i = 0; i < M; i++) { -			CU[i + 1][N] = CU[i + 1][0]; -			CV[i][0] = CV[i][N]; -			Z[i + 1][0] = Z[i + 1][N]; -			H[i][N] = H[i][0]; -		} - -		CU[0][N] = CU[M][0]; -		CV[M][0] = CV[0][N]; -		Z[0][0] = Z[M][N]; -		H[M][N] = H[0][0]; - -		TDTS8 = TDT / 8; -		TDTSDX = TDT / DX; -		TDTSDY = TDT / DY; - -		for (i = 0; i < M; i++) { -			for (j = 0; j < N; j++) { -				UNEW[i + 1][j] = UOLD[i + 1][j] -						+ TDTS8 * (Z[i + 1][j + 1] + Z[i + 1][j]) -								* (CV[i + 1][j + 1] + CV[i][j + 1] + CV[i][j] -										+ CV[i + 1][j]) -						- TDTSDX * (H[i + 1][j] - H[i][j]); -				VNEW[i][j + 1] = VOLD[i][j + 1] -						- TDTS8 * (Z[i + 1][j + 1] + Z[i][j + 1]) -								* (CU[i + 1][j + 1] + CU[i][j + 1] + CU[i][j] -										+ CU[i + 1][j]) -						- TDTSDY * (H[i][j + 1] - H[i][j]); -				PNEW[i][j] = POLD[i][j] - TDTSDX * (CU[i + 1][j] - CU[i][j]) -						- TDTSDY * (CV[i][j + 1] - CV[i][j]); -			} -		} -		for (j = 0; j < N; j++) { -			UNEW[0][j] = UNEW[M][j]; -			VNEW[M][j + 1] = VNEW[0][j + 1]; -			PNEW[M][j] = PNEW[0][j]; -		} - -		for (i = 0; i < M; i++) { -			UNEW[i + 1][N] = UNEW[i + 1][0]; -			VNEW[i][0] = VNEW[i][N]; -			PNEW[i][N] = PNEW[i][0]; -		} - -		UNEW[0][N] = UNEW[M][0]; -		VNEW[M][0] = VNEW[0][N]; -		PNEW[M][N] = PNEW[0][0]; -		// time = time + DT; - -		for (i = 0; i < M; i++) { -			for (j = 0; j < N; j++) { -				UOLD[i][j] = U[i][j] -						+ ALPHA -								* (UNEW[i][j] - (double) 2 * U[i][j] -										+ UOLD[i][j]); -				VOLD[i][j] = V[i][j] -						+ ALPHA -								* (VNEW[i][j] - (double) 2 * V[i][j] -										+ VOLD[i][j]); -				POLD[i][j] = P[i][j] -						+ ALPHA -								* (PNEW[i][j] - (double) 2 * P[i][j] -										+ POLD[i][j]); -				U[i][j] = UNEW[i][j]; -				V[i][j] = VNEW[i][j]; -				P[i][j] = PNEW[i][j]; -			} -		} - -		for (j = 0; j < N; j++) { -			UOLD[M][j] = UOLD[0][j]; -			VOLD[M][j] = VOLD[0][j]; -			POLD[M][j] = POLD[0][j]; -			U[M][j] = U[0][j]; -			V[M][j] = V[0][j]; -			P[M][j] = P[0][j]; -		} - -		for (i = 0; i < M; i++) { -			UOLD[i][N] = UOLD[i][0]; -			VOLD[i][N] = VOLD[i][0]; -			POLD[i][N] = POLD[i][0]; -			U[i][N] = U[i][0]; -			V[i][N] = V[i][0]; -			P[i][N] = P[i][0]; -		} - -		UOLD[M][N] = UOLD[0][0]; -		VOLD[M][N] = VOLD[0][0]; -		POLD[M][N] = POLD[0][0]; -		U[M][N] = U[0][0]; -		V[M][N] = V[0][0]; -		P[M][N] = P[0][0]; - -	} -	return 0; -} diff --git a/test-chill/test-cases/examples/chill/swim.script b/test-chill/test-cases/examples/chill/swim.script deleted file mode 100644 index 79de9d9..0000000 --- a/test-chill/test-cases/examples/chill/swim.script +++ /dev/null @@ -1,13 +0,0 @@ -# -# tiling imperfect jacobi loop nest, more details in the paper -# "Automatic Tiling of Iterative Stencil Loops" by Zhiyuan Li and -# Yonghong Song, TOPLAS, 2004. -# - -source: swim.c -procedure: main -format: rose -loop: 0 -original() -#print space -print diff --git a/test-chill/test-cases/examples/chill/test_align.c b/test-chill/test-cases/examples/chill/test_align.c deleted file mode 100644 index d1365ca..0000000 --- a/test-chill/test-cases/examples/chill/test_align.c +++ /dev/null @@ -1,20 +0,0 @@ -int main() { - -	int m, n; -	int a[10], b[10]; -	int i, j; -	for (i = 0; i < n; i++) { -		for (j = 0; j < n; j++) { -			a[i] = 1; -		} - -		for (j = 0; j < n; j++) { -			b[i] -= 1; -		} - -	} - -	return 0; - -} - diff --git a/test-chill/test-cases/examples/chill/test_align.script b/test-chill/test-cases/examples/chill/test_align.script deleted file mode 100644 index c990e22..0000000 --- a/test-chill/test-cases/examples/chill/test_align.script +++ /dev/null @@ -1,12 +0,0 @@ -#matrix multiply large array size for intel machine -source: test_align.c -procedure: main -format: rose -loop: 0 - -original() - - - -print - diff --git a/test-chill/test-cases/examples/chill/test_fusion.c b/test-chill/test-cases/examples/chill/test_fusion.c deleted file mode 100644 index bd2c4f2..0000000 --- a/test-chill/test-cases/examples/chill/test_fusion.c +++ /dev/null @@ -1,13 +0,0 @@ -int main() { - -	int a[10][10]; -	int i, j; -	for (i = 0; i < 10; i++) { -		for (j = 0; j < 10; j++) -			a[i][j] = a[i][j] + 5; -		for (j = 0; j < 10; j++) -			a[i][j + 1] = a[i][j + 1] + 5; - -	} - -} diff --git a/test-chill/test-cases/examples/chill/test_fusion.script b/test-chill/test-cases/examples/chill/test_fusion.script deleted file mode 100644 index 41f6cc0..0000000 --- a/test-chill/test-cases/examples/chill/test_fusion.script +++ /dev/null @@ -1,7 +0,0 @@ -source: test_fusion.c -procedure: main -loop: 0 -original() -fuse([0,1],2) -print - diff --git a/test-chill/test-cases/examples/chill/test_lex_order.c b/test-chill/test-cases/examples/chill/test_lex_order.c deleted file mode 100644 index 1a3b26d..0000000 --- a/test-chill/test-cases/examples/chill/test_lex_order.c +++ /dev/null @@ -1,31 +0,0 @@ -int main() { - -	int m, n; -	int a[10]; -        int b[10];  -        int c[10]; -	int i, j; -	for (i = 0; i < n; i++) { -		for (j = 0; j < n; j++) { -			b[j] = a[j]; -		} - -            -                 -                for (j = 0; j < n; j++) { -			a[j+1] = 6; -		} - -                for (j = 0; j < n; j++) { -			c[j] = a[j]; -		} - - -        - -	} - -	return 0; - -} - diff --git a/test-chill/test-cases/examples/chill/test_lex_order.script b/test-chill/test-cases/examples/chill/test_lex_order.script deleted file mode 100644 index 2629e50..0000000 --- a/test-chill/test-cases/examples/chill/test_lex_order.script +++ /dev/null @@ -1,12 +0,0 @@ -#matrix multiply large array size for intel machine -source: test_lex_order.c -procedure: main -format: rose -loop: 0 - -original() - - - -print - diff --git a/test-chill/test-cases/examples/chill/test_split.c b/test-chill/test-cases/examples/chill/test_split.c deleted file mode 100644 index 6ca62cc..0000000 --- a/test-chill/test-cases/examples/chill/test_split.c +++ /dev/null @@ -1,14 +0,0 @@ -int main() { - -	int a[10][10][10][10]; -	int i, j, k, l; - -	for (i = 0; i < 10; i++) -		for (j = 0; j < 10; j++) -			for (k = 0; k < 10; k++) -				for (l = 0; l < 10; l++) -					a[i][j][k + 1][l] = a[i][j][k][l]; -	//    a[i+1][j-1] = a[i][j]; - -	return 0; -} diff --git a/test-chill/test-cases/examples/chill/test_split.script b/test-chill/test-cases/examples/chill/test_split.script deleted file mode 100644 index e1ebba9..0000000 --- a/test-chill/test-cases/examples/chill/test_split.script +++ /dev/null @@ -1,9 +0,0 @@ -source: test_split.c -procedure: main -format: rose -loop: 0 -original() -N=10 -split(0,1, L3-L2-L4 <= 5)   -print - diff --git a/test-chill/test-cases/examples/chill/test_split2.c b/test-chill/test-cases/examples/chill/test_split2.c deleted file mode 100644 index 1ab8e43..0000000 --- a/test-chill/test-cases/examples/chill/test_split2.c +++ /dev/null @@ -1,14 +0,0 @@ -int main() { - -	int a[10][10][10][10]; -	int i, j, k, l; - -	for (i = 0; i < 10; i++) -		for (j = 0; j < 10; j++) -			for (k = 0; k < 10; k++) -				for (l = 0; l < 10; l++) -					a[i][j][k + 1][l - 1] = a[i][j][k][l]; -	//    a[i+1][j-1] = a[i][j]; - -	return 0; -} diff --git a/test-chill/test-cases/examples/chill/test_split2.script b/test-chill/test-cases/examples/chill/test_split2.script deleted file mode 100644 index bcaa2a0..0000000 --- a/test-chill/test-cases/examples/chill/test_split2.script +++ /dev/null @@ -1,9 +0,0 @@ -source: test_split2.c -procedure: main -format: rose -loop: 0 -original() -N=10 -split(0,1, L4 <= 5)   -print - diff --git a/test-chill/test-cases/examples/chill/test_tile.c b/test-chill/test-cases/examples/chill/test_tile.c deleted file mode 100644 index aeaaefc..0000000 --- a/test-chill/test-cases/examples/chill/test_tile.c +++ /dev/null @@ -1,16 +0,0 @@ -void func(int n) { - -	int i; -	int a[10]; - -	for (i = 0; i < n; i++) -		a[i] = 2; - -} - -int main() { - -	func(10); - -	return 0; -} diff --git a/test-chill/test-cases/examples/chill/test_tile.script b/test-chill/test-cases/examples/chill/test_tile.script deleted file mode 100644 index d437145..0000000 --- a/test-chill/test-cases/examples/chill/test_tile.script +++ /dev/null @@ -1,14 +0,0 @@ -#matrix multiply large array size for intel machine -source: test_tile.c -procedure: func -format : rose -loop: 0 - -original() -#permute([3,2,1]) -tile(0,1,4) - - - -print - diff --git a/test-chill/test-cases/examples/chill/tile_violation.c b/test-chill/test-cases/examples/chill/tile_violation.c deleted file mode 100644 index d719e52..0000000 --- a/test-chill/test-cases/examples/chill/tile_violation.c +++ /dev/null @@ -1,12 +0,0 @@ -int main() { - -	int i, j, k; -	int a[10][10][10]; - -	for (i = 0; i < 10; i++) -		for (j = 0; j < 10; j++) -			for (k = 0; k < 10; k++) -				a[i][j + 1][k - 1] = a[i][j][k]; - -	return 0; -} diff --git a/test-chill/test-cases/examples/chill/tile_violation.script b/test-chill/test-cases/examples/chill/tile_violation.script deleted file mode 100644 index 57d1423..0000000 --- a/test-chill/test-cases/examples/chill/tile_violation.script +++ /dev/null @@ -1,14 +0,0 @@ -#matrix multiply large array size for intel machine -source: tile_violation.c -procedure: main -format :rose -loop: 0 - -original() -#permute([3,2,1]) -tile(0,3,2,1) - - - -print - diff --git a/test-chill/test-cases/examples/chill/unroll.c b/test-chill/test-cases/examples/chill/unroll.c deleted file mode 100644 index 68f4633..0000000 --- a/test-chill/test-cases/examples/chill/unroll.c +++ /dev/null @@ -1,31 +0,0 @@ -#define N 14 -void foo(int n, float* x, float* y, float* z, float* f3, float* f1, float* w) { -	int dt; - -	int i, j; - -	for (i = 1; i <= 14; i++) -		x[i] = 1.0; - -	for (i = 1; i <= 14; i += 3) -		y[i] = 1.0; - -	for (i = N + 1; i <= N + 20; i += 3) -		z[i] = 1.0; - -	for (i = 0; i <= N; i++) { -		for (j = i; j <= i + N; j++) -			f3[i] = f3[i] + f1[j] * w[j - i]; -		f3[i] = f3[i] * dt; -	} - -	return 0; -} - -int main() { -	float x[N], y[N], z[N], f3[N], f1[N], w[N]; - -	foo(N, x, y, z, f3, f1, w); -	return 0; -} - diff --git a/test-chill/test-cases/examples/chill/unroll.script b/test-chill/test-cases/examples/chill/unroll.script deleted file mode 100644 index e64acb6..0000000 --- a/test-chill/test-cases/examples/chill/unroll.script +++ /dev/null @@ -1,35 +0,0 @@ -# -# Test unroll-and-jam. The last loop adapted from the simple -# convolution example from p463 of "Optimizing Compilers for -# Modern Architectures", by Randy Allen and Ken Kennedy. -# - -source: unroll.c -procedure: foo -format: rose -# fully unroll a loop with known iteration count -loop: 0 -original() -unroll(0,1,3) -print -print space - - -# a strided loop -loop: 1 -original() -unroll(0,1,2) -print -print space - -# lower and upper bounds are not constant -loop: 2 -original() -unroll(0,1,20) -print - -# parallelogram iteration space -loop: 3 -original() -unroll(0,1,2) -print diff --git a/test-chill/test-cases/examples/chill/unroll_violation.c b/test-chill/test-cases/examples/chill/unroll_violation.c deleted file mode 100644 index d719e52..0000000 --- a/test-chill/test-cases/examples/chill/unroll_violation.c +++ /dev/null @@ -1,12 +0,0 @@ -int main() { - -	int i, j, k; -	int a[10][10][10]; - -	for (i = 0; i < 10; i++) -		for (j = 0; j < 10; j++) -			for (k = 0; k < 10; k++) -				a[i][j + 1][k - 1] = a[i][j][k]; - -	return 0; -} diff --git a/test-chill/test-cases/examples/chill/unroll_violation.script b/test-chill/test-cases/examples/chill/unroll_violation.script deleted file mode 100644 index 019473d..0000000 --- a/test-chill/test-cases/examples/chill/unroll_violation.script +++ /dev/null @@ -1,14 +0,0 @@ -#matrix multiply large array size for intel machine -source: unroll_violation.c -procedure: main -format: rose -loop: 0 - -original() -#permute([3,2,1]) -unroll(0,2,2) - - - -print -  | 
