platform/upstream/isl.git
13 years agoadd isl_pw_aff_align_params
Sven Verdoolaege [Fri, 8 Jul 2011 10:18:45 +0000 (12:18 +0200)]
add isl_pw_aff_align_params

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_pw_aff_lt_set and isl_pw_aff_gt_set
Sven Verdoolaege [Thu, 7 Jul 2011 19:16:03 +0000 (21:16 +0200)]
add isl_pw_aff_lt_set and isl_pw_aff_gt_set

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd private isl_local_space_realign
Sven Verdoolaege [Fri, 8 Jul 2011 10:18:32 +0000 (12:18 +0200)]
add private isl_local_space_realign

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd private isl_local_space_reset_dim
Sven Verdoolaege [Fri, 8 Jul 2011 15:35:54 +0000 (17:35 +0200)]
add private isl_local_space_reset_dim

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agodoc: fix typo
Sven Verdoolaege [Sat, 9 Jul 2011 14:07:04 +0000 (16:07 +0200)]
doc: fix typo

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoremove deprecated isl_schedule interface
Sven Verdoolaege [Fri, 8 Jul 2011 13:48:04 +0000 (15:48 +0200)]
remove deprecated isl_schedule interface

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoMerge branch 'maint'
Sven Verdoolaege [Fri, 8 Jul 2011 13:43:27 +0000 (15:43 +0200)]
Merge branch 'maint'

13 years agoisl_reordering_extend_dim: don't mess with copies of input
Sven Verdoolaege [Fri, 8 Jul 2011 13:41:38 +0000 (15:41 +0200)]
isl_reordering_extend_dim: don't mess with copies of input

In particular, perform an isl_reordering_cow before changing anythin.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agohide isl_constraint internals
Sven Verdoolaege [Mon, 27 Jun 2011 08:54:04 +0000 (10:54 +0200)]
hide isl_constraint internals

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_stream_read_map: accept alternative [i][j] tuple syntax
Sven Verdoolaege [Sun, 3 Jul 2011 19:01:01 +0000 (21:01 +0200)]
isl_stream_read_map: accept alternative [i][j] tuple syntax

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_schedule: don't let users get access to internal isl_band_lists
Sven Verdoolaege [Sun, 3 Jul 2011 17:56:48 +0000 (19:56 +0200)]
isl_schedule: don't let users get access to internal isl_band_lists

We have been careful to keep the isl_schedule alive whenever the user
is holding on to an isl_band, but if the user only has a reference
to an isl_band_list inside the schedule, then the schedule can still
disappear.  We therefore hand out duplicates of internal lists.
These duplicates contain copies of the isl_bands and these outside
references keep the schedule alive.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd private isl_*_list_dup
Sven Verdoolaege [Sun, 3 Jul 2011 17:54:11 +0000 (19:54 +0200)]
add private isl_*_list_dup

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_pw_qpolynomial_read_from_file
Sven Verdoolaege [Sun, 3 Jul 2011 11:52:03 +0000 (13:52 +0200)]
add isl_pw_qpolynomial_read_from_file

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_basic_set_drop_constraint
Sven Verdoolaege [Thu, 30 Jun 2011 15:51:51 +0000 (17:51 +0200)]
add isl_basic_set_drop_constraint

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_local_space_is_equal: check that divs are known
Sven Verdoolaege [Fri, 1 Jul 2011 15:19:39 +0000 (17:19 +0200)]
isl_local_space_is_equal: check that divs are known

There is no way we can tell if two local spaces are equal
if we don't know the expressions for the divs.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_qpolynomial_from_constraint: reimplement using isl_aff
Sven Verdoolaege [Fri, 1 Jul 2011 15:18:37 +0000 (17:18 +0200)]
isl_qpolynomial_from_constraint: reimplement using isl_aff

This removes some code duplication.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_local_space_get_div: check that the div has a known expression
Sven Verdoolaege [Sat, 2 Jul 2011 08:04:31 +0000 (10:04 +0200)]
isl_local_space_get_div: check that the div has a known expression

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoavoid use of isl_constraint_add_div in isl_test
Sven Verdoolaege [Fri, 1 Jul 2011 13:48:50 +0000 (15:48 +0200)]
avoid use of isl_constraint_add_div in isl_test

