platform/upstream/isl.git
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>
13 years agoscheduling: introduce band forest interface
Sven Verdoolaege [Sun, 29 May 2011 15:21:23 +0000 (17:21 +0200)]
scheduling: introduce band forest interface

The new interface exposes more properties of the constructed schedule.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_schedule.c: keep track of parallel loops
Sven Verdoolaege [Sun, 29 May 2011 17:41:55 +0000 (19:41 +0200)]
isl_schedule.c: keep track of parallel loops

This information could be useful to some users.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_schedule.c: extract out definition of isl_schedule to isl_schedule_private.h
Sven Verdoolaege [Sat, 4 Jun 2011 08:42:01 +0000 (10:42 +0200)]
isl_schedule.c: extract out definition of isl_schedule to isl_schedule_private.h

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_union_map_flat_range_product
Sven Verdoolaege [Fri, 3 Jun 2011 21:03:36 +0000 (23:03 +0200)]
add isl_union_map_flat_range_product

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_mat_normalize_row
Sven Verdoolaege [Fri, 3 Jun 2011 08:38:50 +0000 (10:38 +0200)]
add isl_mat_normalize_row

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_printer_indent
Sven Verdoolaege [Sun, 29 May 2011 15:20:36 +0000 (17:20 +0200)]
add isl_printer_indent

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_dim_align_params
Sven Verdoolaege [Sat, 28 May 2011 08:24:35 +0000 (10:24 +0200)]
add isl_dim_align_params

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_aff_list
Sven Verdoolaege [Sat, 16 Apr 2011 17:50:54 +0000 (19:50 +0200)]
add isl_aff_list

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_printer_print_*_list
Sven Verdoolaege [Sat, 16 Apr 2011 17:36:52 +0000 (19:36 +0200)]
add isl_printer_print_*_list

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd *list_get_*
Sven Verdoolaege [Wed, 27 Apr 2011 10:51:19 +0000 (12:51 +0200)]
add *list_get_*

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd *list_n_*
Sven Verdoolaege [Wed, 27 Apr 2011 10:51:00 +0000 (12:51 +0200)]
add *list_n_*

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd *_list_foreach
Sven Verdoolaege [Sat, 16 Apr 2011 12:55:10 +0000 (14:55 +0200)]
add *_list_foreach

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd *_list_get_ctx
Sven Verdoolaege [Sat, 16 Apr 2011 17:34:25 +0000 (19:34 +0200)]
add *_list_get_ctx

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd *list_copy
Sven Verdoolaege [Wed, 27 Apr 2011 14:57:14 +0000 (16:57 +0200)]
add *list_copy

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agogeneralize isl_basic_set_list to generic lists
Sven Verdoolaege [Sat, 16 Apr 2011 12:40:23 +0000 (14:40 +0200)]
generalize isl_basic_set_list to generic lists

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

13 years agoisl_union_map_range_product: only consider pairs of maps with matching domains
Sven Verdoolaege [Fri, 3 Jun 2011 17:34:36 +0000 (19:34 +0200)]
isl_union_map_range_product: only consider pairs of maps with matching domains

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_mat_scale_down: avoid trampling over aliased matrices
Sven Verdoolaege [Fri, 3 Jun 2011 17:20:00 +0000 (19:20 +0200)]
isl_mat_scale_down: avoid trampling over aliased matrices

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

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_aff_add and isl_aff_sub
Sven Verdoolaege [Thu, 2 Jun 2011 12:11:35 +0000 (14:11 +0200)]
add isl_aff_add and isl_aff_sub

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_inequality_from_aff
Sven Verdoolaege [Thu, 2 Jun 2011 12:04:44 +0000 (14:04 +0200)]
add isl_inequality_from_aff

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_seq_addmul
Sven Verdoolaege [Thu, 2 Jun 2011 12:04:07 +0000 (14:04 +0200)]
add isl_seq_addmul

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_vertices.c: avoid use of unitialized variables on an error path
Sven Verdoolaege [Wed, 25 May 2011 14:12:03 +0000 (16:12 +0200)]
isl_vertices.c: avoid use of unitialized variables on an error path

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_transitive_closure.c: avoid use of an unitialized variable on an error path
Sven Verdoolaege [Wed, 25 May 2011 14:11:46 +0000 (16:11 +0200)]
isl_transitive_closure.c: avoid use of an unitialized variable on an error path

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_polynomial.c: avoid use of an unitialized variable on an error path
Sven Verdoolaege [Wed, 25 May 2011 14:11:34 +0000 (16:11 +0200)]
isl_polynomial.c: avoid use of an unitialized variable on an error path

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoautogen.sh: replace by call to autoreconf
Sven Verdoolaege [Wed, 25 May 2011 13:13:23 +0000 (15:13 +0200)]
autogen.sh: replace by call to autoreconf

