platform/upstream/isl.git
12 years agoadd isl_space_set_from_params
Sven Verdoolaege [Thu, 22 Sep 2011 10:00:15 +0000 (12:00 +0200)]
add isl_space_set_from_params

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoMerge branch 'maint'
Sven Verdoolaege [Thu, 22 Sep 2011 11:15:02 +0000 (13:15 +0200)]
Merge branch 'maint'

12 years agoisl_qpolynomial_morph: properly handle denominators in morph
Sven Verdoolaege [Tue, 20 Sep 2011 13:59:19 +0000 (15:59 +0200)]
isl_qpolynomial_morph: properly handle denominators in morph

Before, the denominator would get ignored during the morphing of the divs.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_mat_diag
Sven Verdoolaege [Tue, 20 Sep 2011 13:58:11 +0000 (15:58 +0200)]
add isl_mat_diag

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_tab_pip.c: sol_for_add: correctly set denominator
Sven Verdoolaege [Thu, 1 Sep 2011 09:42:16 +0000 (11:42 +0200)]
isl_tab_pip.c: sol_for_add: correctly set denominator

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_tab_pip.c: sol_map_add: fix double free on error path
Sven Verdoolaege [Thu, 1 Sep 2011 09:41:22 +0000 (11:41 +0200)]
isl_tab_pip.c: sol_map_add: fix double free on error path

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_stream: accept "==" token
Sven Verdoolaege [Sun, 18 Sep 2011 12:41:05 +0000 (14:41 +0200)]
isl_stream: accept "==" token

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_union_pw_*_plain_is_equal
Sven Verdoolaege [Sun, 18 Sep 2011 14:29:30 +0000 (16:29 +0200)]
add isl_union_pw_*_plain_is_equal

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_pw_*_plain_is_equal
Sven Verdoolaege [Mon, 5 Sep 2011 10:26:23 +0000 (12:26 +0200)]
add isl_pw_*_plain_is_equal

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_set_plain_cmp
Sven Verdoolaege [Mon, 5 Sep 2011 10:12:47 +0000 (12:12 +0200)]
add isl_set_plain_cmp

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_map_params
Sven Verdoolaege [Thu, 8 Sep 2011 14:55:41 +0000 (16:55 +0200)]
add isl_map_params

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_stream_next_token: treat "-0" as two tokens '-' and '0'
Sven Verdoolaege [Thu, 15 Sep 2011 12:25:51 +0000 (14:25 +0200)]
isl_stream_next_token: treat "-0" as two tokens '-' and '0'

Usually, a '-' followed by a sequence of digits is treated as a single
(negative) number.  When parsing affine expressions, negative numbers
are allowed without a preceding '+'.  However, if "-0" is parsed as '0'
then there is no way of distinguishing between "-0" and "0" and so "-0"
was not allowed in affine expressions.
We now treat "-0" as two tokens, so that it can be used in affine expressions.
The flip side is that "-0" can no longer be used where a single integer
is expected.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agodrop "nparam" argument from isl_{set,map}_read_from_{file,str}
Sven Verdoolaege [Wed, 14 Sep 2011 17:36:53 +0000 (19:36 +0200)]
drop "nparam" argument from isl_{set,map}_read_from_{file,str}

The "nparam" argument is removed because it is inconsistent with
the rest of the API.
The "nparam" argument was only ever useful for reading sets
represented in the original PolyLib format.
For reading maps, it was of limited use because there was no way
of specifying the number of input dimensions.
In both the isl format and the extended PolyLib format, the number
of parameters can be read off from the input.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agodoc: document *_move_dims functions
Sven Verdoolaege [Wed, 14 Sep 2011 17:50:57 +0000 (19:50 +0200)]
doc: document *_move_dims functions

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agodrop isl_div abstraction
Sven Verdoolaege [Fri, 9 Sep 2011 12:55:16 +0000 (14:55 +0200)]
drop isl_div abstraction

The isl_div abstraction has been superseded by the isl_aff abstraction,
so use that instead.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_{in,}equality_alloc: take isl_local_space intead of isl_space
Sven Verdoolaege [Tue, 13 Sep 2011 08:39:55 +0000 (10:39 +0200)]
isl_{in,}equality_alloc: take isl_local_space intead of isl_space