At some point we want to remove isl_div entirely.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_aff_from_div
Sven Verdoolaege [Fri, 1 Jul 2011 12:47:29 +0000 (14:47 +0200)]
add isl_aff_from_div

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agosplit off declarations for isl_aff and isl_pw_aff to separate file
Sven Verdoolaege [Fri, 1 Jul 2011 12:38:32 +0000 (14:38 +0200)]
split off declarations for isl_aff and isl_pw_aff to separate file

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_constraint_get_aff
Sven Verdoolaege [Fri, 1 Jul 2011 10:12:28 +0000 (12:12 +0200)]
add isl_constraint_get_aff

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoprivately export isl_basic_map_divs_known
Sven Verdoolaege [Thu, 30 Jun 2011 15:51:31 +0000 (17:51 +0200)]
privately export isl_basic_map_divs_known

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_pw_aff_ge_set
Sven Verdoolaege [Wed, 29 Jun 2011 13:16:22 +0000 (15:16 +0200)]
add isl_pw_aff_ge_set

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_pw_aff_neg
Sven Verdoolaege [Wed, 29 Jun 2011 13:04:29 +0000 (15:04 +0200)]
add isl_pw_aff_neg

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_printer_print_aff: support printing in C format
Sven Verdoolaege [Fri, 24 Jun 2011 20:38:49 +0000 (22:38 +0200)]
isl_printer_print_aff: support printing in C format

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_aff_add_dims
Sven Verdoolaege [Tue, 28 Jun 2011 21:32:10 +0000 (23:32 +0200)]
add isl_aff_add_dims

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_aff_drop_dims
Sven Verdoolaege [Tue, 28 Jun 2011 18:36:13 +0000 (20:36 +0200)]
add isl_aff_drop_dims

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_aff_involves_dims
Sven Verdoolaege [Tue, 28 Jun 2011 14:51:03 +0000 (16:51 +0200)]
add isl_aff_involves_dims

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoexport isl_aff_add_coefficient
Sven Verdoolaege [Tue, 28 Jun 2011 21:40:43 +0000 (23:40 +0200)]
export isl_aff_add_coefficient

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoexport isl_pw_aff_get_dim
Sven Verdoolaege [Wed, 29 Jun 2011 12:16:54 +0000 (14:16 +0200)]
export isl_pw_aff_get_dim

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoexport isl_pw_aff_add
Sven Verdoolaege [Wed, 29 Jun 2011 11:45:01 +0000 (13:45 +0200)]
export isl_pw_aff_add

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoexport isl_pw_aff_domain
Sven Verdoolaege [Wed, 29 Jun 2011 11:14:31 +0000 (13:14 +0200)]
export isl_pw_aff_domain

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoexport isl_pw_aff_coalesce
Sven Verdoolaege [Fri, 1 Jul 2011 16:50:19 +0000 (18:50 +0200)]
export isl_pw_aff_coalesce

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoexport isl_pw_aff_gist
Sven Verdoolaege [Wed, 29 Jun 2011 10:58:23 +0000 (12:58 +0200)]
export isl_pw_aff_gist

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoexport isl_pw_aff_dim
Sven Verdoolaege [Tue, 28 Jun 2011 19:23:04 +0000 (21:23 +0200)]
export isl_pw_aff_dim

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_local_space_insert_dims
Sven Verdoolaege [Tue, 28 Jun 2011 21:31:59 +0000 (23:31 +0200)]
add isl_local_space_insert_dims

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_local_space_drop_dims
Sven Verdoolaege [Tue, 28 Jun 2011 18:36:00 +0000 (20:36 +0200)]
add isl_local_space_drop_dims

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agorename isl_local_space_add_dim to isl_local_space_add_dims for consistency
Sven Verdoolaege [Tue, 28 Jun 2011 18:38:40 +0000 (20:38 +0200)]
rename isl_local_space_add_dim to isl_local_space_add_dims for consistency

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_local_space_is_named_or_nested
Sven Verdoolaege [Tue, 28 Jun 2011 18:21:47 +0000 (20:21 +0200)]
add isl_local_space_is_named_or_nested

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_basic_set_set_tuple_name
Sven Verdoolaege [Tue, 28 Jun 2011 21:51:00 +0000 (23:51 +0200)]
add isl_basic_set_set_tuple_name

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_set_remove_redundancies
Sven Verdoolaege [Tue, 28 Jun 2011 13:28:48 +0000 (15:28 +0200)]
add isl_set_remove_redundancies

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_vec_insert_zero_els
Sven Verdoolaege [Tue, 28 Jun 2011 21:29:20 +0000 (23:29 +0200)]
add isl_vec_insert_zero_els

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_vec_drop_els
Sven Verdoolaege [Tue, 28 Jun 2011 18:17:59 +0000 (20:17 +0200)]
add isl_vec_drop_els

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoMerge branch 'maint'
Sven Verdoolaege [Wed, 29 Jun 2011 19:12:36 +0000 (21:12 +0200)]
Merge branch 'maint'

