isl_coalesce.c: check_eq_adj_eq: allow multiple equalities adjacent to equality
commit80fa4d35b768d36fcee954baf988302a99e2b2ff
authorSven Verdoolaege <skimo@kotnet.org>
Mon, 29 Dec 2014 16:20:54 +0000 (29 17:20 +0100)
committerSven Verdoolaege <skimo@kotnet.org>
Thu, 1 Jan 2015 23:33:57 +0000 (2 00:33 +0100)
tree8d7b81f664febd19c6b57a0442752bdfc6848bd3
parentc40088719302fc791a8feab76a8267f037def760
isl_coalesce.c: check_eq_adj_eq: allow multiple equalities adjacent to equality

The limitation to one equality adjacent to an equality was introduced
in 59baf90 (isl_map_coalesce: handle some cases of pairs of adjacent
equalities, Wed Oct 13 22:02:25 2010 +0200) to avoid introducing
large coefficients when coalescing some cases of multiple equalities
adjacent to an equality.  In 239513e (isl_map_coalesce: optionally bound
the coefficients of wrapping constraints, Wed Apr 11 10:54:37 2012 +0200),
a generic mechanism was introduced for (optionally) avoidind such large
coefficients, so we no longer need this restriction.

If there is more than one such equality, then the coalesced result
will satisfy one or more equalities that are not explicitly available
in the input.  Instead, they will appear as pairs of inequalities
in the wrapped constraints and need to be changed into explicit
equalities.

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