This makes it easier to construct constraints involving existentially
quantified variables.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agodoc: update example code to change in return type of isl_constraint_set_*
Sven Verdoolaege [Tue, 13 Sep 2011 10:51:12 +0000 (12:51 +0200)]
doc: update example code to change in return type of isl_constraint_set_*

The change happened way back in e2a2317 (reimplement isl_constraint in terms
of isl_aff, Fri Jul 1 17:20:52 2011 +0200).

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoMerge branch 'maint'
Sven Verdoolaege [Fri, 9 Sep 2011 15:45:51 +0000 (17:45 +0200)]
Merge branch 'maint'

12 years agoprovide full prototypes for some functions with no arguments
Sven Verdoolaege [Fri, 9 Sep 2011 15:40:06 +0000 (17:40 +0200)]
provide full prototypes for some functions with no arguments

Reported-by: Zbigniew Chamski <zbigniew.chamski@gmail.com>
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agodoc: fix typo
Sven Verdoolaege [Fri, 2 Sep 2011 10:58:29 +0000 (12:58 +0200)]
doc: fix typo

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_set_gist_params
Sven Verdoolaege [Wed, 7 Sep 2011 14:38:50 +0000 (16:38 +0200)]
add isl_set_gist_params

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agomake isl_pw_* object live in a map space
Sven Verdoolaege [Tue, 30 Aug 2011 14:47:59 +0000 (16:47 +0200)]
make isl_pw_* object live in a map space

Before, the space of an isl_pw_* object was that of the cells.
Conceptually, however, they map elements from these cells to something
and so their space should be that of a map.
This is especially useful for isl_pw_multi_aff objects that will
be introduced later.  Since we want to be able to convert back and forth
between such objects and isl_maps, we need to keep track of the
complete map space.

isl_aff, isl_qpolynomial and isl_qpolynomial_fold objects now
also live in a map space, although internally, they still keep
track of the domain space.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_space_extend_domain_with_range
Sven Verdoolaege [Tue, 30 Aug 2011 12:26:18 +0000 (14:26 +0200)]
add isl_space_extend_domain_with_range

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_space_is_domain
Sven Verdoolaege [Tue, 30 Aug 2011 12:25:50 +0000 (14:25 +0200)]
add isl_space_is_domain

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_local_space_is_set
Sven Verdoolaege [Tue, 30 Aug 2011 07:59:43 +0000 (09:59 +0200)]
add isl_local_space_is_set

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_local_space_domain
Sven Verdoolaege [Mon, 29 Aug 2011 15:57:15 +0000 (17:57 +0200)]
add isl_local_space_domain

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoimplement isl_constraint on top of isl_vec
Sven Verdoolaege [Mon, 29 Aug 2011 13:34:59 +0000 (15:34 +0200)]
implement isl_constraint on top of isl_vec

In e2a2317 (reimplement isl_constraint in terms of isl_aff,
Fri Jul 1 17:20:52 2011 +0200), were reimplemented on top of isl_aff
because both objects share many features.
There are also some difference, however, and it is therefore better
to implement isl_constraint directly on top of isl_vec.
In particular, an isl_aff has a denominator, whereas an isl_constraint
does not.  Although the denominator of an isl_aff is usually 1, it may
not always be and could therefore lead to subtle bugs.

Moreover, the space of an isl_constraint may be either that of
a set or a map, whereas, in principle, the domain of isl_aff is always
a set.  We allowed the domain of an isl_aff to be a map when it was
used to implement an isl_constraint, but this was not very clean.
This would become even more dramatic when we change the space of an isl_aff
to be that of a map.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_vec_neg
Sven Verdoolaege [Mon, 29 Aug 2011 13:32:39 +0000 (15:32 +0200)]
add isl_vec_neg

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_aff.c: extract isl_local_space_get_active
Sven Verdoolaege [Mon, 29 Aug 2011 13:00:33 +0000 (15:00 +0200)]
isl_aff.c: extract isl_local_space_get_active

This function will also be useful for our new implementation of isl_constraints.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_output.c: drop redundant "set" argument
Sven Verdoolaege [Fri, 26 Aug 2011 08:35:05 +0000 (10:35 +0200)]
isl_output.c: drop redundant "set" argument

We used to have to keep track of whether a given isl_space was that
of a map or a set, but now the isl_space itself contains that information
so we no longer need this extra argument.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_union_*_alloc: project space onto parameters
Sven Verdoolaege [Fri, 2 Sep 2011 06:23:58 +0000 (08:23 +0200)]
isl_union_*_alloc: project space onto parameters

