Sven Verdoolaege [Fri, 15 Apr 2011 13:25:47 +0000 (15:25 +0200)]
isl_tab_pip.c: fix typo in comment
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Wed, 13 Apr 2011 14:21:00 +0000 (16:21 +0200)]
add isl_quicksort (copied from glibc)
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Wed, 13 Apr 2011 08:37:46 +0000 (10:37 +0200)]
isl_printer_print_basic_set: also print invalid basic sets
In particular, zero equality rows should not appear in a finalized
basic set, but they may appear during the construction of a basic set.
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Tue, 12 Apr 2011 11:01:21 +0000 (13:01 +0200)]
add isl_union_map_is_injective
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Tue, 12 Apr 2011 10:05:46 +0000 (12:05 +0200)]
add isl_union_map_is_bijective
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Tue, 12 Apr 2011 09:57:58 +0000 (11:57 +0200)]
add isl_union_map_is_single_valued
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Mon, 11 Apr 2011 11:14:13 +0000 (13:14 +0200)]
add isl_mat_add_zero_rows
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sun, 10 Apr 2011 08:57:11 +0000 (10:57 +0200)]
isl_blk: don't reuse overly large blocks for small allocations
We usually allocate a large number of small objects, but occasionally
we may allocate one or more big objects. The original caching code
could reuse a cached huge object for a small allocation.
This is fine if the object would grow later, but if it remains
small, then we may end up consuming and wasting a lot of memory,
especially if these objects are long-lived.
Now we only a memory block if it is at most twice as big as the desired
size. This may result in some large objects sticking around in the cache,
so we evict objects from the cache after a while.
Finally, we don't reuse any cache elements for initially zero sized
allocations, but instead check the cache when the objects first growns
to a non-zero size.
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sat, 9 Apr 2011 18:18:18 +0000 (20:18 +0200)]
add isl_hmap_map_basic_set
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Fri, 8 Apr 2011 07:47:04 +0000 (09:47 +0200)]
add isl_union_map_copy_map
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Thu, 7 Apr 2011 12:51:41 +0000 (14:51 +0200)]
add isl_union_map_contains
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Wed, 6 Apr 2011 13:19:10 +0000 (15:19 +0200)]
add isl_basic_set_transform_dims
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Wed, 6 Apr 2011 13:00:26 +0000 (15:00 +0200)]
add isl_basic_set_offset
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Wed, 6 Apr 2011 12:09:00 +0000 (14:09 +0200)]
change isl_mat_sub_alloc prototype
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Tue, 19 Apr 2011 13:18:10 +0000 (15:18 +0200)]
make isl_mat_sub_* functions private
They were never meant to be made public.
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sat, 26 Mar 2011 14:58:08 +0000 (15:58 +0100)]
add isl_vec_get_ctx
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sat, 26 Mar 2011 14:18:17 +0000 (15:18 +0100)]
add isl_mat_initial_non_zero_cols
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sat, 26 Mar 2011 09:48:01 +0000 (10:48 +0100)]
add isl_mat_set_element_si
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Mon, 21 Mar 2011 12:01:18 +0000 (13:01 +0100)]
add isl_basic_set_add_constraints_dim_map
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Mon, 21 Mar 2011 11:59:18 +0000 (12:59 +0100)]
add isl_dim_map_range
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Mon, 21 Mar 2011 11:31:49 +0000 (12:31 +0100)]
isl_dim_map: allow signed mapping
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Mon, 21 Mar 2011 11:23:51 +0000 (12:23 +0100)]
isl_dim_map: extract from isl_map.c
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sun, 20 Mar 2011 15:46:51 +0000 (16:46 +0100)]
change prototype of isl_tab_dump
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sun, 20 Mar 2011 13:51:30 +0000 (14:51 +0100)]
add isl_map_remove_divs
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Tue, 19 Apr 2011 15:56:10 +0000 (17:56 +0200)]
doc: fix typo
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Thu, 23 Dec 2010 22:17:41 +0000 (23:17 +0100)]
doc: add a note on the accuracy of our approximation
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Wed, 22 Dec 2010 13:41:06 +0000 (14:41 +0100)]
add isl_union_set_coefficients and isl_union_set_solutions
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Wed, 22 Dec 2010 13:50:39 +0000 (14:50 +0100)]
add isl_union_set_lift
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Tue, 19 Apr 2011 12:58:39 +0000 (14:58 +0200)]
Merge branch 'maint'
Sven Verdoolaege [Sat, 26 Mar 2011 17:00:26 +0000 (18:00 +0100)]
isl_tab: alway free saved basis undo record
Before, it would only get freed if it was actually used.
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Tue, 19 Apr 2011 12:32:21 +0000 (14:32 +0200)]
make sure destination for GDB module exists before installing
Usually, this directory already exists because the library has
been copied there, but during a parallel make install this may
not have happened yet.
Reported-by: dirtyepic <dirtyepic.sk@gmail.com>
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Fri, 15 Apr 2011 15:09:24 +0000 (17:09 +0200)]
isl_tab_pip.c: add_lexmin_eq: remove misguided optimizations
After adding a pair of inequalities corresponding to the equality,
the code tries to reduce the dimensionality of the problem by
removing a column. If one of the added constraints happens to have
been pivoted into a column, then it can easily be removed.
Otherwise, the code tries to pivot the row into a column and
then remove the column.
This pivot may disrupt the lexico-positiveness of the columns however.
At the first least, the code should check that the pivot entry
is negative, but it should also avoid pivoting out a column corresponding
to a parameter.
Since this optimization shouldn't have that much of an effect anyway,
we choose here to just remove it for now.
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sun, 20 Mar 2011 15:40:41 +0000 (16:40 +0100)]
isl_basic_map_lexmin: turn off equality detection on non-parametric problems
Detecting equalities can be quite expensive and has mostly been shown
effective on parametric problems. For non-parametric problems, we
are effectively computing several solutions as a preprocessing step
to computing a single solution, albeit a special one.
Until we obtain more evidence that this is useful,
it seems prudent to turn off this equality detection on non-parametric
problems.
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sat, 19 Mar 2011 16:25:29 +0000 (17:25 +0100)]
use silent make rules
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Mon, 11 Apr 2011 18:56:48 +0000 (20:56 +0200)]
isl_stream_read_map: fix handling of divs in tuples
Supoprt for them was broken in f1ea969 (isl_stream_read_map: treat divs
as output variables while adding constraints, Thu Mar 17 16:29:06 2011 +0100).
When treating divs as output variables, we need to make sure that
each of them is backed by a variable in the list of active variables.
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sat, 26 Mar 2011 14:05:41 +0000 (15:05 +0100)]
isl_mat_left_hermite: plug memory leak on error path
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Thu, 7 Apr 2011 20:29:43 +0000 (22:29 +0200)]
plug memory leak in isl_mat_product
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Fri, 18 Mar 2011 15:02:33 +0000 (16:02 +0100)]
isl 0.06
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Fri, 18 Mar 2011 12:33:13 +0000 (13:33 +0100)]
doc: add some implementation details on parametric integer programming
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Fri, 18 Mar 2011 11:23:38 +0000 (12:23 +0100)]
isl_lp.c: avoid clang warning
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Fri, 18 Mar 2011 10:46:59 +0000 (11:46 +0100)]
isl_stream_read_map: accept floord and ceild expressions in constraints
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Fri, 18 Mar 2011 10:19:48 +0000 (11:19 +0100)]
isl_stream_read_map: accept min and max expressions in constraints
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Thu, 17 Mar 2011 16:47:52 +0000 (17:47 +0100)]
isl_stream_read_map: properly read nested divs
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Thu, 17 Mar 2011 15:29:06 +0000 (16:29 +0100)]
isl_stream_read_map: treat divs as output variables while adding constraints
This will allow us to more easily handle other extra variables.
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Fri, 18 Mar 2011 11:03:35 +0000 (12:03 +0100)]
isl_map_coalesce: plug memory leak on error path
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Thu, 17 Mar 2011 12:15:58 +0000 (13:15 +0100)]
isl_mat_extend: avoid memory leak when realloc fails
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Thu, 17 Mar 2011 12:15:43 +0000 (13:15 +0100)]
isl_basic_map_overlying_set: avoid memory leak when realloc fails
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Thu, 17 Mar 2011 12:15:25 +0000 (13:15 +0100)]
isl_stream_getc: avoid memory leak when realloc fails
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Thu, 17 Mar 2011 08:59:00 +0000 (09:59 +0100)]
rudimentary support for asynchronous termination of computations
Most operations end up using a tableau at some point, so we
currently only check for the termination condition during pivoting.
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Wed, 16 Mar 2011 15:19:45 +0000 (16:19 +0100)]
hide isl_ctx internals
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Tue, 15 Mar 2011 11:24:21 +0000 (12:24 +0100)]
isl_vec_read_from_file: drop input_format argument
Ideally, we should autodetect the input format and we currently
only support one format anyway.
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Tue, 15 Mar 2011 11:17:30 +0000 (12:17 +0100)]
isl_map.c: drop unused error label
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Tue, 15 Mar 2011 11:17:19 +0000 (12:17 +0100)]
isl_input.c: drop unused error label
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Tue, 15 Mar 2011 11:11:29 +0000 (12:11 +0100)]
respect DESTDIR when installing isl.py
Reported-by: Kpucko <slashdevslashzerr0@gmail.com>
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sat, 12 Mar 2011 15:18:39 +0000 (16:18 +0100)]
isl_stream: accept "$" token
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sun, 6 Mar 2011 21:06:57 +0000 (22:06 +0100)]
add isl_union_map_power
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sat, 5 Mar 2011 18:24:07 +0000 (19:24 +0100)]
change isl_map_power interface
The old interface could not be extended to union maps, while
the new interface exploits nested spaces.
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Wed, 9 Mar 2011 19:46:12 +0000 (20:46 +0100)]
add isl_union_map_zip
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Wed, 9 Mar 2011 09:33:55 +0000 (10:33 +0100)]
add private isl_basic_map_swap_vars
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Wed, 9 Mar 2011 20:17:20 +0000 (21:17 +0100)]
add isl_union_map_deltas_map
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Thu, 10 Mar 2011 18:17:05 +0000 (19:17 +0100)]
Merge branch 'maint'
Sven Verdoolaege [Wed, 9 Mar 2011 20:04:56 +0000 (21:04 +0100)]
isl_map_deltas: don't copy flags from input
The deltas sets of disjoint relations may not be disjoint
and the entire result will not be normalized.
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sat, 5 Mar 2011 14:17:53 +0000 (15:17 +0100)]
isl_stream_read_map: accept constant expressions of the form x^y
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sat, 5 Mar 2011 09:47:34 +0000 (10:47 +0100)]
isl_stream: accept "/\" and "\/" as alternatives for "and" and "or"
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sat, 5 Mar 2011 09:38:18 +0000 (10:38 +0100)]
isl_stream: only quote newline using '\'
This is all we need to support line continuation.
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sat, 5 Mar 2011 09:30:08 +0000 (10:30 +0100)]
isl_stream: maintain private ungetc buffer
We may want to unget more than one character.
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Wed, 2 Mar 2011 20:43:54 +0000 (21:43 +0100)]
isl_set_lifting: simplify and finalize result
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Wed, 2 Mar 2011 20:42:55 +0000 (21:42 +0100)]
doc: fix typo
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Wed, 2 Mar 2011 20:42:19 +0000 (21:42 +0100)]
doc: drop long outdated note on transitive closures
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Tue, 1 Mar 2011 14:21:53 +0000 (15:21 +0100)]
add isl_basic_set_get_dim_name
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Fri, 25 Feb 2011 15:07:20 +0000 (16:07 +0100)]
isl_map_identity: take dimension specification of map as input
Before, isl_basic_map_identity and isl_map_identity would take
the dimension specification of a set as input, but this could be
confusing for users. Moreover, by taking the specification of a map
as input, we can now also construct canonical mappings between spaces
with the same dimension, but with different names or internal structure.
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Fri, 25 Feb 2011 14:05:14 +0000 (15:05 +0100)]
rename isl_dim_map to isl_dim_map_from_set
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Mon, 21 Feb 2011 15:54:43 +0000 (16:54 +0100)]
transitive closure: project out parameters when any constraints are impure
The resulting delta set can lead to extra constraints on the path,
resulting in a possibly more accurate approximation.
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Mon, 21 Feb 2011 15:33:20 +0000 (16:33 +0100)]
privately export isl_basic_set_reset_dim
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Wed, 22 Dec 2010 14:13:44 +0000 (15:13 +0100)]
isl_set_lift: preserve structure of space
Before, we would simply add extra variables to the dimension specification,
if needed, destroying any internal structure. Now, we retain the original
dimension specification as the domain of a wrapped map.
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sun, 20 Feb 2011 10:00:05 +0000 (11:00 +0100)]
isl_pw_qpolynomial_bound: handle combination of wrapping and existentials
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Fri, 18 Feb 2011 19:50:50 +0000 (20:50 +0100)]
isl_tab_pip.c: fix typo in comment
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Fri, 18 Feb 2011 19:44:49 +0000 (20:44 +0100)]
isl_tab: check for obviously empty tableaus after discovering an equality
After a new equality has been discovered, it may turn out that one
of the coordinates is stuck at a non-integral value. If so, we can
mark the tableau empty.
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Fri, 18 Feb 2011 14:37:37 +0000 (15:37 +0100)]
isl_basic_map_gist: prefer contraints without existentially quantified variables
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Fri, 18 Feb 2011 12:09:02 +0000 (13:09 +0100)]
isl_basic_map_sort_constraints: change comparison routine
In particular, before we would simply sort the constraints lexicographically.
Now, we first check for the last non-zero coefficients and only when those
positions are the same do we continue with the lexicographical order.
The new ordering is the same as that used to order divs in isl_polynomial.c
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sat, 19 Feb 2011 17:49:29 +0000 (18:49 +0100)]
isl_tab_ineq_type: classify more constraints as being adjacent to an inequality
In particular, if one constraint b is equal to a c * (-1 - a), with c
a positive constant and A some other constraints, then b can also
be considered to be adjacent to a as relaxing a by one will result
in an overlap with b. Note that if c is larger than one, then a
will not be considered to be adjacent to b, so this change will not
affect pairs of inequalities.
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sat, 19 Feb 2011 17:35:24 +0000 (18:35 +0100)]
isl_map_coalesce: be more relaxed about multiple equalities being adjacent
We try to avoid wrapping in a basic map that has multiple equalities
that are adjacent to inequalities in the other basic map, because that
may lead to more complicated constraints.
The original check would, however, also prevent the extension of
one basic map with an other if they happened to lie in a shared
affine subspace. By moving the test for multiple equalities after
the check for extensions, we allow such extensions, while still
preventing undesired wrapping.
We can probably do better by explicitly detecting and exploiting
the shared affine subspace.
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Thu, 17 Feb 2011 19:37:06 +0000 (20:37 +0100)]
add isl_basic_map_from_domain_and_range
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Thu, 17 Feb 2011 19:29:08 +0000 (20:29 +0100)]
add isl_basic_set_neg
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Thu, 17 Feb 2011 19:12:17 +0000 (20:12 +0100)]
add isl_basic_set_flat_product
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Thu, 17 Feb 2011 19:08:59 +0000 (20:08 +0100)]
export isl_basic_map_flatten
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sat, 25 Dec 2010 19:12:34 +0000 (20:12 +0100)]
add isl_basic_map_from_qpolynomial
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Thu, 17 Feb 2011 10:46:33 +0000 (11:46 +0100)]
isl_stream: support \<newline> line continuation
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Wed, 16 Feb 2011 18:47:17 +0000 (19:47 +0100)]
add isl_union_map_read_from_file
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Wed, 16 Feb 2011 15:07:11 +0000 (16:07 +0100)]
isl_stream_read_map: accept 'true' and 'false' constraints
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Tue, 15 Feb 2011 15:01:16 +0000 (16:01 +0100)]
isl_stream_read_map: allow extra ';' at end of map description
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sun, 13 Feb 2011 14:11:41 +0000 (15:11 +0100)]
isl_stream_read_map: allow negations
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sun, 13 Feb 2011 13:34:24 +0000 (14:34 +0100)]
isl_stream_read_map: allow existential quantification over disjunctions
Before, we would only allow existential quantification within a single
disjunct because the existentially quantified variables were being
added directly to a basic map.
Now, we first add extra output variables and project them out at the end.
The disadvantage is that we currently lose any explicit definition of
the existentially quantified variables in the input. Usually, we can
recover them from the constraints that are added when we meet such a
definition, but it does require some extra processing.
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sun, 13 Feb 2011 13:23:02 +0000 (14:23 +0100)]
privately export isl_basic_map_add_div_constraints_var
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sun, 13 Feb 2011 09:15:25 +0000 (10:15 +0100)]
isl_morph_basic_set: preserve rationality of input
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sun, 13 Feb 2011 09:15:09 +0000 (10:15 +0100)]
add isl_basic_set_is_rational
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sun, 13 Feb 2011 09:14:08 +0000 (10:14 +0100)]
isl_printer_print_basic_map: explicitly mark rational maps
Sven Verdoolaege [Sun, 13 Feb 2011 09:07:31 +0000 (10:07 +0100)]
isl_stream_read_map: read rational maps
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sun, 13 Feb 2011 09:05:01 +0000 (10:05 +0100)]
isl_basic_map_insert: preserve rationality of input
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Sven Verdoolaege [Sun, 13 Feb 2011 08:44:53 +0000 (09:44 +0100)]
add isl_basic_map_set_rational
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>