platform/upstream/isl.git
15 years agoavoid increasing "extra" without also extending the div array
Sven Verdoolaege [Mon, 22 Dec 2008 14:00:07 +0000 (15:00 +0100)]
avoid increasing "extra" without also extending the div array

The "extra" variable is used to indicate both the number
of extra variables in the columns beyond those in dim
and the number of rows in the div array.
We can therefore not increase extra, without also extending this array.

15 years agoadd isl_set_universe
Sven Verdoolaege [Fri, 19 Dec 2008 16:30:01 +0000 (17:30 +0100)]
add isl_set_universe

15 years agoremove isl_ctx argument from functions accepting isl_dim argument
Sven Verdoolaege [Fri, 19 Dec 2008 16:28:47 +0000 (17:28 +0100)]
remove isl_ctx argument from functions accepting isl_dim argument

Since isl_dim structures contain a pointer to a isl_ctx structure,
there is no need to pass in such a pointer separately.

15 years agoisl_convex_hull.c: remove dead code
Sven Verdoolaege [Fri, 19 Dec 2008 15:40:32 +0000 (16:40 +0100)]
isl_convex_hull.c: remove dead code

The removed code would handle 0D polytopes, but they have
been handled already a couple of lines up and there is no
way for the dimension to change between the two tests.

15 years agoadd isl_constraint_negate
Sven Verdoolaege [Mon, 15 Dec 2008 20:22:27 +0000 (21:22 +0100)]
add isl_constraint_negate

15 years agoadd isl_basic_set_add_constraint for adding manually constructed constraints
Sven Verdoolaege [Sun, 14 Dec 2008 22:45:51 +0000 (23:45 +0100)]
add isl_basic_set_add_constraint for adding manually constructed constraints

The interface is still pretty rudimentary and subject to change.

15 years agoreplace isl_basic_set_constraint by refcounted isl_constraint
Sven Verdoolaege [Sun, 14 Dec 2008 22:03:59 +0000 (23:03 +0100)]
replace isl_basic_set_constraint by refcounted isl_constraint

The new isl_constraint should hopefully be more consistent with
the other isl_ structures than the old isl_basic_set_constraint.

15 years agoallow parameters and dimensions to be named
Sven Verdoolaege [Fri, 5 Dec 2008 18:06:17 +0000 (19:06 +0100)]
allow parameters and dimensions to be named

The names of the parameters and dimensions are stored in
the recently introduced isl_dim structure.  To preserve
the names during set or map operations, many direct manipulations
of dimensions have been rewritten in terms of operations
on isl_dim structures.

15 years agointroduce isl_hash_table and move hashing declarations into include/isl_hash.h
Sven Verdoolaege [Fri, 5 Dec 2008 18:06:17 +0000 (19:06 +0100)]
introduce isl_hash_table and move hashing declarations into include/isl_hash.h

This isl_hash_table will be used in the next commit.
This commit also changes the calling convention of isl_hash_init
to be more consistent with the other isl_hash_ functions/macros.

15 years agointroduce internal isl_dim_map for representing mappings between dimensions
Sven Verdoolaege [Sat, 13 Dec 2008 13:38:06 +0000 (14:38 +0100)]
introduce internal isl_dim_map for representing mappings between dimensions

In particular, when combining constraints from two or more basic sets
or maps, we need to keep track of where the individual coefficients
will end up in the resulting basic set or map.

Currently, only isl_basic_map_apply_range has been modified to
make use of this new mechanism.  The others should follow later.

15 years agointroduce isl_dim structure for representing shared dimension information
Sven Verdoolaege [Thu, 6 Nov 2008 16:50:04 +0000 (17:50 +0100)]
introduce isl_dim structure for representing shared dimension information

All of isl_basic_set, isl_set, isl_basic_map and isl_map stored
information about the dimension directly.  This information is
now shared in a common isl_dim structure.
Direct accesses to the removed fields have been replaced by calls
to getters.

15 years agoisl_map.c: avoid potential NULL dereference
Sven Verdoolaege [Thu, 4 Dec 2008 13:13:24 +0000 (14:13 +0100)]
isl_map.c: avoid potential NULL dereference