Before, we were expecting the user to provide a parameter space,
but we might as well project whatever the user gives us onto
its parameter space.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoexplicitly differentiate between spaces of maps, sets and parameter sets
Sven Verdoolaege [Thu, 25 Aug 2011 17:21:05 +0000 (19:21 +0200)]
explicitly differentiate between spaces of maps, sets and parameter sets

Before, no distinction was made internally between spaces of maps,
sets and parameter spaces.  In particular, an isl_space with zero
input and output dimensions could have been any of those.
When printing isl_sets and isl_maps, we could keep track of whether
the original object as a set or a map, but parametric domains and
zero-dimensional domains were still printed identically.

Now we explicitly keep track of whether a space is supposed to be
that of a map, set or parametric set.  This means for example that
"[N] -> { [] : N >= 0 }" and "[N] -> { : N >= 0 }" are no longer considered
to be identical.
This may break some code that was using one space in place of another,
especially since until recently there was no official way of creating
a parameter space.

The main advantage is that we can now recognize parameter spaces
and treat them appropriately.  In particular, the domains of affine
expressions can now be correctly identified as being either (possibly
zero-dimensional) sets or parameter domains.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoallow isl_ids with negative reference counts
Sven Verdoolaege [Thu, 25 Aug 2011 19:18:34 +0000 (21:18 +0200)]
allow isl_ids with negative reference counts

This will be useful for static isl_ids that are not supposed to change.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoproper implementation of isl_union_map_from_range
Sven Verdoolaege [Sat, 27 Aug 2011 15:41:45 +0000 (17:41 +0200)]
proper implementation of isl_union_map_from_range

The original implementation would just return the input
because isl_sets and isl_maps have the same internal representation.
This will change in the near future, however, and so we need
to actually compute the range of all the elements in the input.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_map_from_domain_and_range: drop explicit conversion to isl_map
Sven Verdoolaege [Sat, 27 Aug 2011 12:41:11 +0000 (14:41 +0200)]
isl_map_from_domain_and_range: drop explicit conversion to isl_map

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_set_apply_pw_qpolynomial_fold: drop explicit conversion to isl_map
Sven Verdoolaege [Sat, 27 Aug 2011 12:38:09 +0000 (14:38 +0200)]
isl_set_apply_pw_qpolynomial_fold: drop explicit conversion to isl_map

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_tab_basic_set_non_trivial_lexmin: drop explicit conversion to isl_basic_map
Sven Verdoolaege [Sat, 27 Aug 2011 12:31:31 +0000 (14:31 +0200)]
isl_tab_basic_set_non_trivial_lexmin: drop explicit conversion to isl_basic_map

And similarly for isl_tab_basic_set_non_neg_lexmin.

In future, the space of an isl_basic_map will be different from that
of an isl_basic_set.  Calling isl_basic_map_from_range may therefore
result in possibly costly changes.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_tab_pip.c: fix whitespace issue
Sven Verdoolaege [Sat, 27 Aug 2011 12:33:12 +0000 (14:33 +0200)]
isl_tab_pip.c: fix whitespace issue

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_set_read_from_*: coerce set-like maps into sets
Sven Verdoolaege [Sun, 28 Aug 2011 08:21:52 +0000 (10:21 +0200)]
isl_set_read_from_*: coerce set-like maps into sets

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_input.c: map_read_polylib: convert set-like maps to sets
Sven Verdoolaege [Sun, 28 Aug 2011 08:17:57 +0000 (10:17 +0200)]
isl_input.c: map_read_polylib: convert set-like maps to sets

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_input.c: obj_read: start off from parameter space
Sven Verdoolaege [Sun, 28 Aug 2011 07:53:27 +0000 (09:53 +0200)]
isl_input.c: obj_read: start off from parameter space

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_input.c: represent nested tuple as isl_set
Sven Verdoolaege [Sun, 28 Aug 2011 07:49:45 +0000 (09:49 +0200)]
isl_input.c: represent nested tuple as isl_set

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_input.c: obj_read_poly_or_fold: represent domain as isl_set
Sven Verdoolaege [Sat, 27 Aug 2011 12:17:32 +0000 (14:17 +0200)]
isl_input.c: obj_read_poly_or_fold: represent domain as isl_set

