platform/upstream/isl.git
11 years agoisl_access_info_add_source: plug memory leak on error path
Sven Verdoolaege [Wed, 22 Aug 2012 09:11:49 +0000 (11:11 +0200)]
isl_access_info_add_source: plug memory leak on error path

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
11 years agoisl_set_dim_residue_class: correctly consider all basic sets in the set
Sven Verdoolaege [Tue, 21 Aug 2012 09:37:57 +0000 (11:37 +0200)]
isl_set_dim_residue_class: correctly consider all basic sets in the set

This commit fixes two closely related problems.
Due to a typo, isl_set_dim_residue_class would only consider one of
the basic sets in the input set.  The information obtained from the
individual basic sets was also combined incorrectly.
In particular, the code would insist that all basic sets have the
same residue if they have the same modulo and not consider adjusting
the modulo of the combined basic sets to accommodate for the difference
in residues.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
11 years agoisl_map_subtract: handle duplicate divs in subtrahend
Sven Verdoolaege [Mon, 13 Aug 2012 16:42:04 +0000 (18:42 +0200)]
isl_map_subtract: handle duplicate divs in subtrahend

A simplified basic map is not expected to have duplicate divs,
but it may still happen if a div is discovered by isl_basic_map_gauss
without subsequently being compared to other divs.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
11 years agoisl_aff_scale_down: check for scaling down by zero
Sven Verdoolaege [Fri, 10 Aug 2012 14:54:00 +0000 (16:54 +0200)]
isl_aff_scale_down: check for scaling down by zero

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
11 years agoisl_pw_*_realign_domain: plug memory leak on error path
Sven Verdoolaege [Wed, 18 Jul 2012 15:52:11 +0000 (17:52 +0200)]
isl_pw_*_realign_domain: plug memory leak on error path

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
11 years agoisl_handle_error: avoid use of isl_options_get_on_error
Sven Verdoolaege [Thu, 19 Jul 2012 11:29:36 +0000 (13:29 +0200)]
isl_handle_error: avoid use of isl_options_get_on_error

isl_options_get_on_error could end up calling isl_handle_error
recursively, resulting in an infinite calling sequence.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
11 years agoisl_space_extend_domain_with_range: handle ranges with a nested space
Sven Verdoolaege [Fri, 20 Jul 2012 17:41:17 +0000 (19:41 +0200)]
isl_space_extend_domain_with_range: handle ranges with a nested space

The original code would only take into account the number of dimensions
and the tuple name.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
11 years agoisl_map_eliminate: check for overflow in computation of last dimension
Sven Verdoolaege [Fri, 27 Jul 2012 15:17:38 +0000 (17:17 +0200)]
isl_map_eliminate: check for overflow in computation of last dimension

In particular, if the computation of the last dimension overflows,
then at least one of the dimensions is out of bounds.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
11 years agoisl_*_eliminate: update comments to reflect recent change
Sven Verdoolaege [Fri, 27 Jul 2012 16:14:54 +0000 (18:14 +0200)]
isl_*_eliminate: update comments to reflect recent change

In particular, since baf22b7 (isl_*_eliminate: perform integer elimination,
Tue Apr 17 12:29:41 2012 +0200), the elimination is no longer performed
using Fourier-Motzkin (unless the input is marked rational).

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
11 years agoisl_multi_aff_set_dim_name: do not set name of elements if type is isl_dim_out
Sven Verdoolaege [Mon, 16 Jul 2012 11:06:23 +0000 (13:06 +0200)]
isl_multi_aff_set_dim_name: do not set name of elements if type is isl_dim_out

An isl_aff does not keep track of the name of its output dimension.
Even if it did, we would have to change the name of only the specified
element and not of all elements as we did before this commit.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
11 years agoisl_*_eliminate: perform integer elimination
Sven Verdoolaege [Tue, 17 Apr 2012 10:29:41 +0000 (12:29 +0200)]
isl_*_eliminate: perform integer elimination