autoreconf has been available since autoconf 2.50 and we probably
depend on newer versions of autoconf already.
This doesn't solve any immediate problem, except that OS X users
can now use autogen.sh directly, as explained in e2cd3ad (configure.ac:
use non-deprecated form of AM_INIT_AUTOMAKE, Fri May 20 22:44:34 2011 +0200).

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoconfigure.ac: use non-deprecated form of AM_INIT_AUTOMAKE
Sven Verdoolaege [Fri, 20 May 2011 20:44:34 +0000 (22:44 +0200)]
configure.ac: use non-deprecated form of AM_INIT_AUTOMAKE

The old form was deprecated back in automake 1.6, so it's probably
about time to switch.
The new form allows us to specify automake options, which in turn
allows us to use "autoreconf -i" instead of the current autogen.sh script.

This is especially useful for OS X users.  OS X comes with its own
libtool, which is different from GNU's.  GNU libtool is therefore
usually made available as glibtool and libtoolize as glibtoolize.
The current autogen.sh script therefore does not work as is for those users.
autoreconf would have the same problem, except that the macport version
of autoconf has a pathed version of autoreconf which looks for
glibtoolize instead of libtoolize.

Reported-by: Louis-Noel Pouchet <pouchet@cse.ohio-state.edu>
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_fold.c: avoid warning about control reaching end of non-void function
Sven Verdoolaege [Fri, 20 May 2011 21:20:14 +0000 (23:20 +0200)]
isl_fold.c: avoid warning about control reaching end of non-void function

Based on a patch by Tobias Grosser <tobias@grosser.es>.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agomark some functions as (possibly) unused
Sven Verdoolaege [Wed, 25 May 2011 11:43:37 +0000 (13:43 +0200)]
mark some functions as (possibly) unused

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_polynomial.c: use flex array member to avoid array out of bounds warning
Sven Verdoolaege [Wed, 25 May 2011 10:58:40 +0000 (12:58 +0200)]
isl_polynomial.c: use flex array member to avoid array out of bounds warning

The p field in struct isl_upoly_rec is meant to be a flexible array member,
but this was only introduced in C99 and so we were using a slightly
different construct.  However, we already assume C99 (in particular,
designated initializers) in the rest of the code and recent versions
of clang complain about possible array out of bounds accesses when
we don't use a flexible array member.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_tab_pip.c: remove unused context_lex_extend
Sven Verdoolaege [Mon, 23 May 2011 19:03:45 +0000 (21:03 +0200)]
isl_tab_pip.c: remove unused context_lex_extend

It appears to be a remnant of temporary commit that was reorganized
before it was applied to master.  It therefore wasn't even used in
fc0a2de (isl_tab_pip.c: extract out context handling,
Thu Oct 8 13:49:57 2009 +0200), where it was introduced.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_map_simplify.c: remove unused normalize_constraints_in_compressed_space
Sven Verdoolaege [Mon, 23 May 2011 18:56:36 +0000 (20:56 +0200)]
isl_map_simplify.c: remove unused normalize_constraints_in_compressed_space

Its last use was removed in d5e1701 (isl_basic_map_gist: be more aggressive
in removing constraints, Fri Apr 23 12:00:58 2010 +0200).
Presumably, it was kept because it thought it might still be useful in the
future.  However, it seems we haven't found a use for it so far and we
may be reorganizing the internals a bit in the not too distant future,
so let's just remove it for now.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_map_simplify.c: remove unused set_swap_inequality
Sven Verdoolaege [Mon, 23 May 2011 18:40:54 +0000 (20:40 +0200)]
isl_map_simplify.c: remove unused set_swap_inequality

