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>
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>
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>
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>
Sven Verdoolaege [Sat, 9 Jul 2011 14:07:04 +0000 (16:07 +0200)]
doc: fix typo
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
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>
Sven Verdoolaege [Fri, 8 Jul 2011 13:43:27 +0000 (15:43 +0200)]
Merge branch 'maint'
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
Sven Verdoolaege [Wed, 29 Jun 2011 19:12:36 +0000 (21:12 +0200)]
Merge branch 'maint'
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
Sven Verdoolaege [Thu, 23 Jun 2011 07:03:39 +0000 (09:03 +0200)]
Merge branch 'maint'
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>
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>
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>
Sven Verdoolaege [Sat, 18 Jun 2011 12:11:04 +0000 (14:11 +0200)]
Merge branch 'maint'
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>