Although, internally, isl_sets and isl_maps are the same,
conceptually, the domain of an isl_pw_qpolynomial is an isl_set.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_basic_set_multiplicative_call: explicitly project on parameter space
Sven Verdoolaege [Sun, 28 Aug 2011 07:20:31 +0000 (09:20 +0200)]
isl_basic_set_multiplicative_call: explicitly project on parameter space

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_pw_qpolynomial_fold_bound: explicitly project on parameter space
Sven Verdoolaege [Sun, 28 Aug 2011 07:43:35 +0000 (09:43 +0200)]
isl_pw_qpolynomial_fold_bound: explicitly project on parameter space

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_qpolynomial_bound_on_domain_bernstein: explicitly project on parameter space
Sven Verdoolaege [Sun, 28 Aug 2011 07:31:01 +0000 (09:31 +0200)]
isl_qpolynomial_bound_on_domain_bernstein: explicitly project on parameter space

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_qpolynomial_bound_on_domain_range: explicitly project on parameter space
Sven Verdoolaege [Sun, 28 Aug 2011 07:15:25 +0000 (09:15 +0200)]
isl_qpolynomial_bound_on_domain_range: explicitly project on parameter space

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_union_map_from_map: explicitly project on parameter space
Sven Verdoolaege [Sat, 3 Sep 2011 19:34:15 +0000 (21:34 +0200)]
isl_union_map_from_map: explicitly project on parameter space

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_union_map_align_params: explicitly project on parameter space
Sven Verdoolaege [Sat, 3 Sep 2011 19:42:07 +0000 (21:42 +0200)]
isl_union_map_align_params: explicitly project on parameter space

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_polynomial.c: constant_on_domain: explicitly project on parameter space
Sven Verdoolaege [Sat, 27 Aug 2011 12:50:44 +0000 (14:50 +0200)]
isl_polynomial.c: constant_on_domain: explicitly project on parameter space

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agobasic_set_dim_max: explicitly project on parameter space
Sven Verdoolaege [Sun, 28 Aug 2011 08:36:00 +0000 (10:36 +0200)]
basic_set_dim_max: explicitly project on parameter space

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_basic_set_compute_vertices: explicitly turn chambers into parameter sets
Sven Verdoolaege [Sun, 28 Aug 2011 07:00:20 +0000 (09:00 +0200)]
isl_basic_set_compute_vertices: explicitly turn chambers into parameter sets

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agobound.c: explicitly convert context into parameter set
Sven Verdoolaege [Sun, 28 Aug 2011 07:28:36 +0000 (09:28 +0200)]
bound.c: explicitly convert context into parameter set

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agopip.c: explicitly convert context into parameter set
Sven Verdoolaege [Sat, 27 Aug 2011 12:08:33 +0000 (14:08 +0200)]
pip.c: explicitly convert context into parameter set

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_pw_qpolynomial_fold_project_domain_on_params
Sven Verdoolaege [Fri, 26 Aug 2011 20:22:08 +0000 (22:22 +0200)]
add isl_pw_qpolynomial_fold_project_domain_on_params

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_qpolynomial_project_domain_on_params
Sven Verdoolaege [Fri, 26 Aug 2011 20:21:31 +0000 (22:21 +0200)]
add isl_qpolynomial_project_domain_on_params

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_pw_qpolynomial_project_out
Sven Verdoolaege [Tue, 16 Aug 2011 09:29:54 +0000 (11:29 +0200)]
add isl_pw_qpolynomial_project_out

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_morph_{dom,ran}_params
Sven Verdoolaege [Sat, 27 Aug 2011 08:43:29 +0000 (10:43 +0200)]
add isl_morph_{dom,ran}_params

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_basic_set_params and isl_set_params
Sven Verdoolaege [Sat, 27 Aug 2011 09:05:30 +0000 (11:05 +0200)]
add isl_basic_set_params and isl_set_params

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_space_params_alloc
Sven Verdoolaege [Sat, 27 Aug 2011 08:57:25 +0000 (10:57 +0200)]
add isl_space_params_alloc

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_stream_read_set: accept parameter domains
Sven Verdoolaege [Fri, 26 Aug 2011 07:57:31 +0000 (09:57 +0200)]
isl_stream_read_set: accept parameter domains

In particular, accept sets without a tuple, e.g.,

[N] -> { : N >= 1 }

