isl_map_from_quast: don't throw away any bottom leaves
authorSven Verdoolaege <skimo@kotnet.org>
Tue, 3 Feb 2009 20:41:40 +0000 (21:41 +0100)
committerSven Verdoolaege <skimo@kotnet.org>
Wed, 4 Feb 2009 11:38:43 +0000 (12:38 +0100)
Before, we would perform an "optimization" that would simply
discard any leaves with a bottom when we hadn't seen any leaves
with a solution yet, the intention being that we don't need
to collect bottom leaves if there are no solutions.
However, the bottom leaves may precede solution leaves and
then we would erroneously discard them.

isl_map_piplib.c

index 0c9a113..257b460 100644 (file)
@@ -224,8 +224,7 @@ static struct isl_map *scan_quast_r(struct scan_data *data, PipQuast *q,
                map = isl_map_add(map, isl_basic_map_copy(bmap));
                if (isl_basic_map_free_equality(bmap, n_out))
                        goto error;
-       } else if (map->n && data->rest) {
-               /* not interested in rest if no sol */
+       } else if (data->rest) {
                struct isl_basic_set *bset;
                bset = isl_basic_set_from_basic_map(isl_basic_map_copy(bmap));
                bset = isl_basic_set_drop_dims(bset, n_in, n_out);