15 years agoAdd backup mp_get_memory_functions implementation for use with old gmps
Sven Verdoolaege [Tue, 2 Dec 2008 20:22:01 +0000 (21:22 +0100)]
Add backup mp_get_memory_functions implementation for use with old gmps

15 years agoisl_map.c: fix typo in comment
Sven Verdoolaege [Wed, 12 Nov 2008 17:39:36 +0000 (18:39 +0100)]
isl_map.c: fix typo in comment

15 years agoadd gist test
Sven Verdoolaege [Thu, 20 Nov 2008 16:09:20 +0000 (17:09 +0100)]
add gist test

15 years agoupdate piplib for improved efficiency
Sven Verdoolaege [Tue, 11 Nov 2008 15:06:53 +0000 (16:06 +0100)]
update piplib for improved efficiency

15 years agoadd isl_set_dim_is_unique
Sven Verdoolaege [Wed, 22 Oct 2008 11:03:14 +0000 (13:03 +0200)]
add isl_set_dim_is_unique

15 years agoadd isl_set_get_hash
Sven Verdoolaege [Wed, 22 Oct 2008 09:52:10 +0000 (11:52 +0200)]
add isl_set_get_hash

15 years agoisl_map.c: fix typo in comment
Sven Verdoolaege [Wed, 22 Oct 2008 14:00:41 +0000 (16:00 +0200)]
isl_map.c: fix typo in comment

15 years agoisl_basic_map_alloc_div: clear unused extra coefficients
Sven Verdoolaege [Sat, 8 Nov 2008 11:11:14 +0000 (12:11 +0100)]
isl_basic_map_alloc_div: clear unused extra coefficients

15 years agoadd isl_basic_set_remove_divs
Sven Verdoolaege [Fri, 24 Oct 2008 08:32:55 +0000 (10:32 +0200)]
add isl_basic_set_remove_divs

15 years agouse GMP flags when compiling isl_test
Sven Verdoolaege [Tue, 14 Oct 2008 12:27:10 +0000 (14:27 +0200)]
use GMP flags when compiling isl_test

15 years agouse uint_32_t from stdint.h instead of u_int_32_t
Sven Verdoolaege [Tue, 14 Oct 2008 12:14:36 +0000 (14:14 +0200)]
use uint_32_t from stdint.h instead of u_int_32_t

15 years agoupdate piplib for license change and release isl under LGPL 2.1
Sven Verdoolaege [Tue, 14 Oct 2008 11:18:34 +0000 (13:18 +0200)]
update piplib for license change and release isl under LGPL 2.1

15 years agoclear extra coefficients in isl_basic_map_alloc_{in,}equality
Sven Verdoolaege [Mon, 13 Oct 2008 10:55:06 +0000 (12:55 +0200)]
clear extra coefficients in isl_basic_map_alloc_{in,}equality

Most functions shouldn't care about how many extra variables
there are, only about how many integer divisions have been
allocated.

15 years agoisl_{set,map}_dup: copy subsets instead of duping them
Sven Verdoolaege [Sun, 12 Oct 2008 14:10:27 +0000 (16:10 +0200)]
isl_{set,map}_dup: copy subsets instead of duping them

If the subsets are going to be changed, they will be
duped anyway later and otherwise it is a waste to dup them.

15 years agoisl_basic_map_eliminate_vars: update number of extra vars after each extension
Sven Verdoolaege [Sun, 12 Oct 2008 14:10:01 +0000 (16:10 +0200)]
isl_basic_map_eliminate_vars: update number of extra vars after each extension

15 years agoisl_basic_map_gist: unique lower or upper bounds are never redundant
Sven Verdoolaege [Sat, 4 Oct 2008 21:42:21 +0000 (23:42 +0200)]
isl_basic_map_gist: unique lower or upper bounds are never redundant

15 years agoisl_basic_map_convex_hull: unique lower or upper bounds are never redundant
Sven Verdoolaege [Sat, 4 Oct 2008 21:29:13 +0000 (23:29 +0200)]
isl_basic_map_convex_hull: unique lower or upper bounds are never redundant