At this moment, no distinction is made between a "parameter domain"
and a zero-dimensional set.  However, this will change in the near
future and so we need to have a different notation for these two
types of sets.  We start by allowing the new notation for parameter
domains.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_pw_qpolynomial_fold_bound: simplify construction of target space
Sven Verdoolaege [Sun, 28 Aug 2011 07:36:59 +0000 (09:36 +0200)]
isl_pw_qpolynomial_fold_bound: simplify construction of target space

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_test.c: properly create set space
Sven Verdoolaege [Fri, 26 Aug 2011 20:17:11 +0000 (22:17 +0200)]
isl_test.c: properly create set space

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_map_range_map: fix space manipulation
Sven Verdoolaege [Sun, 28 Aug 2011 08:31:46 +0000 (10:31 +0200)]
isl_map_range_map: fix space manipulation

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_map_range: construct correct space for result
Sven Verdoolaege [Sun, 28 Aug 2011 08:31:23 +0000 (10:31 +0200)]
isl_map_range: construct correct space for result

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_basic_set_alloc: create basic set in proper set space
Sven Verdoolaege [Sun, 28 Aug 2011 06:55:17 +0000 (08:55 +0200)]
isl_basic_set_alloc: create basic set in proper set space

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_space_wrap: properly create set space
Sven Verdoolaege [Sat, 27 Aug 2011 12:24:07 +0000 (14:24 +0200)]
isl_space_wrap: properly create set space

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_set_from_pw_aff
Sven Verdoolaege [Mon, 29 Aug 2011 11:04:10 +0000 (13:04 +0200)]
add isl_set_from_pw_aff

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agorename PW_alloc_ to PW_alloc_size
Sven Verdoolaege [Tue, 16 Aug 2011 08:57:03 +0000 (10:57 +0200)]
rename PW_alloc_ to PW_alloc_size

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_pw_*_add_disjoint: try and extend one of the pws instead of copying pieces
Sven Verdoolaege [Sun, 14 Aug 2011 14:54:20 +0000 (16:54 +0200)]
isl_pw_*_add_disjoint: try and extend one of the pws instead of copying pieces

This is especially useful when isl_pw_*_add_disjoint is used
to repeatedly add a single piece.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_space_match: optimize trivial cases
Sven Verdoolaege [Sun, 14 Aug 2011 14:53:33 +0000 (16:53 +0200)]
isl_space_match: optimize trivial cases

A space is obviously equal to itself.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_map_flat_domain_product
Sven Verdoolaege [Tue, 9 Aug 2011 20:37:52 +0000 (22:37 +0200)]
add isl_map_flat_domain_product

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_access_info_compute_flow: align parameters of input access relations
Sven Verdoolaege [Thu, 11 Aug 2011 12:03:55 +0000 (14:03 +0200)]
isl_access_info_compute_flow: align parameters of input access relations

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoalign parameters of arguments to isl_map_{lexmin,lexmax}
Sven Verdoolaege [Thu, 11 Aug 2011 11:21:32 +0000 (13:21 +0200)]
align parameters of arguments to isl_map_{lexmin,lexmax}

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_space_align_params: accept general isl_spaces
Sven Verdoolaege [Thu, 11 Aug 2011 11:20:06 +0000 (13:20 +0200)]
isl_space_align_params: accept general isl_spaces

Before, we would only accept parameter spaces.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_space_params
Sven Verdoolaege [Thu, 18 Aug 2011 18:03:41 +0000 (20:03 +0200)]
add isl_space_params

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agorename isl_dim to isl_space
Sven Verdoolaege [Sun, 21 Aug 2011 08:38:41 +0000 (10:38 +0200)]
rename isl_dim to isl_space

The old name was confusing because the name suggested that the object
represents a single dimension, while in fact it represents an entire space.
The documented isl_dim based names are for backward compatibility.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agodocument isl_dim_move
Sven Verdoolaege [Sun, 21 Aug 2011 11:49:37 +0000 (13:49 +0200)]
document isl_dim_move

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agosplit off declarations from isl_polynomial.h to separate file
Sven Verdoolaege [Sun, 21 Aug 2011 11:02:38 +0000 (13:02 +0200)]
split off declarations from isl_polynomial.h to separate file

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agomerge isl_*_dump functions
Sven Verdoolaege [Sat, 20 Aug 2011 17:12:08 +0000 (19:12 +0200)]
merge isl_*_dump functions

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_set_dim_min
Sven Verdoolaege [Thu, 1 Sep 2011 08:32:04 +0000 (10:32 +0200)]
add isl_set_dim_min

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_basic_set_foreach_lexopt
Sven Verdoolaege [Thu, 1 Sep 2011 08:30:37 +0000 (10:30 +0200)]
add isl_basic_set_foreach_lexopt