The original code would perform the elimination "rationally" by
simply applying Fourier-Motzkin on them.  If the input
is an integer set or map, this could drop information on other dimensions.
For example, eliminating the second dimension of

        { [i, j] : i = 2 j }

would result in

        { [i, j] }

while it should result in

        { [i, j] : exists a : i = 2 a }

We now perform an integer elimination (on integer sets and maps).

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
11 years agoprivately export isl_basic_map_insert
Sven Verdoolaege [Wed, 11 Jul 2012 06:36:54 +0000 (08:36 +0200)]
privately export isl_basic_map_insert

We need it in the next commit.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
11 years agoisl_hash.c: reset the number of entries to 0 when growing the hash table
Mythri Alle [Sun, 8 Jul 2012 14:27:01 +0000 (16:27 +0200)]
isl_hash.c: reset the number of entries to 0 when growing the hash table

The hash table is grown by creating a new table and adding the entries
of the old table to the new table.  Since the new table starts out as
being empty, the number of entries should be reset to 0.

Not only would the old code result in isl_union_map_n_map returing
the wrong value if the underlying hash table had ever been grown,
it would also result in the table subsequently being grown again
far too early.

Signed-off-by: Mythri Alle <mythri.alle@gmail.com>
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
11 years agoisl_tab_basic_map_partial_lexopt: don't normalize intermediate div expressions
Sven Verdoolaege [Sat, 9 Jun 2012 13:10:04 +0000 (15:10 +0200)]
isl_tab_basic_map_partial_lexopt: don't normalize intermediate div expressions

The function get_row_parameter_div would call normalize_div before finishing
the construction of the div expression.  In particular, it would call
normalize_div before negating the coefficients.  Since normalize_div may round
down the constant term, the result of first normalizing and then negating
may result in a different div than first negating and then normalizing.
Call normalize_div only after negating the coefficients.

Reported-by: Alexandre Isoard <alexandre.isoard@ens-lyon.fr>
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
11 years agoisl 0.10 isl-0.10
Sven Verdoolaege [Sun, 3 Jun 2012 13:47:09 +0000 (15:47 +0200)]
isl 0.10

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
11 years agoisl_space.c: avoid icc warning
Sven Verdoolaege [Sun, 3 Jun 2012 15:57:19 +0000 (17:57 +0200)]
isl_space.c: avoid icc warning

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
11 years agoisl_schedule.c: fix types of enum isl_edge_type iterators
Sven Verdoolaege [Sun, 3 Jun 2012 15:52:16 +0000 (17:52 +0200)]
isl_schedule.c: fix types of enum isl_edge_type iterators

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
11 years agoisl_input.c: construct_constraints: avoid icc warning
Sven Verdoolaege [Sun, 3 Jun 2012 15:47:09 +0000 (17:47 +0200)]
isl_input.c: construct_constraints: avoid icc warning

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
11 years agoisl_handle_error: fix type of error argument
Sven Verdoolaege [Sun, 3 Jun 2012 15:42:38 +0000 (17:42 +0200)]
isl_handle_error: fix type of error argument

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
11 years agoupdate AUTHORS
Sven Verdoolaege [Sun, 3 Jun 2012 13:47:32 +0000 (15:47 +0200)]
update AUTHORS

11 years agoadd isl_map_order_lt
Sven Verdoolaege [Thu, 24 May 2012 10:28:06 +0000 (12:28 +0200)]
add isl_map_order_lt

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
11 years agoisl_space_unwrap: fix error message
Sven Verdoolaege [Sun, 27 May 2012 12:21:16 +0000 (14:21 +0200)]
isl_space_unwrap: fix error message

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
11 years agoMerge branch 'maint'
Sven Verdoolaege [Wed, 30 May 2012 11:35:32 +0000 (13:35 +0200)]
Merge branch 'maint'

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
11 years agoisl_union_set_compute_schedule: fix computation of maximal number of rows
Sven Verdoolaege [Tue, 29 May 2012 17:45:58 +0000 (19:45 +0200)]
isl_union_set_compute_schedule: fix computation of maximal number of rows