15 years agoisl_basic_set_gist: remove redundant constraints with same normal without lp
Sven Verdoolaege [Sat, 4 Oct 2008 19:11:17 +0000 (21:11 +0200)]
isl_basic_set_gist: remove redundant constraints with same normal without lp

15 years agoadd some functions for manipulating constraints
Sven Verdoolaege [Wed, 1 Oct 2008 18:10:23 +0000 (20:10 +0200)]
add some functions for manipulating constraints

15 years agoexport isl_basic_set_dup
Sven Verdoolaege [Wed, 1 Oct 2008 18:11:55 +0000 (20:11 +0200)]
export isl_basic_set_dup

15 years agoisl_set_gist: reduce result using equalities of context
Sven Verdoolaege [Wed, 1 Oct 2008 09:55:17 +0000 (11:55 +0200)]
isl_set_gist: reduce result using equalities of context

15 years agoadd isl_basic_set_interval and isl_basic_set_product
Sven Verdoolaege [Sun, 28 Sep 2008 18:29:12 +0000 (20:29 +0200)]
add isl_basic_set_interval and isl_basic_set_product

15 years agoadd isl_set_simple_hull
Sven Verdoolaege [Sun, 28 Sep 2008 16:30:33 +0000 (18:30 +0200)]
add isl_set_simple_hull

15 years agoadd isl_set_fast_is_disjoint
Sven Verdoolaege [Sun, 28 Sep 2008 14:41:27 +0000 (16:41 +0200)]
add isl_set_fast_is_disjoint

15 years agoexport isl_set_eliminate_dims
Sven Verdoolaege [Sat, 27 Sep 2008 17:53:26 +0000 (19:53 +0200)]
export isl_set_eliminate_dims

15 years agoadd isl_basic_set_print and isl_set_print for printing in PolyLib format
Sven Verdoolaege [Sat, 27 Sep 2008 16:06:06 +0000 (18:06 +0200)]
add isl_basic_set_print and isl_set_print for printing in PolyLib format

15 years agoadd isl_{set,map}_fast_is_equal
Sven Verdoolaege [Fri, 26 Sep 2008 17:19:08 +0000 (19:19 +0200)]
add isl_{set,map}_fast_is_equal

15 years agoisl_basic_map_eliminate_vars: ensure variable is eliminated before dropping equality
Sven Verdoolaege [Fri, 26 Sep 2008 13:35:36 +0000 (15:35 +0200)]
isl_basic_map_eliminate_vars: ensure variable is eliminated before dropping equality

Before we would call isl_basic_map_gauss, but this is overkill
and it won't work if we eliminate variables that are not in the
final position.

15 years agoadd isl_map_remove_inputs
Sven Verdoolaege [Fri, 26 Sep 2008 09:49:56 +0000 (11:49 +0200)]
add isl_map_remove_inputs

15 years agoadd isl_set_lower_bound_dim
Sven Verdoolaege [Fri, 26 Sep 2008 08:34:15 +0000 (10:34 +0200)]
add isl_set_lower_bound_dim

15 years agoadd isl_set_fast_dim_has_fixed_lower_bound
Sven Verdoolaege [Fri, 26 Sep 2008 08:06:15 +0000 (10:06 +0200)]
add isl_set_fast_dim_has_fixed_lower_bound

15 years agoadd isl_basic_set_dim_residue_class
Sven Verdoolaege [Thu, 25 Sep 2008 16:06:49 +0000 (18:06 +0200)]
add isl_basic_set_dim_residue_class

15 years agoadd isl_set_gist
Sven Verdoolaege [Thu, 25 Sep 2008 13:24:24 +0000 (15:24 +0200)]
add isl_set_gist

15 years agoadd isl_set_fast_dim_is_fixed and isl_map_fast_input_is_fixed
Sven Verdoolaege [Thu, 25 Sep 2008 08:07:39 +0000 (10:07 +0200)]
add isl_set_fast_dim_is_fixed and isl_map_fast_input_is_fixed