Its last use was removed in 9f3099a (isl_basic_map_gist: replace by new
version based on tableaus, Wed Mar 18 18:30:39 2009 +0100).

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_convex_hull.c: remove unused set_project_out
Sven Verdoolaege [Mon, 23 May 2011 17:32:11 +0000 (19:32 +0200)]
isl_convex_hull.c: remove unused set_project_out

Its last use was removed in 1df7669 (convex_hull: use elimination based
convex hull for unbounded polyhedra, Sat Sep 20 22:28:58 2008 +0200).

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_convex_hull.c: remove unused swap_ineq
Sven Verdoolaege [Mon, 23 May 2011 17:28:14 +0000 (19:28 +0200)]
isl_convex_hull.c: remove unused swap_ineq

Its last use was removed in 95e960e (isl_basic_map_convex_hull: use
tableau to detect redundant constraints, Fri Feb 27 22:20:21 2009 +0100).

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_arg.c: fix typo affecting argument parsing when flags are used
Sven Verdoolaege [Mon, 23 May 2011 17:43:17 +0000 (19:43 +0200)]
isl_arg.c: fix typo affecting argument parsing when flags are used

Found by clang.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_transitive_closure.c: remove unused variable
Sven Verdoolaege [Mon, 23 May 2011 17:23:02 +0000 (19:23 +0200)]
isl_transitive_closure.c: remove unused variable

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_union_map.c: remove unused variables
Sven Verdoolaege [Mon, 23 May 2011 17:22:09 +0000 (19:22 +0200)]
isl_union_map.c: remove unused variables

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_tab.c: avoid warning about unhandled enumeration value in switch
Sven Verdoolaege [Mon, 23 May 2011 17:20:46 +0000 (19:20 +0200)]
isl_tab.c: avoid warning about unhandled enumeration value in switch

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_tab.c: remove unused variable
Sven Verdoolaege [Mon, 23 May 2011 17:17:34 +0000 (19:17 +0200)]
isl_tab.c: remove unused variable

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_tab_pip.c: remove unused variables
Sven Verdoolaege [Mon, 23 May 2011 17:15:58 +0000 (19:15 +0200)]
isl_tab_pip.c: remove unused variables

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_reordering.c: remove unused variables
Sven Verdoolaege [Mon, 23 May 2011 15:34:13 +0000 (17:34 +0200)]
isl_reordering.c: remove unused variables

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_output.c: remove unused variable
Sven Verdoolaege [Mon, 23 May 2011 15:20:52 +0000 (17:20 +0200)]
isl_output.c: remove unused variable

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_arg.c: remove unused variable
Sven Verdoolaege [Mon, 23 May 2011 15:19:18 +0000 (17:19 +0200)]
isl_arg.c: remove unused variable

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_map.c remove unused isl_set_swap_vars
Sven Verdoolaege [Mon, 23 May 2011 15:16:46 +0000 (17:16 +0200)]
isl_map.c remove unused isl_set_swap_vars

It was introduced (but already unused) in the initial commit and was made
private in 90862d1 (add private isl_basic_map_swap_vars,
Wed Mar 9 10:33:55 2011 +0100).

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_map.c: remove unused variables
Sven Verdoolaege [Mon, 23 May 2011 15:09:40 +0000 (17:09 +0200)]
isl_map.c: remove unused variables

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_map_subtract.c: remove unused variables
Sven Verdoolaege [Sun, 22 May 2011 16:27:42 +0000 (18:27 +0200)]
isl_map_subtract.c: remove unused variables

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_morph.c: remove unused variable
Sven Verdoolaege [Sun, 22 May 2011 16:26:08 +0000 (18:26 +0200)]
isl_morph.c: remove unused variable

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_polynomial.c: remove unused variables
Sven Verdoolaege [Sun, 22 May 2011 16:25:23 +0000 (18:25 +0200)]
isl_polynomial.c: remove unused variables

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_input.c: remove unused variables
Sven Verdoolaege [Sun, 22 May 2011 16:23:52 +0000 (18:23 +0200)]
isl_input.c: remove unused variables

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_bernstein.c: remove unused variable
Sven Verdoolaege [Sun, 22 May 2011 16:21:37 +0000 (18:21 +0200)]
isl_bernstein.c: remove unused variable

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_dim.c: avoid warnings about unhandled enumeration value in switch
Sven Verdoolaege [Sun, 22 May 2011 16:21:03 +0000 (18:21 +0200)]
isl_dim.c: avoid warnings about unhandled enumeration value in switch

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_dim_drop: fix botched up rename of parameter
Sven Verdoolaege [Sat, 21 May 2011 19:51:22 +0000 (21:51 +0200)]
isl_dim_drop: fix botched up rename of parameter