The original computation wasn't documented, but was probably wrong.
The maximal number of schedule rows is now computed in a separate
and documented function.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
11 years agoisl_space_insert_dims: fix handling of nested spaces
Sven Verdoolaege [Wed, 30 May 2012 09:03:12 +0000 (11:03 +0200)]
isl_space_insert_dims: fix handling of nested spaces

In particular, if we are inserting parameters, then we should also
insert them in any nested spaces.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
11 years agoisl_restriction_{none,empty}: "take" argument for consistency
Sven Verdoolaege [Wed, 30 May 2012 10:34:55 +0000 (12:34 +0200)]
isl_restriction_{none,empty}: "take" argument for consistency

The other isl_restriction constructors "take" their arguments,
so it seems more consistent for isl_restriction_none and
isl_restriction_empty to do so as well.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoAdd isl_restriction_get_ctx
Andreas Kloeckner [Sun, 20 May 2012 21:38:53 +0000 (17:38 -0400)]
Add isl_restriction_get_ctx

Signed-off-by: Andreas Kloeckner <inform@tiker.net>
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_space.c: document name_ok
Sven Verdoolaege [Fri, 18 May 2012 09:43:12 +0000 (11:43 +0200)]
isl_space.c: document name_ok

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoMerge branch 'maint'
Sven Verdoolaege [Mon, 21 May 2012 12:24:46 +0000 (14:24 +0200)]
Merge branch 'maint'

12 years agoCall finalize in isl_basic_map_set_dim_name
Andreas Kloeckner [Sun, 20 May 2012 19:11:58 +0000 (15:11 -0400)]
Call finalize in isl_basic_map_set_dim_name

Signed-off-by: Andreas Kloeckner <inform@tiker.net>
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_space_set_dim_name: handle NULL name
Sven Verdoolaege [Fri, 18 May 2012 09:40:29 +0000 (11:40 +0200)]
isl_space_set_dim_name: handle NULL name

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_basic_map_zip: always call isl_basic_map_cow
Sven Verdoolaege [Fri, 18 May 2012 09:25:58 +0000 (11:25 +0200)]
isl_basic_map_zip: always call isl_basic_map_cow

We were relying on isl_basic_map_swap_vars calling isl_basic_map_cow for us,
but if no actual swapping needs to be performed (because the number
of variables to swap is zero), then isl_basic_map_swap_vars will not call
isl_basic_map_cow.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_morph.c: add_strides: clear newly added divs
Sven Verdoolaege [Wed, 16 May 2012 14:25:11 +0000 (16:25 +0200)]
isl_morph.c: add_strides: clear newly added divs

Although we know what the divs should look like, we leave it to
isl_basic_map_simplify to extract them from the equalities we add.
However, we should at least mark them as (initially) unknown as
isl_basic_map_simplify may perform some other simplifications based
on the div expressions.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_tab_pip.c: fix typos in comment
Sven Verdoolaege [Tue, 8 May 2012 10:52:50 +0000 (12:52 +0200)]
isl_tab_pip.c: fix typos in comment

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_test: be more verbose
Sven Verdoolaege [Fri, 11 May 2012 08:49:40 +0000 (10:49 +0200)]
isl_test: be more verbose

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_aff_floor: add special case for constant arguments
Sven Verdoolaege [Mon, 9 Apr 2012 18:26:14 +0000 (20:26 +0200)]
isl_aff_floor: add special case for constant arguments