15 years agoadd isl_map_deltas
Sven Verdoolaege [Wed, 24 Sep 2008 15:16:00 +0000 (17:16 +0200)]
add isl_map_deltas

15 years agoadd isl_basic_set_compare_at
Sven Verdoolaege [Wed, 24 Sep 2008 14:28:07 +0000 (16:28 +0200)]
add isl_basic_set_compare_at

15 years agoclear rational flags from resulting convex hull
Sven Verdoolaege [Tue, 23 Sep 2008 10:35:01 +0000 (12:35 +0200)]
clear rational flags from resulting convex hull

15 years agoisl_basic_map_is_empty: don't compute sample for rational sets
Sven Verdoolaege [Tue, 23 Sep 2008 10:16:57 +0000 (12:16 +0200)]
isl_basic_map_is_empty: don't compute sample for rational sets

15 years agoconvex_hull: use elimination based convex hull for unbounded polyhedra
Sven Verdoolaege [Sat, 20 Sep 2008 20:28:58 +0000 (22:28 +0200)]
convex_hull: use elimination based convex hull for unbounded polyhedra

15 years agowrap_facet: missing error path
Sven Verdoolaege [Sat, 20 Sep 2008 21:11:53 +0000 (23:11 +0200)]
wrap_facet: missing error path

15 years agoisl_convex_hull: fix construction of initial facet
Sven Verdoolaege [Fri, 19 Sep 2008 13:18:00 +0000 (15:18 +0200)]
isl_convex_hull: fix construction of initial facet

We need to find a bound on a constraint over the intersection
of the current hyperplane with the set, but instead we were
looking at intersections with smaller-dimensional spaces.

15 years agoisl_basic_map_eliminate_vars: remove all redundant constraints after each step
Sven Verdoolaege [Mon, 22 Sep 2008 22:00:46 +0000 (00:00 +0200)]
isl_basic_map_eliminate_vars: remove all redundant constraints after each step

15 years agoadd isl_basic_set_remove_dims
Sven Verdoolaege [Mon, 22 Sep 2008 14:52:04 +0000 (16:52 +0200)]
add isl_basic_set_remove_dims

15 years agoadd isl_set_copy_basic_set and isl_set_drop_basic_set
Sven Verdoolaege [Mon, 22 Sep 2008 14:44:30 +0000 (16:44 +0200)]
add isl_set_copy_basic_set and isl_set_drop_basic_set

15 years agoisl_convex_hull.c: make sure we don't overallocate inequalities
Sven Verdoolaege [Sat, 20 Sep 2008 18:47:00 +0000 (20:47 +0200)]
isl_convex_hull.c: make sure we don't overallocate inequalities

15 years agoisl_basic_map_affine_hull: allow computation of affine hull of rational sets
Sven Verdoolaege [Sat, 20 Sep 2008 18:37:27 +0000 (20:37 +0200)]
isl_basic_map_affine_hull: allow computation of affine hull of rational sets

15 years agoisl_convex_hull: fix memory leak in error path
Sven Verdoolaege [Fri, 19 Sep 2008 13:43:40 +0000 (15:43 +0200)]
isl_convex_hull: fix memory leak in error path

15 years agoadd isl_set_remove_dims
Sven Verdoolaege [Fri, 19 Sep 2008 09:50:36 +0000 (11:50 +0200)]
add isl_set_remove_dims

15 years agoadd isl_set_{from,to}_underlying_set
Sven Verdoolaege [Thu, 18 Sep 2008 18:36:22 +0000 (20:36 +0200)]
add isl_set_{from,to}_underlying_set

15 years agoadd isl_basic_set_from_underlying_set
Sven Verdoolaege [Thu, 18 Sep 2008 18:24:16 +0000 (20:24 +0200)]
add isl_basic_set_from_underlying_set

15 years agoisl_basic_map_overlying_set: fix possible NULL access
Sven Verdoolaege [Thu, 18 Sep 2008 18:02:41 +0000 (20:02 +0200)]
isl_basic_map_overlying_set: fix possible NULL access

