reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
5101 if (!bmap) 5103 if (ISL_F_ISSET(bmap, ISL_BASIC_MAP_REDUCED_COEFFICIENTS)) 5104 return bmap; 5105 if (isl_basic_map_is_rational(bmap)) 5106 return bmap; 5107 if (bmap->n_eq == 0) 5108 return bmap; 5109 if (!has_multiple_var_equality(bmap)) 5110 return bmap; 5112 total = isl_basic_map_dim(bmap, isl_dim_all); 5113 ctx = isl_basic_map_get_ctx(bmap); 5116 return isl_basic_map_free(bmap); 5118 eq = isl_mat_sub_alloc6(ctx, bmap->eq, 0, bmap->n_eq, 0, 1 + total); 5118 eq = isl_mat_sub_alloc6(ctx, bmap->eq, 0, bmap->n_eq, 0, 1 + total); 5126 return isl_basic_map_set_to_empty(bmap); 5129 bmap = isl_basic_map_cow(bmap); 5129 bmap = isl_basic_map_cow(bmap); 5130 if (!bmap) 5134 for (i = 0; i < bmap->n_ineq; ++i) { 5135 isl_seq_cpy(v->el, bmap->ineq[i], 1 + total); 5141 isl_seq_cpy(bmap->ineq[i], v->el, 1 + total); 5148 ISL_F_SET(bmap, ISL_BASIC_MAP_REDUCED_COEFFICIENTS); 5153 bmap = isl_basic_map_detect_inequality_pairs(bmap, &progress); 5153 bmap = isl_basic_map_detect_inequality_pairs(bmap, &progress); 5155 bmap = eliminate_divs_eq(bmap, &progress); 5155 bmap = eliminate_divs_eq(bmap, &progress); 5156 bmap = isl_basic_map_gauss(bmap, NULL); 5156 bmap = isl_basic_map_gauss(bmap, NULL); 5160 return bmap; 5165 return isl_basic_map_free(bmap);