Requested-by: Tobias Grosser <tobias@grosser.es>
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agodoc: explain isl_*_is_subset
Sven Verdoolaege [Fri, 11 May 2012 08:02:19 +0000 (10:02 +0200)]
doc: explain isl_*_is_subset

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_map_order_gt: add special case for ordering a dimension wrt itself
Sven Verdoolaege [Fri, 11 May 2012 07:35:32 +0000 (09:35 +0200)]
isl_map_order_gt: add special case for ordering a dimension wrt itself

Ordering a dimension with respect to itself isn't very useful, but we
should still produce the correct result.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd tests for isl_map_oppose
Sven Verdoolaege [Fri, 11 May 2012 07:39:56 +0000 (09:39 +0200)]
add tests for isl_map_oppose

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_map_equate: add special case for equating a dimension to itself
Sven Verdoolaege [Fri, 11 May 2012 07:35:32 +0000 (09:35 +0200)]
isl_map_equate: add special case for equating a dimension to itself

Equating a dimension to itself isn't very useful, but we should still
produce the correct result.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_schedule_foreach_band
Sven Verdoolaege [Tue, 20 Mar 2012 15:01:12 +0000 (16:01 +0100)]
add isl_schedule_foreach_band

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_band_list_foreach_band
Sven Verdoolaege [Tue, 20 Mar 2012 15:00:45 +0000 (16:00 +0100)]
add isl_band_list_foreach_band

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_band_tile
Sven Verdoolaege [Tue, 20 Mar 2012 16:55:52 +0000 (17:55 +0100)]
add isl_band_tile

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_band_dup
Sven Verdoolaege [Tue, 20 Mar 2012 16:55:24 +0000 (17:55 +0100)]
add isl_band_dup

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_schedule.c: extract out isl_band_alloc
Sven Verdoolaege [Tue, 20 Mar 2012 16:03:46 +0000 (17:03 +0100)]
isl_schedule.c: extract out isl_band_alloc

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_schedule_get_map: extract schedule from band forest if available
Sven Verdoolaege [Tue, 20 Mar 2012 16:53:35 +0000 (17:53 +0100)]
isl_schedule_get_map: extract schedule from band forest if available

In the next commits, we will allow the user to modify the band forest.
This means that the schedule represented by the modified band forest
may not be the same as the schedule that was originally computed.
We therefore need to extract it from this forest if the forest
has been constructed already.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_band.c: extract out isl_band_list_get_suffix_schedule
Sven Verdoolaege [Tue, 20 Mar 2012 16:53:08 +0000 (17:53 +0100)]
isl_band.c: extract out isl_band_list_get_suffix_schedule

This cleans up the code a little bit and will be useful in the next commit.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_band: use isl_union_pw_multi_aff to represent partial schedule
Sven Verdoolaege [Tue, 20 Mar 2012 13:39:39 +0000 (14:39 +0100)]
isl_band: use isl_union_pw_multi_aff to represent partial schedule

An isl_multi_aff is a more natural representation for the kind of schedules
we are constructing and will make it easier to perform tiling.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_schedule_node: represent schedule using isl_multi_aff
Sven Verdoolaege [Mon, 19 Mar 2012 15:06:37 +0000 (16:06 +0100)]
isl_schedule_node: represent schedule using isl_multi_aff

An isl_multi_aff is a more natural representation for the kind of schedules
we are constructing and will make it easier to perform tiling on the resulting
bands.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_union_set_compute_schedule: separate components by default
Sven Verdoolaege [Wed, 11 Apr 2012 09:42:29 +0000 (11:42 +0200)]
isl_union_set_compute_schedule: separate components by default

Serialize (weakly connected) components by assigning them separate
values at an outer dimension by default.
Although it is possible for independent components to be executed
in parallel, it is usually not a good idea to do so.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_union_set_compute_schedule: components may also involve proximity edges
Sven Verdoolaege [Wed, 11 Apr 2012 09:24:27 +0000 (11:24 +0200)]
isl_union_set_compute_schedule: components may also involve proximity edges

