bool graphite_legal_transform (scop_p scop) { int i, j; poly_bb_p pbb1, pbb2; for (i = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), i, pbb1); i++) for (j = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), j, pbb2); j++) if (!graphite_legal_transform_bb (pbb1, pbb2)) return false; return true; }
int unify_scattering_dimensions (scop_p scop) { int i; poly_bb_p pbb; graphite_dim_t max_scattering = 0; for (i = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), i, pbb); i++) max_scattering = MAX (pbb_nb_scattering_transform (pbb), max_scattering); for (i = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), i, pbb); i++) extend_scattering (pbb, max_scattering); return max_scattering; }
void print_iteration_domains (FILE *file, scop_p scop, int verbosity) { int i; poly_bb_p pbb; for (i = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), i, pbb); i++) print_iteration_domain (file, pbb, verbosity); }
int scop_max_loop_depth (scop_p scop) { int i; poly_bb_p pbb; int max_nb_loops = 0; FOR_EACH_VEC_ELT (SCOP_BBS (scop), i, pbb) { int nb_loops = pbb_dim_iter_domain (pbb); if (max_nb_loops < nb_loops) max_nb_loops = nb_loops; }
int scop_max_loop_depth (scop_p scop) { int i; poly_bb_p pbb; int max_nb_loops = 0; for (i = 0; VEC_iterate (poly_bb_p, SCOP_BBS (scop), i, pbb); i++) { int nb_loops = pbb_dim_iter_domain (pbb); if (max_nb_loops < nb_loops) max_nb_loops = nb_loops; } return max_nb_loops; }