From f18df80f5538ffb284135a2d89c48e0bfbcf349b Mon Sep 17 00:00:00 2001 From: Sven Verdoolaege Date: Thu, 4 May 2006 15:24:07 +0200 Subject: [PATCH] clast.c: insert_equality: reduce coefficients in modulo guards. --- source/clast.c | 18 ++- test/cholesky2.c | 11 +- test/darte.c | 162 +++++++++++++------------- test/dartef.f | 194 +++++++++++++++---------------- test/levenshtein-1-2-3.c | 5 +- test/levenshtein-1-2-3f.f | 7 +- test/non_optimal/nul_complex1.c | 6 +- test/orc.c | 25 ++-- test/reservoir/cholesky2.c | 8 +- test/reservoir/jacobi3.c | 6 +- test/reservoir/lim-lam1.c | 8 +- test/reservoir/lim-lam3.c | 8 +- test/reservoir/liu-zhuge1.c | 48 ++++---- test/reservoir/mg-interp.c | 18 +-- test/reservoir/pingali6.c | 6 +- test/reservoir/tang-xue1.c | 6 +- test/reservoir/two.c | 8 +- test/vivien.c | 250 ++++++++++++++++++++-------------------- test/vivien2.c | 180 ++++++++++++++--------------- 19 files changed, 492 insertions(+), 482 deletions(-) diff --git a/source/clast.c b/source/clast.c index a2fa34c..406b33d 100644 --- a/source/clast.c +++ b/source/clast.c @@ -959,6 +959,8 @@ void insert_equality(CloogMatrix *matrix, CloogMatrix *equal, int num, line = matrix->p[num] ; sign = value_pos_p(line[level]) ? -1 : 1 ; + if (sign == 1) + value_oppose(line[level], line[level]); nb_iter = matrix->NbColumns - 2 - infos->names->nb_parameters ; for (i = 1, nb_elts = 0; i <= matrix->NbColumns - 2; ++i) { @@ -981,6 +983,8 @@ void insert_equality(CloogMatrix *matrix, CloogMatrix *equal, int num, value_oppose(val,line[i]) ; else value_assign(val,line[i]) ; + + value_pmodulus(val, val, line[level]); if (i <= infos->names->nb_scattering) name = infos->names->scattering[i-1] ; @@ -1009,6 +1013,8 @@ void insert_equality(CloogMatrix *matrix, CloogMatrix *equal, int num, value_oppose(val,line[i]) ; else value_assign(val,line[i]) ; + + value_pmodulus(val, val, line[level]); name = infos->names->parameters[i-nb_iter-1] ; r->elts[nb_elts++] = &new_clast_term(val, name)->expr; @@ -1024,18 +1030,14 @@ void insert_equality(CloogMatrix *matrix, CloogMatrix *equal, int num, else value_assign(val,line[matrix->NbColumns-1]) ; + value_pmodulus(val, val, line[level]); if (value_notzero_p(val)) r->elts[nb_elts++] = &new_clast_term(val, NULL)->expr; /* our initial computation may have been an overestimate */ r->n = nb_elts; - if ((-1 * sign) == -1) - value_oppose(val,line[level]) ; - else - value_assign(val,line[level]) ; - - e = &new_clast_binary(clast_bin_mod, &r->expr, val)->expr; + e = &new_clast_binary(clast_bin_mod, &r->expr, line[level])->expr; g = new_clast_guard(1); g->eq[0].LHS = e; value_set_si(val, 0); @@ -1046,6 +1048,10 @@ void insert_equality(CloogMatrix *matrix, CloogMatrix *equal, int num, *next = &g->then; } else free_clast_reduction(r); + + /* change sign of line[level] back to original */ + if (sign == 1) + value_oppose(line[level], line[level]); if (!clast_equal_add(equal,matrix,level,num,infos)) { /* Finally, the equality. */ diff --git a/test/cholesky2.c b/test/cholesky2.c index 12c135b..0bb8827 100644 --- a/test/cholesky2.c +++ b/test/cholesky2.c @@ -1,4 +1,5 @@ -/* Generated by CLooG v0.12 in 0.03s. */ +/* Generated from cholesky2.cloog by CLooG v0.14.0 gmp bits in 0.10s. */ +/* CLooG asked for 620 KBytes. */ if (M >= 2) { for (c2=1;c2<=M-1;c2++) { S1(i = c2) ; @@ -31,9 +32,9 @@ for (c1=3;c1<=3*M-7;c1++) { i = (c1+2)/3 ; S3 ; } - if ((c1+3)%3 == 0) { + if (c1%3 == 0) { c2 = (c1+3)/3 ; - if ((c1+3)%3 == 0) { + if (c1%3 == 0) { i = (c1+3)/3 ; if (c1%3 == 0) { S2(j = c1/3) ; @@ -73,9 +74,9 @@ for (c1=max(3*M-6,3);c1<=3*M-4;c1++) { i = (c1+2)/3 ; S3 ; } - if ((c1+3)%3 == 0) { + if (c1%3 == 0) { c2 = (c1+3)/3 ; - if ((c1+3)%3 == 0) { + if (c1%3 == 0) { i = (c1+3)/3 ; if (c1%3 == 0) { S2(j = c1/3) ; diff --git a/test/darte.c b/test/darte.c index a6e98a1..6512fdf 100644 --- a/test/darte.c +++ b/test/darte.c @@ -1,10 +1,10 @@ -/* Generated from ./test/darte.cloog by CLooG v0.14.0 64 bits in 0.13s. */ -/* CLooG asked for 168 KBytes. */ +/* Generated from darte.cloog by CLooG v0.14.0 gmp bits in 0.25s. */ +/* CLooG asked for 460 KBytes. */ if (n >= 1) { t1 = -n+1 ; t2 = n+1 ; for (t3=n+3;t3<=3*n+1;t3++) { - if ((t3-n-1)%2 == 0) { + if ((t3+n+1)%2 == 0) { k = (t3-n-1)/2 ; S1(i = 1,j = n) ; } @@ -14,11 +14,11 @@ if ((n >= 2) && (n <= 2)) { t1 = -n+2 ; for (t2=-n+4;t2<=3*n-2;t2++) { for (t3=t2+2;t3<=t2+2*n;t3++) { - if ((t2-n+2)%2 == 0) { + if ((t2+n)%2 == 0) { i = (t2-n+2)/2 ; - if ((t2+n-2)%2 == 0) { + if ((t2+n)%2 == 0) { j = (t2+n-2)/2 ; - if ((-t2+t3)%2 == 0) { + if ((t2+t3)%2 == 0) { k = (-t2+t3)/2 ; S1 ; } @@ -35,11 +35,11 @@ if (n >= 3) { t1 = -n+2 ; for (t2=n;t2<=n+2;t2++) { for (t3=t2+2;t3<=t2+2*n;t3++) { - if ((t2-n+2)%2 == 0) { + if ((t2+n)%2 == 0) { i = (t2-n+2)/2 ; - if ((t2+n-2)%2 == 0) { + if ((t2+n)%2 == 0) { j = (t2+n-2)/2 ; - if ((-t2+t3)%2 == 0) { + if ((t2+t3)%2 == 0) { k = (-t2+t3)/2 ; S1 ; } @@ -57,9 +57,9 @@ for (t1=ceild(-2*n+5,2);t1<=min(-n+6,-1);t1++) { for (t3=t2+2;t3<=t2+2*n;t3++) { if ((t1+t2)%2 == 0) { i = (t1+t2)/2 ; - if ((-t1+t2)%2 == 0) { + if ((t1+t2)%2 == 0) { j = (-t1+t2)/2 ; - if ((-t2+t3)%2 == 0) { + if ((t2+t3)%2 == 0) { k = (-t2+t3)/2 ; S1 ; } @@ -69,9 +69,9 @@ for (t1=ceild(-2*n+5,2);t1<=min(-n+6,-1);t1++) { } for (t2=-t1+5;t2<=t1+2*n;t2++) { for (t3=1;t3<=n;t3++) { - if ((t1+t2-3)%2 == 0) { + if ((t1+t2+1)%2 == 0) { i = (t1+t2-3)/2 ; - if ((-t1+t2-1)%2 == 0) { + if ((t1+t2+1)%2 == 0) { j = (-t1+t2-1)/2 ; S2(k = t3) ; } @@ -80,9 +80,9 @@ for (t1=ceild(-2*n+5,2);t1<=min(-n+6,-1);t1++) { for (t3=t2+2;t3<=t2+2*n;t3++) { if ((t1+t2)%2 == 0) { i = (t1+t2)/2 ; - if ((-t1+t2)%2 == 0) { + if ((t1+t2)%2 == 0) { j = (-t1+t2)/2 ; - if ((-t2+t3)%2 == 0) { + if ((t2+t3)%2 == 0) { k = (-t2+t3)/2 ; S1 ; } @@ -98,16 +98,16 @@ for (t1=ceild(-2*n+5,2);t1<=min(-n+6,-1);t1++) { } if (n == 2) { for (t3=5;t3<=2*n+3;t3++) { - if ((t3-3)%2 == 0) { + if ((t3+1)%2 == 0) { k = (t3-3)/2 ; S1(i = 2,j = 1) ; } } for (t2=4;t2<=6;t2++) { for (t3=1;t3<=n;t3++) { - if ((t2-2)%2 == 0) { + if (t2%2 == 0) { i = (t2-2)/2 ; - if ((t2-2)%2 == 0) { + if (t2%2 == 0) { j = (t2-2)/2 ; S2(k = t3) ; } @@ -120,9 +120,9 @@ for (t1=-n+7;t1<=-1;t1++) { for (t3=t2+2;t3<=t2+2*n;t3++) { if ((t1+t2)%2 == 0) { i = (t1+t2)/2 ; - if ((-t1+t2)%2 == 0) { + if ((t1+t2)%2 == 0) { j = (-t1+t2)/2 ; - if ((-t2+t3)%2 == 0) { + if ((t2+t3)%2 == 0) { k = (-t2+t3)/2 ; S1 ; } @@ -132,27 +132,27 @@ for (t1=-n+7;t1<=-1;t1++) { } for (t2=-t1+5;t2<=n-2;t2++) { for (t3=1;t3<=t2+1;t3++) { - if ((t1+t2-3)%2 == 0) { + if ((t1+t2+1)%2 == 0) { i = (t1+t2-3)/2 ; - if ((-t1+t2-1)%2 == 0) { + if ((t1+t2+1)%2 == 0) { j = (-t1+t2-1)/2 ; S2(k = t3) ; } } } for (t3=t2+2;t3<=n;t3++) { - if ((t1+t2-3)%2 == 0) { + if ((t1+t2+1)%2 == 0) { i = (t1+t2-3)/2 ; - if ((-t1+t2-1)%2 == 0) { + if ((t1+t2+1)%2 == 0) { j = (-t1+t2-1)/2 ; S2(k = t3) ; } } if ((t1+t2)%2 == 0) { i = (t1+t2)/2 ; - if ((-t1+t2)%2 == 0) { + if ((t1+t2)%2 == 0) { j = (-t1+t2)/2 ; - if ((-t2+t3)%2 == 0) { + if ((t2+t3)%2 == 0) { k = (-t2+t3)/2 ; S1 ; } @@ -162,9 +162,9 @@ for (t1=-n+7;t1<=-1;t1++) { for (t3=n+1;t3<=t2+2*n;t3++) { if ((t1+t2)%2 == 0) { i = (t1+t2)/2 ; - if ((-t1+t2)%2 == 0) { + if ((t1+t2)%2 == 0) { j = (-t1+t2)/2 ; - if ((-t2+t3)%2 == 0) { + if ((t2+t3)%2 == 0) { k = (-t2+t3)/2 ; S1 ; } @@ -174,9 +174,9 @@ for (t1=-n+7;t1<=-1;t1++) { } for (t2=n-1;t2<=t1+2*n;t2++) { for (t3=1;t3<=n;t3++) { - if ((t1+t2-3)%2 == 0) { + if ((t1+t2+1)%2 == 0) { i = (t1+t2-3)/2 ; - if ((-t1+t2-1)%2 == 0) { + if ((t1+t2+1)%2 == 0) { j = (-t1+t2-1)/2 ; S2(k = t3) ; } @@ -185,9 +185,9 @@ for (t1=-n+7;t1<=-1;t1++) { for (t3=t2+2;t3<=t2+2*n;t3++) { if ((t1+t2)%2 == 0) { i = (t1+t2)/2 ; - if ((-t1+t2)%2 == 0) { + if ((t1+t2)%2 == 0) { j = (-t1+t2)/2 ; - if ((-t2+t3)%2 == 0) { + if ((t2+t3)%2 == 0) { k = (-t2+t3)/2 ; S1 ; } @@ -207,9 +207,9 @@ if (n >= 3) { for (t3=t2+2;t3<=t2+2*n;t3++) { if ((t1+t2)%2 == 0) { i = (t1+t2)/2 ; - if ((-t1+t2)%2 == 0) { + if ((t1+t2)%2 == 0) { j = (-t1+t2)/2 ; - if ((-t2+t3)%2 == 0) { + if ((t2+t3)%2 == 0) { k = (-t2+t3)/2 ; S1 ; } @@ -219,9 +219,9 @@ if (n >= 3) { } for (t2=-t1+5;t2<=-t1+2*n;t2++) { for (t3=1;t3<=n;t3++) { - if ((t1+t2-3)%2 == 0) { + if ((t1+t2+1)%2 == 0) { i = (t1+t2-3)/2 ; - if ((-t1+t2-1)%2 == 0) { + if ((t1+t2+1)%2 == 0) { j = (-t1+t2-1)/2 ; S2(k = t3) ; } @@ -230,9 +230,9 @@ if (n >= 3) { for (t3=t2+2;t3<=t2+2*n;t3++) { if ((t1+t2)%2 == 0) { i = (t1+t2)/2 ; - if ((-t1+t2)%2 == 0) { + if ((t1+t2)%2 == 0) { j = (-t1+t2)/2 ; - if ((-t2+t3)%2 == 0) { + if ((t2+t3)%2 == 0) { k = (-t2+t3)/2 ; S1 ; } @@ -242,9 +242,9 @@ if (n >= 3) { } for (t2=-t1+2*n+1;t2<=t1+2*n+1;t2++) { for (t3=1;t3<=n;t3++) { - if ((t1+t2-3)%2 == 0) { + if ((t1+t2+1)%2 == 0) { i = (t1+t2-3)/2 ; - if ((-t1+t2-1)%2 == 0) { + if ((t1+t2+1)%2 == 0) { j = (-t1+t2-1)/2 ; S2(k = t3) ; } @@ -258,9 +258,9 @@ for (t1=max(-n+7,0);t1<=1;t1++) { for (t3=t2+2;t3<=t2+2*n;t3++) { if ((t1+t2)%2 == 0) { i = (t1+t2)/2 ; - if ((-t1+t2)%2 == 0) { + if ((t1+t2)%2 == 0) { j = (-t1+t2)/2 ; - if ((-t2+t3)%2 == 0) { + if ((t2+t3)%2 == 0) { k = (-t2+t3)/2 ; S1 ; } @@ -270,27 +270,27 @@ for (t1=max(-n+7,0);t1<=1;t1++) { } for (t2=-t1+5;t2<=n-2;t2++) { for (t3=1;t3<=t2+1;t3++) { - if ((t1+t2-3)%2 == 0) { + if ((t1+t2+1)%2 == 0) { i = (t1+t2-3)/2 ; - if ((-t1+t2-1)%2 == 0) { + if ((t1+t2+1)%2 == 0) { j = (-t1+t2-1)/2 ; S2(k = t3) ; } } } for (t3=t2+2;t3<=n;t3++) { - if ((t1+t2-3)%2 == 0) { + if ((t1+t2+1)%2 == 0) { i = (t1+t2-3)/2 ; - if ((-t1+t2-1)%2 == 0) { + if ((t1+t2+1)%2 == 0) { j = (-t1+t2-1)/2 ; S2(k = t3) ; } } if ((t1+t2)%2 == 0) { i = (t1+t2)/2 ; - if ((-t1+t2)%2 == 0) { + if ((t1+t2)%2 == 0) { j = (-t1+t2)/2 ; - if ((-t2+t3)%2 == 0) { + if ((t2+t3)%2 == 0) { k = (-t2+t3)/2 ; S1 ; } @@ -300,9 +300,9 @@ for (t1=max(-n+7,0);t1<=1;t1++) { for (t3=n+1;t3<=t2+2*n;t3++) { if ((t1+t2)%2 == 0) { i = (t1+t2)/2 ; - if ((-t1+t2)%2 == 0) { + if ((t1+t2)%2 == 0) { j = (-t1+t2)/2 ; - if ((-t2+t3)%2 == 0) { + if ((t2+t3)%2 == 0) { k = (-t2+t3)/2 ; S1 ; } @@ -312,9 +312,9 @@ for (t1=max(-n+7,0);t1<=1;t1++) { } for (t2=n-1;t2<=-t1+2*n;t2++) { for (t3=1;t3<=n;t3++) { - if ((t1+t2-3)%2 == 0) { + if ((t1+t2+1)%2 == 0) { i = (t1+t2-3)/2 ; - if ((-t1+t2-1)%2 == 0) { + if ((t1+t2+1)%2 == 0) { j = (-t1+t2-1)/2 ; S2(k = t3) ; } @@ -323,9 +323,9 @@ for (t1=max(-n+7,0);t1<=1;t1++) { for (t3=t2+2;t3<=t2+2*n;t3++) { if ((t1+t2)%2 == 0) { i = (t1+t2)/2 ; - if ((-t1+t2)%2 == 0) { + if ((t1+t2)%2 == 0) { j = (-t1+t2)/2 ; - if ((-t2+t3)%2 == 0) { + if ((t2+t3)%2 == 0) { k = (-t2+t3)/2 ; S1 ; } @@ -335,9 +335,9 @@ for (t1=max(-n+7,0);t1<=1;t1++) { } for (t2=-t1+2*n+1;t2<=t1+2*n+1;t2++) { for (t3=1;t3<=n;t3++) { - if ((t1+t2-3)%2 == 0) { + if ((t1+t2+1)%2 == 0) { i = (t1+t2-3)/2 ; - if ((-t1+t2-1)%2 == 0) { + if ((t1+t2+1)%2 == 0) { j = (-t1+t2-1)/2 ; S2(k = t3) ; } @@ -349,34 +349,34 @@ for (t1=2;t1<=n-5;t1++) { t2 = t1+2 ; for (t3=t1+4;t3<=t1+2*n+2;t3++) { i = t1+1 ; - if ((-t1+t3-2)%2 == 0) { + if ((t1+t3)%2 == 0) { k = (-t1+t3-2)/2 ; S1(j = 1) ; } } for (t2=t1+3;t2<=n-2;t2++) { for (t3=1;t3<=t2+1;t3++) { - if ((t1+t2-3)%2 == 0) { + if ((t1+t2+1)%2 == 0) { i = (t1+t2-3)/2 ; - if ((-t1+t2-1)%2 == 0) { + if ((t1+t2+1)%2 == 0) { j = (-t1+t2-1)/2 ; S2(k = t3) ; } } } for (t3=t2+2;t3<=n;t3++) { - if ((t1+t2-3)%2 == 0) { + if ((t1+t2+1)%2 == 0) { i = (t1+t2-3)/2 ; - if ((-t1+t2-1)%2 == 0) { + if ((t1+t2+1)%2 == 0) { j = (-t1+t2-1)/2 ; S2(k = t3) ; } } if ((t1+t2)%2 == 0) { i = (t1+t2)/2 ; - if ((-t1+t2)%2 == 0) { + if ((t1+t2)%2 == 0) { j = (-t1+t2)/2 ; - if ((-t2+t3)%2 == 0) { + if ((t2+t3)%2 == 0) { k = (-t2+t3)/2 ; S1 ; } @@ -386,9 +386,9 @@ for (t1=2;t1<=n-5;t1++) { for (t3=n+1;t3<=t2+2*n;t3++) { if ((t1+t2)%2 == 0) { i = (t1+t2)/2 ; - if ((-t1+t2)%2 == 0) { + if ((t1+t2)%2 == 0) { j = (-t1+t2)/2 ; - if ((-t2+t3)%2 == 0) { + if ((t2+t3)%2 == 0) { k = (-t2+t3)/2 ; S1 ; } @@ -398,9 +398,9 @@ for (t1=2;t1<=n-5;t1++) { } for (t2=n-1;t2<=-t1+2*n;t2++) { for (t3=1;t3<=n;t3++) { - if ((t1+t2-3)%2 == 0) { + if ((t1+t2+1)%2 == 0) { i = (t1+t2-3)/2 ; - if ((-t1+t2-1)%2 == 0) { + if ((t1+t2+1)%2 == 0) { j = (-t1+t2-1)/2 ; S2(k = t3) ; } @@ -409,9 +409,9 @@ for (t1=2;t1<=n-5;t1++) { for (t3=t2+2;t3<=t2+2*n;t3++) { if ((t1+t2)%2 == 0) { i = (t1+t2)/2 ; - if ((-t1+t2)%2 == 0) { + if ((t1+t2)%2 == 0) { j = (-t1+t2)/2 ; - if ((-t2+t3)%2 == 0) { + if ((t2+t3)%2 == 0) { k = (-t2+t3)/2 ; S1 ; } @@ -421,9 +421,9 @@ for (t1=2;t1<=n-5;t1++) { } for (t2=-t1+2*n+1;t2<=-t1+2*n+3;t2++) { for (t3=1;t3<=n;t3++) { - if ((t1+t2-3)%2 == 0) { + if ((t1+t2+1)%2 == 0) { i = (t1+t2-3)/2 ; - if ((-t1+t2-1)%2 == 0) { + if ((t1+t2+1)%2 == 0) { j = (-t1+t2-1)/2 ; S2(k = t3) ; } @@ -435,16 +435,16 @@ for (t1=max(2,n-4);t1<=floord(2*n-3,2);t1++) { t2 = t1+2 ; for (t3=t1+4;t3<=t1+2*n+2;t3++) { i = t1+1 ; - if ((-t1+t3-2)%2 == 0) { + if ((t1+t3)%2 == 0) { k = (-t1+t3-2)/2 ; S1(j = 1) ; } } for (t2=t1+3;t2<=-t1+2*n;t2++) { for (t3=1;t3<=n;t3++) { - if ((t1+t2-3)%2 == 0) { + if ((t1+t2+1)%2 == 0) { i = (t1+t2-3)/2 ; - if ((-t1+t2-1)%2 == 0) { + if ((t1+t2+1)%2 == 0) { j = (-t1+t2-1)/2 ; S2(k = t3) ; } @@ -453,9 +453,9 @@ for (t1=max(2,n-4);t1<=floord(2*n-3,2);t1++) { for (t3=t2+2;t3<=t2+2*n;t3++) { if ((t1+t2)%2 == 0) { i = (t1+t2)/2 ; - if ((-t1+t2)%2 == 0) { + if ((t1+t2)%2 == 0) { j = (-t1+t2)/2 ; - if ((-t2+t3)%2 == 0) { + if ((t2+t3)%2 == 0) { k = (-t2+t3)/2 ; S1 ; } @@ -465,9 +465,9 @@ for (t1=max(2,n-4);t1<=floord(2*n-3,2);t1++) { } for (t2=-t1+2*n+1;t2<=-t1+2*n+3;t2++) { for (t3=1;t3<=n;t3++) { - if ((t1+t2-3)%2 == 0) { + if ((t1+t2+1)%2 == 0) { i = (t1+t2-3)/2 ; - if ((-t1+t2-1)%2 == 0) { + if ((t1+t2+1)%2 == 0) { j = (-t1+t2-1)/2 ; S2(k = t3) ; } @@ -479,16 +479,16 @@ if (n >= 3) { t1 = n-1 ; t2 = n+1 ; for (t3=n+3;t3<=3*n+1;t3++) { - if ((t3-n-1)%2 == 0) { + if ((t3+n+1)%2 == 0) { k = (t3-n-1)/2 ; S1(i = n,j = 1) ; } } for (t2=n+2;t2<=n+4;t2++) { for (t3=1;t3<=n;t3++) { - if ((t2+n-4)%2 == 0) { + if ((t2+n)%2 == 0) { i = (t2+n-4)/2 ; - if ((t2-n)%2 == 0) { + if ((t2+n)%2 == 0) { j = (t2-n)/2 ; S2(k = t3) ; } diff --git a/test/dartef.f b/test/dartef.f index d7261eb..42ce0c9 100644 --- a/test/dartef.f +++ b/test/dartef.f @@ -1,10 +1,10 @@ -! Generated from ./test/dartef.cloog by CLooG v0.14.0 64 bits in 0.13s. -! CLooG asked for 168 KBytes. +! Generated from dartef.cloog by CLooG v0.14.0 gmp bits in 0.26s. +! CLooG asked for 460 KBytes. IF (n >= 1) THEN t1 = -n+1 t2 = n+1 DO t3=n+3, 3*n+1 - IF (MOD(t3-n-1,2) == 0) THEN + IF (MOD(t3+n+1, 2) == 0) THEN k = (t3-n-1)/2 S1(i = 1,j = n) END IF @@ -14,11 +14,11 @@ IF ((n >= 2) .AND. (n <= 2)) THEN t1 = -n+2 DO t2=-n+4, 3*n-2 DO t3=t2+2, t2+2*n - IF (MOD(t2-n+2,2) == 0) THEN + IF (MOD(t2+n, 2) == 0) THEN i = (t2-n+2)/2 - IF (MOD(t2+n-2,2) == 0) THEN + IF (MOD(t2+n, 2) == 0) THEN j = (t2+n-2)/2 - IF (MOD(-t2+t3,2) == 0) THEN + IF (MOD(t2+t3, 2) == 0) THEN k = (-t2+t3)/2 S1 END IF @@ -35,11 +35,11 @@ IF (n >= 3) THEN t1 = -n+2 DO t2=n, n+2 DO t3=t2+2, t2+2*n - IF (MOD(t2-n+2,2) == 0) THEN + IF (MOD(t2+n, 2) == 0) THEN i = (t2-n+2)/2 - IF (MOD(t2+n-2,2) == 0) THEN + IF (MOD(t2+n, 2) == 0) THEN j = (t2+n-2)/2 - IF (MOD(-t2+t3,2) == 0) THEN + IF (MOD(t2+t3, 2) == 0) THEN k = (-t2+t3)/2 S1 END IF @@ -55,11 +55,11 @@ END IF DO t1=CEILING(REAL(-2*n+5)/REAL(2)), MIN(-n+6,-1) DO t2=-t1+2, -t1+4 DO t3=t2+2, t2+2*n - IF (MOD(t1+t2,2) == 0) THEN + IF (MOD(t1+t2, 2) == 0) THEN i = (t1+t2)/2 - IF (MOD(-t1+t2,2) == 0) THEN + IF (MOD(t1+t2, 2) == 0) THEN j = (-t1+t2)/2 - IF (MOD(-t2+t3,2) == 0) THEN + IF (MOD(t2+t3, 2) == 0) THEN k = (-t2+t3)/2 S1 END IF @@ -69,20 +69,20 @@ DO t1=CEILING(REAL(-2*n+5)/REAL(2)), MIN(-n+6,-1) END DO DO t2=-t1+5, t1+2*n DO t3=1, n - IF (MOD(t1+t2-3,2) == 0) THEN + IF (MOD(t1+t2+1, 2) == 0) THEN i = (t1+t2-3)/2 - IF (MOD(-t1+t2-1,2) == 0) THEN + IF (MOD(t1+t2+1, 2) == 0) THEN j = (-t1+t2-1)/2 S2(k = t3) END IF END IF END DO DO t3=t2+2, t2+2*n - IF (MOD(t1+t2,2) == 0) THEN + IF (MOD(t1+t2, 2) == 0) THEN i = (t1+t2)/2 - IF (MOD(-t1+t2,2) == 0) THEN + IF (MOD(t1+t2, 2) == 0) THEN j = (-t1+t2)/2 - IF (MOD(-t2+t3,2) == 0) THEN + IF (MOD(t2+t3, 2) == 0) THEN k = (-t2+t3)/2 S1 END IF @@ -98,16 +98,16 @@ DO t1=CEILING(REAL(-2*n+5)/REAL(2)), MIN(-n+6,-1) END DO IF (n == 2) THEN DO t3=5, 2*n+3 - IF (MOD(t3-3,2) == 0) THEN + IF (MOD(t3+1, 2) == 0) THEN k = (t3-3)/2 S1(i = 2,j = 1) END IF END DO DO t2=4, 6 DO t3=1, n - IF (MOD(t2-2,2) == 0) THEN + IF (MOD(t2, 2) == 0) THEN i = (t2-2)/2 - IF (MOD(t2-2,2) == 0) THEN + IF (MOD(t2, 2) == 0) THEN j = (t2-2)/2 S2(k = t3) END IF @@ -118,11 +118,11 @@ END IF DO t1=-n+7, -1 DO t2=-t1+2, -t1+4 DO t3=t2+2, t2+2*n - IF (MOD(t1+t2,2) == 0) THEN + IF (MOD(t1+t2, 2) == 0) THEN i = (t1+t2)/2 - IF (MOD(-t1+t2,2) == 0) THEN + IF (MOD(t1+t2, 2) == 0) THEN j = (-t1+t2)/2 - IF (MOD(-t2+t3,2) == 0) THEN + IF (MOD(t2+t3, 2) == 0) THEN k = (-t2+t3)/2 S1 END IF @@ -132,27 +132,27 @@ DO t1=-n+7, -1 END DO DO t2=-t1+5, n-2 DO t3=1, t2+1 - IF (MOD(t1+t2-3,2) == 0) THEN + IF (MOD(t1+t2+1, 2) == 0) THEN i = (t1+t2-3)/2 - IF (MOD(-t1+t2-1,2) == 0) THEN + IF (MOD(t1+t2+1, 2) == 0) THEN j = (-t1+t2-1)/2 S2(k = t3) END IF END IF END DO DO t3=t2+2, n - IF (MOD(t1+t2-3,2) == 0) THEN + IF (MOD(t1+t2+1, 2) == 0) THEN i = (t1+t2-3)/2 - IF (MOD(-t1+t2-1,2) == 0) THEN + IF (MOD(t1+t2+1, 2) == 0) THEN j = (-t1+t2-1)/2 S2(k = t3) END IF END IF - IF (MOD(t1+t2,2) == 0) THEN + IF (MOD(t1+t2, 2) == 0) THEN i = (t1+t2)/2 - IF (MOD(-t1+t2,2) == 0) THEN + IF (MOD(t1+t2, 2) == 0) THEN j = (-t1+t2)/2 - IF (MOD(-t2+t3,2) == 0) THEN + IF (MOD(t2+t3, 2) == 0) THEN k = (-t2+t3)/2 S1 END IF @@ -160,11 +160,11 @@ DO t1=-n+7, -1 END IF END DO DO t3=n+1, t2+2*n - IF (MOD(t1+t2,2) == 0) THEN + IF (MOD(t1+t2, 2) == 0) THEN i = (t1+t2)/2 - IF (MOD(-t1+t2,2) == 0) THEN + IF (MOD(t1+t2, 2) == 0) THEN j = (-t1+t2)/2 - IF (MOD(-t2+t3,2) == 0) THEN + IF (MOD(t2+t3, 2) == 0) THEN k = (-t2+t3)/2 S1 END IF @@ -174,20 +174,20 @@ DO t1=-n+7, -1 END DO DO t2=n-1, t1+2*n DO t3=1, n - IF (MOD(t1+t2-3,2) == 0) THEN + IF (MOD(t1+t2+1, 2) == 0) THEN i = (t1+t2-3)/2 - IF (MOD(-t1+t2-1,2) == 0) THEN + IF (MOD(t1+t2+1, 2) == 0) THEN j = (-t1+t2-1)/2 S2(k = t3) END IF END IF END DO DO t3=t2+2, t2+2*n - IF (MOD(t1+t2,2) == 0) THEN + IF (MOD(t1+t2, 2) == 0) THEN i = (t1+t2)/2 - IF (MOD(-t1+t2,2) == 0) THEN + IF (MOD(t1+t2, 2) == 0) THEN j = (-t1+t2)/2 - IF (MOD(-t2+t3,2) == 0) THEN + IF (MOD(t2+t3, 2) == 0) THEN k = (-t2+t3)/2 S1 END IF @@ -205,11 +205,11 @@ IF (n >= 3) THEN DO t1=0, MIN(1,-n+6) DO t2=t1+2, -t1+4 DO t3=t2+2, t2+2*n - IF (MOD(t1+t2,2) == 0) THEN + IF (MOD(t1+t2, 2) == 0) THEN i = (t1+t2)/2 - IF (MOD(-t1+t2,2) == 0) THEN + IF (MOD(t1+t2, 2) == 0) THEN j = (-t1+t2)/2 - IF (MOD(-t2+t3,2) == 0) THEN + IF (MOD(t2+t3, 2) == 0) THEN k = (-t2+t3)/2 S1 END IF @@ -219,20 +219,20 @@ IF (n >= 3) THEN END DO DO t2=-t1+5, -t1+2*n DO t3=1, n - IF (MOD(t1+t2-3,2) == 0) THEN + IF (MOD(t1+t2+1, 2) == 0) THEN i = (t1+t2-3)/2 - IF (MOD(-t1+t2-1,2) == 0) THEN + IF (MOD(t1+t2+1, 2) == 0) THEN j = (-t1+t2-1)/2 S2(k = t3) END IF END IF END DO DO t3=t2+2, t2+2*n - IF (MOD(t1+t2,2) == 0) THEN + IF (MOD(t1+t2, 2) == 0) THEN i = (t1+t2)/2 - IF (MOD(-t1+t2,2) == 0) THEN + IF (MOD(t1+t2, 2) == 0) THEN j = (-t1+t2)/2 - IF (MOD(-t2+t3,2) == 0) THEN + IF (MOD(t2+t3, 2) == 0) THEN k = (-t2+t3)/2 S1 END IF @@ -242,9 +242,9 @@ IF (n >= 3) THEN END DO DO t2=-t1+2*n+1, t1+2*n+1 DO t3=1, n - IF (MOD(t1+t2-3,2) == 0) THEN + IF (MOD(t1+t2+1, 2) == 0) THEN i = (t1+t2-3)/2 - IF (MOD(-t1+t2-1,2) == 0) THEN + IF (MOD(t1+t2+1, 2) == 0) THEN j = (-t1+t2-1)/2 S2(k = t3) END IF @@ -256,11 +256,11 @@ END IF DO t1=MAX(-n+7,0), 1 DO t2=t1+2, -t1+4 DO t3=t2+2, t2+2*n - IF (MOD(t1+t2,2) == 0) THEN + IF (MOD(t1+t2, 2) == 0) THEN i = (t1+t2)/2 - IF (MOD(-t1+t2,2) == 0) THEN + IF (MOD(t1+t2, 2) == 0) THEN j = (-t1+t2)/2 - IF (MOD(-t2+t3,2) == 0) THEN + IF (MOD(t2+t3, 2) == 0) THEN k = (-t2+t3)/2 S1 END IF @@ -270,27 +270,27 @@ DO t1=MAX(-n+7,0), 1 END DO DO t2=-t1+5, n-2 DO t3=1, t2+1 - IF (MOD(t1+t2-3,2) == 0) THEN + IF (MOD(t1+t2+1, 2) == 0) THEN i = (t1+t2-3)/2 - IF (MOD(-t1+t2-1,2) == 0) THEN + IF (MOD(t1+t2+1, 2) == 0) THEN j = (-t1+t2-1)/2 S2(k = t3) END IF END IF END DO DO t3=t2+2, n - IF (MOD(t1+t2-3,2) == 0) THEN + IF (MOD(t1+t2+1, 2) == 0) THEN i = (t1+t2-3)/2 - IF (MOD(-t1+t2-1,2) == 0) THEN + IF (MOD(t1+t2+1, 2) == 0) THEN j = (-t1+t2-1)/2 S2(k = t3) END IF END IF - IF (MOD(t1+t2,2) == 0) THEN + IF (MOD(t1+t2, 2) == 0) THEN i = (t1+t2)/2 - IF (MOD(-t1+t2,2) == 0) THEN + IF (MOD(t1+t2, 2) == 0) THEN j = (-t1+t2)/2 - IF (MOD(-t2+t3,2) == 0) THEN + IF (MOD(t2+t3, 2) == 0) THEN k = (-t2+t3)/2 S1 END IF @@ -298,11 +298,11 @@ DO t1=MAX(-n+7,0), 1 END IF END DO DO t3=n+1, t2+2*n - IF (MOD(t1+t2,2) == 0) THEN + IF (MOD(t1+t2, 2) == 0) THEN i = (t1+t2)/2 - IF (MOD(-t1+t2,2) == 0) THEN + IF (MOD(t1+t2, 2) == 0) THEN j = (-t1+t2)/2 - IF (MOD(-t2+t3,2) == 0) THEN + IF (MOD(t2+t3, 2) == 0) THEN k = (-t2+t3)/2 S1 END IF @@ -312,20 +312,20 @@ DO t1=MAX(-n+7,0), 1 END DO DO t2=n-1, -t1+2*n DO t3=1, n - IF (MOD(t1+t2-3,2) == 0) THEN + IF (MOD(t1+t2+1, 2) == 0) THEN i = (t1+t2-3)/2 - IF (MOD(-t1+t2-1,2) == 0) THEN + IF (MOD(t1+t2+1, 2) == 0) THEN j = (-t1+t2-1)/2 S2(k = t3) END IF END IF END DO DO t3=t2+2, t2+2*n - IF (MOD(t1+t2,2) == 0) THEN + IF (MOD(t1+t2, 2) == 0) THEN i = (t1+t2)/2 - IF (MOD(-t1+t2,2) == 0) THEN + IF (MOD(t1+t2, 2) == 0) THEN j = (-t1+t2)/2 - IF (MOD(-t2+t3,2) == 0) THEN + IF (MOD(t2+t3, 2) == 0) THEN k = (-t2+t3)/2 S1 END IF @@ -335,9 +335,9 @@ DO t1=MAX(-n+7,0), 1 END DO DO t2=-t1+2*n+1, t1+2*n+1 DO t3=1, n - IF (MOD(t1+t2-3,2) == 0) THEN + IF (MOD(t1+t2+1, 2) == 0) THEN i = (t1+t2-3)/2 - IF (MOD(-t1+t2-1,2) == 0) THEN + IF (MOD(t1+t2+1, 2) == 0) THEN j = (-t1+t2-1)/2 S2(k = t3) END IF @@ -349,34 +349,34 @@ DO t1=2, n-5 t2 = t1+2 DO t3=t1+4, t1+2*n+2 i = t1+1 - IF (MOD(-t1+t3-2,2) == 0) THEN + IF (MOD(t1+t3, 2) == 0) THEN k = (-t1+t3-2)/2 S1(j = 1) END IF END DO DO t2=t1+3, n-2 DO t3=1, t2+1 - IF (MOD(t1+t2-3,2) == 0) THEN + IF (MOD(t1+t2+1, 2) == 0) THEN i = (t1+t2-3)/2 - IF (MOD(-t1+t2-1,2) == 0) THEN + IF (MOD(t1+t2+1, 2) == 0) THEN j = (-t1+t2-1)/2 S2(k = t3) END IF END IF END DO DO t3=t2+2, n - IF (MOD(t1+t2-3,2) == 0) THEN + IF (MOD(t1+t2+1, 2) == 0) THEN i = (t1+t2-3)/2 - IF (MOD(-t1+t2-1,2) == 0) THEN + IF (MOD(t1+t2+1, 2) == 0) THEN j = (-t1+t2-1)/2 S2(k = t3) END IF END IF - IF (MOD(t1+t2,2) == 0) THEN + IF (MOD(t1+t2, 2) == 0) THEN i = (t1+t2)/2 - IF (MOD(-t1+t2,2) == 0) THEN + IF (MOD(t1+t2, 2) == 0) THEN j = (-t1+t2)/2 - IF (MOD(-t2+t3,2) == 0) THEN + IF (MOD(t2+t3, 2) == 0) THEN k = (-t2+t3)/2 S1 END IF @@ -384,11 +384,11 @@ DO t1=2, n-5 END IF END DO DO t3=n+1, t2+2*n - IF (MOD(t1+t2,2) == 0) THEN + IF (MOD(t1+t2, 2) == 0) THEN i = (t1+t2)/2 - IF (MOD(-t1+t2,2) == 0) THEN + IF (MOD(t1+t2, 2) == 0) THEN j = (-t1+t2)/2 - IF (MOD(-t2+t3,2) == 0) THEN + IF (MOD(t2+t3, 2) == 0) THEN k = (-t2+t3)/2 S1 END IF @@ -398,20 +398,20 @@ DO t1=2, n-5 END DO DO t2=n-1, -t1+2*n DO t3=1, n - IF (MOD(t1+t2-3,2) == 0) THEN + IF (MOD(t1+t2+1, 2) == 0) THEN i = (t1+t2-3)/2 - IF (MOD(-t1+t2-1,2) == 0) THEN + IF (MOD(t1+t2+1, 2) == 0) THEN j = (-t1+t2-1)/2 S2(k = t3) END IF END IF END DO DO t3=t2+2, t2+2*n - IF (MOD(t1+t2,2) == 0) THEN + IF (MOD(t1+t2, 2) == 0) THEN i = (t1+t2)/2 - IF (MOD(-t1+t2,2) == 0) THEN + IF (MOD(t1+t2, 2) == 0) THEN j = (-t1+t2)/2 - IF (MOD(-t2+t3,2) == 0) THEN + IF (MOD(t2+t3, 2) == 0) THEN k = (-t2+t3)/2 S1 END IF @@ -421,9 +421,9 @@ DO t1=2, n-5 END DO DO t2=-t1+2*n+1, -t1+2*n+3 DO t3=1, n - IF (MOD(t1+t2-3,2) == 0) THEN + IF (MOD(t1+t2+1, 2) == 0) THEN i = (t1+t2-3)/2 - IF (MOD(-t1+t2-1,2) == 0) THEN + IF (MOD(t1+t2+1, 2) == 0) THEN j = (-t1+t2-1)/2 S2(k = t3) END IF @@ -435,27 +435,27 @@ DO t1=MAX(2,n-4), FLOOR(REAL(2*n-3)/REAL(2)) t2 = t1+2 DO t3=t1+4, t1+2*n+2 i = t1+1 - IF (MOD(-t1+t3-2,2) == 0) THEN + IF (MOD(t1+t3, 2) == 0) THEN k = (-t1+t3-2)/2 S1(j = 1) END IF END DO DO t2=t1+3, -t1+2*n DO t3=1, n - IF (MOD(t1+t2-3,2) == 0) THEN + IF (MOD(t1+t2+1, 2) == 0) THEN i = (t1+t2-3)/2 - IF (MOD(-t1+t2-1,2) == 0) THEN + IF (MOD(t1+t2+1, 2) == 0) THEN j = (-t1+t2-1)/2 S2(k = t3) END IF END IF END DO DO t3=t2+2, t2+2*n - IF (MOD(t1+t2,2) == 0) THEN + IF (MOD(t1+t2, 2) == 0) THEN i = (t1+t2)/2 - IF (MOD(-t1+t2,2) == 0) THEN + IF (MOD(t1+t2, 2) == 0) THEN j = (-t1+t2)/2 - IF (MOD(-t2+t3,2) == 0) THEN + IF (MOD(t2+t3, 2) == 0) THEN k = (-t2+t3)/2 S1 END IF @@ -465,9 +465,9 @@ DO t1=MAX(2,n-4), FLOOR(REAL(2*n-3)/REAL(2)) END DO DO t2=-t1+2*n+1, -t1+2*n+3 DO t3=1, n - IF (MOD(t1+t2-3,2) == 0) THEN + IF (MOD(t1+t2+1, 2) == 0) THEN i = (t1+t2-3)/2 - IF (MOD(-t1+t2-1,2) == 0) THEN + IF (MOD(t1+t2+1, 2) == 0) THEN j = (-t1+t2-1)/2 S2(k = t3) END IF @@ -479,16 +479,16 @@ IF (n >= 3) THEN t1 = n-1 t2 = n+1 DO t3=n+3, 3*n+1 - IF (MOD(t3-n-1,2) == 0) THEN + IF (MOD(t3+n+1, 2) == 0) THEN k = (t3-n-1)/2 S1(i = n,j = 1) END IF END DO DO t2=n+2, n+4 DO t3=1, n - IF (MOD(t2+n-4,2) == 0) THEN + IF (MOD(t2+n, 2) == 0) THEN i = (t2+n-4)/2 - IF (MOD(t2-n,2) == 0) THEN + IF (MOD(t2+n, 2) == 0) THEN j = (t2-n)/2 S2(k = t3) END IF diff --git a/test/levenshtein-1-2-3.c b/test/levenshtein-1-2-3.c index 0d3286e..8ef922e 100644 --- a/test/levenshtein-1-2-3.c +++ b/test/levenshtein-1-2-3.c @@ -1,4 +1,5 @@ -/* Generated by CLooG v0.10.7 */ +/* Generated from levenshtein-1-2-3.cloog by CLooG v0.14.0 gmp bits in 0.04s. */ +/* CLooG asked for 236 KBytes. */ S1(i = 0,j = 0) ; S2(i = 1,j = 0) ; S3(i = 1,j = 1) ; @@ -19,7 +20,7 @@ for (i=N+2;i<=2*M-N-2;i++) { for (j=ceild(i-N-2,2);j<=floord(i-N-1,2);j++) { S7 ; } - if ((i-N)%2 == 0) { + if ((i+N)%2 == 0) { j = (i-N)/2 ; S5 ; S8 ; diff --git a/test/levenshtein-1-2-3f.f b/test/levenshtein-1-2-3f.f index 26a99e9..802679e 100644 --- a/test/levenshtein-1-2-3f.f +++ b/test/levenshtein-1-2-3f.f @@ -1,4 +1,5 @@ -! Generated by CLooG v0.10.7 +! Generated from levenshtein-1-2-3f.cloog by CLooG v0.14.0 gmp bits in 0.04s. +! CLooG asked for 236 KBytes. S1(i = 0,j = 0) S2(i = 1,j = 0) S3(i = 1,j = 1) @@ -19,7 +20,7 @@ DO i=N+2, 2*M-N-2 DO j=CEILING(REAL(i-N-2)/REAL(2)), FLOOR(REAL(i-N-1)/REAL(2)) S7 END DO - IF (MOD(i-N,2) == 0) THEN + IF (MOD(i+N, 2) == 0) THEN j = (i-N)/2 S5 S8 @@ -28,7 +29,7 @@ DO i=N+2, 2*M-N-2 S6 S8 END DO - IF (MOD(i+N,2) == 0) THEN + IF (MOD(i+N, 2) == 0) THEN j = (i+N)/2 S4 S8 diff --git a/test/non_optimal/nul_complex1.c b/test/non_optimal/nul_complex1.c index f5ef020..2034696 100644 --- a/test/non_optimal/nul_complex1.c +++ b/test/non_optimal/nul_complex1.c @@ -1,8 +1,8 @@ -/* Generated from ./test/non_optimal/nul_complex1.cloog by CLooG v0.14.0 64 bits in 0.00s. */ -/* CLooG asked for 168 KBytes. */ +/* Generated from ./non_optimal/nul_complex1.cloog by CLooG v0.14.0 gmp bits in 0.01s. */ +/* CLooG asked for 80 KBytes. */ for (c1=0;c1<=5*n;c1++) { for (c2=max(c1-n,ceild(2*c1,3));c2<=min(c1,floord(2*c1+2*n,3));c2++) { - if (3*c2%2 == 0) { + if (c2%2 == 0) { i = (-2*c1+3*c2)/2 ; j = c1-c2 ; S1 ; diff --git a/test/orc.c b/test/orc.c index 2cbbeb9..2dc6210 100644 --- a/test/orc.c +++ b/test/orc.c @@ -1,8 +1,9 @@ -/* Generated by CLooG v0.10.7 */ +/* Generated from orc.cloog by CLooG v0.14.0 gmp bits in 0.07s. */ +/* CLooG asked for 404 KBytes. */ S1(i = 0) ; S2(i = 0,j = 0) ; for (p2=1;p2<=22;p2++) { - if ((p2-1)%2 == 0) { + if ((p2+1)%2 == 0) { j = (p2-1)/2 ; S3(i = 0) ; } @@ -12,11 +13,11 @@ for (p2=1;p2<=22;p2++) { } S3(i = 0,j = 11) ; for (p1=2;p1<=6;p1++) { - if ((p1-2)%3 == 0) { + if ((p1+1)%3 == 0) { i = (p1-2)/3 ; S4 ; } - if ((p1-1)%3 == 0) { + if ((p1+2)%3 == 0) { i = (p1-1)/3 ; S2(j = 0) ; } @@ -24,9 +25,9 @@ for (p1=2;p1<=6;p1++) { S1(i = p1/3) ; } for (p2=1;p2<=floord(-2*p1+68,3);p2++) { - if ((p1-1)%3 == 0) { + if ((p1+2)%3 == 0) { i = (p1-1)/3 ; - if ((p2-1)%2 == 0) { + if ((p2+1)%2 == 0) { j = (p2-1)/2 ; S3 ; } @@ -36,9 +37,9 @@ for (p1=2;p1<=6;p1++) { } } for (p2=ceild(-2*p1+69,3);p2<=floord(-2*p1+71,3);p2++) { - if ((p1-1)%3 == 0) { + if ((p1+2)%3 == 0) { i = (p1-1)/3 ; - if ((p2-1)%2 == 0) { + if ((p2+1)%2 == 0) { j = (p2-1)/2 ; S3 ; } @@ -47,7 +48,7 @@ for (p1=2;p1<=6;p1++) { } S2(i = 2,j = 0) ; for (p2=1;p2<=18;p2++) { - if ((p2-1)%2 == 0) { + if ((p2+1)%2 == 0) { j = (p2-1)/2 ; S3(i = 2) ; } @@ -63,11 +64,11 @@ for (p2=1;p2<=9;p2++) { S6(i = 0,j = p2) ; } for (p1=2;p1<=42;p1++) { - if ((p1-2)%3 == 0) { + if ((p1+1)%3 == 0) { i = (p1-2)/3 ; S7 ; } - if ((p1-1)%3 == 0) { + if ((p1+2)%3 == 0) { i = (p1-1)/3 ; S6(j = 0) ; } @@ -75,7 +76,7 @@ for (p1=2;p1<=42;p1++) { S5(i = p1/3) ; } for (p2=1;p2<=9;p2++) { - if ((p1-1)%3 == 0) { + if ((p1+2)%3 == 0) { i = (p1-1)/3 ; S6(j = p2) ; } diff --git a/test/reservoir/cholesky2.c b/test/reservoir/cholesky2.c index f4c398f..fc762df 100644 --- a/test/reservoir/cholesky2.c +++ b/test/reservoir/cholesky2.c @@ -1,12 +1,12 @@ -/* Generated from cholesky2.cloog by CLooG v0.14.0 64 bits in 0.01s. */ -/* CLooG asked for 160 KBytes. */ +/* Generated from ./reservoir/cholesky2.cloog by CLooG v0.14.0 gmp bits in 0.04s. */ +/* CLooG asked for 268 KBytes. */ for (c2=2;c2<=min(3,3*M-4);c2++) { if ((c2+1)%3 == 0) { i = (c2+1)/3 ; S1 ; } for (c4=ceild(c2+4,3);c4<=min(c2,M);c4++) { - if ((c2-c4+2)%2 == 0) { + if ((c2+c4)%2 == 0) { i = (c2-c4+2)/2 ; S2(j = c4) ; } @@ -24,7 +24,7 @@ for (c2=4;c2<=3*M-4;c2++) { } } for (c4=ceild(c2+4,3);c4<=min(M,c2);c4++) { - if ((c2-c4+2)%2 == 0) { + if ((c2+c4)%2 == 0) { i = (c2-c4+2)/2 ; S2(j = c4) ; } diff --git a/test/reservoir/jacobi3.c b/test/reservoir/jacobi3.c index 5e1a8b3..cafae37 100644 --- a/test/reservoir/jacobi3.c +++ b/test/reservoir/jacobi3.c @@ -1,5 +1,5 @@ -/* Generated from jacobi3.cloog by CLooG v0.14.0 64 bits in 0.01s. */ -/* CLooG asked for 160 KBytes. */ +/* Generated from ./reservoir/jacobi3.cloog by CLooG v0.14.0 gmp bits in 0.04s. */ +/* CLooG asked for 204 KBytes. */ if ((M >= 1) && (N >= 3)) { for (c4=2;c4<=N-1;c4++) { for (c6=2;c6<=N-1;c6++) { @@ -18,7 +18,7 @@ if (N >= 3) { } for (c4=2;c4<=N-1;c4++) { for (c6=2;c6<=N-1;c6++) { - if ((c2-1)%2 == 0) { + if ((c2+1)%2 == 0) { i = (c2-1)/2 ; S2(j = c4,k = c6) ; } diff --git a/test/reservoir/lim-lam1.c b/test/reservoir/lim-lam1.c index f515636..16ce41b 100644 --- a/test/reservoir/lim-lam1.c +++ b/test/reservoir/lim-lam1.c @@ -1,5 +1,5 @@ -/* Generated from lim-lam1.cloog by CLooG v0.14.0 64 bits in 0.01s. */ -/* CLooG asked for 160 KBytes. */ +/* Generated from ./reservoir/lim-lam1.cloog by CLooG v0.14.0 gmp bits in 0.02s. */ +/* CLooG asked for 192 KBytes. */ S1(i = 1,j = 100) ; for (c2=-98;c2<=0;c2++) { c4 = -2*c2+2 ; @@ -12,7 +12,7 @@ for (c2=-98;c2<=0;c2++) { S1(j = c4/2) ; } } - if ((c4-1)%2 == 0) { + if ((c4+1)%2 == 0) { i = (2*c2+c4-1)/2 ; if ((c4+1)%2 == 0) { j = (c4+1)/2 ; @@ -32,7 +32,7 @@ for (c2=1;c2<=99;c2++) { S1(j = c4/2) ; } } - if ((c4-1)%2 == 0) { + if ((c4+1)%2 == 0) { i = (2*c2+c4-1)/2 ; if ((c4+1)%2 == 0) { j = (c4+1)/2 ; diff --git a/test/reservoir/lim-lam3.c b/test/reservoir/lim-lam3.c index 56775e2..1f7ad4d 100644 --- a/test/reservoir/lim-lam3.c +++ b/test/reservoir/lim-lam3.c @@ -1,5 +1,5 @@ -/* Generated from lim-lam3.cloog by CLooG v0.14.0 64 bits in 0.01s. */ -/* CLooG asked for 160 KBytes. */ +/* Generated from ./reservoir/lim-lam3.cloog by CLooG v0.14.0 gmp bits in 0.04s. */ +/* CLooG asked for 304 KBytes. */ for (c2=5;c2<=min(5*M,8);c2++) { if (c2%5 == 0) { S4(i = c2/5) ; @@ -14,7 +14,7 @@ for (c2=9;c2<=min(13,5*M-1);c2++) { S4(i = c2/5) ; } for (c4=max(1,ceild(c2-3*M-1,2));c4<=floord(c2-4,5);c4++) { - if ((c2-2*c4-1)%3 == 0) { + if ((c2+c4+2)%3 == 0) { i = (c2-2*c4-1)/3 ; S3(j = c4) ; } @@ -35,7 +35,7 @@ for (c2=14;c2<=5*M-1;c2++) { S4(i = c2/5) ; } for (c4=max(ceild(c2-3*M-1,2),1);c4<=floord(c2-4,5);c4++) { - if ((c2-2*c4-1)%3 == 0) { + if ((c2+c4+2)%3 == 0) { i = (c2-2*c4-1)/3 ; S3(j = c4) ; } diff --git a/test/reservoir/liu-zhuge1.c b/test/reservoir/liu-zhuge1.c index 1ed9465..2a99902 100644 --- a/test/reservoir/liu-zhuge1.c +++ b/test/reservoir/liu-zhuge1.c @@ -1,9 +1,9 @@ -/* Generated from liu-zhuge1.cloog by CLooG v0.14.0 64 bits in 0.02s. */ -/* CLooG asked for 160 KBytes. */ +/* Generated from ./reservoir/liu-zhuge1.cloog by CLooG v0.14.0 gmp bits in 0.07s. */ +/* CLooG asked for 276 KBytes. */ if ((M >= 0) && (N >= 0)) { for (c2=-4;c2<=min(-1,3*M+N-4);c2++) { for (c4=max(0,c2-3*M+4);c4<=min(c2+4,N);c4++) { - if ((c2-c4+4)%3 == 0) { + if ((c2+2*c4+1)%3 == 0) { i = (c2-c4+4)/3 ; S1(j = c4) ; } @@ -13,19 +13,19 @@ if ((M >= 0) && (N >= 0)) { if ((M <= 1) && (M >= 0)) { for (c2=0;c2<=3*M+N-4;c2++) { for (c4=max(c2-3*M,0);c4<=c2;c4++) { - if ((c2-c4)%3 == 0) { + if ((c2+2*c4)%3 == 0) { i = (c2-c4)/3 ; S2(j = c4) ; } } for (c4=c2-3*M+4;c4<=min(c2+4,N);c4++) { - if ((c2-c4+4)%3 == 0) { + if ((c2+2*c4+1)%3 == 0) { i = (c2-c4+4)/3 ; S1(j = c4) ; } } for (c4=max(0,c2-3*M);c4<=c2;c4++) { - if ((c2-c4)%3 == 0) { + if ((c2+2*c4)%3 == 0) { i = (c2-c4)/3 ; S3(j = c4) ; } @@ -34,23 +34,23 @@ if ((M <= 1) && (M >= 0)) { } for (c2=0;c2<=min(3*M-4,N-1);c2++) { for (c4=0;c4<=c2;c4++) { - if ((c2-c4)%3 == 0) { + if ((c2+2*c4)%3 == 0) { i = (c2-c4)/3 ; S2(j = c4) ; } - if ((c2-c4+4)%3 == 0) { + if ((c2+2*c4+1)%3 == 0) { i = (c2-c4+4)/3 ; S1(j = c4) ; } } for (c4=c2+1;c4<=min(c2+4,N);c4++) { - if ((c2-c4+4)%3 == 0) { + if ((c2+2*c4+1)%3 == 0) { i = (c2-c4+4)/3 ; S1(j = c4) ; } } for (c4=0;c4<=c2;c4++) { - if ((c2-c4)%3 == 0) { + if ((c2+2*c4)%3 == 0) { i = (c2-c4)/3 ; S3(j = c4) ; } @@ -59,29 +59,29 @@ for (c2=0;c2<=min(3*M-4,N-1);c2++) { if (M >= 2) { for (c2=3*M-3;c2<=N-1;c2++) { for (c4=max(c2-3*M,0);c4<=c2-3*M+3;c4++) { - if ((c2-c4)%3 == 0) { + if ((c2+2*c4)%3 == 0) { i = (c2-c4)/3 ; S2(j = c4) ; } } for (c4=c2-3*M+4;c4<=c2;c4++) { - if ((c2-c4)%3 == 0) { + if ((c2+2*c4)%3 == 0) { i = (c2-c4)/3 ; S2(j = c4) ; } - if ((c2-c4+4)%3 == 0) { + if ((c2+2*c4+1)%3 == 0) { i = (c2-c4+4)/3 ; S1(j = c4) ; } } for (c4=c2+1;c4<=min(c2+4,N);c4++) { - if ((c2-c4+4)%3 == 0) { + if ((c2+2*c4+1)%3 == 0) { i = (c2-c4+4)/3 ; S1(j = c4) ; } } for (c4=max(0,c2-3*M);c4<=c2;c4++) { - if ((c2-c4)%3 == 0) { + if ((c2+2*c4)%3 == 0) { i = (c2-c4)/3 ; S3(j = c4) ; } @@ -91,17 +91,17 @@ if (M >= 2) { if (N >= 0) { for (c2=N;c2<=3*M-4;c2++) { for (c4=0;c4<=N;c4++) { - if ((c2-c4)%3 == 0) { + if ((c2+2*c4)%3 == 0) { i = (c2-c4)/3 ; S2(j = c4) ; } - if ((c2-c4+4)%3 == 0) { + if ((c2+2*c4+1)%3 == 0) { i = (c2-c4+4)/3 ; S1(j = c4) ; } } for (c4=0;c4<=N;c4++) { - if ((c2-c4)%3 == 0) { + if ((c2+2*c4)%3 == 0) { i = (c2-c4)/3 ; S3(j = c4) ; } @@ -110,23 +110,23 @@ if (N >= 0) { } for (c2=max(3*M-3,N);c2<=3*M+N-4;c2++) { for (c4=max(c2-3*M,0);c4<=c2-3*M+3;c4++) { - if ((c2-c4)%3 == 0) { + if ((c2+2*c4)%3 == 0) { i = (c2-c4)/3 ; S2(j = c4) ; } } for (c4=c2-3*M+4;c4<=N;c4++) { - if ((c2-c4)%3 == 0) { + if ((c2+2*c4)%3 == 0) { i = (c2-c4)/3 ; S2(j = c4) ; } - if ((c2-c4+4)%3 == 0) { + if ((c2+2*c4+1)%3 == 0) { i = (c2-c4+4)/3 ; S1(j = c4) ; } } for (c4=max(0,c2-3*M);c4<=N;c4++) { - if ((c2-c4)%3 == 0) { + if ((c2+2*c4)%3 == 0) { i = (c2-c4)/3 ; S3(j = c4) ; } @@ -135,13 +135,13 @@ for (c2=max(3*M-3,N);c2<=3*M+N-4;c2++) { if ((M >= 0) && (N >= 0)) { for (c2=max(3*M+N-3,0);c2<=3*M+N;c2++) { for (c4=max(0,c2-3*M);c4<=min(c2,N);c4++) { - if ((c2-c4)%3 == 0) { + if ((c2+2*c4)%3 == 0) { i = (c2-c4)/3 ; S2(j = c4) ; } } for (c4=max(0,c2-3*M);c4<=min(c2,N);c4++) { - if ((c2-c4)%3 == 0) { + if ((c2+2*c4)%3 == 0) { i = (c2-c4)/3 ; S3(j = c4) ; } diff --git a/test/reservoir/mg-interp.c b/test/reservoir/mg-interp.c index 8b8f280..a855680 100644 --- a/test/reservoir/mg-interp.c +++ b/test/reservoir/mg-interp.c @@ -1,5 +1,5 @@ -/* Generated from mg-interp.cloog by CLooG v0.14.0 64 bits in 0.26s. */ -/* CLooG asked for 808 KBytes. */ +/* Generated from ./reservoir/mg-interp.cloog by CLooG v0.14.0 gmp bits in 0.94s. */ +/* CLooG asked for 3476 KBytes. */ if ((M >= 2) && (N >= 4)) { for (c2=1;c2<=O-1;c2++) { for (c6=1;c6<=M;c6++) { @@ -25,7 +25,7 @@ if ((M >= 2) && (N >= 4)) { } for (c4=3;c4<=2*N-5;c4++) { for (c6=1;c6<=M-1;c6++) { - if ((c4-1)%2 == 0) { + if ((c4+1)%2 == 0) { j = (c4-1)/2 ; S10(i = c2,k = c6) ; } @@ -37,17 +37,17 @@ if ((M >= 2) && (N >= 4)) { } } for (c6=1;c6<=M-1;c6++) { - if ((c4+2)%2 == 0) { + if (c4%2 == 0) { j = (c4+2)/2 ; S6(i = c2,k = c6) ; S7(i = c2,k = c6) ; } - if ((c4+3)%2 == 0) { + if ((c4+1)%2 == 0) { j = (c4+3)/2 ; S1(i = c2,k = c6) ; } } - if ((c4+3)%2 == 0) { + if ((c4+1)%2 == 0) { j = (c4+3)/2 ; S1(i = c2,k = M) ; } @@ -153,7 +153,7 @@ if ((M >= 2) && (N == 2)) { if ((M == 1) && (N >= 3)) { for (c2=1;c2<=O-1;c2++) { for (c4=-1;c4<=0;c4++) { - if ((c4+3)%2 == 0) { + if ((c4+1)%2 == 0) { j = (c4+3)/2 ; S1(i = c2,k = 1) ; } @@ -163,7 +163,7 @@ if ((M == 1) && (N >= 3)) { j = (c4+1)/2 ; S3(i = c2,k = 1) ; } - if ((c4+3)%2 == 0) { + if ((c4+1)%2 == 0) { j = (c4+3)/2 ; S1(i = c2,k = 1) ; } @@ -202,7 +202,7 @@ if ((M >= 2) && (N >= 3)) { } } for (c6=1;c6<=M-1;c6++) { - if ((c4-1)%2 == 0) { + if ((c4+1)%2 == 0) { j = (c4-1)/2 ; S9(i = c2,k = c6) ; } diff --git a/test/reservoir/pingali6.c b/test/reservoir/pingali6.c index ec02f5f..120f9aa 100644 --- a/test/reservoir/pingali6.c +++ b/test/reservoir/pingali6.c @@ -1,5 +1,5 @@ -/* Generated from pingali6.cloog by CLooG v0.14.0 64 bits in 0.01s. */ -/* CLooG asked for 160 KBytes. */ +/* Generated from ./reservoir/pingali6.cloog by CLooG v0.14.0 gmp bits in 0.04s. */ +/* CLooG asked for 212 KBytes. */ if (N >= 3) { for (c4=2;c4<=N-1;c4++) { for (c6=2;c6<=N-1;c6++) { @@ -18,7 +18,7 @@ if (N >= 3) { } for (c4=2;c4<=N-1;c4++) { for (c6=2;c6<=N-1;c6++) { - if ((c2-1)%2 == 0) { + if ((c2+1)%2 == 0) { i = (c2-1)/2 ; S2(j = c4,k = c6) ; } diff --git a/test/reservoir/tang-xue1.c b/test/reservoir/tang-xue1.c index 063ae89..f7ae9f2 100644 --- a/test/reservoir/tang-xue1.c +++ b/test/reservoir/tang-xue1.c @@ -1,11 +1,11 @@ -/* Generated from tang-xue1.cloog by CLooG v0.14.0 64 bits in 0.01s. */ -/* CLooG asked for 160 KBytes. */ +/* Generated from ./reservoir/tang-xue1.cloog by CLooG v0.14.0 gmp bits in 0.03s. */ +/* CLooG asked for 152 KBytes. */ for (c2=0;c2<=9;c2++) { for (c4=max(-1,c2-9);c4<=min(4,c2+3);c4++) { for (c6=max(max(c2,1),c2-c4);c6<=min(min(c2+1,9),c2-c4+4);c6++) { for (c8=max(1,-c2+c4+c6);c8<=min(4,-c2+c4+c6+1);c8++) { if (c2%2 == 0) { - if ((-c2+c4)%2 == 0) { + if ((c2+c4)%2 == 0) { j = (-c2+c4)/2 ; k = -c2+c6 ; l = -c4+c8 ; diff --git a/test/reservoir/two.c b/test/reservoir/two.c index 9e75dce..cbec299 100644 --- a/test/reservoir/two.c +++ b/test/reservoir/two.c @@ -1,9 +1,9 @@ -/* Generated from two.cloog by CLooG v0.14.0 64 bits in 0.00s. */ -/* CLooG asked for 160 KBytes. */ +/* Generated from ./reservoir/two.cloog by CLooG v0.14.0 gmp bits in 0.00s. */ +/* CLooG asked for 56 KBytes. */ for (i=0;i<=1;i++) { - if ((-i+3)%2 == 0) { + if ((i+1)%2 == 0) { j = (-i+3)/2 ; - if ((i+9)%2 == 0) { + if ((i+1)%2 == 0) { k = (i+9)/2 ; S1 ; } diff --git a/test/vivien.c b/test/vivien.c index 67bf351..aebb657 100644 --- a/test/vivien.c +++ b/test/vivien.c @@ -1,7 +1,7 @@ -/* Generated from ./test/vivien.cloog by CLooG v0.14.0 64 bits in 0.27s. */ -/* CLooG asked for 292 KBytes. */ +/* Generated from vivien.cloog by CLooG v0.14.0 gmp bits in 0.62s. */ +/* CLooG asked for 1368 KBytes. */ for (p1=-54*n+4;p1<=min(4,4*n+1);p1++) { - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { i = (p1-2)/2 ; S1 ; } @@ -15,7 +15,7 @@ if (n >= 2) { S6(i = 1,j = 2) ; } for (p1=max(-54*n+4,4*n+2);p1<=6;p1++) { - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { i = (p1-2)/2 ; S1 ; } @@ -27,21 +27,21 @@ for (p1=7;p1<=min(2*n+2,9);p1++) { S4(i = -p2) ; } } - if ((p1-1)%4 == 0) { + if ((p1+3)%4 == 0) { i = (p1-1)/4 ; S3 ; } for (i=ceild(p1+1,4);i<=min(floord(p1-3,2),n);i++) { - if ((p1-1)%2 == 0) { + if ((p1+1)%2 == 0) { j = (p1-2*i-1)/2 ; S2 ; } } - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { i = (p1-2)/2 ; S1 ; } - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1-2)/2 ; S6(i = 1) ; } @@ -53,17 +53,17 @@ for (p1=2*n+3;p1<=min(4*n-2,9);p1++) { S4(i = -p2) ; } } - if ((p1-1)%4 == 0) { + if ((p1+3)%4 == 0) { i = (p1-1)/4 ; S3 ; } for (i=ceild(p1+1,4);i<=min(floord(p1-3,2),n);i++) { - if ((p1-1)%2 == 0) { + if ((p1+1)%2 == 0) { j = (p1-2*i-1)/2 ; S2 ; } } - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { i = (p1-2)/2 ; S1 ; } @@ -82,43 +82,43 @@ for (p1=10;p1<=min(12,2*n+2);p1++) { } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } } } - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1-4)/2 ; S6(i = 2) ; } for (i=max(3,ceild(p1+1,4));i<=min(floord(p1-3,2),n);i++) { - if ((p1-1)%2 == 0) { + if ((p1+1)%2 == 0) { j = (p1-2*i-1)/2 ; S2 ; } } - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { i = (p1-2)/2 ; S1 ; } - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1-2)/2 ; S6(i = 1) ; } } if ((n >= 5) && (n <= 5)) { - if (9%2 == 0) { + if (1%2 == 0) { S4(i = 2,j = 9/2) ; } for (p2=-1;p2<=floord(2*n-13,2);p2++) { - if (13%2 == 0) { + if (1%2 == 0) { j = (2*p2+13)/2 ; S4(i = -p2) ; } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if (11%2 == 0) { + if (1%2 == 0) { j = (2*p2+11)/2 ; S5(k = p3) ; } @@ -127,13 +127,13 @@ if ((n >= 5) && (n <= 5)) { for (p2=n-6;p2<=-1;p2++) { for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if (11%2 == 0) { + if (1%2 == 0) { j = (2*p2+11)/2 ; S5(k = p3) ; } } } - if (9%2 == 0) { + if (1%2 == 0) { S6(i = 2,j = 9/2) ; } S3(i = 3) ; @@ -141,21 +141,21 @@ if ((n >= 5) && (n <= 5)) { j = -i+6 ; S2 ; } - if (11%2 == 0) { + if (1%2 == 0) { S1(i = 11/2) ; } } if (n >= 6) { - if (9%2 == 0) { + if (1%2 == 0) { S4(i = 2,j = 9/2) ; } - if (11%2 == 0) { + if (1%2 == 0) { S4(i = 1,j = 11/2) ; } - if (9%2 == 0) { + if (1%2 == 0) { S5(i = 2,j = 9/2,k = 1) ; } - if (9%2 == 0) { + if (1%2 == 0) { S6(i = 2,j = 9/2) ; } S3(i = 3) ; @@ -163,10 +163,10 @@ if (n >= 6) { j = -i+6 ; S2 ; } - if (11%2 == 0) { + if (1%2 == 0) { S1(i = 11/2) ; } - if (11%2 == 0) { + if (1%2 == 0) { S6(i = 1,j = 11/2) ; } } @@ -180,23 +180,23 @@ for (p1=max(max(4*n-5,10),2*n+3);p1<=min(12,2*n+4);p1++) { for (p2=max(ceild(-p1+2*n+1,2),ceild(-p1+6,4));p2<=-1;p2++) { for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } } } - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1-4)/2 ; S6(i = 2) ; } for (i=max(3,ceild(p1+1,4));i<=min(floord(p1-3,2),n);i++) { - if ((p1-1)%2 == 0) { + if ((p1+1)%2 == 0) { j = (p1-2*i-1)/2 ; S2 ; } } - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { i = (p1-2)/2 ; S1 ; } @@ -215,7 +215,7 @@ for (p1=14;p1<=2*n+2;p1++) { } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -227,44 +227,44 @@ for (p1=14;p1<=2*n+2;p1++) { S4(i = -p2) ; } i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } } } - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1-4)/2 ; S6(i = 2) ; } - if ((p1-1)%4 == 0) { + if ((p1+3)%4 == 0) { i = (p1-1)/4 ; S3 ; } for (i=ceild(p1+1,4);i<=min(floord(p1-3,2),n);i++) { - if ((p1-1)%2 == 0) { + if ((p1+1)%2 == 0) { j = (p1-2*i-1)/2 ; S2 ; } } - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { i = (p1-2)/2 ; S1 ; } - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1-2)/2 ; S6(i = 1) ; } } if ((n >= 4) && (n <= 4)) { for (p2=-2;p2<=floord(2*n-13,2);p2++) { - if (13%2 == 0) { + if (1%2 == 0) { j = (2*p2+13)/2 ; S4(i = -p2) ; } @@ -272,7 +272,7 @@ if ((n >= 4) && (n <= 4)) { for (p2=-1;p2<=floord(2*n-11,2);p2++) { for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if (11%2 == 0) { + if (1%2 == 0) { j = (2*p2+11)/2 ; S5(k = p3) ; } @@ -283,7 +283,7 @@ if ((n >= 4) && (n <= 4)) { j = -i+6 ; S2 ; } - if (11%2 == 0) { + if (1%2 == 0) { S1(i = 11/2) ; } } @@ -301,7 +301,7 @@ for (p1=2*n+3;p1<=min(4*n-10,2*n+4);p1++) { } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -313,13 +313,13 @@ for (p1=2*n+3;p1<=min(4*n-10,2*n+4);p1++) { S4(i = -p2) ; } i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -327,33 +327,33 @@ for (p1=2*n+3;p1<=min(4*n-10,2*n+4);p1++) { } for (p2=ceild(-p1+2*n+1,2);p2<=-1;p2++) { i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } } } - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1-4)/2 ; S6(i = 2) ; } - if ((p1-1)%4 == 0) { + if ((p1+3)%4 == 0) { i = (p1-1)/4 ; S3 ; } for (i=ceild(p1+1,4);i<=min(floord(p1-3,2),n);i++) { - if ((p1-1)%2 == 0) { + if ((p1+1)%2 == 0) { j = (p1-2*i-1)/2 ; S2 ; } } - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { i = (p1-2)/2 ; S1 ; } @@ -372,7 +372,7 @@ for (p1=2*n+5;p1<=min(4*n-10,2*n+58);p1++) { } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -384,13 +384,13 @@ for (p1=2*n+5;p1<=min(4*n-10,2*n+58);p1++) { S4(i = -p2) ; } i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -398,13 +398,13 @@ for (p1=2*n+5;p1<=min(4*n-10,2*n+58);p1++) { } for (p2=ceild(-p1+2*n+1,2);p2<=floord(-p1+2*n+2,2);p2++) { i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -412,22 +412,22 @@ for (p1=2*n+5;p1<=min(4*n-10,2*n+58);p1++) { } for (p2=ceild(-p1+2*n+3,2);p2<=min(floord(-p1+2*n+4,2),-1);p2++) { i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } } - if ((p1-1)%4 == 0) { + if ((p1+3)%4 == 0) { i = (p1-1)/4 ; S3 ; } for (i=ceild(p1+1,4);i<=n;i++) { - if ((p1-1)%2 == 0) { + if ((p1+1)%2 == 0) { j = (p1-2*i-1)/2 ; S2 ; } } - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { i = (p1-2)/2 ; S1 ; } @@ -446,7 +446,7 @@ for (p1=max(4*n-9,2*n+3);p1<=min(4*n-8,2*n+4);p1++) { } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -454,33 +454,33 @@ for (p1=max(4*n-9,2*n+3);p1<=min(4*n-8,2*n+4);p1++) { } for (p2=ceild(-p1+2*n+1,2);p2<=-1;p2++) { i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } } } - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1-4)/2 ; S6(i = 2) ; } - if ((p1-1)%4 == 0) { + if ((p1+3)%4 == 0) { i = (p1-1)/4 ; S3 ; } for (i=ceild(p1+1,4);i<=min(floord(p1-3,2),n);i++) { - if ((p1-1)%2 == 0) { + if ((p1+1)%2 == 0) { j = (p1-2*i-1)/2 ; S2 ; } } - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { i = (p1-2)/2 ; S1 ; } @@ -499,7 +499,7 @@ for (p1=max(4*n-7,14);p1<=2*n+4;p1++) { } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -508,7 +508,7 @@ for (p1=max(4*n-7,14);p1<=2*n+4;p1++) { for (p2=ceild(-p1+2*n+1,2);p2<=floord(-p1+9,4);p2++) { for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -516,33 +516,33 @@ for (p1=max(4*n-7,14);p1<=2*n+4;p1++) { } for (p2=ceild(-p1+10,4);p2<=-1;p2++) { i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } } } - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1-4)/2 ; S6(i = 2) ; } - if ((p1-1)%4 == 0) { + if ((p1+3)%4 == 0) { i = (p1-1)/4 ; S3 ; } for (i=ceild(p1+1,4);i<=min(floord(p1-3,2),n);i++) { - if ((p1-1)%2 == 0) { + if ((p1+1)%2 == 0) { j = (p1-2*i-1)/2 ; S2 ; } } - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { i = (p1-2)/2 ; S1 ; } @@ -561,7 +561,7 @@ for (p1=max(4*n-9,2*n+5);p1<=min(4*n-8,2*n+58);p1++) { } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -569,13 +569,13 @@ for (p1=max(4*n-9,2*n+5);p1<=min(4*n-8,2*n+58);p1++) { } for (p2=ceild(-p1+2*n+1,2);p2<=floord(-p1+2*n+2,2);p2++) { i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -583,22 +583,22 @@ for (p1=max(4*n-9,2*n+5);p1<=min(4*n-8,2*n+58);p1++) { } for (p2=ceild(-p1+2*n+3,2);p2<=min(floord(-p1+2*n+4,2),-1);p2++) { i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } } - if ((p1-1)%4 == 0) { + if ((p1+3)%4 == 0) { i = (p1-1)/4 ; S3 ; } for (i=ceild(p1+1,4);i<=n;i++) { - if ((p1-1)%2 == 0) { + if ((p1+1)%2 == 0) { j = (p1-2*i-1)/2 ; S2 ; } } - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { i = (p1-2)/2 ; S1 ; } @@ -617,7 +617,7 @@ for (p1=max(4*n-7,2*n+5);p1<=min(4*n-6,2*n+58);p1++) { } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -626,7 +626,7 @@ for (p1=max(4*n-7,2*n+5);p1<=min(4*n-6,2*n+58);p1++) { for (p2=ceild(-p1+2*n+1,2);p2<=floord(-p1+9,4);p2++) { for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -634,13 +634,13 @@ for (p1=max(4*n-7,2*n+5);p1<=min(4*n-6,2*n+58);p1++) { } for (p2=ceild(-p1+10,4);p2<=floord(-p1+2*n+2,2);p2++) { i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -648,22 +648,22 @@ for (p1=max(4*n-7,2*n+5);p1<=min(4*n-6,2*n+58);p1++) { } for (p2=ceild(-p1+2*n+3,2);p2<=min(floord(-p1+2*n+4,2),-1);p2++) { i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } } - if ((p1-1)%4 == 0) { + if ((p1+3)%4 == 0) { i = (p1-1)/4 ; S3 ; } for (i=ceild(p1+1,4);i<=n;i++) { - if ((p1-1)%2 == 0) { + if ((p1+1)%2 == 0) { j = (p1-2*i-1)/2 ; S2 ; } } - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { i = (p1-2)/2 ; S1 ; } @@ -678,7 +678,7 @@ for (p1=max(max(4*n-5,14),2*n+5);p1<=min(4*n-2,2*n+58);p1++) { for (p2=max(ceild(-p1+2*n+1,2),ceild(-p1+6,4));p2<=floord(-p1+2*n+2,2);p2++) { for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -686,22 +686,22 @@ for (p1=max(max(4*n-5,14),2*n+5);p1<=min(4*n-2,2*n+58);p1++) { } for (p2=max(ceild(-p1+10,4),ceild(-p1+2*n+3,2));p2<=min(floord(-p1+2*n+4,2),-1);p2++) { i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } } - if ((p1-1)%4 == 0) { + if ((p1+3)%4 == 0) { i = (p1-1)/4 ; S3 ; } for (i=ceild(p1+1,4);i<=n;i++) { - if ((p1-1)%2 == 0) { + if ((p1+1)%2 == 0) { j = (p1-2*i-1)/2 ; S2 ; } } - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { i = (p1-2)/2 ; S1 ; } @@ -729,7 +729,7 @@ for (p1=2*n+59;p1<=4*n-10;p1++) { } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -741,13 +741,13 @@ for (p1=2*n+59;p1<=4*n-10;p1++) { S4(i = -p2) ; } i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -755,13 +755,13 @@ for (p1=2*n+59;p1<=4*n-10;p1++) { } for (p2=ceild(-p1+2*n+1,2);p2<=floord(-p1+2*n+2,2);p2++) { i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -769,17 +769,17 @@ for (p1=2*n+59;p1<=4*n-10;p1++) { } for (p2=ceild(-p1+2*n+3,2);p2<=floord(-p1+2*n+4,2);p2++) { i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } } - if ((p1-1)%4 == 0) { + if ((p1+3)%4 == 0) { i = (p1-1)/4 ; S3 ; } for (i=ceild(p1+1,4);i<=n;i++) { - if ((p1-1)%2 == 0) { + if ((p1+1)%2 == 0) { j = (p1-2*i-1)/2 ; S2 ; } @@ -799,7 +799,7 @@ for (p1=max(4*n-9,2*n+59);p1<=4*n-8;p1++) { } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -807,13 +807,13 @@ for (p1=max(4*n-9,2*n+59);p1<=4*n-8;p1++) { } for (p2=ceild(-p1+2*n+1,2);p2<=floord(-p1+2*n+2,2);p2++) { i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -821,17 +821,17 @@ for (p1=max(4*n-9,2*n+59);p1<=4*n-8;p1++) { } for (p2=ceild(-p1+2*n+3,2);p2<=floord(-p1+2*n+4,2);p2++) { i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } } - if ((p1-1)%4 == 0) { + if ((p1+3)%4 == 0) { i = (p1-1)/4 ; S3 ; } for (i=ceild(p1+1,4);i<=n;i++) { - if ((p1-1)%2 == 0) { + if ((p1+1)%2 == 0) { j = (p1-2*i-1)/2 ; S2 ; } @@ -851,7 +851,7 @@ for (p1=max(4*n-7,2*n+59);p1<=4*n-6;p1++) { } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -860,7 +860,7 @@ for (p1=max(4*n-7,2*n+59);p1<=4*n-6;p1++) { for (p2=ceild(-p1+2*n+1,2);p2<=floord(-p1+9,4);p2++) { for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -868,13 +868,13 @@ for (p1=max(4*n-7,2*n+59);p1<=4*n-6;p1++) { } for (p2=ceild(-p1+10,4);p2<=floord(-p1+2*n+2,2);p2++) { i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -882,17 +882,17 @@ for (p1=max(4*n-7,2*n+59);p1<=4*n-6;p1++) { } for (p2=ceild(-p1+2*n+3,2);p2<=floord(-p1+2*n+4,2);p2++) { i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } } - if ((p1-1)%4 == 0) { + if ((p1+3)%4 == 0) { i = (p1-1)/4 ; S3 ; } for (i=ceild(p1+1,4);i<=n;i++) { - if ((p1-1)%2 == 0) { + if ((p1+1)%2 == 0) { j = (p1-2*i-1)/2 ; S2 ; } @@ -908,7 +908,7 @@ for (p1=max(4*n-5,2*n+59);p1<=4*n-2;p1++) { for (p2=max(ceild(-p1+2*n+1,2),ceild(-p1+6,4));p2<=floord(-p1+2*n+2,2);p2++) { for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -916,28 +916,28 @@ for (p1=max(4*n-5,2*n+59);p1<=4*n-2;p1++) { } for (p2=max(ceild(-p1+10,4),ceild(-p1+2*n+3,2));p2<=floord(-p1+2*n+4,2);p2++) { i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } } - if ((p1-1)%4 == 0) { + if ((p1+3)%4 == 0) { i = (p1-1)/4 ; S3 ; } for (i=ceild(p1+1,4);i<=n;i++) { - if ((p1-1)%2 == 0) { + if ((p1+1)%2 == 0) { j = (p1-2*i-1)/2 ; S2 ; } } } for (p1=max(4*n,7);p1<=min(4*n+1,2*n+58);p1++) { - if ((p1-1)%4 == 0) { + if ((p1+3)%4 == 0) { i = (p1-1)/4 ; S3 ; } - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { i = (p1-2)/2 ; S1 ; } @@ -948,13 +948,13 @@ if (n >= 30) { S2(i = n) ; } for (p1=max(max(-54*n+4,4*n+2),7);p1<=2*n+58;p1++) { - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { i = (p1-2)/2 ; S1 ; } } for (p1=max(4*n,2*n+59);p1<=4*n+1;p1++) { - if ((p1-1)%4 == 0) { + if ((p1+3)%4 == 0) { i = (p1-1)/4 ; S3 ; } diff --git a/test/vivien2.c b/test/vivien2.c index 5bd9b0f..e4be8dd 100644 --- a/test/vivien2.c +++ b/test/vivien2.c @@ -1,7 +1,7 @@ -/* Generated from ./test/vivien2.cloog by CLooG v0.14.0 64 bits in 0.24s. */ -/* CLooG asked for 296 KBytes. */ +/* Generated from vivien2.cloog by CLooG v0.14.0 gmp bits in 0.51s. */ +/* CLooG asked for 1188 KBytes. */ for (p1=-54*n+4;p1<=4;p1++) { - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { i = (p1-2)/2 ; S1 ; } @@ -17,21 +17,21 @@ for (p1=7;p1<=9;p1++) { S4(i = -p2) ; } } - if ((p1-1)%4 == 0) { + if ((p1+3)%4 == 0) { i = (p1-1)/4 ; S3 ; } for (i=ceild(p1+1,4);i<=floord(p1-3,2);i++) { - if ((p1-1)%2 == 0) { + if ((p1+1)%2 == 0) { j = (p1-2*i-1)/2 ; S2 ; } } - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { i = (p1-2)/2 ; S1 ; } - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1-2)/2 ; S6(i = 1) ; } @@ -50,41 +50,41 @@ for (p1=10;p1<=12;p1++) { } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } } } - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1-4)/2 ; S6(i = 2) ; } for (i=max(ceild(p1+1,4),3);i<=floord(p1-3,2);i++) { - if ((p1-1)%2 == 0) { + if ((p1+1)%2 == 0) { j = (p1-2*i-1)/2 ; S2 ; } } - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { i = (p1-2)/2 ; S1 ; } - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1-2)/2 ; S6(i = 1) ; } } -if (9%2 == 0) { +if (1%2 == 0) { S4(i = 2,j = 9/2) ; } -if (11%2 == 0) { +if (1%2 == 0) { S4(i = 1,j = 11/2) ; } -if (9%2 == 0) { +if (1%2 == 0) { S5(i = 2,j = 9/2,k = 1) ; } -if (9%2 == 0) { +if (1%2 == 0) { S6(i = 2,j = 9/2) ; } S3(i = 3) ; @@ -92,10 +92,10 @@ for (i=4;i<=min(5,n);i++) { j = -i+6 ; S2 ; } -if (11%2 == 0) { +if (1%2 == 0) { S1(i = 11/2) ; } -if (11%2 == 0) { +if (1%2 == 0) { S6(i = 1,j = 11/2) ; } for (p1=14;p1<=2*n+2;p1++) { @@ -112,7 +112,7 @@ for (p1=14;p1<=2*n+2;p1++) { } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -124,37 +124,37 @@ for (p1=14;p1<=2*n+2;p1++) { S4(i = -p2) ; } i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } } } - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1-4)/2 ; S6(i = 2) ; } - if ((p1-1)%4 == 0) { + if ((p1+3)%4 == 0) { i = (p1-1)/4 ; S3 ; } for (i=ceild(p1+1,4);i<=min(floord(p1-3,2),n);i++) { - if ((p1-1)%2 == 0) { + if ((p1+1)%2 == 0) { j = (p1-2*i-1)/2 ; S2 ; } } - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { i = (p1-2)/2 ; S1 ; } - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1-2)/2 ; S6(i = 1) ; } @@ -173,7 +173,7 @@ for (p1=2*n+3;p1<=2*n+4;p1++) { } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -185,13 +185,13 @@ for (p1=2*n+3;p1<=2*n+4;p1++) { S4(i = -p2) ; } i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -199,33 +199,33 @@ for (p1=2*n+3;p1<=2*n+4;p1++) { } for (p2=ceild(-p1+2*n+1,2);p2<=-1;p2++) { i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } } } - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1-4)/2 ; S6(i = 2) ; } - if ((p1-1)%4 == 0) { + if ((p1+3)%4 == 0) { i = (p1-1)/4 ; S3 ; } for (i=ceild(p1+1,4);i<=min(floord(p1-3,2),n);i++) { - if ((p1-1)%2 == 0) { + if ((p1+1)%2 == 0) { j = (p1-2*i-1)/2 ; S2 ; } } - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { i = (p1-2)/2 ; S1 ; } @@ -244,7 +244,7 @@ for (p1=2*n+5;p1<=min(4*n-10,2*n+58);p1++) { } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -256,13 +256,13 @@ for (p1=2*n+5;p1<=min(4*n-10,2*n+58);p1++) { S4(i = -p2) ; } i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -270,13 +270,13 @@ for (p1=2*n+5;p1<=min(4*n-10,2*n+58);p1++) { } for (p2=ceild(-p1+2*n+1,2);p2<=floord(-p1+2*n+2,2);p2++) { i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -284,22 +284,22 @@ for (p1=2*n+5;p1<=min(4*n-10,2*n+58);p1++) { } for (p2=ceild(-p1+2*n+3,2);p2<=min(floord(-p1+2*n+4,2),-1);p2++) { i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } } - if ((p1-1)%4 == 0) { + if ((p1+3)%4 == 0) { i = (p1-1)/4 ; S3 ; } for (i=ceild(p1+1,4);i<=n;i++) { - if ((p1-1)%2 == 0) { + if ((p1+1)%2 == 0) { j = (p1-2*i-1)/2 ; S2 ; } } - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { i = (p1-2)/2 ; S1 ; } @@ -318,7 +318,7 @@ for (p1=4*n-9;p1<=min(4*n-8,2*n+58);p1++) { } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -326,13 +326,13 @@ for (p1=4*n-9;p1<=min(4*n-8,2*n+58);p1++) { } for (p2=ceild(-p1+2*n+1,2);p2<=floord(-p1+2*n+2,2);p2++) { i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -340,22 +340,22 @@ for (p1=4*n-9;p1<=min(4*n-8,2*n+58);p1++) { } for (p2=ceild(-p1+2*n+3,2);p2<=floord(-p1+2*n+4,2);p2++) { i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } } - if ((p1-1)%4 == 0) { + if ((p1+3)%4 == 0) { i = (p1-1)/4 ; S3 ; } for (i=ceild(p1+1,4);i<=n;i++) { - if ((p1-1)%2 == 0) { + if ((p1+1)%2 == 0) { j = (p1-2*i-1)/2 ; S2 ; } } - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { i = (p1-2)/2 ; S1 ; } @@ -374,7 +374,7 @@ for (p1=4*n-7;p1<=min(4*n-6,2*n+58);p1++) { } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -383,7 +383,7 @@ for (p1=4*n-7;p1<=min(4*n-6,2*n+58);p1++) { for (p2=ceild(-p1+2*n+1,2);p2<=floord(-p1+9,4);p2++) { for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -391,13 +391,13 @@ for (p1=4*n-7;p1<=min(4*n-6,2*n+58);p1++) { } for (p2=ceild(-p1+10,4);p2<=floord(-p1+2*n+2,2);p2++) { i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -405,22 +405,22 @@ for (p1=4*n-7;p1<=min(4*n-6,2*n+58);p1++) { } for (p2=ceild(-p1+2*n+3,2);p2<=floord(-p1+2*n+4,2);p2++) { i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } } - if ((p1-1)%4 == 0) { + if ((p1+3)%4 == 0) { i = (p1-1)/4 ; S3 ; } for (i=ceild(p1+1,4);i<=n;i++) { - if ((p1-1)%2 == 0) { + if ((p1+1)%2 == 0) { j = (p1-2*i-1)/2 ; S2 ; } } - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { i = (p1-2)/2 ; S1 ; } @@ -435,7 +435,7 @@ for (p1=4*n-5;p1<=2*n+58;p1++) { for (p2=max(ceild(-p1+2*n+1,2),ceild(-p1+6,4));p2<=floord(-p1+2*n+2,2);p2++) { for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -443,22 +443,22 @@ for (p1=4*n-5;p1<=2*n+58;p1++) { } for (p2=max(ceild(-p1+2*n+3,2),ceild(-p1+10,4));p2<=floord(-p1+2*n+4,2);p2++) { i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } } - if ((p1-1)%4 == 0) { + if ((p1+3)%4 == 0) { i = (p1-1)/4 ; S3 ; } for (i=ceild(p1+1,4);i<=n;i++) { - if ((p1-1)%2 == 0) { + if ((p1+1)%2 == 0) { j = (p1-2*i-1)/2 ; S2 ; } } - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { i = (p1-2)/2 ; S1 ; } @@ -477,7 +477,7 @@ for (p1=2*n+59;p1<=4*n-10;p1++) { } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -489,13 +489,13 @@ for (p1=2*n+59;p1<=4*n-10;p1++) { S4(i = -p2) ; } i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -503,13 +503,13 @@ for (p1=2*n+59;p1<=4*n-10;p1++) { } for (p2=ceild(-p1+2*n+1,2);p2<=floord(-p1+2*n+2,2);p2++) { i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -517,17 +517,17 @@ for (p1=2*n+59;p1<=4*n-10;p1++) { } for (p2=ceild(-p1+2*n+3,2);p2<=floord(-p1+2*n+4,2);p2++) { i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } } - if ((p1-1)%4 == 0) { + if ((p1+3)%4 == 0) { i = (p1-1)/4 ; S3 ; } for (i=ceild(p1+1,4);i<=n;i++) { - if ((p1-1)%2 == 0) { + if ((p1+1)%2 == 0) { j = (p1-2*i-1)/2 ; S2 ; } @@ -547,7 +547,7 @@ for (p1=max(4*n-9,2*n+59);p1<=4*n-8;p1++) { } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -555,13 +555,13 @@ for (p1=max(4*n-9,2*n+59);p1<=4*n-8;p1++) { } for (p2=ceild(-p1+2*n+1,2);p2<=floord(-p1+2*n+2,2);p2++) { i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -569,17 +569,17 @@ for (p1=max(4*n-9,2*n+59);p1<=4*n-8;p1++) { } for (p2=ceild(-p1+2*n+3,2);p2<=floord(-p1+2*n+4,2);p2++) { i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } } - if ((p1-1)%4 == 0) { + if ((p1+3)%4 == 0) { i = (p1-1)/4 ; S3 ; } for (i=ceild(p1+1,4);i<=n;i++) { - if ((p1-1)%2 == 0) { + if ((p1+1)%2 == 0) { j = (p1-2*i-1)/2 ; S2 ; } @@ -599,7 +599,7 @@ for (p1=max(4*n-7,2*n+59);p1<=4*n-6;p1++) { } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -608,7 +608,7 @@ for (p1=max(4*n-7,2*n+59);p1<=4*n-6;p1++) { for (p2=ceild(-p1+2*n+1,2);p2<=floord(-p1+9,4);p2++) { for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -616,13 +616,13 @@ for (p1=max(4*n-7,2*n+59);p1<=4*n-6;p1++) { } for (p2=ceild(-p1+10,4);p2<=floord(-p1+2*n+2,2);p2++) { i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -630,17 +630,17 @@ for (p1=max(4*n-7,2*n+59);p1<=4*n-6;p1++) { } for (p2=ceild(-p1+2*n+3,2);p2<=floord(-p1+2*n+4,2);p2++) { i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } } - if ((p1-1)%4 == 0) { + if ((p1+3)%4 == 0) { i = (p1-1)/4 ; S3 ; } for (i=ceild(p1+1,4);i<=n;i++) { - if ((p1-1)%2 == 0) { + if ((p1+1)%2 == 0) { j = (p1-2*i-1)/2 ; S2 ; } @@ -656,7 +656,7 @@ for (p1=max(4*n-5,2*n+59);p1<=4*n-2;p1++) { for (p2=max(ceild(-p1+2*n+1,2),ceild(-p1+6,4));p2<=floord(-p1+2*n+2,2);p2++) { for (p3=1;p3<=-p2;p3++) { i = -p2+1 ; - if ((p1-2)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-2)/2 ; S5(k = p3) ; } @@ -664,17 +664,17 @@ for (p1=max(4*n-5,2*n+59);p1<=4*n-2;p1++) { } for (p2=max(ceild(-p1+10,4),ceild(-p1+2*n+3,2));p2<=floord(-p1+2*n+4,2);p2++) { i = -p2+2 ; - if ((p1-4)%2 == 0) { + if (p1%2 == 0) { j = (p1+2*p2-4)/2 ; S6 ; } } - if ((p1-1)%4 == 0) { + if ((p1+3)%4 == 0) { i = (p1-1)/4 ; S3 ; } for (i=ceild(p1+1,4);i<=n;i++) { - if ((p1-1)%2 == 0) { + if ((p1+1)%2 == 0) { j = (p1-2*i-1)/2 ; S2 ; } @@ -684,7 +684,7 @@ p1 = 4*n-1 ; j = n-1 ; S2(i = n) ; for (p1=4*n;p1<=4*n+1;p1++) { - if ((p1-1)%4 == 0) { + if ((p1+3)%4 == 0) { i = (p1-1)/4 ; S3 ; } -- 2.11.4.GIT