07889cd (add isl_basic_map_remove, Wed Feb 18 13:42:55 2009 +0100) renamed
the "n" argument of isl_dim_drop to "num", but forgot one instance.
The mistake was harmless, but it made the (minor) optimization
ineffective.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agobound.c: remove unused variable
Sven Verdoolaege [Fri, 20 May 2011 21:18:50 +0000 (23:18 +0200)]
bound.c: remove unused variable

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_local_space.c: remove unused variable
Sven Verdoolaege [Fri, 20 May 2011 21:06:51 +0000 (23:06 +0200)]
isl_local_space.c: remove unused variable

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_pw_templ.c: remove unused label
Sven Verdoolaege [Fri, 20 May 2011 21:03:26 +0000 (23:03 +0200)]
isl_pw_templ.c: remove unused label

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_fold.c: fix typo
Sven Verdoolaege [Fri, 20 May 2011 20:59:58 +0000 (22:59 +0200)]
isl_fold.c: fix typo

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_union_templ.c: remove unused variables
Sven Verdoolaege [Fri, 20 May 2011 20:58:19 +0000 (22:58 +0200)]
isl_union_templ.c: remove unused variables

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_fold.c: remove unused variable
Sven Verdoolaege [Fri, 20 May 2011 20:58:00 +0000 (22:58 +0200)]
isl_fold.c: remove unused variable

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

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_qpolynomial_from_aff: create private copy of divs
Sven Verdoolaege [Fri, 20 May 2011 10:02:03 +0000 (12:02 +0200)]
isl_qpolynomial_from_aff: create private copy of divs

Otherwise, reduce_divs could end up modifying the divs of the input isl_aff.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_aff_expand_divs: fix typo
Sven Verdoolaege [Fri, 20 May 2011 09:50:27 +0000 (11:50 +0200)]
isl_aff_expand_divs: fix typo

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_aff_alloc: check that all divs are known
Sven Verdoolaege [Fri, 20 May 2011 09:23:49 +0000 (11:23 +0200)]
isl_aff_alloc: check that all divs are known

13 years agoadd isl_local_space_divs_known
Sven Verdoolaege [Fri, 20 May 2011 09:23:31 +0000 (11:23 +0200)]
add isl_local_space_divs_known

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

13 years agoisl_qpolynomial_* constructors: check dim before accessing fields
Sven Verdoolaege [Fri, 20 May 2011 09:24:20 +0000 (11:24 +0200)]
isl_qpolynomial_* constructors: check dim before accessing fields

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_qpolynomial_from_aff
Sven Verdoolaege [Wed, 18 May 2011 13:03:11 +0000 (15:03 +0200)]
add isl_qpolynomial_from_aff

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_qpolynomial_involves_dims: fix typo
Sven Verdoolaege [Wed, 18 May 2011 12:46:16 +0000 (14:46 +0200)]
isl_qpolynomial_involves_dims: fix typo

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_polynomial.c: fix typo in comment
Sven Verdoolaege [Wed, 18 May 2011 11:25:04 +0000 (13:25 +0200)]
isl_polynomial.c: fix typo in comment

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_aff_get_dim
Sven Verdoolaege [Wed, 18 May 2011 11:07:52 +0000 (13:07 +0200)]
add isl_aff_get_dim

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_basic_map_from_local_space: don't finalize result
Sven Verdoolaege [Tue, 17 May 2011 13:29:16 +0000 (15:29 +0200)]
isl_basic_map_from_local_space: don't finalize result