When looking for (weakly connected) components, we used to only consider
validity dependences, but the presence of a proximity dependence may
also be a reason for keeping two nodes together.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_union_set_compute_schedule: also keep track of proximity edges in hash table
Sven Verdoolaege [Fri, 13 Apr 2012 09:32:53 +0000 (11:32 +0200)]
isl_union_set_compute_schedule: also keep track of proximity edges in hash table

We don't use this additional hash table yet, but we will need it the next
commit. A separate hash table is needed because the entries are keyed
by the source and destination node, so there can be only one edge
between a given pair of nodes in a single table.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_schedule.c: extract out graph_edge_table_add
Sven Verdoolaege [Sun, 29 Apr 2012 15:55:36 +0000 (17:55 +0200)]
isl_schedule.c: extract out graph_edge_table_add

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_union_set_compute_schedule: only carry validity dependences
Sven Verdoolaege [Mon, 26 Mar 2012 10:55:35 +0000 (12:55 +0200)]
isl_union_set_compute_schedule: only carry validity dependences

If we are forced to try and carry come dependences because of some conflict,
then we only need to carry those dependences that may lead to a conflict.
That is, we only need to carry validity dependences.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_schedule.c: simplify computation of number of constraints
Sven Verdoolaege [Mon, 26 Mar 2012 10:20:54 +0000 (12:20 +0200)]
isl_schedule.c: simplify computation of number of constraints

Instead of telling count_constraints how many times it should
count any given constraint, we now tell it whether we want to
compute the number of constraints for the main LP or for the
carrying LP.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_schedule.c: fix typos in comments
Sven Verdoolaege [Mon, 26 Mar 2012 11:04:02 +0000 (13:04 +0200)]
isl_schedule.c: fix typos in comments

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_basic_map_is_single_valued
Sven Verdoolaege [Wed, 29 Feb 2012 11:50:38 +0000 (12:50 +0100)]
add isl_basic_map_is_single_valued

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_basic_map_equate
Sven Verdoolaege [Wed, 29 Feb 2012 11:39:01 +0000 (12:39 +0100)]
add isl_basic_map_equate

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_basic_set_get_dim_id
Sven Verdoolaege [Wed, 29 Feb 2012 10:40:13 +0000 (11:40 +0100)]
add isl_basic_set_get_dim_id

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_printer_get_output_format
Sven Verdoolaege [Wed, 29 Feb 2012 10:37:39 +0000 (11:37 +0100)]
add isl_printer_get_output_format

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_local_space_has_dim_name
Sven Verdoolaege [Tue, 28 Feb 2012 19:20:27 +0000 (20:20 +0100)]
add isl_local_space_has_dim_name

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_constraint_get_local_space
Sven Verdoolaege [Tue, 28 Feb 2012 18:19:34 +0000 (19:19 +0100)]
add isl_constraint_get_local_space

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_constraint_is_{lower,upper}_bound
Sven Verdoolaege [Tue, 28 Feb 2012 11:42:48 +0000 (12:42 +0100)]
add isl_constraint_is_{lower,upper}_bound

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_basic_set_n_constraint
Sven Verdoolaege [Tue, 28 Feb 2012 11:12:19 +0000 (12:12 +0100)]
add isl_basic_set_n_constraint

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agodoc: document isl_basic_set_foreach_constraint
Sven Verdoolaege [Tue, 28 Feb 2012 11:07:46 +0000 (12:07 +0100)]
doc: document isl_basic_set_foreach_constraint

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_set_has_tuple_name
Sven Verdoolaege [Mon, 27 Feb 2012 10:55:29 +0000 (11:55 +0100)]
add isl_set_has_tuple_name

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_space_has_tuple_name
Sven Verdoolaege [Mon, 27 Feb 2012 10:53:54 +0000 (11:53 +0100)]
add isl_space_has_tuple_name

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_aff_private.h: add missing include
Sven Verdoolaege [Wed, 29 Feb 2012 16:58:14 +0000 (17:58 +0100)]
isl_aff_private.h: add missing include

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_seq_dump
Sven Verdoolaege [Sun, 22 Apr 2012 08:25:53 +0000 (10:25 +0200)]
add isl_seq_dump

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_printer_get_file
Sven Verdoolaege [Wed, 11 Apr 2012 10:48:09 +0000 (12:48 +0200)]
add isl_printer_get_file

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_union_map_curry
Sven Verdoolaege [Thu, 29 Mar 2012 14:01:39 +0000 (16:01 +0200)]
add isl_union_map_curry

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_space.c: avoid use of "0" as pointer value
Sven Verdoolaege [Thu, 29 Mar 2012 14:01:33 +0000 (16:01 +0200)]
isl_space.c: avoid use of "0" as pointer value

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_map_order_gt
Sven Verdoolaege [Thu, 29 Mar 2012 12:38:27 +0000 (14:38 +0200)]
add isl_map_order_gt

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_map_from_aff
Sven Verdoolaege [Thu, 29 Mar 2012 12:37:35 +0000 (14:37 +0200)]
add isl_map_from_aff

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_args_parse: optionally ignore --help
Sven Verdoolaege [Thu, 22 Mar 2012 16:03:47 +0000 (17:03 +0100)]
isl_args_parse: optionally ignore --help

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agomove generic part of isl_union_pw_qpolynomial_mul to isl_union_templ.c
Sven Verdoolaege [Tue, 20 Mar 2012 12:33:45 +0000 (13:33 +0100)]
move generic part of isl_union_pw_qpolynomial_mul to isl_union_templ.c

