1
0
Fork 0
mirror of https://repo.or.cz/isl.git synced 2026-03-07 03:50:19 +00:00
No description
Find a file
Sven Verdoolaege cf471c16d9 isl_ast_build_expr_from_set: drop expressions generated from empty basic sets
In particular, some basic sets of the input set may conflict
with the build domain.  These get generated as the expression "0" and
can be ignored.

Signed-off-by: Sven Verdoolaege <sven.verdoolaege@gmail.com>
2026-02-28 21:29:09 +01:00
cpp cpp/cpp.h.top: mark exception::what override 2023-05-13 16:23:30 +02:00
doc introduce exported isl_fixed_box_plain_is_equal 2025-12-30 21:38:00 +01:00
imath@48932bf246 update imath to version 1.31 2020-11-15 12:59:19 +01:00
imath_wrap imath backend: use tailored isl_int_fdiv_q_ui 2017-05-25 16:13:31 +02:00
include/isl introduce exported isl_fixed_box_plain_is_equal 2025-12-30 21:38:00 +01:00
interface introduce exported isl_fixed_box_plain_is_equal 2025-12-30 21:38:00 +01:00
m4 clang_wrap.h: avoid calling CompilerInstance::setInvocation 2025-11-22 15:26:18 +01:00
python support (type safe) user object on id in bindings 2021-10-23 13:08:05 +02:00
test_inputs isl_ast_build_expr_from_set: drop expressions generated from empty basic sets 2026-02-28 21:29:09 +01:00
testsets/pip doc: add pip experiment inputs to distribution 2016-04-26 15:40:19 +02:00
.gitignore only copy generated interfaces to source tree when needed 2024-09-01 12:46:57 +02:00
.gitmodules optionally use imath for arbitrary precision integers 2014-05-29 11:35:29 +02:00
all.h export isl_id_to_id 2023-01-01 21:36:28 +01:00
AUTHORS update AUTHORS 2022-07-02 10:27:51 +02:00
autogen.sh autogen.sh: replace by call to autoreconf 2011-05-25 15:17:39 +02:00
basis_reduction_tab.c imath-32: allow updating isl_int passed as argument 2015-08-10 10:46:27 +02:00
basis_reduction_templ.c isl_tab_compute_reduced_basis: cuddle else-if 2021-09-24 23:13:20 +02:00
bound.c fix callers of functions returning additional boolean through pointer 2019-02-18 23:17:33 +01:00
bound_test.sh.in bound_test.sh.in: set srcdir at configure time 2016-11-23 11:12:49 +01:00
bset_from_bmap.c extract out shared bset_from_bmap 2016-11-02 08:33:16 +01:00
bset_to_bmap.c extract out shared bset_to_bmap 2016-11-02 08:33:16 +01:00
cat.c isl_cat: support C output format 2018-09-02 16:19:04 +02:00
ChangeLog isl 0.27 2024-09-01 12:49:55 +02:00
check_parse_fail_test_templ.c isl_multi_pw_aff_read_from_str: check domain constraint is free from output ids 2021-05-29 10:23:41 +02:00
check_reparse_templ.c isl_test.c: extract out shared check_reparse_* 2018-10-23 21:35:41 +02:00
check_reparse_test_templ.c check_reparse_test_templ.c: undefine TESTS before (re)defining it 2021-05-29 10:23:41 +02:00
check_single_reference_templ.c check_single_reference_templ.c: drop spurious empty line 2020-09-09 19:07:04 +02:00
check_type_range_templ.c isl_*_dim: return isl_size 2018-09-06 17:01:48 +02:00
closure.c fix callers of functions returning additional boolean through pointer 2019-02-18 23:17:33 +01:00
codegen.c isl_codegen: skip explicit printing of outermost block by default 2020-05-01 11:56:39 +02:00
codegen_test.sh.in codegen_test.sh.in: determine option to produce context diff 2024-06-22 15:52:55 +02:00
configure.ac isl 0.27 2024-09-01 12:49:55 +02:00
cp_if_different.sh only copy generated interfaces to source tree when needed 2024-09-01 12:46:57 +02:00
dep.c rename all.c to dep.c 2019-04-04 18:20:22 +02:00
extract_key.c extract_key: allow missing keys in table 2022-12-31 10:20:35 +01:00
flow.c add isl_flow application 2017-06-12 15:48:50 +02:00
flow_cmp.c isl_stream_yaml_read_end_mapping: do not print extra error message on failure 2022-07-09 11:46:05 +02:00
flow_test.sh.in add basic isl_union_access_info_compute_flow tests 2017-06-12 15:48:50 +02:00
has_single_reference_templ.c extract out generic isl_*_has_single_reference 2018-10-01 12:33:24 +02:00
isl_aff.c isl_aff_as_domain_extension: fix use after free 2024-08-18 12:15:58 +02:00
isl_aff_lex_templ.c fix isl_multi_pw_aff_lex_{le,ge}_map 2020-09-15 12:52:07 +02:00
isl_aff_map.c isl_{set,map}_from_multi_pw_aff: take into account explicit domain 2022-01-08 12:45:01 +01:00
isl_aff_private.h isl_aff.c: pw_multi_aff_from_map_plug_in: extract isl_aff_as_domain_extension 2024-05-11 15:16:14 +02:00
isl_affine_hull.c extract out shared isl_seq_any_non_zero 2024-06-08 18:30:31 +02:00
isl_align_params_bin_templ.c perform parameter alignment by modifying both arguments to function 2019-12-11 14:14:04 +01:00
isl_align_params_templ.c perform parameter alignment by modifying both arguments to function 2019-12-11 14:14:04 +01:00
isl_arg.c extract out public version of isl_arg_str_list_append 2025-10-26 21:37:53 +01:00
isl_ast.c add isl_stream_read_ast_node 2022-12-31 10:31:00 +01:00
isl_ast_build.c isl_ast_build_has_stride: always use current depth 2026-02-22 21:36:58 +01:00
isl_ast_build_expr.c isl_ast_build_expr_from_set: drop expressions generated from empty basic sets 2026-02-28 21:29:09 +01:00
isl_ast_build_expr.h export isl_ast_build_expr_from_set 2015-02-21 19:43:45 +01:00
isl_ast_build_private.h isl_ast_build_has_stride: always use current depth 2026-02-22 21:36:58 +01:00
isl_ast_codegen.c AST generation: add special handling of strided domains and fixed values 2026-02-22 21:41:46 +01:00
isl_ast_graft.c add isl_stream_read_ast_graft_list 2022-12-31 10:34:39 +01:00
isl_ast_graft_private.h add isl_stream_read_ast_graft_list 2022-12-31 10:34:39 +01:00
isl_ast_node_set_field_templ.c extract out shared isl_ast_node_*_set_* 2022-12-31 10:19:17 +01:00
isl_ast_private.h add isl_stream_read_ast_node 2022-12-31 10:31:00 +01:00
isl_basis_reduction.h relicense isl under the MIT license 2012-09-02 15:38:40 +02:00
isl_bernstein.c isl_qpolynomial_bound_on_domain_bernstein: special case all constant polynomials 2021-01-05 22:23:11 +01:00
isl_bernstein.h isl_qpolynomial_bound_on_domain_bernstein: return isl_stat 2017-01-31 16:48:27 +01:00
isl_bind_domain_templ.c add exported isl_*_aff_bind_domain_wrapped_domain 2019-05-14 18:44:26 +02:00
isl_blk.c isl_blk.c: extend: plug memory leak on error path 2016-06-02 12:58:08 +02:00
isl_blk.h deprecate isl_int 2013-06-25 20:24:45 +02:00
isl_bound.c isl_pw_qpolynomial_bound: special case affine polynomials 2023-04-23 20:12:54 +02:00
isl_bound.h extract out shared isl_qpolynomial_cst_bound 2021-01-05 22:23:11 +01:00
isl_box.c isl_set_get_simple_fixed_box_hull: take into account strides 2025-12-30 21:54:20 +01:00
isl_check_named_params_templ.c extract out shared isl_*_check_named_params 2019-12-11 13:40:21 +01:00
isl_coalesce.c isl_map_coalesce: remove duplicate basic maps up front 2026-02-22 21:41:54 +01:00
isl_config_post.h always use _snprintf when available 2019-02-26 21:43:02 +01:00
isl_constraint.c extract out shared isl_seq_any_non_zero 2024-06-08 18:30:31 +02:00
isl_constraint_private.h isl_basic_set_constraint: add memory management annotations 2020-04-04 10:43:55 +02:00
isl_convex_hull.c isl_convex_hull.c: wrap_constraints: fix typo in comment 2024-08-10 18:15:41 +02:00
isl_copy_tuple_id_templ.c isl_*_copy_tuple_id: use BASE instead of TYPE to select variant 2023-03-01 22:05:47 +01:00
isl_ctx.c isl_stat_non_null: take const pointer 2025-10-26 21:18:51 +01:00
isl_ctx_private.h privately export isl_ctx_set_full_error 2021-05-29 10:23:41 +02:00
isl_deprecated.c drop deprecated isl_basic_set_add 2018-02-11 21:53:56 +01:00
isl_dim_map.c isl_space_offset: return isl_size 2023-02-25 21:16:01 +01:00
isl_dim_map.h introduce explicit isl_dim_map_free 2018-08-31 09:02:20 +02:00
isl_domain_factor_templ.c generalize isl_aff_domain_is_product 2019-06-16 22:27:15 +02:00
isl_drop_unused_params_templ.c isl_*_drop_unused_params: extract out shared implementation 2023-02-05 14:36:41 +01:00
isl_equalities.c isl_equalities.c: parameter_compression_multi: add memory management annotations 2020-04-04 10:43:55 +02:00
isl_equalities.h isl_basic_set_remove_equalities: add memory management annotations 2020-04-04 10:43:55 +02:00
isl_factorization.c isl_basic_set_factorizer: use isl_basic_set_var_offset 2023-02-25 21:16:01 +01:00
isl_factorization.h add isl_factorizer_get_ctx 2020-02-09 23:20:20 +01:00
isl_farkas.c isl_basic_set_coefficients: factor input set 2020-02-10 22:37:31 +01:00
isl_ffs.c define ffs in terms of _BitScanForward if _BitScanForward is available and not ffs 2015-06-17 10:31:31 +02:00
isl_flow.c isl_stream_read_union_access_info: explicitly convert enum value 2023-01-20 21:47:18 +01:00
isl_fold.c isl_union_templ.c: extract out isl_union_sub_templ.c 2022-11-11 10:27:41 +01:00
isl_from_range_templ.c extract out shared isl_*_from_range 2022-11-11 10:24:55 +01:00
isl_gmp.c isl_val_gcdext: revert to open-coded version of isl_int_gcdext 2014-05-29 10:17:19 +02:00
isl_hash.c add isl_hash_table_every 2023-01-01 21:23:15 +01:00
isl_hash_private.h add isl_hash_table_first 2022-07-09 10:59:08 +02:00
isl_id.c extract out shared isl_*_read_from_str 2023-01-02 12:54:53 +01:00
isl_id_private.h expose isl_stream_read_id 2022-12-31 10:14:23 +01:00
isl_id_to_ast_expr.c add isl_*_to_*_{plain_}is_equal 2023-01-01 21:35:00 +01:00
isl_id_to_id.c add isl_*_to_*_{plain_}is_equal 2023-01-01 21:35:00 +01:00
isl_id_to_pw_aff.c add isl_*_to_*_{plain_}is_equal 2023-01-01 21:35:00 +01:00
isl_ilp.c add exported isl_pw_aff_{min,max}_val 2021-10-04 12:55:11 +02:00
isl_ilp_opt_fn_val_templ.c extract out isl_ilp_opt_fn_val_templ.c 2021-10-04 12:55:09 +02:00
isl_ilp_opt_multi_val_templ.c add exported isl_{pw_multi,multi_pw}_aff_{min,max}_multi_val 2020-06-13 12:33:37 +02:00
isl_ilp_opt_val_templ.c isl_basic_set_dim_max_val: extract out generic isl_*_dim_opt_val 2020-06-13 12:29:47 +02:00
isl_ilp_private.h deprecate isl_int 2013-06-25 20:24:45 +02:00
isl_imath.c add isl_int_cdiv_q_ui 2017-05-25 16:13:31 +02:00
isl_imath.h add isl_int_cdiv_q_ui 2017-05-25 16:13:31 +02:00
isl_input.c isl_{multi_,}union_pw_aff_read_from_str: accept empty expressions 2024-07-28 14:54:17 +02:00
isl_insert_domain_templ.c check for proper set spaces where needed 2024-08-04 22:13:29 +02:00
isl_int.h Implement small integer optimization for IMath 2015-06-15 10:00:29 +02:00
isl_int_gmp.h add isl_int_cdiv_q_ui 2017-05-25 16:13:31 +02:00
isl_int_imath.h drop deprecated isl_int interface 2017-10-13 23:06:42 +02:00
isl_int_sioimath.c add isl_int_cdiv_q_ui 2017-05-25 16:13:31 +02:00
isl_int_sioimath.h add isl_int_cdiv_q_ui 2017-05-25 16:13:31 +02:00
isl_list_macro.h use EL_BASE instead of BASE macro to define list element base 2019-03-08 18:55:51 +01:00
isl_list_private.h privately export isl_qpolynomial_list_peek 2020-12-31 14:56:33 +01:00
isl_list_read_templ.c extract out shared isl_*_read_from_str 2023-01-02 12:54:53 +01:00
isl_list_read_yaml_templ.c extract out shared isl_stream_yaml_read_*_list 2022-12-31 10:13:43 +01:00
isl_list_templ.c add exported isl_list_*_set_at 2022-12-27 22:49:14 +01:00
isl_list_templ.h declare isl_*_list together with isl_* 2013-04-22 09:38:20 +02:00
isl_local.c extract out shared isl_seq_any_non_zero 2024-06-08 18:30:31 +02:00
isl_local.h add isl_local_space_involves_dims 2023-03-12 20:29:20 +01:00
isl_local_private.h privately export isl_local_alloc_from_mat 2018-08-28 21:41:54 +02:00
isl_local_space.c extract out shared isl_seq_any_non_zero 2024-06-08 18:30:31 +02:00
isl_local_space_private.h add isl_local_space_involves_dims 2023-03-12 20:29:20 +01:00
isl_lp.c isl_lp.c: make isl_tab_solve_lp static 2021-08-31 21:34:08 +02:00
isl_lp_private.h deprecate isl_int 2013-06-25 20:24:45 +02:00
isl_map.c detect more forms of modulo expressions when extracting a function 2024-06-16 12:34:24 +02:00
isl_map_bound_templ.c isl_{set,map}_{lower,upper}_bound_multi_pw_aff: take into account explicit domain 2020-10-30 21:22:11 +01:00
isl_map_lexopt_templ.c isl_map_partial_lexopt*: extract out isl_map_set_aligned_params 2017-03-07 12:44:06 +01:00
isl_map_list.c add isl_map_list_read_from_str 2021-06-29 09:17:33 +02:00
isl_map_private.h privately expose isl_basic_map_remove_unknown_divs 2024-05-25 15:04:53 +02:00
isl_map_simplify.c isl_basic_map_reduce_coefficients: do not reduce again on empty result 2026-02-01 21:19:38 +01:00
isl_map_subtract.c extract out shared isl_seq_any_non_zero 2024-06-08 18:30:31 +02:00
isl_map_to_basic_set.c add isl_*_to_*_{plain_}is_equal 2023-01-01 21:35:00 +01:00
isl_mat.c extract out shared isl_seq_any_non_zero 2024-06-08 18:30:31 +02:00
isl_mat_private.h isl_mat_col_mul: add memory management annotation 2020-04-04 10:43:55 +02:00
isl_maybe_aff.h isl_aff.c: pw_multi_aff_from_map_check_div: move div detection down 2024-03-10 15:37:39 +01:00
isl_maybe_ast_graft_list.h add isl_set_to_ast_graft_list 2019-07-28 21:51:00 +02:00
isl_maybe_map.h add isl_maybe_isl_map 2017-06-12 15:48:50 +02:00
isl_morph.c extract out shared isl_seq_any_non_zero 2024-06-08 18:30:31 +02:00
isl_morph.h extract out shared isl_morph_check_applies 2020-12-30 11:35:26 +01:00
isl_multi_add_constant_templ.c extract out shared isl_multi_*_fn_multi_val 2021-08-11 18:35:26 +02:00
isl_multi_align_set.c isl_multi_*_domain_intersect*: reuse isl_align_params_templ.c 2023-02-12 23:15:52 +01:00
isl_multi_align_union_set.c isl_multi_*_domain_intersect*: reuse isl_align_params_templ.c 2023-02-12 23:15:52 +01:00
isl_multi_apply_explicit_domain_templ.c isl_multi_*_gist: handle explicit domain 2023-02-12 23:26:02 +01:00
isl_multi_apply_no_explicit_domain_templ.c isl_multi_*_gist: handle explicit domain 2023-02-12 23:26:02 +01:00
isl_multi_apply_set_explicit_domain_templ.c isl_multi_*_gist: handle explicit domain 2023-02-12 23:26:02 +01:00
isl_multi_apply_set_no_explicit_domain_templ.c isl_multi_*_gist: handle explicit domain 2023-02-12 23:26:02 +01:00
isl_multi_apply_templ.c isl_multi_*_gist: handle explicit domain 2023-02-12 23:26:02 +01:00
isl_multi_apply_union_set_explicit_domain_templ.c isl_multi_*_gist: handle explicit domain 2023-02-12 23:26:02 +01:00
isl_multi_arith_templ.c introduce isl_multi_*_un_op_control 2023-02-14 22:44:41 +01:00
isl_multi_bin_val_templ.c extract out shared isl_multi_*_{take,restore}_at 2021-08-11 18:35:26 +02:00
isl_multi_bind_domain_templ.c add exported isl_*_aff_bind_domain 2019-05-14 18:44:26 +02:00
isl_multi_bind_templ.c add exported isl_multi_*_aff_bind 2019-05-14 18:44:25 +02:00
isl_multi_check_domain_templ.c isl_multi_intersect.c: extract out isl_multi_*_check_compatible_domain 2023-02-12 23:19:23 +01:00
isl_multi_cmp.c isl_multi_*: store pieces in a union 2018-03-04 15:36:00 +01:00
isl_multi_coalesce.c isl_multi_*: store pieces in a union 2018-03-04 15:36:00 +01:00
isl_multi_dim_id_templ.c isl_multi_*_set_dim_name: use isl_multi_*_reset_space 2021-08-11 18:35:26 +02:00
isl_multi_dims.c extract out shared isl_multi_*_{take,restore}_at 2021-08-11 18:35:26 +02:00
isl_multi_domain_reverse_templ.c add exported isl_multi_aff_domain_reverse 2023-02-14 22:46:01 +01:00
isl_multi_domain_templ.c isl_multi_templ.c: extract out isl_multi_domain_templ.c 2018-08-13 16:19:35 +02:00
isl_multi_explicit_domain.c isl_multi_union_pw_aff_range_product: fix handling of missing explicit domains 2018-05-11 18:10:04 +02:00
isl_multi_floor.c introduce isl_multi_*_un_op_control 2023-02-14 22:44:41 +01:00
isl_multi_from_base_templ.c isl_multi_templ.c: extract out isl_multi_from_base_templ.c 2018-08-13 16:23:33 +02:00
isl_multi_from_tuple_templ.c isl_input.c: extract out shared isl_multi_*_from_tuple 2023-01-02 14:41:02 +01:00
isl_multi_gist.c isl_multi_*_gist: handle explicit domain 2023-02-12 23:26:02 +01:00
isl_multi_hash.c isl_multi_*: store pieces in a union 2018-03-04 15:36:00 +01:00
isl_multi_identity_templ.c re-export isl_multi_*_identity_on_domain_space as isl_space_*_multi_* 2021-01-13 23:12:57 +01:00
isl_multi_insert_domain_templ.c add exported isl_*_aff_insert_domain 2020-06-04 21:19:02 +02:00
isl_multi_intersect.c isl_multi_*_gist: handle explicit domain 2023-02-12 23:26:02 +01:00
isl_multi_locals_templ.c add exported isl_multi_aff_involves_locals 2019-06-20 21:55:18 +02:00
isl_multi_macro.h use EL_BASE instead of BASE macro to define list element base 2019-03-08 18:55:51 +01:00
isl_multi_min_max_templ.c add exported isl_multi_{val,pw_aff}_{min,max} 2020-03-05 22:07:05 +01:00
isl_multi_move_dims_templ.c extract out shared isl_multi_*_{take,restore}_at 2021-08-11 18:35:26 +02:00
isl_multi_nan_templ.c isl_multi_*_involves_nan: extract out isl_multi_*_any 2019-06-20 21:55:18 +02:00
isl_multi_no_domain_templ.c extract out isl_multi_no_domain_templ.c 2019-05-02 18:19:13 +02:00
isl_multi_no_explicit_domain.c mark isl_multi_*_intersect_explicit_domain_product as (possibly) unused 2019-05-02 18:19:13 +02:00
isl_multi_param_templ.c add exported isl_multi_pw_aff_involves_param_id_list 2019-05-02 18:18:34 +02:00
isl_multi_product_templ.c perform parameter alignment by modifying both arguments to function 2019-12-11 14:14:04 +01:00
isl_multi_pw_aff_explicit_domain.c keep track of domain in 0D isl_multi_pw_aff and isl_multi_union_pw_aff 2018-03-04 15:39:57 +01:00
isl_multi_pw_aff_pullback_templ.c extract out shared isl_multi_*_{take,restore}_at 2021-08-11 18:35:26 +02:00
isl_multi_read_no_explicit_domain_templ.c Merge branch 'maint' 2023-03-03 20:56:14 +01:00
isl_multi_splice_templ.c isl_*_dim: return isl_size 2018-09-06 17:01:48 +02:00
isl_multi_templ.c extract out shared isl_*_from_range 2022-11-11 10:24:55 +01:00
isl_multi_templ.h privately expose isl_multi_*_peek_space 2018-06-21 09:20:54 +02:00
isl_multi_tuple_id_templ.c add exported isl_multi_*_reset_range_tuple_id convenience functions 2021-02-07 17:21:41 +01:00
isl_multi_un_op_templ.c isl_multi_*_un_op: allow space modification 2023-02-14 22:45:16 +01:00
isl_multi_unbind_params_templ.c add exported isl_multi_{,pw_}aff_unbind_params_insert_domain 2020-06-04 21:15:02 +02:00
isl_multi_union_add_templ.c isl_multi_*_bin_op: perform parameter alignment 2020-03-05 22:07:05 +01:00
isl_multi_union_pw_aff_explicit_domain.c keep track of domain in 0D isl_multi_pw_aff and isl_multi_union_pw_aff 2018-03-04 15:39:57 +01:00
isl_multi_zero_space_templ.c re-export isl_multi_*_zero as isl_space_zero_multi_* 2021-01-13 23:34:19 +01:00
isl_multi_zero_templ.c re-export isl_multi_*_zero as isl_space_zero_multi_* 2021-01-13 23:34:19 +01:00
isl_obj.c isl_obj.c: directly include required header 2017-09-18 13:20:14 +02:00
isl_opt_mpa_templ.c isl_map_{min,max}_multi_pw_aff: set explicit domain to complete domain 2020-10-30 21:22:11 +01:00
isl_options.c AST printing: make explicit printing of outermost block optional 2020-04-30 23:01:38 +02:00
isl_options_private.h AST printing: make explicit printing of outermost block optional 2020-04-30 23:01:38 +02:00
isl_output.c fix printing of empty piecewise expressions 2024-07-28 14:53:20 +02:00
isl_output_private.h isl_output.c: privately export isl_print_space 2015-12-11 14:48:57 +01:00
isl_point.c isl_space_offset: return isl_size 2023-02-25 21:16:01 +01:00
isl_point_private.h introduce isl_point_check_named_params 2022-08-21 12:18:38 +02:00
isl_polynomial.c isl_qpolynomial_var_on_domain: drop spurious space 2024-08-10 18:15:41 +02:00
isl_polynomial_private.h extract out shared isl_qpolynomial_get_local 2023-02-25 21:16:01 +01:00
isl_power_templ.c isl_*_fixed_power: further simplify intermediate results 2023-01-22 12:38:52 +01:00
isl_printer.c fix isl_printer_start_line for string printer 2019-02-12 19:16:15 +01:00
isl_printer_private.h isl_printer: keep track of notes 2016-02-11 09:47:55 +01:00
isl_project_out_all_params_templ.c add exported isl_map_project_out_all_params 2019-09-17 19:20:54 +02:00
isl_project_out_param_templ.c extract out isl_project_out_param_templ.c 2022-08-28 10:39:05 +02:00
isl_pw_add_constant_multi_val_templ.c add exported isl_{pw_,}{multi_,}aff_add_constant_{multi_,}val 2019-12-21 12:59:38 +01:00
isl_pw_add_constant_templ.c add exported isl_{pw_,}{multi_,}aff_add_constant_{multi_,}val 2019-12-21 12:59:38 +01:00
isl_pw_add_constant_val_templ.c add exported isl_{pw_,}{multi_,}aff_add_constant_{multi_,}val 2019-12-21 12:59:38 +01:00
isl_pw_add_disjoint_templ.c isl_pw_templ.c: extract out isl_pw_add_disjoint_templ.c 2022-11-11 10:26:11 +01:00
isl_pw_bind_domain_templ.c add exported isl_*_aff_bind_domain 2019-05-14 18:44:26 +02:00
isl_pw_domain_reverse_templ.c add exported isl_pw_aff_domain_reverse 2023-02-14 22:43:23 +01:00
isl_pw_eval.c isl_pw_*_eval: align parameters of arguments 2022-08-21 12:18:38 +02:00
isl_pw_fix_templ.c isl_pw_templ.c: extract out isl_pw_fix_templ.c 2022-11-11 10:26:10 +01:00
isl_pw_from_range_templ.c isl_pw_templ.c: extract out isl_pw_from_range_templ.c 2022-11-11 10:26:58 +01:00
isl_pw_hash.c isl_pw_hash.c: add missing copyright statement 2016-03-10 14:21:15 +01:00
isl_pw_insert_dims_templ.c extract out shared isl_pw_*_{take,restore}_domain_at 2021-08-01 14:22:05 +02:00
isl_pw_insert_domain_templ.c add exported isl_*_aff_insert_domain 2020-06-04 21:19:02 +02:00
isl_pw_lift_templ.c isl_pw_*_foreach_lifted_piece: use isl_set_involves_locals 2020-07-01 19:12:14 +02:00
isl_pw_locals_templ.c add exported isl_pw_multi_aff_involves_locals 2020-05-30 19:26:04 +02:00
isl_pw_macro.h isl_pw_*: use base type to identify elements 2019-06-22 16:58:50 +02:00
isl_pw_morph_templ.c extract out shared isl_pw_*_{take,restore}_domain_at 2021-08-01 14:22:05 +02:00
isl_pw_move_dims_templ.c extract out shared isl_pw_*_{take,restore}_domain_at 2021-08-01 14:22:05 +02:00
isl_pw_neg_templ.c introduce isl_pw_*_un_op_control 2023-02-14 22:41:26 +01:00
isl_pw_opt_templ.c isl_pw_templ.c: extract out isl_pw_opt_templ.c 2019-11-24 15:56:34 +01:00
isl_pw_print_templ.c fix printing of empty piecewise expressions 2024-07-28 14:53:20 +02:00
isl_pw_pullback_templ.c extract out shared isl_pw_*_{take,restore}_domain_at 2021-08-01 14:22:05 +02:00
isl_pw_range_tuple_id_templ.c add exported isl_pw_multi_has_range_tuple_id convenience function 2021-02-07 17:19:33 +01:00
isl_pw_scale_templ.c isl_pw_templ.c: extract out isl_pw_scale_templ.c 2022-11-01 14:55:23 +01:00
isl_pw_split_dims_templ.c isl_pw_templ.c: extract out isl_pw_split_dims_templ.c 2022-11-01 15:00:35 +01:00
isl_pw_sub_templ.c isl_pw_templ.c: extract out isl_pw_sub_templ.c 2019-11-24 15:56:34 +01:00
isl_pw_templ.c isl_pw_*_gist{,_params}: do not pre-compute hull of context 2023-03-04 19:45:48 +01:00
isl_pw_templ.h privately export isl_pw_*_peek space 2018-03-18 14:08:24 +01:00
isl_pw_un_op_templ.c isl_pw_*_un_op: allow space modification 2023-02-14 22:42:53 +01:00
isl_pw_union_opt.c rename isl_pw_*_sort to isl_pw_*_sort_unique 2021-07-23 19:30:06 +02:00
isl_range.c isl_range.c: has_sign: use isl_bool_ok 2018-10-07 18:47:56 +02:00
isl_range.h isl_qpolynomial_bound_on_domain_range: return isl_stat 2017-01-31 16:40:51 +01:00
isl_read_from_str_templ.c extract out shared isl_*_read_from_str 2023-01-02 12:54:53 +01:00
isl_reordering.c isl_parameter_alignment_reordering: include other dimensions in reordering 2022-08-21 12:18:38 +02:00
isl_reordering.h isl_reordering: keep track of target length 2022-08-21 12:18:36 +02:00
isl_sample.c isl_tab_set_initial_basis_with_cone: clarify documentation 2024-08-10 18:15:41 +02:00
isl_sample.h unexpose isl_basic_set_sample_bounded 2021-08-31 21:34:08 +02:00
isl_scan.c isl_*_dim: return isl_size 2018-09-06 17:01:48 +02:00
isl_scan.h isl_set_scan: return isl_stat 2017-01-25 16:21:44 +01:00
isl_schedule.c isl_schedule.c: fix typo in comment 2018-04-02 12:50:42 +02:00
isl_schedule_band.c add exported isl_multi_*_size 2019-04-30 18:06:14 +02:00
isl_schedule_band.h isl_schedule_node_band_n_member: return isl_size 2018-09-06 17:01:48 +02:00
isl_schedule_constraints.c isl_stream_read_schedule_constraints: explicitly convert enum value 2023-01-20 21:48:17 +01:00
isl_schedule_constraints.h isl_union_{map,set}_n_{map,set}: return isl_size 2018-09-06 17:01:48 +02:00
isl_schedule_node.c extract out isl_schedule_node_sequence_splice_children 2021-12-30 15:52:41 +01:00
isl_schedule_node_private.h add isl_schedule_expand 2016-03-27 12:02:50 +02:00
isl_schedule_private.h remove deprecated band forests 2017-10-13 23:06:42 +02:00
isl_schedule_read.c extract out shared isl_*_read_from_str 2023-01-02 12:54:53 +01:00
isl_schedule_tree.c isl_schedule_tree_dup: fix memory management annotation 2021-10-24 23:21:50 +02:00
isl_schedule_tree.h isl_schedule_node_band_n_member: return isl_size 2018-09-06 17:01:48 +02:00
isl_scheduler.c extract out shared isl_seq_any_non_zero 2024-06-08 18:30:31 +02:00
isl_scheduler.h isl_sched_graph_extract_sccs: extract out isl_sched_graph_extract_scc 2022-07-09 10:59:08 +02:00
isl_scheduler_clustering.c incremental scheduler: decompose topological sort of clusters 2022-07-09 10:59:08 +02:00
isl_scheduler_clustering.h extract out incremental scheduler to isl_scheduler_clustering.* 2021-12-31 11:45:16 +01:00
isl_scheduler_scc.c incremental scheduler: decompose topological sort of clusters 2022-07-09 10:59:08 +02:00
isl_scheduler_scc.h incremental scheduler: decompose topological sort of clusters 2022-07-09 10:59:08 +02:00
isl_seq.c extract out shared isl_seq_any_non_zero 2024-06-08 18:30:31 +02:00
isl_seq.h extract out shared isl_seq_any_non_zero 2024-06-08 18:30:31 +02:00
isl_set_list.c add isl_set_list_read_from_str 2021-07-08 22:32:28 +02:00
isl_set_to_ast_graft_list.c add isl_*_to_*_{plain_}is_equal 2023-01-01 21:35:00 +01:00
isl_set_to_ast_graft_list.h add isl_*_to_*_{plain_}is_equal 2023-01-01 21:35:00 +01:00
isl_sort.c Use an MIT licensed mergesort as the sorting algorithm for isl 2012-08-02 12:19:58 +02:00
isl_sort.h Use an MIT licensed mergesort as the sorting algorithm for isl 2012-08-02 12:19:58 +02:00
isl_space.c check for proper set spaces where needed 2024-08-04 22:13:29 +02:00
isl_space_private.h isl_multi_union_pw_aff_zero: extract out isl_space_check_is_proper_set 2024-08-04 22:09:52 +02:00
isl_srcdir.c.in use Windows format of srcdir path in isl_srcdir.c on mingw32 2019-02-26 21:42:53 +01:00
isl_stream.c add isl_token_has_str 2022-12-31 10:15:04 +01:00
isl_stream_private.h add basic support for YAML parsing 2015-02-03 19:45:24 +01:00
isl_stream_read_pw_with_params_templ.c isl_input.c: extract out isl_stream_read_pw_with_params_templ.c 2023-01-02 14:41:02 +01:00
isl_stream_read_with_params_templ.c Merge branch 'maint' 2023-03-03 20:56:14 +01:00
isl_stride.c isl_stride.c: set_stride: drop unused local variable 2021-09-24 23:10:51 +02:00
isl_tab.c extract out shared isl_seq_any_non_zero 2024-06-08 18:30:31 +02:00
isl_tab.h isl_tab: fix typo in comment 2024-08-10 18:15:41 +02:00
isl_tab_lexopt_templ.c isl_tab_basic_map_partial_lexopt: detect modulos and integer divisions earlier 2024-05-25 17:31:27 +02:00
isl_tab_pip.c extract out shared isl_seq_any_non_zero 2024-06-08 18:30:31 +02:00
isl_tarjan.c add isl_tarjan_graph_component 2016-01-15 08:23:01 +01:00
isl_tarjan.h add isl_tarjan_graph_component 2016-01-15 08:23:01 +01:00
isl_test.c move fixed box tests to isl_test2.cc 2025-12-30 21:40:47 +01:00
isl_test2.cc isl_map_coalesce: remove duplicate basic maps up front 2026-02-22 21:41:54 +01:00
isl_test_cpp-checked-conversion.cc generate conversion functions between default and checked C++ bindings 2018-07-30 23:10:33 +02:00
isl_test_cpp-checked.cc isl_test_cpp.cc: undefine assert before (re)defining it 2020-04-12 18:47:51 +02:00
isl_test_cpp-generic.cc test isl_union_set_empty_ctx export 2019-06-09 11:42:03 +02:00
isl_test_cpp.cc export isl_*_list_foreach_scc 2021-09-06 22:49:47 +02:00
isl_test_cpp17-checked.cc support (type safe) user object on id in bindings 2021-10-23 13:08:05 +02:00
isl_test_cpp17-generic.cc isl_test_cpp17-generic.cc: work around std::optional::value issue in older macOS 2024-04-20 12:42:26 +02:00
isl_test_cpp17.cc support (type safe) user object on id in bindings 2021-10-23 13:08:05 +02:00
isl_test_cpp_failed.sh introduce templated C++ interface 2021-04-10 14:42:24 +02:00
isl_test_imath.c isl_test_imath.c: drop reference to MP_USMALL_MIN 2020-11-15 12:57:19 +01:00
isl_test_int.c add isl_int_cdiv_q_ui 2017-05-25 16:13:31 +02:00
isl_test_list_templ.c isl_*_list_size: return isl_size 2018-09-06 17:01:48 +02:00
isl_test_plain_equal_templ.c isl_test.c: extract out shared *_check_plain_equal 2019-12-31 10:34:25 +01:00
isl_test_python.py support (type safe) user object on id in bindings 2021-10-23 13:08:05 +02:00
isl_transitive_closure.c isl_transitive_closure.c: path_along_delta: fix typo in comment 2024-08-10 18:15:41 +02:00
isl_type_check_equal_space_templ.c generalize isl_multi_*_check_equal_space 2019-11-30 20:59:47 +01:00
isl_type_check_match_range_multi_val.c extract out shared isl_*_check_match_range_multi_val 2021-08-05 22:45:41 +02:00
isl_type_has_equal_space_bin_templ.c merge isl_*_has_equal_space implementations 2019-11-30 20:59:47 +01:00
isl_type_has_equal_space_templ.c extract out shared isl_qpolynomial_check_equal_space 2019-11-30 20:59:47 +01:00
isl_type_has_space_templ.c generalize isl_local_space_has_space 2020-08-23 22:48:04 +02:00
isl_unbind_params_templ.c isl_aff_unbind_params_insert_domain: extract out generic version 2020-06-04 21:15:02 +02:00
isl_union_domain_reverse_templ.c add isl_union_pw_qpolynomial_domain_reverse 2023-02-26 10:34:32 +01:00
isl_union_eval.c isl_union_*_eval: extract out isl_union_*_foreach_on_domain 2020-08-30 21:38:35 +02:00
isl_union_locals_templ.c add exported isl_union_pw_multi_aff_involves_locals 2020-05-30 19:26:06 +02:00
isl_union_macro.h isl_union_*: derive union type from base type 2018-06-05 23:23:34 +02:00
isl_union_map.c add isl_union_{set,map}_plain_unshifted_simple_hull 2025-01-21 23:57:10 +01:00
isl_union_map_lex_templ.c abstract out isl_union_map_lex_*_at_multi_union_pw_aff 2020-09-15 12:52:08 +02:00
isl_union_map_private.h add isl_union_map_check_named_params 2023-02-05 14:34:25 +01:00
isl_union_multi.c isl_union_*: ignore parameters when looking up entries 2020-08-30 21:38:35 +02:00
isl_union_neg.c isl_union_*_neg: use isl_union_*_transform_inplace 2015-07-18 17:59:30 +02:00
isl_union_print_templ.c isl_output.c: extract out shared print_union_*_isl 2023-01-02 15:25:12 +01:00
isl_union_pw_templ.c add exported isl_union_pw_*_from_* 2020-07-14 21:45:43 +02:00
isl_union_set_private.h add isl_union_set_combined_lineality_space 2017-06-07 14:16:01 +02:00
isl_union_single.c isl_union_*_remove_part_entry: free data before removing entry from table 2022-09-17 12:06:16 +02:00
isl_union_sub_templ.c isl_union_templ.c: extract out isl_union_sub_templ.c 2022-11-11 10:27:41 +01:00
isl_union_templ.c add isl_union_pw_*_drop_unused_params 2023-02-05 14:43:18 +01:00
isl_val.c add isl_multi_val_is_equal duplicate of isl_multi_val_plain_is_equal 2025-12-30 21:32:14 +01:00
isl_val_gmp.c isl_val_n_abs_num_chunks: return isl_size 2018-09-06 17:01:48 +02:00
isl_val_imath.c isl_val_n_abs_num_chunks: return isl_size 2018-09-06 17:01:48 +02:00
isl_val_private.h extract out isl_multi_no_domain_templ.c 2019-05-02 18:19:13 +02:00
isl_val_sioimath.c isl_val_n_abs_num_chunks: return isl_size 2018-09-06 17:01:48 +02:00
isl_vec.c extract out shared isl_seq_any_non_zero 2024-06-08 18:30:31 +02:00
isl_vec_private.h isl_aff.c: generalize vec_reorder to isl_vec_reorder 2022-08-21 12:18:37 +02:00
isl_version.c Implement small integer optimization for IMath 2015-06-15 10:00:29 +02:00
isl_vertices.c extract out shared isl_seq_any_non_zero 2024-06-08 18:30:31 +02:00
isl_vertices_private.h isl_vertices_private.h: protect against multiple inclusions 2017-02-15 09:23:18 +01:00
isl_yaml.h add basic support for YAML printing 2015-02-03 19:45:24 +01:00
libisl-gdb.py libisl-gdb.py: Python 3 compatibility 2018-02-07 22:35:21 +01:00
LICENSE relicense isl under the MIT license 2012-09-02 15:38:40 +02:00
Makefile.am Makefile.am: do not consider Python interface as built source 2025-09-13 15:48:20 +02:00
mp_get_memory_functions.c Add backup mp_get_memory_functions implementation for use with old gmps 2008-12-02 21:34:33 +01:00
opt_type.h avoid spurious warning from Microsoft Visual C++ 2019-10-31 21:17:41 +01:00
pip.c pip.c: remove spurious include 2021-12-30 12:09:06 +01:00
pip_test.sh.in pip_test.sh.in: set srcdir at configure time 2016-11-23 11:12:49 +01:00
polyhedron_detect_equalities.c polyhedron_detect_equalities.c: use isl_printer 2015-02-03 19:45:24 +01:00
polyhedron_minimize.c polyhedron_minimize.c: vec_ror: add memory management annotations 2020-04-04 10:43:56 +02:00
polyhedron_remove_redundant_equalities.c add isl_polyhedron_remove_redundant_equalities test application 2021-05-30 17:29:24 +02:00
polyhedron_sample.c polyhedron_sample.c: avoid use of isl_vec internals 2013-06-25 20:04:50 +02:00
polytope_scan.c polytope_scan.c: isl_basic_set_samples: add memory management annotations 2020-04-04 10:43:56 +02:00
print.c add exported isl_multi_id 2019-05-02 18:19:13 +02:00
print_templ.c print_templ.c: isl_*_dump: make "dump" setting configurable 2019-03-08 18:55:51 +01:00
print_templ_yaml.c isl_schedule.c: extract out generic *_to_str and *_dump for YAML objects 2016-06-28 18:02:37 +02:00
print_yaml_field_templ.c extract out shared print_yaml_field_* 2019-04-24 22:28:56 +02:00
read_in_string_templ.c add isl_schedule_constraints_read_from_file 2016-09-04 22:05:47 +02:00
README README: update URLs 2019-07-21 23:57:35 +02:00
schedule.c schedule.c: directly include required header 2017-09-18 13:20:14 +02:00
schedule_cmp.c add isl_schedule_cmp application 2017-07-30 17:13:39 +02:00
schedule_test.sh.in schedule_test.sh: test both whole-component and incremental scheduler 2018-07-15 22:27:44 +02:00
set_from_map.c extract out shared set_from_map 2016-11-02 08:33:16 +01:00
set_list_from_map_list_inl.c Add, document and test isl_union_set_get_set_list 2018-05-29 23:30:12 +02:00
set_to_map.c extract out shared set_to_map 2016-11-02 08:33:16 +01:00
uset_from_umap.c add isl_union_map_is_params 2018-03-04 15:36:00 +01:00
uset_to_umap.c isl_printer_print_union_set: extract out uset_to_umap 2017-12-26 15:51:45 +01:00

