diff options
author | Sven Verdoolaege <skimo@kotnet.org> | 2009-10-10 13:14:19 +0200 |
---|---|---|
committer | Sven Verdoolaege <skimo@kotnet.org> | 2009-10-12 22:26:24 +0200 |
commit | ec21e6de21d784ee1ba32689aebcbda9f786fd30 (patch) | |
tree | 0ded21b776138d08814336cc12e9c58e45c20ad8 /isl_coalesce.c | |
parent | d5cbda10655caf8a2b1bbd4532d6c7d78de7d29b (diff) | |
download | isl-ec21e6de21d784ee1ba32689aebcbda9f786fd30.tar.gz isl-ec21e6de21d784ee1ba32689aebcbda9f786fd30.tar.bz2 isl-ec21e6de21d784ee1ba32689aebcbda9f786fd30.zip |
isl_tab: improved error handling
Diffstat (limited to 'isl_coalesce.c')
-rw-r--r-- | isl_coalesce.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/isl_coalesce.c b/isl_coalesce.c index a1b5f485..0716916f 100644 --- a/isl_coalesce.c +++ b/isl_coalesce.c @@ -240,7 +240,8 @@ static int check_facets(struct isl_map *map, int i, int j, if (stat != STATUS_VALID) break; } - isl_tab_rollback(tabs[i], snap); + if (isl_tab_rollback(tabs[i], snap) < 0) + return -1; if (l < map->p[j]->n_ineq) break; } @@ -390,7 +391,8 @@ static int check_adj_eq(struct isl_map *map, int i, int j, tabs[i] = isl_tab_select_facet(tabs[i], n_eq + k); super = contains(map, j, ineq_j, tabs[i]); if (super) { - isl_tab_rollback(tabs[i], snap2); + if (isl_tab_rollback(tabs[i], snap2) < 0) + return -1; map->p[i] = isl_basic_map_cow(map->p[i]); if (!map->p[i]) return -1; @@ -399,7 +401,8 @@ static int check_adj_eq(struct isl_map *map, int i, int j, drop(map, j, tabs); changed = 1; } else - isl_tab_rollback(tabs[i], snap); + if (isl_tab_rollback(tabs[i], snap) < 0) + return -1; return changed; } |