13 years agoisl_qpolynomial_insert_dims: properly handle named or nested spaces
Sven Verdoolaege [Tue, 28 Jun 2011 21:18:20 +0000 (23:18 +0200)]
isl_qpolynomial_insert_dims: properly handle named or nested spaces

For consistency, we remove any naming or nesting even if n == 0.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_qpolynomial_drop_dims: properly handle nested spaces
Sven Verdoolaege [Tue, 28 Jun 2011 17:03:01 +0000 (19:03 +0200)]
isl_qpolynomial_drop_dims: properly handle nested spaces

For consistency, we remove the nesting even if n == 0.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_qpolynomial_insert_dims: insert zero columns in div matrix
Sven Verdoolaege [Tue, 28 Jun 2011 21:10:19 +0000 (23:10 +0200)]
isl_qpolynomial_insert_dims: insert zero columns in div matrix

In order to insert dimensions, columns corresponding to
these extra dimensions need to be inserted into the matrix
representing the integer divisions.  Before, arbitrary columns
were being added, but the divs have zero coefficients for these
new dimensions, so we should make sure the columns are zero.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_printer_print_pw_aff: support printing in C format
Sven Verdoolaege [Fri, 24 Jun 2011 20:38:49 +0000 (22:38 +0200)]
isl_printer_print_pw_aff: support printing in C format

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_set_dim_max
Sven Verdoolaege [Fri, 24 Jun 2011 12:58:50 +0000 (14:58 +0200)]
add isl_set_dim_max

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_map_from_pw_aff
Sven Verdoolaege [Fri, 24 Jun 2011 12:56:49 +0000 (14:56 +0200)]
add isl_map_from_pw_aff

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_pw_aff_max
Sven Verdoolaege [Fri, 24 Jun 2011 12:55:22 +0000 (14:55 +0200)]
add isl_pw_aff_max

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_pw_aff abstraction
Sven Verdoolaege [Fri, 24 Jun 2011 12:53:49 +0000 (14:53 +0200)]
add isl_pw_aff abstraction

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_pw_*_free: return NULL
Sven Verdoolaege [Fri, 24 Jun 2011 12:48:42 +0000 (14:48 +0200)]
isl_pw_*_free: return NULL

