summaryrefslogtreecommitdiff
path: root/test/cholesau_original.cloog
diff options
context:
space:
mode:
Diffstat (limited to 'test/cholesau_original.cloog')
-rw-r--r--test/cholesau_original.cloog245
1 files changed, 245 insertions, 0 deletions
diff --git a/test/cholesau_original.cloog b/test/cholesau_original.cloog
new file mode 100644
index 0000000..462aae6
--- /dev/null
+++ b/test/cholesau_original.cloog
@@ -0,0 +1,245 @@
+# program cholesau
+#
+# integer i, j, k,l,n
+# real a(10,10),s1(10,10),s2(10),s3(10,10,10),s4(10,10)
+#
+# do i=1,n
+# do j =1,i-1
+# if (j.EQ.1) then
+# s1(i,j)=a(i,j)s4(j,i)**2
+# else
+# s1(i,j)=s1(i,j-1)-s4(j,i)**2
+# end if
+# end do
+# if (i .EQ. 1) then
+# s2(i)=sqrt(a(i,i))
+# else
+# s2(i)=sqrt (s1(i,i-1))
+# end if
+# do k=i+1,n
+# do l=1,i-1
+# if (l .EQ. 1) then
+# s3(i,k,l)=a(k,i)-(s4(l,k)*s4(l,i))
+# else
+# s3(i,k,l)=s3(i,k,l-1)-(s4(l,k)*s4(l,i))
+# end if
+# end do
+# if (i .EQ.1) then
+# s4(i,k)=a(k,i)/s2(i)
+# else
+# s4(i,k)=s3(i,k,i-1)/s2(i)
+# end if
+# end do
+# end do
+# end
+
+
+# language: FORTRAN
+f
+
+# One parameter : n >= 10
+1 3
+# n 1
+1 1 -10
+# We want to set the parameter names...
+1
+# and 'n' is the name of the unique parameter
+n
+
+8 # Number of statements: 8.
+
+1
+# {i, j | 1<=i<=n; 1<=j<=i-1; j=1}
+5 5
+# i j n 1
+1 1 0 0 -1 # 1<=i
+1 -1 0 1 0 # i<=n
+1 0 1 0 -1 # 1<=j
+1 1 -1 0 -1 # j<=i-1
+0 0 1 0 -1 # j=1
+0 0 0
+
+2
+# {i, j | 1<=i<=n; 1<=j<=i-1; j!=1}
+5 5
+# i j n 1
+1 1 0 0 -1 # 1<=i
+1 -1 0 1 0 # i<=n
+1 0 1 0 -1 # 1<=j
+1 1 -1 0 -1 # j<=i-1
+1 0 1 0 -2 # j>=2
+5 5
+# i j n 1
+1 1 0 0 -1 # 1<=i
+1 -1 0 1 0 # i<=n
+1 0 1 0 -1 # 1<=j
+1 1 -1 0 -1 # j<=i-1
+1 0 -1 0 0 # j<=0
+0 0 0
+
+1
+# {i | 1<=i<=n; i=1}
+3 4
+# i n 1
+1 1 0 -1 # 1<=i
+1 -1 1 0 # i<=n
+0 1 0 -1 # i=1
+0 0 0
+
+2
+# {i | 1<=i<=n; i!=1}
+3 4
+# i n 1
+1 1 0 -1 # 1<=i
+1 -1 1 0 # i<=n
+1 1 0 -2 # i>=2
+3 4
+# i n 1
+1 1 0 -1 # 1<=i
+1 -1 1 0 # i<=n
+1 -1 0 0 # i<=0
+0 0 0
+
+1
+# {i, j | 1<=i<=n; i+1<=j<=n; 1<=k<=i-1; k=1}
+7 6
+# i j k n 1
+1 1 0 0 0 -1 # 1<=i
+1 -1 0 0 1 0 # i<=n
+1 -1 1 0 0 -1 # i+1<=j
+1 0 -1 0 1 0 # j<=n
+1 0 0 1 0 -1 # 1<=k
+1 1 0 -1 0 -1 # k<=i-1
+0 0 0 1 0 -1 # k=1
+0 0 0
+
+2
+# {i, j | 1<=i<=n; i+1<=j<=n; 1<=k<=i-1; k!=1}
+7 6
+# i j k n 1
+1 1 0 0 0 -1 # 1<=i
+1 -1 0 0 1 0 # i<=n
+1 -1 1 0 0 -1 # i+1<=j
+1 0 -1 0 1 0 # j<=n
+1 0 0 1 0 -1 # 1<=k
+1 1 0 -1 0 -1 # k<=i-1
+1 0 0 1 0 -2 # k>=2
+7 6
+# i j k n 1
+1 1 0 0 0 -1 # 1<=i
+1 -1 0 0 1 0 # i<=n
+1 -1 1 0 0 -1 # i+1<=j
+1 0 -1 0 1 0 # j<=n
+1 0 0 1 0 -1 # 1<=k
+1 1 0 -1 0 -1 # k<=i-1
+1 0 0 -1 0 0 # k<=0
+0 0 0
+
+1
+# {i, j | 1<=i<=n; i+1<=j<=n; i=1}
+5 5
+# i j n 1
+1 1 0 0 -1 # 1<=i
+1 -1 0 1 0 # i<=n
+1 -1 1 0 -1 # i+1<=j
+1 0 -1 1 0 # j<=n
+0 1 0 0 -1 # i=1
+0 0 0
+
+2
+# {i, j | 1<=i<=n; i+1<=j<=n; i!=1}
+5 5
+# i j n 1
+1 1 0 0 -1 # 1<=i
+1 -1 0 1 0 # i<=n
+1 -1 1 0 -1 # i+1<=j
+1 0 -1 1 0 # j<=n
+1 1 0 0 -2 # i>=2
+5 5
+# i j n 1
+1 1 0 0 -1 # 1<=i
+1 -1 0 1 0 # i<=n
+1 -1 1 0 -1 # i+1<=j
+1 0 -1 1 0 # j<=n
+1 -1 0 0 0 # i<=0
+0 0 0
+
+# We want to let CLooG set the iterator names.
+0
+
+8
+# Scattering functions ORIGINAL SCHEDULING
+6 11
+# c1 c2 c3 c4 c5 c6 i j n 1
+0 1 0 0 0 0 0 -1 0 0 0 # i
+0 0 1 0 0 0 0 0 0 0 0 # 0
+0 0 0 1 0 0 0 0 -1 0 0 # j
+0 0 0 0 1 0 0 0 0 0 0 # 0
+0 0 0 0 0 1 0 0 0 0 0 # 0
+0 0 0 0 0 0 1 0 0 0 0 # 0
+
+6 11
+# c1 c2 c3 c4 c5 c6 i j n 1
+0 1 0 0 0 0 0 -1 0 0 0 # i
+0 0 1 0 0 0 0 0 0 0 0 # 0
+0 0 0 1 0 0 0 0 -1 0 0 # j
+0 0 0 0 1 0 0 0 0 0 -1 # 1
+0 0 0 0 0 1 0 0 0 0 0 # 0
+0 0 0 0 0 0 1 0 0 0 0 # 0
+
+6 10
+# c1 c2 c3 c4 c5 c6 i n 1
+0 1 0 0 0 0 0 -1 0 0 # i
+0 0 1 0 0 0 0 0 0 -1 # 1
+0 0 0 1 0 0 0 0 0 0 # 0
+0 0 0 0 1 0 0 0 0 0 # 0
+0 0 0 0 0 1 0 0 0 0 # 0
+0 0 0 0 0 0 1 0 0 0 # 0
+
+6 10
+# c1 c2 c3 c4 c5 c6 i n 1
+0 1 0 0 0 0 0 -1 0 0 # i
+0 0 1 0 0 0 0 0 0 -2 # 2
+0 0 0 1 0 0 0 0 0 0 # 0
+0 0 0 0 1 0 0 0 0 0 # 0
+0 0 0 0 0 1 0 0 0 0 # 0
+0 0 0 0 0 0 1 0 0 0 # 0
+
+6 12
+# c1 c2 c3 c4 c5 c6 i j k n 1
+0 1 0 0 0 0 0 -1 0 0 0 0 # i
+0 0 1 0 0 0 0 0 0 0 0 -3 # 3
+0 0 0 1 0 0 0 0 -1 0 0 0 # j
+0 0 0 0 1 0 0 0 0 0 0 0 # 0
+0 0 0 0 0 1 0 0 0 -1 0 0 # k
+0 0 0 0 0 0 1 0 0 0 0 0 # 0
+
+6 12
+# c1 c2 c3 c4 c5 c6 i j k n 1
+0 1 0 0 0 0 0 -1 0 0 0 0 # i
+0 0 1 0 0 0 0 0 0 0 0 -3 # 3
+0 0 0 1 0 0 0 0 -1 0 0 0 # j
+0 0 0 0 1 0 0 0 0 0 0 0 # 0
+0 0 0 0 0 1 0 0 0 -1 0 0 # k
+0 0 0 0 0 0 1 0 0 0 0 -1 # 1
+
+6 11
+# c1 c2 c3 c4 c5 c6 i j n 1
+0 1 0 0 0 0 0 -1 0 0 0 # i
+0 0 1 0 0 0 0 0 0 0 -3 # 3
+0 0 0 1 0 0 0 0 -1 0 0 # j
+0 0 0 0 1 0 0 0 0 0 -1 # 1
+0 0 0 0 0 1 0 0 0 0 0 # 0
+0 0 0 0 0 0 1 0 0 0 0 # 0
+
+6 11
+# c1 c2 c3 c4 c5 c6 i j n 1
+0 1 0 0 0 0 0 -1 0 0 0 # i
+0 0 1 0 0 0 0 0 0 0 -3 # 3
+0 0 0 1 0 0 0 0 -1 0 0 # j
+0 0 0 0 1 0 0 0 0 0 -2 # 2
+0 0 0 0 0 1 0 0 0 0 0 # 0
+0 0 0 0 0 0 1 0 0 0 0 # 0
+
+1 # We want to set the scatering dimension names.
+c1 c2 c3 c4 c5 c6