This function is only called internally during the construction
of isl_constraints and isl_divs and we don't want to remove redundant
existentially quantified variables in these cases.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_set_add_constraint
Sven Verdoolaege [Thu, 12 May 2011 13:59:09 +0000 (15:59 +0200)]
add isl_set_add_constraint

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_equality_from_aff
Sven Verdoolaege [Thu, 12 May 2011 13:55:15 +0000 (15:55 +0200)]
add isl_equality_from_aff

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_set_max
Sven Verdoolaege [Thu, 12 May 2011 11:32:38 +0000 (13:32 +0200)]
add isl_set_max

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_constraint_get_bound
Sven Verdoolaege [Wed, 11 May 2011 16:26:05 +0000 (18:26 +0200)]
add isl_constraint_get_bound

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_{basic_,}map_may_be_set
Sven Verdoolaege [Wed, 11 May 2011 16:01:59 +0000 (18:01 +0200)]
add isl_{basic_,}map_may_be_set

Sets and maps share the same internal representation, but only
some of those internal representations can be sets.
Add specific functions to test this condition, replacing some
open coded variants.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_aff
Sven Verdoolaege [Sat, 16 Apr 2011 14:23:57 +0000 (16:23 +0200)]
add isl_aff

Affine expressions will be used in a subsequent commit to specify
the objective function for an ILP problem, but they should hopefully
be more generally useful.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_basic_set_expand_divs
Sven Verdoolaege [Thu, 12 May 2011 11:03:10 +0000 (13:03 +0200)]
add isl_basic_set_expand_divs

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_polynomial.c: move merge_divs to isl_local_space.c
Sven Verdoolaege [Thu, 12 May 2011 10:24:16 +0000 (12:24 +0200)]
isl_polynomial.c: move merge_divs to isl_local_space.c

In time, we will want to define isl_qpolynomials over isl_local_spaces.
We start by moving some of the handling of divs to isl_local_space.c
as it also useful for local spaces in general.
The merging is adapted to handle possibly unknown divs, which should
never be merged.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_local_space
Sven Verdoolaege [Sat, 16 Apr 2011 17:47:13 +0000 (19:47 +0200)]
add isl_local_space

Local spaces should hopefully replaced the duplicate functionality
in basic sets and quasi-polynomials.
In a later commit, we will start by using it in affine expressions.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_dim_size: handle isl_dim_all
Sven Verdoolaege [Sat, 16 Apr 2011 17:41:16 +0000 (19:41 +0200)]
isl_dim_size: handle isl_dim_all

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_constraint_involves_dims
Sven Verdoolaege [Wed, 11 May 2011 13:32:34 +0000 (15:32 +0200)]
add isl_constraint_involves_dims

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl_printer_print_qpolynomial: support proper isl output
Sven Verdoolaege [Fri, 6 May 2011 13:33:38 +0000 (15:33 +0200)]
isl_printer_print_qpolynomial: support proper isl output

That is, print description of the space associated to the isl_qpolynomial
in the isl format.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_qpolynomial_align_params
Sven Verdoolaege [Fri, 6 May 2011 13:41:31 +0000 (15:41 +0200)]
add isl_qpolynomial_align_params

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoadd isl_map_align_params
Sven Verdoolaege [Fri, 6 May 2011 13:15:00 +0000 (15:15 +0200)]
add isl_map_align_params

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoexport isl_basic_set_remove_redundancies
Sven Verdoolaege [Wed, 11 May 2011 14:34:43 +0000 (16:34 +0200)]
export isl_basic_set_remove_redundancies

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoexport isl_qpolynomial_gist
Sven Verdoolaege [Mon, 9 May 2011 14:37:56 +0000 (16:37 +0200)]
export isl_qpolynomial_gist

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoexport isl_set_eliminate
Sven Verdoolaege [Sun, 8 May 2011 13:37:43 +0000 (15:37 +0200)]
export isl_set_eliminate

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agoisl/div.h: drop dependence on isl/set.h
Sven Verdoolaege [Mon, 16 May 2011 14:07:11 +0000 (16:07 +0200)]
isl/div.h: drop dependence on isl/set.h

Conceptually, a set involves divs and not the other way around.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
13 years agohide isl_div internals
Sven Verdoolaege [Mon, 16 May 2011 13:55:37 +0000 (15:55 +0200)]
hide isl_div internals

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