Returning NULL helps to simplify error handling code.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_qpolynomial_scale alias for isl_qpolynomial_mul_isl_int
Sven Verdoolaege [Fri, 24 Jun 2011 12:44:51 +0000 (14:44 +0200)]
add isl_qpolynomial_scale alias for isl_qpolynomial_mul_isl_int

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_aff_ge_basic_set
Sven Verdoolaege [Fri, 24 Jun 2011 12:37:32 +0000 (14:37 +0200)]
add isl_aff_ge_basic_set

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_basic_set_foreach_lexmax
Sven Verdoolaege [Fri, 24 Jun 2011 12:33:35 +0000 (14:33 +0200)]
add isl_basic_set_foreach_lexmax

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoexport isl_basic_map_foreach_lexmax
Sven Verdoolaege [Fri, 24 Jun 2011 12:31:50 +0000 (14:31 +0200)]
export isl_basic_map_foreach_lexmax

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_aff_gist
Sven Verdoolaege [Fri, 24 Jun 2011 12:30:28 +0000 (14:30 +0200)]
add isl_aff_gist

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agosplit off type declarations for isl_map and isl_set to separate files
Sven Verdoolaege [Fri, 24 Jun 2011 11:26:17 +0000 (13:26 +0200)]
split off type declarations for isl_map and isl_set to separate files

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_aff_set_dim_name
Sven Verdoolaege [Fri, 24 Jun 2011 11:21:16 +0000 (13:21 +0200)]
add isl_aff_set_dim_name

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_aff_plain_is_equal
Sven Verdoolaege [Fri, 24 Jun 2011 11:14:52 +0000 (13:14 +0200)]
add isl_aff_plain_is_equal

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_aff_plain_is_zero
Sven Verdoolaege [Fri, 24 Jun 2011 11:12:13 +0000 (13:12 +0200)]
add isl_aff_plain_is_zero

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_aff_scale_down_ui
Sven Verdoolaege [Fri, 24 Jun 2011 10:37:52 +0000 (12:37 +0200)]
add isl_aff_scale_down_ui

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_aff_floor
Sven Verdoolaege [Fri, 24 Jun 2011 10:20:24 +0000 (12:20 +0200)]
add isl_aff_floor

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_aff_add_constant_si
Sven Verdoolaege [Fri, 24 Jun 2011 10:18:15 +0000 (12:18 +0200)]
add isl_aff_add_constant_si

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_printer_print_aff: always print parentheses around expression
Sven Verdoolaege [Fri, 24 Jun 2011 10:43:48 +0000 (12:43 +0200)]
isl_printer_print_aff: always print parentheses around expression

This allows an integer isl_aff to be parsed as a map, even
if the expression starts with an integer division.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_local_space_substitute_equalities
Sven Verdoolaege [Fri, 24 Jun 2011 10:53:36 +0000 (12:53 +0200)]
add isl_local_space_substitute_equalities

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_local_space_set_dim_name
Sven Verdoolaege [Thu, 23 Jun 2011 12:27:31 +0000 (14:27 +0200)]
add isl_local_space_set_dim_name

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_local_space_is_equal
Sven Verdoolaege [Thu, 23 Jun 2011 12:26:03 +0000 (14:26 +0200)]
add isl_local_space_is_equal

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_pw_templ.c: avoid looking into internals of some objects
Sven Verdoolaege [Thu, 23 Jun 2011 12:01:20 +0000 (14:01 +0200)]
isl_pw_templ.c: avoid looking into internals of some objects

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_point_get_dim
Sven Verdoolaege [Sat, 25 Jun 2011 07:21:24 +0000 (09:21 +0200)]
add isl_point_get_dim

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_point_get_ctx
Sven Verdoolaege [Thu, 23 Jun 2011 12:20:49 +0000 (14:20 +0200)]
add isl_point_get_ctx

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_qpolynomial_fold_get_dim
Sven Verdoolaege [Thu, 23 Jun 2011 12:06:55 +0000 (14:06 +0200)]
add isl_qpolynomial_fold_get_dim

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_vec_is_equal
Sven Verdoolaege [Thu, 23 Jun 2011 08:11:05 +0000 (10:11 +0200)]
add isl_vec_is_equal

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_int_set_ui
Sven Verdoolaege [Fri, 24 Jun 2011 10:35:33 +0000 (12:35 +0200)]
add isl_int_set_ui

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_config_post.h to distribution
Sven Verdoolaege [Fri, 24 Jun 2011 11:28:50 +0000 (13:28 +0200)]
add isl_config_post.h to distribution

The file was added to the repository in 4017751 (mark some functions
as (possibly) unused, Wed May 25 14:09:01 2011 +0200), but it wasn't
added to EXTRA_DIST.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agorename isl_qpolynomial_is_equal to isl_qpolynomial_plain_is_equal
Sven Verdoolaege [Thu, 23 Jun 2011 07:19:56 +0000 (09:19 +0200)]
rename isl_qpolynomial_is_equal to isl_qpolynomial_plain_is_equal

The current implementation only checks whether two qpolynomials are
obviously equal.  There may be non-obvious relations between the divs
that make two qpolynomials equal even if they do not appear to be equal.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoMerge branch 'maint'
Sven Verdoolaege [Thu, 23 Jun 2011 07:03:39 +0000 (09:03 +0200)]
Merge branch 'maint'