15 years agoisl_set_dump: dump more information
Sven Verdoolaege [Tue, 16 Sep 2008 22:49:38 +0000 (00:49 +0200)]
isl_set_dump: dump more information

15 years agoadd isl_set_extend
Sven Verdoolaege [Tue, 16 Sep 2008 22:43:37 +0000 (00:43 +0200)]
add isl_set_extend

15 years agoadd isl_set_intersect
Sven Verdoolaege [Tue, 16 Sep 2008 22:14:42 +0000 (00:14 +0200)]
add isl_set_intersect

15 years agoadd isl_set_from_map
Sven Verdoolaege [Tue, 16 Sep 2008 19:16:32 +0000 (21:16 +0200)]
add isl_set_from_map

15 years agoisl_map_to_polylib: return empty polyhedron instead of NULL for empty set
Sven Verdoolaege [Tue, 16 Sep 2008 15:30:35 +0000 (17:30 +0200)]
isl_map_to_polylib: return empty polyhedron instead of NULL for empty set

15 years agoisl_map_polylib.c: simplify sets after conversion from PolyLib
Sven Verdoolaege [Wed, 10 Sep 2008 10:21:00 +0000 (12:21 +0200)]
isl_map_polylib.c: simplify sets after conversion from PolyLib

15 years agoisl_set_alloc: add check on number of basic sets
Sven Verdoolaege [Tue, 9 Sep 2008 16:53:30 +0000 (18:53 +0200)]
isl_set_alloc: add check on number of basic sets

15 years agoisl_equalities.c: add missing include
Sven Verdoolaege [Tue, 9 Sep 2008 08:24:18 +0000 (10:24 +0200)]
isl_equalities.c: add missing include

15 years agodeclare isl_basic_map_drop_inequality
Sven Verdoolaege [Tue, 9 Sep 2008 08:23:26 +0000 (10:23 +0200)]
declare isl_basic_map_drop_inequality

15 years agoisl_map_polylib.c: add missing include
Sven Verdoolaege [Tue, 9 Sep 2008 08:22:34 +0000 (10:22 +0200)]
isl_map_polylib.c: add missing include

15 years agoisl_sample_piplib.c: add missing include
Sven Verdoolaege [Tue, 9 Sep 2008 08:22:08 +0000 (10:22 +0200)]
isl_sample_piplib.c: add missing include

15 years agoisl_map_piplib.c: fix some warnings
Sven Verdoolaege [Tue, 9 Sep 2008 08:21:22 +0000 (10:21 +0200)]
isl_map_piplib.c: fix some warnings

15 years agoisl_map_piplib.c: add missing include
Sven Verdoolaege [Tue, 9 Sep 2008 08:20:22 +0000 (10:20 +0200)]
isl_map_piplib.c: add missing include

15 years agodeclare isl_basic_map_drop_equality
Sven Verdoolaege [Tue, 9 Sep 2008 08:19:29 +0000 (10:19 +0200)]
declare isl_basic_map_drop_equality

15 years agoisl_input_omega.c: add missing include
Sven Verdoolaege [Tue, 9 Sep 2008 08:17:16 +0000 (10:17 +0200)]
isl_input_omega.c: add missing include

15 years agoisl_mat.c: fix some warnings
Sven Verdoolaege [Tue, 9 Sep 2008 08:15:07 +0000 (10:15 +0200)]
isl_mat.c: fix some warnings

15 years agodeclare isl_seq_combine
Sven Verdoolaege [Tue, 9 Sep 2008 08:14:09 +0000 (10:14 +0200)]
declare isl_seq_combine

15 years agodeclare isl_gmp_hash
Sven Verdoolaege [Tue, 9 Sep 2008 08:12:55 +0000 (10:12 +0200)]
declare isl_gmp_hash

15 years agoisl_sample.c: add missing include
Sven Verdoolaege [Tue, 9 Sep 2008 08:11:35 +0000 (10:11 +0200)]
isl_sample.c: add missing include

15 years agoadd struct_ctx field to isl_set and isl_map
Sven Verdoolaege [Tue, 9 Sep 2008 08:09:34 +0000 (10:09 +0200)]
add struct_ctx field to isl_set and isl_map