This simplifies the interface of match_bin_op, even though it is currently
only used in one place.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_union_pw_multi_aff_flat_range_product
Sven Verdoolaege [Tue, 20 Mar 2012 13:38:05 +0000 (14:38 +0100)]
add isl_union_pw_multi_aff_flat_range_product

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_pw_*_on_shared_domain: allow specification of target space
Sven Verdoolaege [Tue, 20 Mar 2012 13:35:31 +0000 (14:35 +0100)]
isl_pw_*_on_shared_domain: allow specification of target space

We will need exploit this possibility in the next commit.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_union_map_from_union_pw_multi_aff
Sven Verdoolaege [Tue, 20 Mar 2012 13:32:22 +0000 (14:32 +0100)]
add isl_union_map_from_union_pw_multi_aff

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_aff.c: fix typo in comment
Sven Verdoolaege [Wed, 18 Apr 2012 09:33:48 +0000 (11:33 +0200)]
isl_aff.c: fix typo in comment

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_union_pw_multi_aff_from_domain
Sven Verdoolaege [Tue, 20 Mar 2012 13:28:53 +0000 (14:28 +0100)]
add isl_union_pw_multi_aff_from_domain

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_union_pw_multi_aff
Sven Verdoolaege [Tue, 20 Mar 2012 13:24:15 +0000 (14:24 +0100)]
add isl_union_pw_multi_aff

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_union_pw_*: don't assume zero is the default value
Sven Verdoolaege [Tue, 20 Mar 2012 13:12:08 +0000 (14:12 +0100)]
isl_union_pw_*: don't assume zero is the default value