13 years agoisl_qpolynomial_is_equal: also compare spaces and divs
Sven Verdoolaege [Thu, 23 Jun 2011 06:59:26 +0000 (08:59 +0200)]
isl_qpolynomial_is_equal: also compare spaces and divs

Before, isl_qpolynomial_is_equal would only consider the "shape"
of the polynomial, meaning that two polynomial living in different
spaces could be considered equal.  Worse, expressions in terms
of different integer divisions could also be considered equal.
We now take into account both space and divs so that we no longer
produce false positives.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agobound.c: verify_point: make sure spaces of compared qpolynomials are the same
Sven Verdoolaege [Thu, 23 Jun 2011 06:50:45 +0000 (08:50 +0200)]
bound.c: verify_point: make sure spaces of compared qpolynomials are the same

The current isl_qpolynomial_is_equal doesn't care about the space
in which a qpolynomial lives and so we were allowed to be sloppy before.
Unfortunately, the current isl_qpolynomial_is_equal also completely
ignores the definitions of the integer divisions, so it will have to
be fixed.  This means we can't be sloppy anymore.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_dim_dump
Sven Verdoolaege [Mon, 20 Jun 2011 13:54:42 +0000 (15:54 +0200)]
add isl_dim_dump

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoMerge branch 'maint'
Sven Verdoolaege [Sat, 18 Jun 2011 12:11:04 +0000 (14:11 +0200)]
Merge branch 'maint'

13 years agoisl_basic_map_remove_divs_involving_dims: handle disappearance of divs
Sven Verdoolaege [Sat, 18 Jun 2011 07:56:15 +0000 (09:56 +0200)]
isl_basic_map_remove_divs_involving_dims: handle disappearance of divs

The internal call to isl_basic_map_remove_dims may remove more divs
than explicitly asked for (or it may reorder them) because it involves
a simplification step.  We therefore have to reconsider all the divs
after calling isl_basic_map_remove_dims.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_band: rename "parallel" property to "zero distance"
Sven Verdoolaege [Tue, 14 Jun 2011 15:17:40 +0000 (17:17 +0200)]
isl_band: rename "parallel" property to "zero distance"

Since the property is measured with respect to the proximity dependences
and independently of the validity dependences, the "parallel" name was
considered to be too confusing.  Hopefully, the new name is less confusing.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agochange isl_basic_map_foreach_lexmin prototype
Sven Verdoolaege [Sat, 16 Apr 2011 17:39:53 +0000 (19:39 +0200)]
change isl_basic_map_foreach_lexmin prototype

In particular, the callback now receives an isl_aff_list instead
of an isl_mat.  The use of an isl_mat exposed too much of the internal
details of isl.  On top of that, it was also very fragile as the meaning
of the columns in the matrix depended on the internal representation
of the separate basic set.  Any change in this internal representation,
including any simplification step, would change the meaning of the matrix.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_basic_map_from_aff and isl_basic_map_from_aff_list
Sven Verdoolaege [Sun, 12 Jun 2011 10:14:51 +0000 (12:14 +0200)]
add isl_basic_map_from_aff and isl_basic_map_from_aff_list

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_local_space_add_dim
Sven Verdoolaege [Sun, 12 Jun 2011 10:14:03 +0000 (12:14 +0200)]
add isl_local_space_add_dim

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_local_space_from_domain
Sven Verdoolaege [Sun, 12 Jun 2011 09:42:14 +0000 (11:42 +0200)]
add isl_local_space_from_domain

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_basic_map_flat_range_product
Sven Verdoolaege [Sun, 12 Jun 2011 09:20:00 +0000 (11:20 +0200)]
add isl_basic_map_flat_range_product

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoexport isl_basic_map_flatten_range
Sven Verdoolaege [Sun, 12 Jun 2011 09:18:11 +0000 (11:18 +0200)]
export isl_basic_map_flatten_range

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoEnable -Wall if compiling with clang
Tobias Grosser [Thu, 2 Jun 2011 16:29:06 +0000 (13:29 -0300)]
Enable -Wall if compiling with clang

