Sven Verdoolaege [Mon, 2 Aug 2010 13:19:56 +0000 (15:19 +0200)]
isl_basic_map_reset_dim: finalize result
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Mon, 2 Aug 2010 09:57:07 +0000 (11:57 +0200)]
isl_transitive_closure.c: anonymize input map during incremental computation
Most other operations inside the transitive closure computation
implicitly drop the tuple names, so we have to drop them explicitly
here for the maps to remain compatible.
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Mon, 2 Aug 2010 09:52:42 +0000 (11:52 +0200)]
isl_transitive_closure.c: keep track of domains for Floyd-Warshall
When applying Floyd-Warshall to an isl_map, we don't care about
the domains anymore after we have grouped them.
However, when applying Floyd-Warshall to an isl_union_map, we
use the domains do initialize the grid with maps of the right
dimension. We therefore need to order the domains according
to the group number so that the calling function has a chance
to find them.
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Mon, 2 Aug 2010 09:49:29 +0000 (11:49 +0200)]
isl_dim_drop: always remove tuple name, even if number of dims to drop is zero
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Mon, 2 Aug 2010 09:48:54 +0000 (11:48 +0200)]
isl_dim_set_tuple_name: allow explicit removal of tuple name
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sun, 25 Jul 2010 11:55:05 +0000 (13:55 +0200)]
add support for union sets and relations
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Fri, 30 Jul 2010 18:26:45 +0000 (20:26 +0200)]
isl_transitive_closure.c: extract out some reusable code
In particular, the code will also be useful for computing transitive
closures of union maps.
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Thu, 29 Jul 2010 14:24:24 +0000 (16:24 +0200)]
add isl_pw_qpolynomial_reset_dim
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sun, 25 Jul 2010 10:42:35 +0000 (12:42 +0200)]
add isl_map_has_equal_dim
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sun, 25 Jul 2010 09:04:53 +0000 (11:04 +0200)]
add isl_dim_get_hash
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sat, 17 Jul 2010 08:29:15 +0000 (10:29 +0200)]
isl_dim: allow specification of tuple names
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Wed, 28 Jul 2010 09:57:53 +0000 (11:57 +0200)]
isl_map_from_domain_and_range: implement in terms of isl_map_apply_range
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sat, 17 Jul 2010 16:33:59 +0000 (18:33 +0200)]
isl_basic_map_domain: properly set dimension of result
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Thu, 29 Jul 2010 14:18:28 +0000 (16:18 +0200)]
privately export isl_set_reset_dim and isl_map_reset_dim
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sat, 17 Jul 2010 08:45:51 +0000 (10:45 +0200)]
isl_map_read: extract out read_var_def
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Mon, 26 Jul 2010 21:05:32 +0000 (23:05 +0200)]
isl_hash_table_foreach: pass pointer to entry data
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sun, 25 Jul 2010 09:34:55 +0000 (11:34 +0200)]
isl_hash_table_foreach: add user argument
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Fri, 30 Jul 2010 17:44:01 +0000 (19:44 +0200)]
isl_transitive_closure.c: fix double free on error path
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Thu, 29 Jul 2010 12:46:01 +0000 (14:46 +0200)]
isl_map_gist: use simple hull instead of convex hull
isl is still not very good at computing convex hulls.
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Wed, 28 Jul 2010 09:18:43 +0000 (11:18 +0200)]
isl_map.c: fix typo
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Tue, 27 Jul 2010 14:11:01 +0000 (16:11 +0200)]
isl_cat: read generic objects
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Tue, 27 Jul 2010 14:10:50 +0000 (16:10 +0200)]
isl_printer: add NULL checks
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sun, 25 Jul 2010 19:19:08 +0000 (21:19 +0200)]
make isl_obj_none a constant expression
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sun, 25 Jul 2010 18:17:41 +0000 (20:17 +0200)]
add isl_map_get_ctx
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sun, 25 Jul 2010 12:05:00 +0000 (14:05 +0200)]
isl_map_fast_is_universe: also detect redundant representations of the universe
During printing, we don't want to print any constraints if the given
map contains the universe.
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Thu, 22 Jul 2010 11:30:34 +0000 (13:30 +0200)]
add isl_map_reaching_path_lengths
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Thu, 22 Jul 2010 10:26:20 +0000 (12:26 +0200)]
isl_map_power: delay equating path lengths to power parameter
It doesn't make sense for the isl_map_transitive_closure caller
to have to specify a dummy parameter.
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Thu, 22 Jul 2010 09:51:17 +0000 (11:51 +0200)]
isl_map_power: apply Floyd-Warshall to compute powers as well
Before, Floyd-Warshall was only applied to compute transitive closure.
However, the power is essentially a transitive closure on an extended
relation, so we simply need to perform the nested call on such extended
relations.
In principle, we should be able to apply the incremental computation
to the power too, but changing the nested calls is a bit more tricky.
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sat, 24 Jul 2010 10:13:04 +0000 (12:13 +0200)]
isl_map_lexmax: produce less cryptic error message when result is unbounded
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Fri, 23 Jul 2010 19:26:24 +0000 (21:26 +0200)]
fix isl_basic_map_move_dims in presence of existentially quantified variables
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Fri, 23 Jul 2010 19:17:39 +0000 (21:17 +0200)]
isl_test: drop debugging output
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Thu, 22 Jul 2010 09:59:27 +0000 (11:59 +0200)]
isl_transitive_closure.c: fix typo in comment
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Fri, 23 Jul 2010 11:51:33 +0000 (13:51 +0200)]
fix isl_map_lex_ge and isl_map_lex_le in the zero-dimensional case
The first zero dimensions are always equal, so these functions
should return a universe map in the zero-dimensional case rather
than an empty map.
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Wed, 14 Jul 2010 13:51:09 +0000 (15:51 +0200)]
isl_printer_print_map: replace variable by its definition in tuple
In particular, if a variable is equal to an integer affine combination
of parameters and earlier variables, then print the affine combination
instead of the name of the variable.
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Wed, 14 Jul 2010 12:18:31 +0000 (14:18 +0200)]
privately export isl_basic_map_fast_cmp and isl_basic_map_fast_is_equal
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Wed, 14 Jul 2010 10:48:39 +0000 (12:48 +0200)]
isl_dim_set_name: don't accept names that look like numbers
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Tobias Grosser [Sat, 10 Jul 2010 09:06:10 +0000 (11:06 +0200)]
Remove comma at the end of enumeration
This is invalid in C89. Some compilers warn or fail if they are set to
strict compilation options.
Signed-off-by: Tobias Grosser <grosser@fim.uni-passau.de>
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Mon, 5 Jul 2010 08:00:56 +0000 (10:00 +0200)]
isl_convex_hull.c: avoid side-effects in calls to isl_int_* macros
Sven Verdoolaege [Sun, 4 Jul 2010 19:28:03 +0000 (21:28 +0200)]
add isl_hash_builtin
Sven Verdoolaege [Sun, 4 Jul 2010 12:36:25 +0000 (14:36 +0200)]
add isl_int_get_str
Sven Verdoolaege [Fri, 2 Jul 2010 13:33:30 +0000 (15:33 +0200)]
doc: fix some typos
Sven Verdoolaege [Tue, 29 Jun 2010 10:37:38 +0000 (12:37 +0200)]
isl 0.03
Sven Verdoolaege [Tue, 29 Jun 2010 11:16:15 +0000 (13:16 +0200)]
Makefile.am: really include include/isl_vertices.h
Sven Verdoolaege [Fri, 11 Jun 2010 20:03:32 +0000 (22:03 +0200)]
add isl_map_is_bijective
Tests cases from Tomofumi Yuki <tomofumi.yuki@gmail.com>
Sven Verdoolaege [Mon, 28 Jun 2010 14:35:01 +0000 (16:35 +0200)]
doc: fix typo
Sven Verdoolaege [Mon, 28 Jun 2010 10:35:54 +0000 (12:35 +0200)]
doc: drop duplicate booktitle from Kelly1996closure bib entry
Sven Verdoolaege [Mon, 28 Jun 2010 08:00:49 +0000 (10:00 +0200)]
doc: use more explicit notation to avoid confusion
Sven Verdoolaege [Sun, 27 Jun 2010 18:35:45 +0000 (20:35 +0200)]
add isl_constraint_is_div_constraint
Sven Verdoolaege [Sun, 27 Jun 2010 18:35:29 +0000 (20:35 +0200)]
isl_map_simplify.c: separate out isl_basic_map_is_div_constraint
Sven Verdoolaege [Sun, 27 Jun 2010 17:00:35 +0000 (19:00 +0200)]
isl_basic_map_from_constraint: keep all divs, even redundant ones
When this function is called by CLooG, it assumes that the position
of the divs will remain the same. If the redundant divs are removed,
then this may not be the case.
We should probably try to come up with a more robust interface.
Sven Verdoolaege [Sun, 27 Jun 2010 16:50:23 +0000 (18:50 +0200)]
isl_basic_map_from_constraint: only return copy of bmap on equality constraints
Commit b39d157 (isl_basic_map_from_constraint: return copy of bmap in
constraint if possible) changed isl_basic_map_from_constraint to return
a copy when this bmap consists of a single constraint in order to handle
the case where a new constraint is created with unknown existentially
quantified variables. However, if the divs _are_ known, then the div
definition is simply thrown away. If the single constraint is an equality,
then it may be possible to recover the definition, but if it is an inequality,
then this is not possible and in fact it does not make sense to have unknown divs.
Therefore, only return a copy on equality constraints.
Sven Verdoolaege [Sun, 27 Jun 2010 16:43:55 +0000 (18:43 +0200)]
isl_constraint_add_div: correctly set line to first and only constraint
When isl_constraint_add_div was introduced in 3fcebd4 (isl_constraint:
add limited support for adding divs), the equalities were still placed
before the inequalities in the constraint matrix.
This changed in 9eb1488 (isl_basic_map: put inequalities before equalities),
but the implementation of isl_constraint_add_div was not adapted accordingly.
This has probably gone unnoticed because isl_constraint_add_div has only
been used on equality constraints.
Sven Verdoolaege [Sun, 27 Jun 2010 08:58:36 +0000 (10:58 +0200)]
isl_pip: rename pip_options to avoid conflict with PipLib's pip_options_free
Sven Verdoolaege [Sat, 26 Jun 2010 16:24:27 +0000 (18:24 +0200)]
isl_convex_hull.c: initial_facet_constraint: fix error handling
Sven Verdoolaege [Sat, 26 Jun 2010 16:23:15 +0000 (18:23 +0200)]
doc: describe backward incompatible changes
Sven Verdoolaege [Sat, 26 Jun 2010 16:11:49 +0000 (18:11 +0200)]
doc: mention discussion group
Sven Verdoolaege [Sat, 26 Jun 2010 15:34:32 +0000 (17:34 +0200)]
rename isl_basic_map_convex_hull to isl_basic_map_remove_redundancies
Sven Verdoolaege [Sat, 26 Jun 2010 14:08:08 +0000 (16:08 +0200)]
isl_affine_hull.c: outside_point: fix error handling
Sven Verdoolaege [Sat, 26 Jun 2010 13:02:37 +0000 (15:02 +0200)]
isl_tab_rollback: avoid double free on error path
Sven Verdoolaege [Sat, 26 Jun 2010 10:42:17 +0000 (12:42 +0200)]
isl_tab.c: tab_mat_product: avoid NULL pointer dereference
Sven Verdoolaege [Sat, 26 Jun 2010 10:40:27 +0000 (12:40 +0200)]
isl_tab_extend_cons: avoid NULL pointer dereference
Sven Verdoolaege [Sat, 26 Jun 2010 10:38:28 +0000 (12:38 +0200)]
implement antiquated isl_basic_set_n_* in terms of isl_basic_set_dim
Sven Verdoolaege [Sat, 26 Jun 2010 10:14:56 +0000 (12:14 +0200)]
isl_map_convex_hull: avoid NULL pointer dereference
Sven Verdoolaege [Sat, 26 Jun 2010 09:56:56 +0000 (11:56 +0200)]
isl_tab_add_valid_eq: return int instead of isl_tab *
Sven Verdoolaege [Sat, 26 Jun 2010 09:51:08 +0000 (11:51 +0200)]
isl_affine_hull.c: affine_hull_with_cone: avoid NULL pointer dereference
Sven Verdoolaege [Sat, 26 Jun 2010 09:45:44 +0000 (11:45 +0200)]
isl_equalities.c: parameter_compression_multi: avoid NULL pointer dereference
Sven Verdoolaege [Sat, 26 Jun 2010 09:41:56 +0000 (11:41 +0200)]
isl_basic_map_project_out: avoid NULL pointer dereference
Sven Verdoolaege [Sat, 26 Jun 2010 09:38:22 +0000 (11:38 +0200)]
isl_coalesce.c: coalesce_pair: avoid NULL pointer dereference
Sven Verdoolaege [Sat, 26 Jun 2010 09:35:44 +0000 (11:35 +0200)]
isl_convex_hull.c: extend: fix error handling
Sven Verdoolaege [Sat, 26 Jun 2010 09:33:48 +0000 (11:33 +0200)]
implement antiquated isl_set_n_* in terms of isl_set_dim
Sven Verdoolaege [Sat, 26 Jun 2010 09:29:36 +0000 (11:29 +0200)]
isl_map_simplify.c: normalize_divs: avoid NULL pointer dereference
Sven Verdoolaege [Sat, 26 Jun 2010 09:27:39 +0000 (11:27 +0200)]
isl_input.c: vars_drop: fix error handling
Sven Verdoolaege [Sat, 26 Jun 2010 09:23:57 +0000 (11:23 +0200)]
isl_convex_hull.c: uset_convex_hull_wrap_bounded: fix error handling
Sven Verdoolaege [Sat, 26 Jun 2010 09:17:42 +0000 (11:17 +0200)]
isl_set_wrap_facet: fix error handling
Sven Verdoolaege [Sat, 26 Jun 2010 09:14:00 +0000 (11:14 +0200)]
isl_tab_min: avoid NULL pointer dereference
Sven Verdoolaege [Sat, 26 Jun 2010 09:10:59 +0000 (11:10 +0200)]
isl_affine_hull.c: extend_affine_hull: avoid NULL pointer dereference
Sven Verdoolaege [Sat, 26 Jun 2010 09:04:44 +0000 (11:04 +0200)]
isl_basic_map_extend: plug memory leak on error path
Sven Verdoolaege [Sat, 26 Jun 2010 08:57:40 +0000 (10:57 +0200)]
isl_affine_hull.c: equalities_in_underlying_set: avoid NULL pointer dereference
Sven Verdoolaege [Sat, 26 Jun 2010 08:54:28 +0000 (10:54 +0200)]
isl_basic_set_preimage: avoid NULL pointer dereference
Sven Verdoolaege [Sat, 26 Jun 2010 08:49:44 +0000 (10:49 +0200)]
isl_tab_pip.c: no_sol_in_strict: fix error handling
Sven Verdoolaege [Fri, 25 Jun 2010 19:55:05 +0000 (21:55 +0200)]
isl_affine_hull.c: equalities_in_underlying_set: plug memory leak on error path
Sven Verdoolaege [Fri, 25 Jun 2010 19:50:48 +0000 (21:50 +0200)]
isl_affine_hull.c: affine_hull: fix erro handling
Sven Verdoolaege [Fri, 25 Jun 2010 19:44:23 +0000 (21:44 +0200)]
isl_map_project_out: fix error return value
Sven Verdoolaege [Fri, 25 Jun 2010 19:42:15 +0000 (21:42 +0200)]
isl_basic_map_intersect_range: avoid NULL pointer dereference
Sven Verdoolaege [Fri, 25 Jun 2010 19:38:52 +0000 (21:38 +0200)]
isl_tab_pip.c: find_solutions: fix error handling
Sven Verdoolaege [Fri, 25 Jun 2010 19:29:02 +0000 (21:29 +0200)]
isl_basic_map_alloc_dim: fix error handling
Sven Verdoolaege [Fri, 25 Jun 2010 18:59:12 +0000 (20:59 +0200)]
isl_basic_map_intersect: avoid NULL pointer dereference
Sven Verdoolaege [Fri, 25 Jun 2010 18:55:12 +0000 (20:55 +0200)]
isl_tab_pip.c: sol_map_init: avoid NULL pointer dereference
Sven Verdoolaege [Fri, 25 Jun 2010 18:53:12 +0000 (20:53 +0200)]
isl_basic_map_intersect_domain: avoid NULL pointer dereference
Sven Verdoolaege [Fri, 25 Jun 2010 18:51:40 +0000 (20:51 +0200)]
isl_flow.c: compute_val_based_dependences: fix error handling
Sven Verdoolaege [Fri, 25 Jun 2010 18:48:47 +0000 (20:48 +0200)]
isl_flow_alloc: fix error handling
Sven Verdoolaege [Fri, 25 Jun 2010 18:40:52 +0000 (20:40 +0200)]
isl_access_info_compute_flow: fix error handling
Sven Verdoolaege [Fri, 25 Jun 2010 18:36:16 +0000 (20:36 +0200)]
isl_{set,map}_fast_is_empty: avoid NULL pointer dereference
Sven Verdoolaege [Fri, 25 Jun 2010 18:33:22 +0000 (20:33 +0200)]
isl_flow.c: avoid accessing dim field directly
Sven Verdoolaege [Fri, 25 Jun 2010 18:29:07 +0000 (20:29 +0200)]
isl_access_info_compute_flow: avoid NULL pointer dereference
Sven Verdoolaege [Fri, 25 Jun 2010 18:17:41 +0000 (20:17 +0200)]
isl_input.c: obj_read: avoid NULL pointer dereference
Sven Verdoolaege [Fri, 25 Jun 2010 17:42:23 +0000 (19:42 +0200)]
isl_map_subtract.c: tab_add_constraints: avoid NULL pointer dereference
Sven Verdoolaege [Fri, 25 Jun 2010 17:40:02 +0000 (19:40 +0200)]
isl_tab.c: close_row: fix error handling
Sven Verdoolaege [Fri, 25 Jun 2010 16:59:58 +0000 (18:59 +0200)]
isl_map_simplify.c: remove_duplicate_divs: avoid NULL pointer dereference
Sven Verdoolaege [Fri, 25 Jun 2010 16:57:36 +0000 (18:57 +0200)]
isl_basic_map_affine_hull: avoid NULL pointer dereference