Although we consider an isl_pw_qpolynomial to be zero by default,
we will not do so for the isl_pw_multi_affs we will introduce next.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_pw_multi_aff_from_multi_aff
Sven Verdoolaege [Tue, 20 Mar 2012 12:23:21 +0000 (13:23 +0100)]
add isl_pw_multi_aff_from_multi_aff

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoexport isl_multi_aff_set_aff
Sven Verdoolaege [Mon, 19 Mar 2012 15:04:54 +0000 (16:04 +0100)]
export isl_multi_aff_set_aff

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_multi_aff_zero
Sven Verdoolaege [Mon, 19 Mar 2012 15:03:29 +0000 (16:03 +0100)]
add isl_multi_aff_zero

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_map_from_multi_aff
Sven Verdoolaege [Mon, 19 Mar 2012 15:01:25 +0000 (16:01 +0100)]
add isl_map_from_multi_aff

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_basic_set_parameter_compression: use isl_vec_set
Sven Verdoolaege [Tue, 20 Mar 2012 15:38:39 +0000 (16:38 +0100)]
isl_basic_set_parameter_compression: use isl_vec_set

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_flow.c: use public isl_vec interface
Sven Verdoolaege [Tue, 20 Mar 2012 15:32:55 +0000 (16:32 +0100)]
isl_flow.c: use public isl_vec interface

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_vec_set_si
Sven Verdoolaege [Tue, 20 Mar 2012 15:51:30 +0000 (16:51 +0100)]
add isl_vec_set_si

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_vec_set
Sven Verdoolaege [Tue, 20 Mar 2012 15:38:04 +0000 (16:38 +0100)]
add isl_vec_set

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd public isl_vec interface
Sven Verdoolaege [Tue, 20 Mar 2012 15:32:13 +0000 (16:32 +0100)]
add public isl_vec interface

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_seq_set_si
Sven Verdoolaege [Tue, 20 Mar 2012 15:51:21 +0000 (16:51 +0100)]
add isl_seq_set_si

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_union_pw_*_free: return NULL
Sven Verdoolaege [Tue, 20 Mar 2012 12:28:27 +0000 (13:28 +0100)]
isl_union_pw_*_free: return NULL

Returning NULL helps to simplify error handling code.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agosplit off declarations of isl_union_map and isl_union_set
Sven Verdoolaege [Tue, 20 Mar 2012 12:17:21 +0000 (13:17 +0100)]
split off declarations of isl_union_map and isl_union_set

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_map_deltas: add memory management annotations
Riyadh Baghdadi [Tue, 1 May 2012 13:48:44 +0000 (15:48 +0200)]
isl_map_deltas: add memory management annotations

Signed-off-by: Riyadh Baghdadi <baghdadi.m.riyadh@gmail.com>
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_access_info: change interface for specifying restrictions
Sven Verdoolaege [Thu, 5 Apr 2012 09:40:16 +0000 (11:40 +0200)]
isl_access_info: change interface for specifying restrictions

The original interface would only allow the user to restrict the source
iterations, while the user may also want to restrict the sink iterations.
The new interface also makes it more convenient for the user to specify
that no restriction should be applied and allows for a restriction
on the result of the maximization problem.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_map_coalesce: only coalesce pairs of basic maps with the same divs
Sven Verdoolaege [Tue, 17 Apr 2012 17:05:00 +0000 (19:05 +0200)]
isl_map_coalesce: only coalesce pairs of basic maps with the same divs

Most of the heuristics won't be able to find any coalescing opportunities
on basic maps with different divs, so it's not worth it to even try.
A notable exception is the subset test, which is now handled separately.

Since we only perform the tests after checking that the divs are the same,
there is no point in aligning the divs over all basic maps.  This could
be a very expensive operation, especially if some divs are unknown as it
would then compute explicit representations for all divs.  This could have
the counter-intuitive effect that the ouptut of isl_map_coalesce would have
_more_ basic maps (because of the splits introduced during the computation
of explicit representations) than the input.
Instead, we know simply sort the known divs.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoisl_coalesce.c: change interface of {in,}eq_status_in
Sven Verdoolaege [Fri, 30 Mar 2012 10:53:51 +0000 (12:53 +0200)]
isl_coalesce.c: change interface of {in,}eq_status_in

We will want to call them on a modified basic map in the next commit.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
12 years agoadd isl_map_sort_divs
Sven Verdoolaege [Tue, 17 Apr 2012 17:04:21 +0000 (19:04 +0200)]
add isl_map_sort_divs

Sorting divs should improve the effectiveness of isl_merge_divs.

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