Since isl_sets and isl_maps now know which isl_ctx they belong
to, the isl_ctx argument of many functions can be dropped.

15 years agoisl_{basic_,}set_read_from_file: allow user to specify number of parameters
Sven Verdoolaege [Mon, 8 Sep 2008 18:42:12 +0000 (20:42 +0200)]
isl_{basic_,}set_read_from_file: allow user to specify number of parameters

15 years agoadd isl_set_read_from_file for reading unions of polyhedra (in polylib format)
Sven Verdoolaege [Mon, 8 Sep 2008 14:57:41 +0000 (16:57 +0200)]
add isl_set_read_from_file for reading unions of polyhedra (in polylib format)

15 years agoisl_basic_set_read_from_file: partial support for Omega style input
Sven Verdoolaege [Fri, 29 Aug 2008 15:51:13 +0000 (17:51 +0200)]
isl_basic_set_read_from_file: partial support for Omega style input

15 years agoadd test_inputs to the distribution
Sven Verdoolaege [Wed, 3 Sep 2008 14:18:16 +0000 (16:18 +0200)]
add test_inputs to the distribution

15 years agoadd isl_sample_piplib.h to the distribution
Sven Verdoolaege [Wed, 3 Sep 2008 13:27:04 +0000 (15:27 +0200)]
add isl_sample_piplib.h to the distribution

15 years agoMakefile.am: only include piplib in distribution if it has been configured
Sven Verdoolaege [Wed, 3 Sep 2008 12:11:09 +0000 (14:11 +0200)]
Makefile.am: only include piplib in distribution if it has been configured

15 years agoMakefile.am: remove reference to (re)moved header files
Sven Verdoolaege [Wed, 3 Sep 2008 11:44:03 +0000 (13:44 +0200)]
Makefile.am: remove reference to (re)moved header files

15 years agoadd isl_set_compute_divs
Sven Verdoolaege [Tue, 26 Aug 2008 08:09:56 +0000 (10:09 +0200)]
add isl_set_compute_divs

15 years agoadd isl_set_fix_dim_si
Sven Verdoolaege [Mon, 25 Aug 2008 22:03:25 +0000 (00:03 +0200)]
add isl_set_fix_dim_si

15 years agoisl_map_apply_range: mark result of 1 basic set as "disjoint"
Sven Verdoolaege [Mon, 25 Aug 2008 12:28:22 +0000 (14:28 +0200)]
isl_map_apply_range: mark result of 1 basic set as "disjoint"

15 years agoisl_map_dump: print flags
Sven Verdoolaege [Mon, 25 Aug 2008 12:27:51 +0000 (14:27 +0200)]
isl_map_dump: print flags

15 years agoisl_basic_map_affine_hull: compute integer affine hull
Sven Verdoolaege [Fri, 22 Aug 2008 13:29:16 +0000 (15:29 +0200)]
isl_basic_map_affine_hull: compute integer affine hull

15 years agosample: remove lineality and skew into positive orthant
Sven Verdoolaege [Fri, 22 Aug 2008 14:31:44 +0000 (16:31 +0200)]
sample: remove lineality and skew into positive orthant

These changes are needed if we want isl_basic_set_sample
to always return an actual point.  Without them, the lexmin
may be unbounded and we effectively get a ray.

15 years agoadd trivial affine hull test
Sven Verdoolaege [Sun, 17 Aug 2008 14:33:02 +0000 (16:33 +0200)]
add trivial affine hull test

15 years agoadd convex hull computation
Sven Verdoolaege [Fri, 15 Aug 2008 19:56:30 +0000 (21:56 +0200)]
add convex hull computation

15 years agoremove obviously redundant divs based on inequalities
Sven Verdoolaege [Thu, 21 Aug 2008 19:20:35 +0000 (21:20 +0200)]
remove obviously redundant divs based on inequalities

15 years agoisl_map_affine_hull: perform affine hull on underlying set
Sven Verdoolaege [Sun, 17 Aug 2008 07:45:12 +0000 (09:45 +0200)]
isl_map_affine_hull: perform affine hull on underlying set