reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
1547 return bmap; 1548 if (!bmap) 1550 total = isl_basic_map_total_dim(bmap); 1552 bmap = isl_basic_map_cow(bmap); 1552 bmap = isl_basic_map_cow(bmap); 1554 bmap = remove_dependent_vars(bmap, d); 1554 bmap = remove_dependent_vars(bmap, d); 1555 if (!bmap) 1559 d >= 0 && d >= total - bmap->n_div && d >= pos; --d) 1560 isl_seq_clr(bmap->div[d-(total-bmap->n_div)], 2+total); 1560 isl_seq_clr(bmap->div[d-(total-bmap->n_div)], 2+total); 1563 if (!bmap) 1565 for (i = 0; i < bmap->n_eq; ++i) { 1566 if (isl_int_is_zero(bmap->eq[i][1+d])) 1568 eliminate_var_using_equality(bmap, d, bmap->eq[i], 0, NULL); 1568 eliminate_var_using_equality(bmap, d, bmap->eq[i], 0, NULL); 1569 isl_basic_map_drop_equality(bmap, i); 1573 if (i < bmap->n_eq) 1577 for (i = 0; i < bmap->n_ineq; ++i) { 1578 if (isl_int_is_pos(bmap->ineq[i][1+d])) 1580 else if (isl_int_is_neg(bmap->ineq[i][1+d])) 1583 bmap = isl_basic_map_extend_constraints(bmap, 1583 bmap = isl_basic_map_extend_constraints(bmap, 1585 if (!bmap) 1587 for (i = bmap->n_ineq - 1; i >= 0; --i) { 1589 if (isl_int_is_zero(bmap->ineq[i][1+d])) 1593 if (isl_int_is_zero(bmap->ineq[j][1+d])) 1596 if (isl_int_sgn(bmap->ineq[i][1+d]) == 1597 isl_int_sgn(bmap->ineq[j][1+d])) 1599 k = isl_basic_map_alloc_inequality(bmap); 1602 isl_seq_cpy(bmap->ineq[k], bmap->ineq[i], 1602 isl_seq_cpy(bmap->ineq[k], bmap->ineq[i], 1604 isl_seq_elim(bmap->ineq[k], bmap->ineq[j], 1604 isl_seq_elim(bmap->ineq[k], bmap->ineq[j], 1607 isl_basic_map_drop_inequality(bmap, i); 1611 bmap = isl_basic_map_normalize_constraints(bmap); 1611 bmap = isl_basic_map_normalize_constraints(bmap); 1612 bmap = isl_basic_map_remove_duplicate_constraints(bmap, 1612 bmap = isl_basic_map_remove_duplicate_constraints(bmap, 1614 bmap = isl_basic_map_gauss(bmap, NULL); 1614 bmap = isl_basic_map_gauss(bmap, NULL); 1615 bmap = isl_basic_map_remove_redundancies(bmap); 1615 bmap = isl_basic_map_remove_redundancies(bmap); 1617 if (!bmap) 1619 if (ISL_F_ISSET(bmap, ISL_BASIC_MAP_EMPTY)) 1623 ISL_F_CLR(bmap, ISL_BASIC_MAP_NORMALIZED); 1625 bmap = isl_basic_map_gauss(bmap, NULL); 1625 bmap = isl_basic_map_gauss(bmap, NULL); 1626 return bmap; 1628 isl_basic_map_free(bmap);