isl is at the moment free of warnings with 'clang -Wall'. To maintain this
enable -Wall by default. In case false positives show up, we disable the
corresponding warning type by adding e.g. -Wno-return-type. To disable all
warnings configure or compile with CFLAGS=-Wno-all.

Signed-off-by: Tobias Grosser <tobias@grosser.es>
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoUpdate ax_compiler_vendor.m4
Tobias Grosser [Thu, 2 Jun 2011 16:29:05 +0000 (13:29 -0300)]
Update ax_compiler_vendor.m4

Use the newest version, as it includes clang support.

Signed-off-by: Tobias Grosser <tobias@grosser.es>
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoCheck the ctx argument of the memory macros
Tobias Grosser [Tue, 7 Jun 2011 19:15:15 +0000 (16:15 -0300)]
Check the ctx argument of the memory macros

Isl defines its own set of memory management macros. These macros currently
expect an isl_ctx*, but do not yet actively use it. Hence, it is possible to
pass a random string to these macros, without the compiler issuing any warnings.
And in case an isl_ctx* is passed, the compiler does not count the macro call
as a valid use, which may lead to some unexpected 'variable never used'
warnings.

We solve this, by adding a compile time check that always verifies that ctx has
the type isl_ctx*. This is also a valid use of ctx and consequently stops the
'variable never used' warnings. The check itself is designed such that it will
be optimized out during compilation.

While at this fix all cases, where some invalid structures were passed to the
memory location macros instead of an valid isl_ctx*.

Signed-off-by: Tobias Grosser <tobias@grosser.es>
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoFix typo in comment.
Tobias Grosser [Tue, 7 Jun 2011 19:15:14 +0000 (16:15 -0300)]
Fix typo in comment.

Signed-off-by: Tobias Grosser <tobias@grosser.es>
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agodocument isl_*_fix functions
Sven Verdoolaege [Sun, 5 Jun 2011 17:44:35 +0000 (19:44 +0200)]
document isl_*_fix functions

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoRemove use of PATH_MAX
Tobias Grosser [Thu, 2 Jun 2011 16:29:08 +0000 (13:29 -0300)]
Remove use of PATH_MAX

Instead of using statically allocated char arrays, allocate the memory for the
paths dynamically. This removes the use of PATH_MAX. PATH_MAX is not part of C99
and also seems to be incorrect on some systems that provide it (In terms of
being defined to a value smaller than the maximal path length a system
supports).

Signed-off-by: Tobias Grosser <tobias@grosser.es>
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoFix <strings.h> includes
Tobias Grosser [Thu, 2 Jun 2011 16:29:07 +0000 (13:29 -0300)]
Fix <strings.h> includes

Remove unneeded includes and add includes that were forgotten, because some
compiler seem to automatically add some functions if not in strict C99 mode.

Signed-off-by: Tobias Grosser <tobias@grosser.es>
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoscheduling: optionally split parallel rows in non-tilable bands
Sven Verdoolaege [Fri, 3 Jun 2011 08:39:19 +0000 (10:39 +0200)]
scheduling: optionally split parallel rows in non-tilable bands

If a scheduling row that is constructed to carry dependences
is of the form, say, { S1[..] -> [2 * g(..)]; S2[..] -> [2 * g(..) + 1] },
then it is usually better to split off the constant term into a separate
band and obtain { S1[..] -> [g(..),0]; S2[..] -> [g(..),1] } instead.
In particular, the code generated from the second schedule is usually
simpler than that from the first schedule.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoscheduling: optionally create schedules with outermost parallelism
Sven Verdoolaege [Wed, 25 May 2011 14:57:25 +0000 (16:57 +0200)]
scheduling: optionally create schedules with outermost parallelism

Some applications require not only tilable bands, but also parallel
loops inside those bands.  The default algorithm favors larger bands
over having parallel loops inside the band.  It is always possible
to sacrifice one of the loops in the band to create parallelism by
applying a wavefront transformation.  This typically leads to more
complicated schedules, however.
Instead, when enabled, we now force there to be at least one parallel
loop inside each tilable band.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_printer_print_schedule
Sven Verdoolaege [Sat, 4 Jun 2011 16:18:04 +0000 (18:18 +0200)]
add isl_printer_print_schedule

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