Sven Verdoolaege [Mon, 21 Sep 2009 15:55:02 +0000 (17:55 +0200)]
configure.ac: fix cut-and-paste error in original commit
Sven Verdoolaege [Mon, 21 Sep 2009 15:41:41 +0000 (17:41 +0200)]
add isl_int_get_si
Sven Verdoolaege [Mon, 21 Sep 2009 15:23:21 +0000 (17:23 +0200)]
export isl_set_sample
Sven Verdoolaege [Mon, 21 Sep 2009 15:06:45 +0000 (17:06 +0200)]
add isl_basic_set_universe_like_set
Sven Verdoolaege [Mon, 21 Sep 2009 07:55:07 +0000 (09:55 +0200)]
add isl_set_is_strict_subset
Sven Verdoolaege [Sun, 20 Sep 2009 22:54:27 +0000 (00:54 +0200)]
add isl_set_universe_like
Sven Verdoolaege [Sun, 20 Sep 2009 16:09:43 +0000 (18:09 +0200)]
AX_SUBMODULE: set PKG_CONFIG_PATH
Sven Verdoolaege [Sun, 20 Sep 2009 13:23:07 +0000 (15:23 +0200)]
create pkg-config file
Sven Verdoolaege [Sun, 20 Sep 2009 09:54:11 +0000 (11:54 +0200)]
AX_SUBMODULE: drop options that are meaningless given possible choices
Sven Verdoolaege [Wed, 16 Sep 2009 11:19:12 +0000 (13:19 +0200)]
isl_basic_map_from_constraint: return copy of bmap in constraint if possible
Commit fa1cd4b (isl_basic_map_add_constraint: handle constraints obtained from
basic maps) fixed isl_basic_map_add_constraint to also work with constraints
obtained from iterating over the constraints of a basic map by
calling isl_basic_map_from_constraint.
However, this broke the case where a new constraint is created with
existentially quantified variables. In this case, the divs may be
unknown and we can't compute them because that may result in a union.
So, try to detect this special case in isl_basic_map_from_constraint
and return the basic map stored inside the constraint.
Sven Verdoolaege [Wed, 16 Sep 2009 09:08:42 +0000 (11:08 +0200)]
doc: fix description of lexicograhpic order relations
Sven Verdoolaege [Wed, 16 Sep 2009 09:06:24 +0000 (11:06 +0200)]
add isl_map_lex_le and isl_map_lex_ge
Sven Verdoolaege [Mon, 14 Sep 2009 16:13:20 +0000 (18:13 +0200)]
export isl_basic_map_gist
Sven Verdoolaege [Mon, 14 Sep 2009 15:53:51 +0000 (17:53 +0200)]
add isl_basic_map_sample and isl_map_sample
Sven Verdoolaege [Sun, 13 Sep 2009 17:39:17 +0000 (19:39 +0200)]
isl_sample.c: move isl_basic_set_from_vec from isl_affine_hull.c
Sven Verdoolaege [Sun, 13 Sep 2009 17:26:19 +0000 (19:26 +0200)]
rename isl_basic_set_sample to isl_basic_set_sample_vec
Sven Verdoolaege [Sun, 13 Sep 2009 17:22:37 +0000 (19:22 +0200)]
make some internal functions static
Sven Verdoolaege [Sun, 13 Sep 2009 17:13:13 +0000 (19:13 +0200)]
isl_basic_map_add_constraint: handle constraints obtained from basic maps
The bmap field of a constraint may contain a basic map that is bounded
by more than one constraint. The constraint can therefore not be
added by simply taking the intersection with this bmap.
Instead, first create a basic map that exactly corresponds to the constraint
and then take the intersection with that basic map.
Sven Verdoolaege [Sun, 13 Sep 2009 16:39:02 +0000 (18:39 +0200)]
add isl_basic_map_from_constraint
Sven Verdoolaege [Sat, 12 Sep 2009 17:50:54 +0000 (19:50 +0200)]
isl_map_simplify.c: break if set turns out to be empty during div coalescing
Sven Verdoolaege [Sat, 12 Sep 2009 16:11:12 +0000 (18:11 +0200)]
add isl_basic_map_universe_like
Sven Verdoolaege [Tue, 8 Sep 2009 08:38:03 +0000 (09:38 +0100)]
add isl_map_lex_lt and isl_map_lex_gt
Sven Verdoolaege [Wed, 9 Sep 2009 18:32:35 +0000 (20:32 +0200)]
isl_tab.c: cut_to_hyperplane: do nothing if selected constraint is an equality
Sven Verdoolaege [Wed, 9 Sep 2009 12:54:16 +0000 (14:54 +0200)]
reverse meaning of isl_basic_map_{less,more}_at
Before, these functions were interpreted as returning maps that map elements
to elements that are less/more.
Now, they are interpreted as returning relations that express
the concept of being less/more, i.e., the elements in the domain
are now less/more than the elements in the range.
Sven Verdoolaege [Tue, 8 Sep 2009 14:34:24 +0000 (16:34 +0200)]
isl_tab_dup: avoid out-of-bounds array access
tab->n_col is between 0 and mat->n_col - 2 - M
and may not be equal to n_var after some columns have been dropped.
Sven Verdoolaege [Sun, 6 Sep 2009 15:49:15 +0000 (17:49 +0200)]
isl 0.01
Sven Verdoolaege [Sun, 6 Sep 2009 16:00:03 +0000 (18:00 +0200)]
add a rudimentary manual
Sven Verdoolaege [Sun, 6 Sep 2009 15:59:28 +0000 (17:59 +0200)]
add some memory management annotations
Sven Verdoolaege [Sun, 6 Sep 2009 13:33:53 +0000 (15:33 +0200)]
export isl_basic_set_project_out
Sven Verdoolaege [Sun, 6 Sep 2009 11:48:04 +0000 (13:48 +0200)]
isl_basic_set_normalize_constraints: add missing return
Sven Verdoolaege [Sun, 6 Sep 2009 11:46:47 +0000 (13:46 +0200)]
isl_map_simplify.c: remove unused variables
Sven Verdoolaege [Sun, 6 Sep 2009 11:44:45 +0000 (13:44 +0200)]
isl_map.c: remove unused variables
Sven Verdoolaege [Sun, 6 Sep 2009 11:43:09 +0000 (13:43 +0200)]
isl_basic_set_get_hash: initialize hash value
Sven Verdoolaege [Sun, 6 Sep 2009 11:40:52 +0000 (13:40 +0200)]
isl_affine_hull.c: remove unused variable
Sven Verdoolaege [Sun, 6 Sep 2009 11:40:24 +0000 (13:40 +0200)]
isl_hash.c: remove unused variable
Sven Verdoolaege [Sun, 6 Sep 2009 11:39:11 +0000 (13:39 +0200)]
isl_lp.c: add missing include
Sven Verdoolaege [Sun, 6 Sep 2009 11:38:02 +0000 (13:38 +0200)]
isl_equalities.c: drop redundant error handling
Sven Verdoolaege [Sun, 6 Sep 2009 11:37:44 +0000 (13:37 +0200)]
isl_equalities.c: remove unused variable
Sven Verdoolaege [Sun, 6 Sep 2009 11:36:21 +0000 (13:36 +0200)]
isl_convex_hull.c: remove unused variables
Sven Verdoolaege [Sun, 6 Sep 2009 11:34:20 +0000 (13:34 +0200)]
isl_constraint.c: remove unused variables
Sven Verdoolaege [Sun, 6 Sep 2009 11:30:12 +0000 (13:30 +0200)]
isl_tab.c: sign_of_min: only pivot back if we performed any pivot
Sven Verdoolaege [Sun, 6 Sep 2009 11:23:29 +0000 (13:23 +0200)]
isl_tab.c: isl_tab_mark_redundant: fix up error return
Sven Verdoolaege [Sun, 6 Sep 2009 11:22:11 +0000 (13:22 +0200)]
isl_tab.c: remove unused variables
Sven Verdoolaege [Sun, 6 Sep 2009 11:20:49 +0000 (13:20 +0200)]
isl_tab_pip.c: remove unused variables
Sven Verdoolaege [Sun, 6 Sep 2009 11:19:05 +0000 (13:19 +0200)]
isl_vec.c: remove unused variable
Sven Verdoolaege [Sun, 6 Sep 2009 11:18:31 +0000 (13:18 +0200)]
isl_test.c: remove unused variable
Sven Verdoolaege [Sun, 6 Sep 2009 11:17:35 +0000 (13:17 +0200)]
isl_assert: validate all arguments and fix up fallout
Sven Verdoolaege [Sun, 6 Sep 2009 11:03:24 +0000 (13:03 +0200)]
polyhedron_sample.c: add missing include
Sven Verdoolaege [Sun, 6 Sep 2009 11:01:40 +0000 (13:01 +0200)]
isl_pip.c: check return value of fscanf
Sven Verdoolaege [Sun, 6 Sep 2009 10:59:59 +0000 (12:59 +0200)]
polyhedron_minimize.c: handle all enumeration values in switch
Sven Verdoolaege [Sun, 6 Sep 2009 10:57:03 +0000 (12:57 +0200)]
configure.ac: set maximal optimization compiler flags
Sven Verdoolaege [Sat, 5 Sep 2009 22:16:09 +0000 (00:16 +0200)]
isl_set_copy_basic_set: add missing return
Sven Verdoolaege [Sat, 5 Sep 2009 22:09:54 +0000 (00:09 +0200)]
isl_set_drop_basic_set: add missing return
Sven Verdoolaege [Sat, 5 Sep 2009 21:56:57 +0000 (23:56 +0200)]
isl_set_coalesce: add missing return
Sven Verdoolaege [Sat, 5 Sep 2009 21:51:22 +0000 (23:51 +0200)]
isl_coalesce.c: add missing include
Sven Verdoolaege [Sat, 5 Sep 2009 21:34:18 +0000 (23:34 +0200)]
isl_test: check srcdir has been set
Sven Verdoolaege [Sat, 5 Sep 2009 21:28:59 +0000 (23:28 +0200)]
privately export isl_tab_kill_col
Sven Verdoolaege [Sat, 5 Sep 2009 21:27:34 +0000 (23:27 +0200)]
isl_tab.c: fix up to_col
Sven Verdoolaege [Sat, 5 Sep 2009 21:25:58 +0000 (23:25 +0200)]
isl_tab_pip.c: add missing include
Sven Verdoolaege [Sat, 5 Sep 2009 21:25:31 +0000 (23:25 +0200)]
isl_vec.c: add missing include
Sven Verdoolaege [Sat, 5 Sep 2009 21:24:30 +0000 (23:24 +0200)]
export isl_seq_cmp
Sven Verdoolaege [Sat, 5 Sep 2009 21:23:23 +0000 (23:23 +0200)]
fix return type of isl_constraint_free
Sven Verdoolaege [Sat, 5 Sep 2009 21:22:20 +0000 (23:22 +0200)]
export isl_token_free and isl_stream_error
Sven Verdoolaege [Sat, 5 Sep 2009 21:20:32 +0000 (23:20 +0200)]
isl_list.c: add missing include
Sven Verdoolaege [Sat, 5 Sep 2009 21:19:29 +0000 (23:19 +0200)]
isl_div.c: add missing include
Sven Verdoolaege [Sat, 5 Sep 2009 21:18:55 +0000 (23:18 +0200)]
isl_constraint.c: add missing include
Sven Verdoolaege [Sat, 5 Sep 2009 21:18:20 +0000 (23:18 +0200)]
basis_reduction_tab.c: add missing include
Sven Verdoolaege [Sat, 5 Sep 2009 21:17:46 +0000 (23:17 +0200)]
isl_map_no_piplib.c: add missing include
Sven Verdoolaege [Sat, 5 Sep 2009 21:17:05 +0000 (23:17 +0200)]
ax_create_stdint_h.m4: protect some limits from redefinition
Sven Verdoolaege [Sat, 5 Sep 2009 21:08:59 +0000 (23:08 +0200)]
polytope_scan.c: add missing include
Sven Verdoolaege [Sat, 5 Sep 2009 21:06:33 +0000 (23:06 +0200)]
fix return type of isl_div_free
Sven Verdoolaege [Sat, 5 Sep 2009 21:05:44 +0000 (23:05 +0200)]
isl_map_simplify.c: drop return from void function
Sven Verdoolaege [Sat, 5 Sep 2009 21:04:05 +0000 (23:04 +0200)]
isl_map_simplify.c: add missing include
Sven Verdoolaege [Sat, 5 Sep 2009 21:03:19 +0000 (23:03 +0200)]
isl_convex_hull.c: use isl_seq_get_hash instead of isl_seq_hash
Sven Verdoolaege [Sat, 5 Sep 2009 20:58:22 +0000 (22:58 +0200)]
declare flexarrays of size 1 to silence sun compiler
Sven Verdoolaege [Sat, 5 Sep 2009 20:21:10 +0000 (22:21 +0200)]
change isl_basic_map_empty interface for consistency
Sven Verdoolaege [Sat, 5 Sep 2009 13:02:29 +0000 (15:02 +0200)]
AX_SUBMODULE: mention default type of library to use
Sven Verdoolaege [Sat, 5 Sep 2009 12:53:04 +0000 (14:53 +0200)]
configure.ac: use AX_SUBMODULE for gmp for consistency
Sven Verdoolaege [Sat, 5 Sep 2009 12:32:01 +0000 (14:32 +0200)]
separate out config header from isl_ctx.h
Sven Verdoolaege [Fri, 4 Sep 2009 21:39:57 +0000 (23:39 +0200)]
pilp solver: don't ignore feasibility test on context
In the initial implementation, the sample point of the context was
kept integer. This was later changed in such a way that now the
sample point is just lexico-smallest rational value.
This means that after checking for an integer point, we rollback
until the state before we performed this check.
However, the results of the feasibility test were only checked
after the rollback, completely ignoring the actual results of
the feasibility test.
Sven Verdoolaege [Tue, 1 Sep 2009 20:59:21 +0000 (22:59 +0200)]
isl_basic_map_gauss: try not to remove any div definitions
After computing divs, the result may get simplified and during
this simplification, isl_basic_map_gauss may actually remove some
divs because it is trying to play safe wrt circular div definitions.
By keeping the divs ordered, divs can safely be eliminated without
introducing any circular definitions.
Sven Verdoolaege [Sun, 30 Aug 2009 08:01:08 +0000 (10:01 +0200)]
add isl_map_sum
Sven Verdoolaege [Sun, 30 Aug 2009 07:54:40 +0000 (09:54 +0200)]
add isl_map_floordiv
Sven Verdoolaege [Sun, 30 Aug 2009 07:51:39 +0000 (09:51 +0200)]
add isl_map_neg
Sven Verdoolaege [Sun, 30 Aug 2009 07:43:49 +0000 (09:43 +0200)]
add isl_map_is_strict_subset
Sven Verdoolaege [Sun, 30 Aug 2009 07:17:52 +0000 (09:17 +0200)]
add isl_map_fast_is_fixed
Sven Verdoolaege [Sun, 30 Aug 2009 07:11:09 +0000 (09:11 +0200)]
add isl_map_identity_like
Sven Verdoolaege [Sun, 30 Aug 2009 07:05:56 +0000 (09:05 +0200)]
rename isl_map_identity_like to isl_map_identity_like_basic_map
Sven Verdoolaege [Mon, 17 Aug 2009 08:13:56 +0000 (10:13 +0200)]
add isl_polytope_scan application
Sven Verdoolaege [Sat, 15 Aug 2009 14:46:16 +0000 (16:46 +0200)]
isl_seq_normalize: use pre-allocated temporary variable in isl_ctx
This requires that we pass along an isl_ctx, but it removes
the need for allocating a temporary variable every time
isl_seq_normalize is called.
In some cases, up to 20% of the execution time of isl_seq_normalize
was wasted on initializing and clearing this temporary variable.
Sven Verdoolaege [Sat, 15 Aug 2009 14:33:27 +0000 (16:33 +0200)]
add isl_vec_normalize
Sven Verdoolaege [Sat, 15 Aug 2009 14:20:38 +0000 (16:20 +0200)]
isl_seq_normalize: no need to scale down by one
Sven Verdoolaege [Fri, 7 Aug 2009 19:31:45 +0000 (21:31 +0200)]
add isl_polyhedron_minimize application
Sven Verdoolaege [Mon, 10 Aug 2009 19:04:00 +0000 (21:04 +0200)]
add generalized basis reduction based ILP solver
Sven Verdoolaege [Sat, 15 Aug 2009 09:08:13 +0000 (11:08 +0200)]
add isl_vec_mat_product
Sven Verdoolaege [Sun, 9 Aug 2009 16:12:57 +0000 (18:12 +0200)]
export isl_vec_ceil
Sven Verdoolaege [Sun, 9 Aug 2009 09:42:41 +0000 (11:42 +0200)]
isl_basic_set_sample: only perform basis reduction once
On larger problem, much time was spent on repeated basis reductions
with little or no reduction on the number of points visited.
The initial basis reduction seems to be sufficient in most cases.
Sven Verdoolaege [Sun, 9 Aug 2009 16:08:09 +0000 (18:08 +0200)]
rename isl_solve_lp to isl_basic_{map,set}_solve_lp
Sven Verdoolaege [Sat, 8 Aug 2009 10:20:56 +0000 (12:20 +0200)]
isl_solve_lp: optionally return solution point
The caller may now not be interested in the optimal value anymore,
so make returning this optimal value optional.
Sven Verdoolaege [Sun, 9 Aug 2009 15:20:27 +0000 (17:20 +0200)]
export isl_vec header