Resolve CLooG's value_* macros to their respective mpz_* counterparts.

2010-07-04  Andreas Simbuerger  <simbuerg@fim.uni-passau.de>

	* graphite-clast-to-gimple.c
	(precision_for_value): Resolve value_* calls to matching mpz_* calls.
	(precision_for_interval): Same.
	(gcc_type_for_interval): Same.
	(compute_type_for_level): Same.
	* graphite-interchange.c
	(lst_interchange_profitable_p): Same.
	* graphite-poly.c
	(psct_scattering_dim_for_loop_depth): Same.
	* graphite-ppl.c
	(ppl_max_for_le_pointset): Same.
	(ppl_min_for_le_pointset): Same.

From-SVN: r163133
This commit is contained in:
Andreas Simbuerger 2010-08-11 20:26:29 +00:00 committed by Sebastian Pop
parent 3e40cb77a8
commit 589ac63c0e
6 changed files with 57 additions and 27 deletions

View File

@ -1,3 +1,18 @@
2010-08-02 Andreas Simbuerger <simbuerg@fim.uni-passau.de>
* graphite-clast-to-gimple.c
(precision_for_value): Resolve value_* calls to matching mpz_* calls.
(precision_for_interval): Same.
(gcc_type_for_interval): Same.
(compute_type_for_level): Same.
* graphite-interchange.c
(lst_interchange_profitable_p): Same.
* graphite-poly.c
(psct_scattering_dim_for_loop_depth): Same.
* graphite-ppl.c
(ppl_max_for_le_pointset): Same.
(ppl_min_for_le_pointset): Same.
2010-08-02 Sebastian Pop <sebastian.pop@amd.com>
* graphite-sese-to-poly.c (rewrite_degenerate_phi): New.

View File

@ -1,3 +1,18 @@
2010-07-04 Andreas Simbuerger <simbuerg@fim.uni-passau.de>
* graphite-clast-to-gimple.c
(precision_for_value): Resolve value_* calls to matching mpz_* calls.
(precision_for_interval): Same.
(gcc_type_for_interval): Same.
(compute_type_for_level): Same.
* graphite-interchange.c
(lst_interchange_profitable_p): Same.
* graphite-poly.c
(psct_scattering_dim_for_loop_depth): Same.
* graphite-ppl.c
(ppl_max_for_le_pointset): Same.
(ppl_min_for_le_pointset): Same.
2010-06-25 Vladimir Kargov <kargov@gmail.com>
* refined-regions.c (bb_index_compare): New.

View File

@ -426,26 +426,26 @@ precision_for_value (mpz_t val)
mpz_t x, y, two;
int precision;
value_init (x);
value_init (y);
value_init (two);
value_set_si (x, 2);
value_assign (y, val);
value_set_si (two, 2);
mpz_init (x);
mpz_init (y);
mpz_init (two);
mpz_set_si (x, 2);
mpz_set (y, val);
mpz_set_si (two, 2);
precision = 1;
if (value_neg_p (y))
value_oppose (y, y);
if (mpz_sgn (y) < 0)
mpz_neg (y, y);
while (value_gt (y, x))
while (mpz_cmp (y, x) > 0)
{
value_multiply (x, x, two);
mpz_mul (x, x, two);
precision++;
}
value_clear (x);
value_clear (y);
value_clear (two);
mpz_clear (x);
mpz_clear (y);
mpz_clear (two);
return precision;
}
@ -459,12 +459,12 @@ precision_for_interval (mpz_t low, mpz_t up)
mpz_t diff;
int precision;
gcc_assert (value_le (low, up));
gcc_assert (mpz_cmp (low, up) <= 0);
value_init (diff);
value_subtract (diff, up, low);
mpz_init (diff);
mpz_sub (diff, up, low);
precision = precision_for_value (diff);
value_clear (diff);
mpz_clear (diff);
return precision;
}
@ -479,9 +479,9 @@ gcc_type_for_interval (mpz_t low, mpz_t up)
tree type;
enum machine_mode mode;
gcc_assert (value_le (low, up));
gcc_assert (mpz_cmp (low, up) <= 0);
if (value_neg_p (low))
if (mpz_sgn (low) < 0)
unsigned_p = false;
prec_up = precision_for_value (up);
@ -731,14 +731,14 @@ compute_type_for_level (poly_bb_p pbb, int level)
mpz_t low, up;
tree type;
value_init (low);
value_init (up);
mpz_init (low);
mpz_init (up);
compute_bounds_for_level (pbb, level, low, up);
type = gcc_type_for_interval (low, up);
value_clear (low);
value_clear (up);
mpz_clear (low);
mpz_clear (up);
return type;
}

View File

@ -478,7 +478,7 @@ lst_interchange_profitable_p (lst_p loop1, lst_p loop2)
memory_strides_in_loop (loop1, lst_depth (loop1), d1);
memory_strides_in_loop (loop2, lst_depth (loop2), d2);
res = value_lt (d1, d2);
res = mpz_cmp (d1, d2) < 0;
mpz_clear (d1);
mpz_clear (d2);

View File

@ -1032,7 +1032,7 @@ psct_scattering_dim_for_loop_depth (poly_bb_p pbb, graphite_dim_t loop_depth)
ppl_Linear_Expression_coefficient (expr, scatter, coef);
ppl_Coefficient_to_mpz_t (coef, val);
if (value_notzero_p (val))
if (mpz_sgn (val) != 0)
{
mpz_clear (val);
ppl_delete_Linear_Expression (expr);

View File

@ -664,7 +664,7 @@ ppl_max_for_le_pointset (ppl_Pointset_Powerset_C_Polyhedron_t ps,
{
ppl_Coefficient_to_mpz_t (num, nv);
ppl_Coefficient_to_mpz_t (denom, dv);
gcc_assert (value_notzero_p (dv));
gcc_assert (mpz_sgn (dv) != 0);
mpz_tdiv_q (res, nv, dv);
}
@ -695,7 +695,7 @@ ppl_min_for_le_pointset (ppl_Pointset_Powerset_C_Polyhedron_t ps,
{
ppl_Coefficient_to_mpz_t (num, nv);
ppl_Coefficient_to_mpz_t (denom, dv);
gcc_assert (value_notzero_p (dv));
gcc_assert (mpz_sgn (dv) != 0);
mpz_tdiv_q (res, nv, dv);
}