isl_map_coalesce: only wrap constraints that are not already valid
commit562d902b339b41d8a7c7a71c2e3297b77cc1f367
authorSven Verdoolaege <skimo@kotnet.org>
Fri, 10 Oct 2014 15:59:56 +0000 (10 17:59 +0200)
committerSven Verdoolaege <skimo@kotnet.org>
Fri, 9 Jan 2015 14:34:16 +0000 (9 15:34 +0100)
tree03edffc40bac55c18ea0572390b73eafa87c7159
parent3bae7f789aa4527653f00139e2f39b42fcf69744
isl_map_coalesce: only wrap constraints that are not already valid

Wrapping is used in some of the coalescing cases to rotate
a constraint of one disjunct into a position such that it is
valid for the other disjunct.  If the original constraint
is already valid for the other disjunct, then there is no need
to perform any rotation since this original constraint will
already be added to the combined result.
Note that wrapping could in some cases make the constraint tighter,
but this might increase the size of the coefficients, possibly leading
to a needless failing of the coalescing.
In fact, since the maximal size of the coefficients is based on
the constraints that are not valid for the other basic map, we could
even end up rejecting a wrapped constraint that was equal to the original
constraint.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
isl_coalesce.c
isl_test.c