isl is a thread-safe C library for manipulating sets and relations
of integer points bounded by affine constraints.  The descriptions of
the sets and relations may involve both parameters and existentially
quantified variables.  All computations are performed in exact integer
arithmetic using GMP.

isl is released under the MIT license, but depends on the LGPL GMP
library.

Minimal compilation instructions:

	./configure
	make
	make install

If you are taking the source from the git repository, then you first
need to do

	git clone git://repo.or.cz/isl.git
	./autogen.sh

For more information, see doc/user.pod or the generated documentation.

New releases are announced on http://groups.google.com/group/isl-announce

If you use isl, you can let me know by stacking
https://www.openhub.net/p/isl on Open Hub.

For bug reports, feature requests and questions,
contact http://groups.google.com/group/isl-development

Whenever you report a bug, please mention the exact version of isl
that you are using (output of "./isl_cat --version").  If you are unable
to compile isl, then report the git version (output of "git describe")
or the version included in the name of the tarball.

If you use isl for your research, you are invited do cite
the following paper and/or the paper(s) describing the specific
operations you use.

@incollection{Verdoolaege2010isl,
   author = {Verdoolaege, Sven},
   title = {isl: An Integer Set Library for the Polyhedral Model},
   booktitle = {Mathematical Software - ICMS 2010},
   series = {Lecture Notes in Computer Science},
   editor = {Fukuda, Komei and Hoeven, Joris and Joswig, Michael and
		Takayama, Nobuki},
   publisher = {Springer},
   isbn = {978-3-642-15581-9},
   pages = {299-302},
   volume = {6327},
   year = {2010}
}