From: Sven Verdoolaege Date: Sun, 20 Mar 2011 15:40:41 +0000 (+0100) Subject: isl_basic_map_lexmin: turn off equality detection on non-parametric problems X-Git-Tag: isl-0.07~260 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=d85e17126dcf9e1353a70406fbb66979674e04cd;p=platform%2Fupstream%2Fisl.git isl_basic_map_lexmin: turn off equality detection on non-parametric problems Detecting equalities can be quite expensive and has mostly been shown effective on parametric problems. For non-parametric problems, we are effectively computing several solutions as a preprocessing step to computing a single solution, albeit a special one. Until we obtain more evidence that this is useful, it seems prudent to turn off this equality detection on non-parametric problems. Signed-off-by: Sven Verdoolaege --- diff --git a/isl_tab_pip.c b/isl_tab_pip.c index b63d3b7..22ab3dd 100644 --- a/isl_tab_pip.c +++ b/isl_tab_pip.c @@ -4432,6 +4432,9 @@ struct isl_map *isl_tab_basic_map_partial_lexopt( isl_assert(bmap->ctx, isl_basic_map_compatible_domain(bmap, dom), goto error); + if (isl_basic_set_dim(dom, isl_dim_all) == 0) + return basic_map_partial_lexopt(bmap, dom, empty, max); + bmap = isl_basic_map_intersect_domain(bmap, isl_basic_set_copy(dom)); bmap = isl_basic_map_detect_equalities(bmap); bmap = isl_basic_map_remove_redundancies(bmap);