12 years agoadd isl_pw_aff_union_opt
Sven Verdoolaege [Thu, 1 Sep 2011 08:30:10 +0000 (10:30 +0200)]
add isl_pw_aff_union_opt

12 years agoadd isl_pw_aff_union_min
Sven Verdoolaege [Thu, 1 Sep 2011 08:22:09 +0000 (10:22 +0200)]
add isl_pw_aff_union_min

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_aff_le_basic_set
Sven Verdoolaege [Thu, 1 Sep 2011 08:18:18 +0000 (10:18 +0200)]
add isl_aff_le_basic_set

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_qpolynomial_free: return NULL
Sven Verdoolaege [Thu, 1 Sep 2011 14:21:18 +0000 (16:21 +0200)]
isl_qpolynomial_free: return NULL

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoMerge branch 'maint'
Sven Verdoolaege [Wed, 31 Aug 2011 17:38:16 +0000 (19:38 +0200)]
Merge branch 'maint'

12 years agoisl_qpolynomial_rat_cst: handle NULL space
Sven Verdoolaege [Tue, 30 Aug 2011 12:21:12 +0000 (14:21 +0200)]
isl_qpolynomial_rat_cst: handle NULL space

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agobernstein_coefficients_cell: handle NULL poly
Sven Verdoolaege [Tue, 30 Aug 2011 12:14:15 +0000 (14:14 +0200)]
bernstein_coefficients_cell: handle NULL poly

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_printer_to_str: intialize buffer to empty string
Sven Verdoolaege [Thu, 25 Aug 2011 10:10:29 +0000 (12:10 +0200)]
isl_printer_to_str: intialize buffer to empty string

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_map_insert: properly handle named or nested spaces
Sven Verdoolaege [Sat, 27 Aug 2011 08:31:30 +0000 (10:31 +0200)]
isl_map_insert: properly handle named or nested spaces

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_set_flat_product: call isl_map_range_flat_product
Sven Verdoolaege [Fri, 5 Aug 2011 16:02:18 +0000 (18:02 +0200)]
isl_set_flat_product: call isl_map_range_flat_product

A set only has a "range", so we should only compute the product of
that range and not of the domain.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd some isl_map_plain_is_fixed tests
Sven Verdoolaege [Tue, 23 Aug 2011 13:27:39 +0000 (15:27 +0200)]
add some isl_map_plain_is_fixed tests

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_basic_map_neg: gauss result
Sven Verdoolaege [Tue, 23 Aug 2011 13:22:53 +0000 (15:22 +0200)]
isl_basic_map_neg: gauss result

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_dim_get_tuple_id: complain if tuple has no id
Sven Verdoolaege [Tue, 9 Aug 2011 14:45:45 +0000 (16:45 +0200)]
isl_dim_get_tuple_id: complain if tuple has no id

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_dim_get_dim_id: complain if dim has no id
Sven Verdoolaege [Thu, 11 Aug 2011 15:17:49 +0000 (17:17 +0200)]
isl_dim_get_dim_id: complain if dim has no id

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_*_has_tuple_id
Sven Verdoolaege [Fri, 12 Aug 2011 09:32:14 +0000 (11:32 +0200)]
add isl_*_has_tuple_id

The isl_*_git_tuple_id functions cannot be used to find out
whether a dimension has an id as they may also return NULL
on failures.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_*_has_dim_id
Sven Verdoolaege [Thu, 11 Aug 2011 14:33:15 +0000 (16:33 +0200)]
add isl_*_has_dim_id

The isl_*_git_dim_id functions cannot be used to find out
whether a dimension has an id as they may also return NULL
on failures.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agodoc: warn about the limited use of identifiers of individual dimensions
Sven Verdoolaege [Fri, 12 Aug 2011 09:18:37 +0000 (11:18 +0200)]
doc: warn about the limited use of identifiers of individual dimensions

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agodocument isl_map_dim
Sven Verdoolaege [Thu, 11 Aug 2011 15:36:19 +0000 (17:36 +0200)]
document isl_map_dim

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>