aff.h   aff.h 
#ifndef ISL_AFF_H #ifndef ISL_AFF_H
#define ISL_AFF_H #define ISL_AFF_H
#include <isl/local_space.h> #include <isl/local_space.h>
#include <isl/printer.h> #include <isl/printer.h>
#include <isl/set_type.h> #include <isl/set_type.h>
#include <isl/aff_type.h> #include <isl/aff_type.h>
#include <isl/list.h> #include <isl/list.h>
#include <isl/multi.h> #include <isl/multi.h>
#include <isl/union_set_type.h>
#if defined(__cplusplus) #if defined(__cplusplus)
extern "C" { extern "C" {
#endif #endif
__isl_give isl_aff *isl_aff_zero_on_domain(__isl_take isl_local_space *ls); __isl_give isl_aff *isl_aff_zero_on_domain(__isl_take isl_local_space *ls);
__isl_give isl_aff *isl_aff_var_on_domain(__isl_take isl_local_space *ls,
enum isl_dim_type type, unsigned pos);
__isl_give isl_aff *isl_aff_copy(__isl_keep isl_aff *aff); __isl_give isl_aff *isl_aff_copy(__isl_keep isl_aff *aff);
void *isl_aff_free(__isl_take isl_aff *aff); void *isl_aff_free(__isl_take isl_aff *aff);
isl_ctx *isl_aff_get_ctx(__isl_keep isl_aff *aff); isl_ctx *isl_aff_get_ctx(__isl_keep isl_aff *aff);
int isl_aff_dim(__isl_keep isl_aff *aff, enum isl_dim_type type); int isl_aff_dim(__isl_keep isl_aff *aff, enum isl_dim_type type);
int isl_aff_involves_dims(__isl_keep isl_aff *aff, int isl_aff_involves_dims(__isl_keep isl_aff *aff,
enum isl_dim_type type, unsigned first, unsigned n); enum isl_dim_type type, unsigned first, unsigned n);
skipping to change at line 47 skipping to change at line 50
int isl_aff_get_denominator(__isl_keep isl_aff *aff, isl_int *v); int isl_aff_get_denominator(__isl_keep isl_aff *aff, isl_int *v);
__isl_give isl_aff *isl_aff_set_constant(__isl_take isl_aff *aff, isl_int v ); __isl_give isl_aff *isl_aff_set_constant(__isl_take isl_aff *aff, isl_int v );
__isl_give isl_aff *isl_aff_set_constant_si(__isl_take isl_aff *aff, int v) ; __isl_give isl_aff *isl_aff_set_constant_si(__isl_take isl_aff *aff, int v) ;
__isl_give isl_aff *isl_aff_set_coefficient(__isl_take isl_aff *aff, __isl_give isl_aff *isl_aff_set_coefficient(__isl_take isl_aff *aff,
enum isl_dim_type type, int pos, isl_int v); enum isl_dim_type type, int pos, isl_int v);
__isl_give isl_aff *isl_aff_set_coefficient_si(__isl_take isl_aff *aff, __isl_give isl_aff *isl_aff_set_coefficient_si(__isl_take isl_aff *aff,
enum isl_dim_type type, int pos, int v); enum isl_dim_type type, int pos, int v);
__isl_give isl_aff *isl_aff_set_denominator(__isl_take isl_aff *aff, isl_in t v); __isl_give isl_aff *isl_aff_set_denominator(__isl_take isl_aff *aff, isl_in t v);
__isl_give isl_aff *isl_aff_add_constant(__isl_take isl_aff *aff, isl_int v ); __isl_give isl_aff *isl_aff_add_constant(__isl_take isl_aff *aff, isl_int v );
__isl_give isl_aff *isl_aff_add_constant_si(__isl_take isl_aff *aff, int v) ; __isl_give isl_aff *isl_aff_add_constant_si(__isl_take isl_aff *aff, int v) ;
__isl_give isl_aff *isl_aff_add_constant_num(__isl_take isl_aff *aff,
isl_int v);
__isl_give isl_aff *isl_aff_add_constant_num_si(__isl_take isl_aff *aff, in
t v);
__isl_give isl_aff *isl_aff_add_coefficient(__isl_take isl_aff *aff, __isl_give isl_aff *isl_aff_add_coefficient(__isl_take isl_aff *aff,
enum isl_dim_type type, int pos, isl_int v); enum isl_dim_type type, int pos, isl_int v);
__isl_give isl_aff *isl_aff_add_coefficient_si(__isl_take isl_aff *aff, __isl_give isl_aff *isl_aff_add_coefficient_si(__isl_take isl_aff *aff,
enum isl_dim_type type, int pos, int v); enum isl_dim_type type, int pos, int v);
int isl_aff_is_cst(__isl_keep isl_aff *aff); int isl_aff_is_cst(__isl_keep isl_aff *aff);
__isl_give isl_aff *isl_aff_set_dim_name(__isl_take isl_aff *aff, __isl_give isl_aff *isl_aff_set_dim_name(__isl_take isl_aff *aff,
enum isl_dim_type type, unsigned pos, const char *s); enum isl_dim_type type, unsigned pos, const char *s);
__isl_give isl_aff *isl_aff_set_dim_id(__isl_take isl_aff *aff, __isl_give isl_aff *isl_aff_set_dim_id(__isl_take isl_aff *aff,
skipping to change at line 71 skipping to change at line 77
__isl_give isl_aff *isl_aff_get_div(__isl_keep isl_aff *aff, int pos); __isl_give isl_aff *isl_aff_get_div(__isl_keep isl_aff *aff, int pos);
__isl_give isl_aff *isl_aff_neg(__isl_take isl_aff *aff); __isl_give isl_aff *isl_aff_neg(__isl_take isl_aff *aff);
__isl_give isl_aff *isl_aff_ceil(__isl_take isl_aff *aff); __isl_give isl_aff *isl_aff_ceil(__isl_take isl_aff *aff);
__isl_give isl_aff *isl_aff_floor(__isl_take isl_aff *aff); __isl_give isl_aff *isl_aff_floor(__isl_take isl_aff *aff);
__isl_give isl_aff *isl_aff_mod(__isl_take isl_aff *aff, isl_int mod); __isl_give isl_aff *isl_aff_mod(__isl_take isl_aff *aff, isl_int mod);
__isl_give isl_aff *isl_aff_mul(__isl_take isl_aff *aff1, __isl_give isl_aff *isl_aff_mul(__isl_take isl_aff *aff1,
__isl_take isl_aff *aff2); __isl_take isl_aff *aff2);
__isl_give isl_aff *isl_aff_div(__isl_take isl_aff *aff1,
__isl_take isl_aff *aff2);
__isl_give isl_aff *isl_aff_add(__isl_take isl_aff *aff1, __isl_give isl_aff *isl_aff_add(__isl_take isl_aff *aff1,
__isl_take isl_aff *aff2); __isl_take isl_aff *aff2);
__isl_give isl_aff *isl_aff_sub(__isl_take isl_aff *aff1, __isl_give isl_aff *isl_aff_sub(__isl_take isl_aff *aff1,
__isl_take isl_aff *aff2); __isl_take isl_aff *aff2);
__isl_give isl_aff *isl_aff_scale(__isl_take isl_aff *aff, isl_int f); __isl_give isl_aff *isl_aff_scale(__isl_take isl_aff *aff, isl_int f);
__isl_give isl_aff *isl_aff_scale_down(__isl_take isl_aff *aff, isl_int f); __isl_give isl_aff *isl_aff_scale_down(__isl_take isl_aff *aff, isl_int f);
__isl_give isl_aff *isl_aff_scale_down_ui(__isl_take isl_aff *aff, unsigned f); __isl_give isl_aff *isl_aff_scale_down_ui(__isl_take isl_aff *aff, unsigned f);
__isl_give isl_aff *isl_aff_insert_dims(__isl_take isl_aff *aff, __isl_give isl_aff *isl_aff_insert_dims(__isl_take isl_aff *aff,
enum isl_dim_type type, unsigned first, unsigned n); enum isl_dim_type type, unsigned first, unsigned n);
__isl_give isl_aff *isl_aff_add_dims(__isl_take isl_aff *aff, __isl_give isl_aff *isl_aff_add_dims(__isl_take isl_aff *aff,
enum isl_dim_type type, unsigned n); enum isl_dim_type type, unsigned n);
__isl_give isl_aff *isl_aff_drop_dims(__isl_take isl_aff *aff, __isl_give isl_aff *isl_aff_drop_dims(__isl_take isl_aff *aff,
enum isl_dim_type type, unsigned first, unsigned n); enum isl_dim_type type, unsigned first, unsigned n);
__isl_give isl_aff *isl_aff_project_domain_on_params(__isl_take isl_aff *af
f);
__isl_give isl_aff *isl_aff_align_params(__isl_take isl_aff *aff,
__isl_take isl_space *model);
__isl_give isl_aff *isl_aff_gist(__isl_take isl_aff *aff, __isl_give isl_aff *isl_aff_gist(__isl_take isl_aff *aff,
__isl_take isl_set *context); __isl_take isl_set *context);
__isl_give isl_aff *isl_aff_gist_params(__isl_take isl_aff *aff, __isl_give isl_aff *isl_aff_gist_params(__isl_take isl_aff *aff,
__isl_take isl_set *context); __isl_take isl_set *context);
__isl_give isl_aff *isl_aff_pullback_multi_aff(__isl_take isl_aff *aff,
__isl_take isl_multi_aff *ma);
__isl_give isl_basic_set *isl_aff_zero_basic_set(__isl_take isl_aff *aff);
__isl_give isl_basic_set *isl_aff_neg_basic_set(__isl_take isl_aff *aff);
__isl_give isl_basic_set *isl_aff_le_basic_set(__isl_take isl_aff *aff1, __isl_give isl_basic_set *isl_aff_le_basic_set(__isl_take isl_aff *aff1,
__isl_take isl_aff *aff2); __isl_take isl_aff *aff2);
__isl_give isl_basic_set *isl_aff_ge_basic_set(__isl_take isl_aff *aff1, __isl_give isl_basic_set *isl_aff_ge_basic_set(__isl_take isl_aff *aff1,
__isl_take isl_aff *aff2); __isl_take isl_aff *aff2);
__isl_give isl_aff *isl_aff_read_from_str(isl_ctx *ctx, const char *str); __isl_give isl_aff *isl_aff_read_from_str(isl_ctx *ctx, const char *str);
__isl_give isl_printer *isl_printer_print_aff(__isl_take isl_printer *p, __isl_give isl_printer *isl_printer_print_aff(__isl_take isl_printer *p,
__isl_keep isl_aff *aff); __isl_keep isl_aff *aff);
void isl_aff_dump(__isl_keep isl_aff *aff); void isl_aff_dump(__isl_keep isl_aff *aff);
isl_ctx *isl_pw_aff_get_ctx(__isl_keep isl_pw_aff *pwaff); isl_ctx *isl_pw_aff_get_ctx(__isl_keep isl_pw_aff *pwaff);
__isl_give isl_space *isl_pw_aff_get_domain_space(__isl_keep isl_pw_aff *pw aff); __isl_give isl_space *isl_pw_aff_get_domain_space(__isl_keep isl_pw_aff *pw aff);
__isl_give isl_space *isl_pw_aff_get_space(__isl_keep isl_pw_aff *pwaff); __isl_give isl_space *isl_pw_aff_get_space(__isl_keep isl_pw_aff *pwaff);
__isl_give isl_pw_aff *isl_pw_aff_from_aff(__isl_take isl_aff *aff); __isl_give isl_pw_aff *isl_pw_aff_from_aff(__isl_take isl_aff *aff);
__isl_give isl_pw_aff *isl_pw_aff_empty(__isl_take isl_space *dim); __isl_give isl_pw_aff *isl_pw_aff_empty(__isl_take isl_space *dim);
__isl_give isl_pw_aff *isl_pw_aff_alloc(__isl_take isl_set *set, __isl_give isl_pw_aff *isl_pw_aff_alloc(__isl_take isl_set *set,
__isl_take isl_aff *aff); __isl_take isl_aff *aff);
__isl_give isl_pw_aff *isl_pw_aff_zero_on_domain(
__isl_take isl_local_space *ls);
__isl_give isl_pw_aff *isl_pw_aff_var_on_domain(__isl_take isl_local_space
*ls,
enum isl_dim_type type, unsigned pos);
__isl_give isl_pw_aff *isl_set_indicator_function(__isl_take isl_set *set);
const char *isl_pw_aff_get_dim_name(__isl_keep isl_pw_aff *pa, const char *isl_pw_aff_get_dim_name(__isl_keep isl_pw_aff *pa,
enum isl_dim_type type, unsigned pos); enum isl_dim_type type, unsigned pos);
int isl_pw_aff_has_dim_id(__isl_keep isl_pw_aff *pa, int isl_pw_aff_has_dim_id(__isl_keep isl_pw_aff *pa,
enum isl_dim_type type, unsigned pos); enum isl_dim_type type, unsigned pos);
__isl_give isl_id *isl_pw_aff_get_dim_id(__isl_keep isl_pw_aff *pa, __isl_give isl_id *isl_pw_aff_get_dim_id(__isl_keep isl_pw_aff *pa,
enum isl_dim_type type, unsigned pos); enum isl_dim_type type, unsigned pos);
__isl_give isl_pw_aff *isl_pw_aff_set_dim_id(__isl_take isl_pw_aff *pma, __isl_give isl_pw_aff *isl_pw_aff_set_dim_id(__isl_take isl_pw_aff *pma,
enum isl_dim_type type, unsigned pos, __isl_take isl_id *id); enum isl_dim_type type, unsigned pos, __isl_take isl_id *id);
skipping to change at line 143 skipping to change at line 167
unsigned isl_pw_aff_dim(__isl_keep isl_pw_aff *pwaff, enum isl_dim_type typ e); unsigned isl_pw_aff_dim(__isl_keep isl_pw_aff *pwaff, enum isl_dim_type typ e);
int isl_pw_aff_involves_dims(__isl_keep isl_pw_aff *pwaff, int isl_pw_aff_involves_dims(__isl_keep isl_pw_aff *pwaff,
enum isl_dim_type type, unsigned first, unsigned n); enum isl_dim_type type, unsigned first, unsigned n);
int isl_pw_aff_is_cst(__isl_keep isl_pw_aff *pwaff); int isl_pw_aff_is_cst(__isl_keep isl_pw_aff *pwaff);
__isl_give isl_pw_aff *isl_pw_aff_align_params(__isl_take isl_pw_aff *pwaff , __isl_give isl_pw_aff *isl_pw_aff_align_params(__isl_take isl_pw_aff *pwaff ,
__isl_take isl_space *model); __isl_take isl_space *model);
__isl_give isl_id *isl_pw_aff_get_tuple_id(__isl_keep isl_pw_aff *pa,
enum isl_dim_type type);
__isl_give isl_pw_aff *isl_pw_aff_set_tuple_id(__isl_take isl_pw_aff *pwaff , __isl_give isl_pw_aff *isl_pw_aff_set_tuple_id(__isl_take isl_pw_aff *pwaff ,
enum isl_dim_type type, __isl_take isl_id *id); enum isl_dim_type type, __isl_take isl_id *id);
__isl_give isl_set *isl_pw_aff_domain(__isl_take isl_pw_aff *pwaff); __isl_give isl_set *isl_pw_aff_domain(__isl_take isl_pw_aff *pwaff);
__isl_give isl_pw_aff *isl_pw_aff_min(__isl_take isl_pw_aff *pwaff1, __isl_give isl_pw_aff *isl_pw_aff_min(__isl_take isl_pw_aff *pwaff1,
__isl_take isl_pw_aff *pwaff2); __isl_take isl_pw_aff *pwaff2);
__isl_give isl_pw_aff *isl_pw_aff_max(__isl_take isl_pw_aff *pwaff1, __isl_give isl_pw_aff *isl_pw_aff_max(__isl_take isl_pw_aff *pwaff1,
__isl_take isl_pw_aff *pwaff2); __isl_take isl_pw_aff *pwaff2);
__isl_give isl_pw_aff *isl_pw_aff_mul(__isl_take isl_pw_aff *pwaff1, __isl_give isl_pw_aff *isl_pw_aff_mul(__isl_take isl_pw_aff *pwaff1,
__isl_take isl_pw_aff *pwaff2); __isl_take isl_pw_aff *pwaff2);
__isl_give isl_pw_aff *isl_pw_aff_div(__isl_take isl_pw_aff *pa1,
__isl_take isl_pw_aff *pa2);
__isl_give isl_pw_aff *isl_pw_aff_add(__isl_take isl_pw_aff *pwaff1, __isl_give isl_pw_aff *isl_pw_aff_add(__isl_take isl_pw_aff *pwaff1,
__isl_take isl_pw_aff *pwaff2); __isl_take isl_pw_aff *pwaff2);
__isl_give isl_pw_aff *isl_pw_aff_sub(__isl_take isl_pw_aff *pwaff1, __isl_give isl_pw_aff *isl_pw_aff_sub(__isl_take isl_pw_aff *pwaff1,
__isl_take isl_pw_aff *pwaff2); __isl_take isl_pw_aff *pwaff2);
__isl_give isl_pw_aff *isl_pw_aff_neg(__isl_take isl_pw_aff *pwaff); __isl_give isl_pw_aff *isl_pw_aff_neg(__isl_take isl_pw_aff *pwaff);
__isl_give isl_pw_aff *isl_pw_aff_ceil(__isl_take isl_pw_aff *pwaff); __isl_give isl_pw_aff *isl_pw_aff_ceil(__isl_take isl_pw_aff *pwaff);
__isl_give isl_pw_aff *isl_pw_aff_floor(__isl_take isl_pw_aff *pwaff); __isl_give isl_pw_aff *isl_pw_aff_floor(__isl_take isl_pw_aff *pwaff);
__isl_give isl_pw_aff *isl_pw_aff_mod(__isl_take isl_pw_aff *pwaff, __isl_give isl_pw_aff *isl_pw_aff_mod(__isl_take isl_pw_aff *pwaff,
isl_int mod); isl_int mod);
__isl_give isl_pw_aff *isl_pw_aff_tdiv_q(__isl_take isl_pw_aff *pa1,
__isl_take isl_pw_aff *pa2);
__isl_give isl_pw_aff *isl_pw_aff_tdiv_r(__isl_take isl_pw_aff *pa1,
__isl_take isl_pw_aff *pa2);
__isl_give isl_pw_aff *isl_pw_aff_intersect_params(__isl_take isl_pw_aff *p a, __isl_give isl_pw_aff *isl_pw_aff_intersect_params(__isl_take isl_pw_aff *p a,
__isl_take isl_set *set); __isl_take isl_set *set);
__isl_give isl_pw_aff *isl_pw_aff_intersect_domain(__isl_take isl_pw_aff *p a, __isl_give isl_pw_aff *isl_pw_aff_intersect_domain(__isl_take isl_pw_aff *p a,
__isl_take isl_set *set); __isl_take isl_set *set);
__isl_give isl_pw_aff *isl_pw_aff_cond(__isl_take isl_set *cond, __isl_give isl_pw_aff *isl_pw_aff_cond(__isl_take isl_pw_aff *cond,
__isl_take isl_pw_aff *pwaff_true, __isl_take isl_pw_aff *pwaff_fals e); __isl_take isl_pw_aff *pwaff_true, __isl_take isl_pw_aff *pwaff_fals e);
__isl_give isl_pw_aff *isl_pw_aff_scale(__isl_take isl_pw_aff *pwaff, __isl_give isl_pw_aff *isl_pw_aff_scale(__isl_take isl_pw_aff *pwaff,
isl_int f); isl_int f);
__isl_give isl_pw_aff *isl_pw_aff_scale_down(__isl_take isl_pw_aff *pwaff, __isl_give isl_pw_aff *isl_pw_aff_scale_down(__isl_take isl_pw_aff *pwaff,
isl_int f); isl_int f);
__isl_give isl_pw_aff *isl_pw_aff_insert_dims(__isl_take isl_pw_aff *pwaff, __isl_give isl_pw_aff *isl_pw_aff_insert_dims(__isl_take isl_pw_aff *pwaff,
enum isl_dim_type type, unsigned first, unsigned n); enum isl_dim_type type, unsigned first, unsigned n);
__isl_give isl_pw_aff *isl_pw_aff_add_dims(__isl_take isl_pw_aff *pwaff, __isl_give isl_pw_aff *isl_pw_aff_add_dims(__isl_take isl_pw_aff *pwaff,
enum isl_dim_type type, unsigned n); enum isl_dim_type type, unsigned n);
__isl_give isl_pw_aff *isl_pw_aff_drop_dims(__isl_take isl_pw_aff *pwaff, __isl_give isl_pw_aff *isl_pw_aff_drop_dims(__isl_take isl_pw_aff *pwaff,
enum isl_dim_type type, unsigned first, unsigned n); enum isl_dim_type type, unsigned first, unsigned n);
__isl_give isl_pw_aff *isl_pw_aff_coalesce(__isl_take isl_pw_aff *pwqp); __isl_give isl_pw_aff *isl_pw_aff_coalesce(__isl_take isl_pw_aff *pwqp);
__isl_give isl_pw_aff *isl_pw_aff_gist(__isl_take isl_pw_aff *pwaff, __isl_give isl_pw_aff *isl_pw_aff_gist(__isl_take isl_pw_aff *pwaff,
__isl_take isl_set *context); __isl_take isl_set *context);
__isl_give isl_pw_aff *isl_pw_aff_gist_params(__isl_take isl_pw_aff *pwaff, __isl_give isl_pw_aff *isl_pw_aff_gist_params(__isl_take isl_pw_aff *pwaff,
__isl_take isl_set *context); __isl_take isl_set *context);
__isl_give isl_pw_aff *isl_pw_aff_pullback_multi_aff(
__isl_take isl_pw_aff *pa, __isl_take isl_multi_aff *ma);
__isl_give isl_pw_aff *isl_pw_aff_pullback_pw_multi_aff(
__isl_take isl_pw_aff *pa, __isl_take isl_pw_multi_aff *pma);
int isl_pw_aff_n_piece(__isl_keep isl_pw_aff *pwaff);
int isl_pw_aff_foreach_piece(__isl_keep isl_pw_aff *pwaff, int isl_pw_aff_foreach_piece(__isl_keep isl_pw_aff *pwaff,
int (*fn)(__isl_take isl_set *set, __isl_take isl_aff *aff, int (*fn)(__isl_take isl_set *set, __isl_take isl_aff *aff,
void *user), void *user); void *user), void *user);
__isl_give isl_set *isl_set_from_pw_aff(__isl_take isl_pw_aff *pwaff); __isl_give isl_set *isl_set_from_pw_aff(__isl_take isl_pw_aff *pwaff);
__isl_give isl_map *isl_map_from_pw_aff(__isl_take isl_pw_aff *pwaff); __isl_give isl_map *isl_map_from_pw_aff(__isl_take isl_pw_aff *pwaff);
__isl_give isl_set *isl_pw_aff_nonneg_set(__isl_take isl_pw_aff *pwaff); __isl_give isl_set *isl_pw_aff_nonneg_set(__isl_take isl_pw_aff *pwaff);
__isl_give isl_set *isl_pw_aff_zero_set(__isl_take isl_pw_aff *pwaff); __isl_give isl_set *isl_pw_aff_zero_set(__isl_take isl_pw_aff *pwaff);
__isl_give isl_set *isl_pw_aff_non_zero_set(__isl_take isl_pw_aff *pwaff); __isl_give isl_set *isl_pw_aff_non_zero_set(__isl_take isl_pw_aff *pwaff);
skipping to change at line 235 skipping to change at line 273
__isl_take isl_pw_aff_list *list2); __isl_take isl_pw_aff_list *list2);
__isl_give isl_set *isl_pw_aff_list_le_set(__isl_take isl_pw_aff_list *list 1, __isl_give isl_set *isl_pw_aff_list_le_set(__isl_take isl_pw_aff_list *list 1,
__isl_take isl_pw_aff_list *list2); __isl_take isl_pw_aff_list *list2);
__isl_give isl_set *isl_pw_aff_list_lt_set(__isl_take isl_pw_aff_list *list 1, __isl_give isl_set *isl_pw_aff_list_lt_set(__isl_take isl_pw_aff_list *list 1,
__isl_take isl_pw_aff_list *list2); __isl_take isl_pw_aff_list *list2);
__isl_give isl_set *isl_pw_aff_list_ge_set(__isl_take isl_pw_aff_list *list 1, __isl_give isl_set *isl_pw_aff_list_ge_set(__isl_take isl_pw_aff_list *list 1,
__isl_take isl_pw_aff_list *list2); __isl_take isl_pw_aff_list *list2);
__isl_give isl_set *isl_pw_aff_list_gt_set(__isl_take isl_pw_aff_list *list 1, __isl_give isl_set *isl_pw_aff_list_gt_set(__isl_take isl_pw_aff_list *list 1,
__isl_take isl_pw_aff_list *list2); __isl_take isl_pw_aff_list *list2);
__isl_give isl_multi_aff *isl_multi_aff_from_aff(__isl_take isl_aff *aff);
__isl_give isl_multi_aff *isl_multi_aff_zero(__isl_take isl_space *space);
__isl_give isl_multi_aff *isl_multi_aff_identity(__isl_take isl_space *spac
e);
isl_ctx *isl_multi_aff_get_ctx(__isl_keep isl_multi_aff *maff); isl_ctx *isl_multi_aff_get_ctx(__isl_keep isl_multi_aff *maff);
__isl_give isl_space *isl_multi_aff_get_space(__isl_keep isl_multi_aff *maf f); __isl_give isl_space *isl_multi_aff_get_space(__isl_keep isl_multi_aff *maf f);
__isl_give isl_space *isl_multi_aff_get_domain_space(
__isl_keep isl_multi_aff *maff);
__isl_give isl_multi_aff *isl_multi_aff_set_tuple_name(
__isl_take isl_multi_aff *maff,
enum isl_dim_type type, const char *s);
__isl_give isl_multi_aff *isl_multi_aff_set_tuple_id(
__isl_take isl_multi_aff *maff,
enum isl_dim_type type, __isl_take isl_id *id);
__isl_give isl_multi_aff *isl_multi_aff_copy(__isl_keep isl_multi_aff *maff ); __isl_give isl_multi_aff *isl_multi_aff_copy(__isl_keep isl_multi_aff *maff );
void *isl_multi_aff_free(__isl_take isl_multi_aff *maff); void *isl_multi_aff_free(__isl_take isl_multi_aff *maff);
unsigned isl_multi_aff_dim(__isl_keep isl_multi_aff *maff, unsigned isl_multi_aff_dim(__isl_keep isl_multi_aff *maff,
enum isl_dim_type type); enum isl_dim_type type);
__isl_give isl_aff *isl_multi_aff_get_aff(__isl_keep isl_multi_aff *multi, __isl_give isl_aff *isl_multi_aff_get_aff(__isl_keep isl_multi_aff *multi,
int pos); int pos);
__isl_give isl_multi_aff *isl_multi_aff_insert_dims(
__isl_take isl_multi_aff *ma,
enum isl_dim_type type, unsigned first, unsigned n);
__isl_give isl_multi_aff *isl_multi_aff_add_dims(__isl_take isl_multi_aff *
ma,
enum isl_dim_type type, unsigned n);
__isl_give isl_multi_aff *isl_multi_aff_drop_dims(
__isl_take isl_multi_aff *maff,
enum isl_dim_type type, unsigned first, unsigned n);
__isl_give isl_multi_aff *isl_multi_aff_set_dim_name( __isl_give isl_multi_aff *isl_multi_aff_set_dim_name(
__isl_take isl_multi_aff *maff, __isl_take isl_multi_aff *maff,
enum isl_dim_type type, unsigned pos, const char *s); enum isl_dim_type type, unsigned pos, const char *s);
int isl_multi_aff_plain_is_equal(__isl_keep isl_multi_aff *maff1, int isl_multi_aff_plain_is_equal(__isl_keep isl_multi_aff *maff1,
__isl_keep isl_multi_aff *maff2); __isl_keep isl_multi_aff *maff2);
__isl_give isl_multi_aff *isl_multi_aff_add(__isl_take isl_multi_aff *maff1 , __isl_give isl_multi_aff *isl_multi_aff_add(__isl_take isl_multi_aff *maff1 ,
__isl_take isl_multi_aff *maff2); __isl_take isl_multi_aff *maff2);
__isl_give isl_multi_aff *isl_multi_aff_scale(__isl_take isl_multi_aff *maf f, __isl_give isl_multi_aff *isl_multi_aff_scale(__isl_take isl_multi_aff *maf f,
isl_int f); isl_int f);
__isl_give isl_multi_aff *isl_multi_aff_range_splice(
__isl_take isl_multi_aff *ma1, unsigned pos,
__isl_take isl_multi_aff *ma2);
__isl_give isl_multi_aff *isl_multi_aff_splice(
__isl_take isl_multi_aff *ma1, unsigned in_pos, unsigned out_pos,
__isl_take isl_multi_aff *ma2);
__isl_give isl_multi_aff *isl_multi_aff_range_product(
__isl_take isl_multi_aff *ma1, __isl_take isl_multi_aff *ma2);
__isl_give isl_multi_aff *isl_multi_aff_flat_range_product(
__isl_take isl_multi_aff *ma1, __isl_take isl_multi_aff *ma2);
__isl_give isl_multi_aff *isl_multi_aff_product(
__isl_take isl_multi_aff *ma1, __isl_take isl_multi_aff *ma2);
__isl_give isl_multi_aff *isl_multi_aff_align_params(
__isl_take isl_multi_aff *multi, __isl_take isl_space *model);
__isl_give isl_multi_aff *isl_multi_aff_gist_params( __isl_give isl_multi_aff *isl_multi_aff_gist_params(
__isl_take isl_multi_aff *maff, __isl_take isl_set *context); __isl_take isl_multi_aff *maff, __isl_take isl_set *context);
__isl_give isl_multi_aff *isl_multi_aff_gist(__isl_take isl_multi_aff *maff , __isl_give isl_multi_aff *isl_multi_aff_gist(__isl_take isl_multi_aff *maff ,
__isl_take isl_set *context); __isl_take isl_set *context);
__isl_give isl_multi_aff *isl_multi_aff_lift(__isl_take isl_multi_aff *maff , __isl_give isl_multi_aff *isl_multi_aff_lift(__isl_take isl_multi_aff *maff ,
__isl_give isl_local_space **ls); __isl_give isl_local_space **ls);
__isl_give isl_multi_aff *isl_multi_aff_pullback_multi_aff(
__isl_take isl_multi_aff *ma1, __isl_take isl_multi_aff *ma2);
__isl_give isl_set *isl_multi_aff_lex_le_set(__isl_take isl_multi_aff *ma1,
__isl_take isl_multi_aff *ma2);
__isl_give isl_set *isl_multi_aff_lex_ge_set(__isl_take isl_multi_aff *ma1,
__isl_take isl_multi_aff *ma2);
__isl_give isl_printer *isl_printer_print_multi_aff(__isl_take isl_printer *p, __isl_give isl_printer *isl_printer_print_multi_aff(__isl_take isl_printer *p,
__isl_keep isl_multi_aff *maff); __isl_keep isl_multi_aff *maff);
__isl_give isl_multi_aff *isl_multi_aff_read_from_str(isl_ctx *ctx, __isl_give isl_multi_aff *isl_multi_aff_read_from_str(isl_ctx *ctx,
const char *str); const char *str);
void isl_multi_aff_dump(__isl_keep isl_multi_aff *maff); void isl_multi_aff_dump(__isl_keep isl_multi_aff *maff);
__isl_give isl_pw_multi_aff *isl_pw_multi_aff_identity(
__isl_take isl_space *space);
__isl_give isl_pw_multi_aff *isl_pw_multi_aff_from_multi_aff(
__isl_take isl_multi_aff *ma);
__isl_give isl_pw_multi_aff *isl_pw_multi_aff_alloc(__isl_take isl_set *set , __isl_give isl_pw_multi_aff *isl_pw_multi_aff_alloc(__isl_take isl_set *set ,
__isl_take isl_multi_aff *maff); __isl_take isl_multi_aff *maff);
__isl_give isl_pw_multi_aff *isl_pw_multi_aff_copy( __isl_give isl_pw_multi_aff *isl_pw_multi_aff_copy(
__isl_keep isl_pw_multi_aff *pma); __isl_keep isl_pw_multi_aff *pma);
void *isl_pw_multi_aff_free(__isl_take isl_pw_multi_aff *pma); void *isl_pw_multi_aff_free(__isl_take isl_pw_multi_aff *pma);
unsigned isl_pw_multi_aff_dim(__isl_keep isl_pw_multi_aff *pma, unsigned isl_pw_multi_aff_dim(__isl_keep isl_pw_multi_aff *pma,
enum isl_dim_type type); enum isl_dim_type type);
__isl_give isl_pw_aff *isl_pw_multi_aff_get_pw_aff(
__isl_keep isl_pw_multi_aff *pma, int pos);
__isl_give isl_pw_multi_aff *isl_pw_multi_aff_set_pw_aff(
__isl_take isl_pw_multi_aff *pma, unsigned pos,
__isl_take isl_pw_aff *pa);
isl_ctx *isl_pw_multi_aff_get_ctx(__isl_keep isl_pw_multi_aff *pma); isl_ctx *isl_pw_multi_aff_get_ctx(__isl_keep isl_pw_multi_aff *pma);
__isl_give isl_space *isl_pw_multi_aff_get_domain_space( __isl_give isl_space *isl_pw_multi_aff_get_domain_space(
__isl_keep isl_pw_multi_aff *pma); __isl_keep isl_pw_multi_aff *pma);
__isl_give isl_space *isl_pw_multi_aff_get_space( __isl_give isl_space *isl_pw_multi_aff_get_space(
__isl_keep isl_pw_multi_aff *pma); __isl_keep isl_pw_multi_aff *pma);
int isl_pw_multi_aff_has_tuple_name(__isl_keep isl_pw_multi_aff *pma,
enum isl_dim_type type);
const char *isl_pw_multi_aff_get_tuple_name(__isl_keep isl_pw_multi_aff *pm a, const char *isl_pw_multi_aff_get_tuple_name(__isl_keep isl_pw_multi_aff *pm a,
enum isl_dim_type type); enum isl_dim_type type);
__isl_give isl_id *isl_pw_multi_aff_get_tuple_id( __isl_give isl_id *isl_pw_multi_aff_get_tuple_id(
__isl_keep isl_pw_multi_aff *pma, enum isl_dim_type type); __isl_keep isl_pw_multi_aff *pma, enum isl_dim_type type);
int isl_pw_multi_aff_has_tuple_id(__isl_keep isl_pw_multi_aff *pma, int isl_pw_multi_aff_has_tuple_id(__isl_keep isl_pw_multi_aff *pma,
enum isl_dim_type type); enum isl_dim_type type);
__isl_give isl_pw_multi_aff *isl_pw_multi_aff_set_tuple_id( __isl_give isl_pw_multi_aff *isl_pw_multi_aff_set_tuple_id(
__isl_take isl_pw_multi_aff *pma, __isl_take isl_pw_multi_aff *pma,
enum isl_dim_type type, __isl_take isl_id *id); enum isl_dim_type type, __isl_take isl_id *id);
__isl_give isl_pw_multi_aff *isl_pw_multi_aff_drop_dims(
__isl_take isl_pw_multi_aff *pma,
enum isl_dim_type type, unsigned first, unsigned n);
__isl_give isl_set *isl_pw_multi_aff_domain(__isl_take isl_pw_multi_aff *pm
a);
__isl_give isl_pw_multi_aff *isl_pw_multi_aff_empty(__isl_take isl_space *s pace); __isl_give isl_pw_multi_aff *isl_pw_multi_aff_empty(__isl_take isl_space *s pace);
__isl_give isl_pw_multi_aff *isl_pw_multi_aff_from_domain(
__isl_take isl_set *set);
const char *isl_pw_multi_aff_get_dim_name(__isl_keep isl_pw_multi_aff *pma, const char *isl_pw_multi_aff_get_dim_name(__isl_keep isl_pw_multi_aff *pma,
enum isl_dim_type type, unsigned pos); enum isl_dim_type type, unsigned pos);
__isl_give isl_id *isl_pw_multi_aff_get_dim_id( __isl_give isl_id *isl_pw_multi_aff_get_dim_id(
__isl_keep isl_pw_multi_aff *pma, enum isl_dim_type type, __isl_keep isl_pw_multi_aff *pma, enum isl_dim_type type,
unsigned pos); unsigned pos);
__isl_give isl_pw_multi_aff *isl_pw_multi_aff_set_dim_id( __isl_give isl_pw_multi_aff *isl_pw_multi_aff_set_dim_id(
__isl_take isl_pw_multi_aff *pma, __isl_take isl_pw_multi_aff *pma,
enum isl_dim_type type, unsigned pos, __isl_take isl_id *id); enum isl_dim_type type, unsigned pos, __isl_take isl_id *id);
int isl_pw_multi_aff_plain_is_equal(__isl_keep isl_pw_multi_aff *pma1, int isl_pw_multi_aff_plain_is_equal(__isl_keep isl_pw_multi_aff *pma1,
__isl_keep isl_pw_multi_aff *pma2); __isl_keep isl_pw_multi_aff *pma2);
__isl_give isl_pw_multi_aff *isl_pw_multi_aff_union_add( __isl_give isl_pw_multi_aff *isl_pw_multi_aff_union_add(
__isl_take isl_pw_multi_aff *pma1, __isl_take isl_pw_multi_aff *pma2 ); __isl_take isl_pw_multi_aff *pma1, __isl_take isl_pw_multi_aff *pma2 );
__isl_give isl_pw_multi_aff *isl_pw_multi_aff_add( __isl_give isl_pw_multi_aff *isl_pw_multi_aff_add(
__isl_take isl_pw_multi_aff *pma1, __isl_take isl_pw_multi_aff *pma2 ); __isl_take isl_pw_multi_aff *pma1, __isl_take isl_pw_multi_aff *pma2 );
__isl_give isl_pw_multi_aff *isl_pw_multi_aff_union_lexmin(
__isl_take isl_pw_multi_aff *pma1,
__isl_take isl_pw_multi_aff *pma2);
__isl_give isl_pw_multi_aff *isl_pw_multi_aff_union_lexmax(
__isl_take isl_pw_multi_aff *pma1,
__isl_take isl_pw_multi_aff *pma2);
__isl_give isl_pw_multi_aff *isl_pw_multi_aff_range_product(
__isl_take isl_pw_multi_aff *pma1, __isl_take isl_pw_multi_aff *pma2
);
__isl_give isl_pw_multi_aff *isl_pw_multi_aff_flat_range_product(
__isl_take isl_pw_multi_aff *pma1, __isl_take isl_pw_multi_aff *pma2
);
__isl_give isl_pw_multi_aff *isl_pw_multi_aff_product(
__isl_take isl_pw_multi_aff *pma1, __isl_take isl_pw_multi_aff *pma2
);
__isl_give isl_pw_multi_aff *isl_pw_multi_aff_intersect_params( __isl_give isl_pw_multi_aff *isl_pw_multi_aff_intersect_params(
__isl_take isl_pw_multi_aff *pma, __isl_take isl_set *set); __isl_take isl_pw_multi_aff *pma, __isl_take isl_set *set);
__isl_give isl_pw_multi_aff *isl_pw_multi_aff_intersect_domain( __isl_give isl_pw_multi_aff *isl_pw_multi_aff_intersect_domain(
__isl_take isl_pw_multi_aff *pma, __isl_take isl_set *set); __isl_take isl_pw_multi_aff *pma, __isl_take isl_set *set);
__isl_give isl_pw_multi_aff *isl_pw_multi_aff_project_domain_on_params(
__isl_take isl_pw_multi_aff *pma);
__isl_give isl_pw_multi_aff *isl_pw_multi_aff_align_params(
__isl_take isl_pw_multi_aff *pma, __isl_take isl_space *model);
__isl_give isl_pw_multi_aff *isl_pw_multi_aff_coalesce(
__isl_take isl_pw_multi_aff *pma);
__isl_give isl_pw_multi_aff *isl_pw_multi_aff_gist_params( __isl_give isl_pw_multi_aff *isl_pw_multi_aff_gist_params(
__isl_take isl_pw_multi_aff *pma, __isl_take isl_set *set); __isl_take isl_pw_multi_aff *pma, __isl_take isl_set *set);
__isl_give isl_pw_multi_aff *isl_pw_multi_aff_gist( __isl_give isl_pw_multi_aff *isl_pw_multi_aff_gist(
__isl_take isl_pw_multi_aff *pma, __isl_take isl_set *set); __isl_take isl_pw_multi_aff *pma, __isl_take isl_set *set);
__isl_give isl_pw_multi_aff *isl_pw_multi_aff_pullback_multi_aff(
__isl_take isl_pw_multi_aff *pma, __isl_take isl_multi_aff *ma);
__isl_give isl_pw_multi_aff *isl_pw_multi_aff_pullback_pw_multi_aff(
__isl_take isl_pw_multi_aff *pma1, __isl_take isl_pw_multi_aff *pma2
);
int isl_pw_multi_aff_foreach_piece(__isl_keep isl_pw_multi_aff *pma, int isl_pw_multi_aff_foreach_piece(__isl_keep isl_pw_multi_aff *pma,
int (*fn)(__isl_take isl_set *set, __isl_take isl_multi_aff *maff, int (*fn)(__isl_take isl_set *set, __isl_take isl_multi_aff *maff,
void *user), void *user); void *user), void *user);
__isl_give isl_map *isl_map_from_pw_multi_aff(__isl_take isl_pw_multi_aff * pma); __isl_give isl_map *isl_map_from_pw_multi_aff(__isl_take isl_pw_multi_aff * pma);
__isl_give isl_set *isl_set_from_pw_multi_aff(__isl_take isl_pw_multi_aff * pma); __isl_give isl_set *isl_set_from_pw_multi_aff(__isl_take isl_pw_multi_aff * pma);
__isl_give isl_printer *isl_printer_print_pw_multi_aff(__isl_take isl_print er *p, __isl_give isl_printer *isl_printer_print_pw_multi_aff(__isl_take isl_print er *p,
__isl_keep isl_pw_multi_aff *pma); __isl_keep isl_pw_multi_aff *pma);
__isl_give isl_pw_multi_aff *isl_pw_multi_aff_from_set(__isl_take isl_set * set); __isl_give isl_pw_multi_aff *isl_pw_multi_aff_from_set(__isl_take isl_set * set);
__isl_give isl_pw_multi_aff *isl_pw_multi_aff_from_map(__isl_take isl_map * map); __isl_give isl_pw_multi_aff *isl_pw_multi_aff_from_map(__isl_take isl_map * map);
__isl_give isl_pw_multi_aff *isl_pw_multi_aff_read_from_str(isl_ctx *ctx, __isl_give isl_pw_multi_aff *isl_pw_multi_aff_read_from_str(isl_ctx *ctx,
const char *str); const char *str);
void isl_pw_multi_aff_dump(__isl_keep isl_pw_multi_aff *pma); void isl_pw_multi_aff_dump(__isl_keep isl_pw_multi_aff *pma);
__isl_give isl_union_pw_multi_aff *isl_union_pw_multi_aff_empty(
__isl_take isl_space *space);
__isl_give isl_union_pw_multi_aff *isl_union_pw_multi_aff_from_domain(
__isl_take isl_union_set *uset);
__isl_give isl_union_pw_multi_aff *isl_union_pw_multi_aff_copy(
__isl_keep isl_union_pw_multi_aff *upma);
void *isl_union_pw_multi_aff_free(__isl_take isl_union_pw_multi_aff *upma);
__isl_give isl_union_pw_multi_aff *isl_union_pw_multi_aff_add_pw_multi_aff(
__isl_take isl_union_pw_multi_aff *upma,
__isl_take isl_pw_multi_aff *pma);
isl_ctx *isl_union_pw_multi_aff_get_ctx(
__isl_keep isl_union_pw_multi_aff *upma);
__isl_give isl_space *isl_union_pw_multi_aff_get_space(
__isl_keep isl_union_pw_multi_aff *upma);
int isl_union_pw_multi_aff_foreach_pw_multi_aff(
__isl_keep isl_union_pw_multi_aff *upma,
int (*fn)(__isl_take isl_pw_multi_aff *pma, void *user), void *user)
;
__isl_give isl_union_set *isl_union_pw_multi_aff_domain(
__isl_take isl_union_pw_multi_aff *upma);
__isl_give isl_union_pw_multi_aff *isl_union_pw_multi_aff_add(
__isl_take isl_union_pw_multi_aff *upma1,
__isl_take isl_union_pw_multi_aff *upma2);
__isl_give isl_union_pw_multi_aff *isl_union_pw_multi_aff_flat_range_produc
t(
__isl_take isl_union_pw_multi_aff *upma1,
__isl_take isl_union_pw_multi_aff *upma2);
__isl_give isl_union_map *isl_union_map_from_union_pw_multi_aff(
__isl_take isl_union_pw_multi_aff *upma);
__isl_give isl_printer *isl_printer_print_union_pw_multi_aff(
__isl_take isl_printer *p, __isl_keep isl_union_pw_multi_aff *upma);
__isl_give isl_multi_pw_aff *isl_multi_pw_aff_zero(__isl_take isl_space *sp
ace);
__isl_give isl_multi_pw_aff *isl_multi_pw_aff_identity(
__isl_take isl_space *space);
__isl_give isl_multi_pw_aff *isl_multi_pw_aff_from_pw_aff(
__isl_take isl_pw_aff *pa);
isl_ctx *isl_multi_pw_aff_get_ctx(__isl_keep isl_multi_pw_aff *mpa);
__isl_give isl_space *isl_multi_pw_aff_get_space(
__isl_keep isl_multi_pw_aff *mpa);
__isl_give isl_space *isl_multi_pw_aff_get_domain_space(
__isl_keep isl_multi_pw_aff *mpa);
__isl_give isl_multi_pw_aff *isl_multi_pw_aff_set_tuple_name(
__isl_take isl_multi_pw_aff *mpa,
enum isl_dim_type type, const char *s);
__isl_give isl_multi_pw_aff *isl_multi_pw_aff_copy(
__isl_keep isl_multi_pw_aff *mpa);
void *isl_multi_pw_aff_free(__isl_take isl_multi_pw_aff *mpa);
unsigned isl_multi_pw_aff_dim(__isl_keep isl_multi_pw_aff *mpa,
enum isl_dim_type type);
__isl_give isl_pw_aff *isl_multi_pw_aff_get_pw_aff(
__isl_keep isl_multi_pw_aff *mpa, int pos);
__isl_give isl_multi_pw_aff *isl_multi_pw_aff_insert_dims(
__isl_take isl_multi_pw_aff *mpa,
enum isl_dim_type type, unsigned first, unsigned n);
__isl_give isl_multi_pw_aff *isl_multi_pw_aff_add_dims(
__isl_take isl_multi_pw_aff *mpa, enum isl_dim_type type, unsigned n
);
__isl_give isl_multi_pw_aff *isl_multi_pw_aff_set_dim_name(
__isl_take isl_multi_pw_aff *mpa,
enum isl_dim_type type, unsigned pos, const char *s);
__isl_give isl_multi_pw_aff *isl_multi_pw_aff_range_splice(
__isl_take isl_multi_pw_aff *mpa1, unsigned pos,
__isl_take isl_multi_pw_aff *mpa2);
__isl_give isl_multi_pw_aff *isl_multi_pw_aff_splice(
__isl_take isl_multi_pw_aff *mpa1, unsigned in_pos, unsigned out_pos
,
__isl_take isl_multi_pw_aff *mpa2);
__isl_give isl_multi_pw_aff *isl_multi_pw_aff_flat_range_product(
__isl_take isl_multi_pw_aff *mpa1, __isl_take isl_multi_pw_aff *mpa2
);
__isl_give isl_multi_pw_aff *isl_multi_pw_aff_range_product(
__isl_take isl_multi_pw_aff *mpa1, __isl_take isl_multi_pw_aff *mpa2
);
__isl_give isl_printer *isl_printer_print_multi_pw_aff(
__isl_take isl_printer *p, __isl_keep isl_multi_pw_aff *mpa);
void isl_multi_pw_aff_dump(__isl_keep isl_multi_pw_aff *mpa);
#if defined(__cplusplus) #if defined(__cplusplus)
} }
#endif #endif
#include <isl/dim.h> #include <isl/dim.h>
#endif #endif
 End of changes. 26 change blocks. 
1 lines changed or deleted 233 lines changed or added


 aff_type.h   aff_type.h 
skipping to change at line 16 skipping to change at line 16
struct isl_pw_aff; struct isl_pw_aff;
typedef struct isl_pw_aff isl_pw_aff; typedef struct isl_pw_aff isl_pw_aff;
struct isl_multi_aff; struct isl_multi_aff;
typedef struct isl_multi_aff isl_multi_aff; typedef struct isl_multi_aff isl_multi_aff;
struct isl_pw_multi_aff; struct isl_pw_multi_aff;
typedef struct isl_pw_multi_aff isl_pw_multi_aff; typedef struct isl_pw_multi_aff isl_pw_multi_aff;
struct isl_union_pw_multi_aff;
typedef struct isl_union_pw_multi_aff isl_union_pw_multi_aff;
struct isl_multi_pw_aff;
typedef struct isl_multi_pw_aff isl_multi_pw_aff;
#endif #endif
 End of changes. 1 change blocks. 
0 lines changed or deleted 6 lines changed or added


 arg.h   arg.h 
/* /*
* Copyright 2008-2009 Katholieke Universiteit Leuven * Copyright 2008-2009 Katholieke Universiteit Leuven
* *
* Use of this software is governed by the GNU LGPLv2.1 license * Use of this software is governed by the MIT license
* *
* Written by Sven Verdoolaege, K.U.Leuven, Departement * Written by Sven Verdoolaege, K.U.Leuven, Departement
* Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium * Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium
*/ */
#ifndef ISL_ARG_H #ifndef ISL_ARG_H
#define ISL_ARG_H #define ISL_ARG_H
#include <stddef.h> #include <stddef.h>
#include <stdlib.h> #include <stdlib.h>
skipping to change at line 277 skipping to change at line 277
#define ISL_ARG_USER(st,f,i,c) { \ #define ISL_ARG_USER(st,f,i,c) { \
.type = isl_arg_user, \ .type = isl_arg_user, \
.offset = offsetof(st, f), \ .offset = offsetof(st, f), \
.u = { .user = { .init = i, .clear = c} } \ .u = { .user = { .init = i, .clear = c} } \
}, },
#define ISL_ARG_VERSION(print) { \ #define ISL_ARG_VERSION(print) { \
.type = isl_arg_version, \ .type = isl_arg_version, \
.u = { .version = { .print_version = print } } \ .u = { .version = { .print_version = print } } \
}, },
#define ISL_ARG_ALL (1 << 0) #define ISL_ARG_ALL (1 << 0)
#define ISL_ARG_SKIP_HELP (1 << 1)
void isl_args_set_defaults(struct isl_args *args, void *opt); void isl_args_set_defaults(struct isl_args *args, void *opt);
void isl_args_free(struct isl_args *args, void *opt); void isl_args_free(struct isl_args *args, void *opt);
int isl_args_parse(struct isl_args *args, int argc, char **argv, void *opt, int isl_args_parse(struct isl_args *args, int argc, char **argv, void *opt,
unsigned flags); unsigned flags);
#define ISL_ARG_DECL(prefix,st,args) \ #define ISL_ARG_DECL(prefix,st,args) \
extern struct isl_args args; \ extern struct isl_args args; \
st *prefix ## _new_with_defaults(void); \ st *prefix ## _new_with_defaults(void); \
void prefix ## _free(st *opt); \ void prefix ## _free(st *opt); \
 End of changes. 2 change blocks. 
2 lines changed or deleted 3 lines changed or added


 band.h   band.h 
#ifndef ISL_BAND_H #ifndef ISL_BAND_H
#define ISL_BAND_H #define ISL_BAND_H
#include <isl/printer.h> #include <isl/printer.h>
#include <isl/list.h> #include <isl/list.h>
#include <isl/union_map.h> #include <isl/union_map_type.h>
#include <isl/vec.h>
#if defined(__cplusplus) #if defined(__cplusplus)
extern "C" { extern "C" {
#endif #endif
struct isl_band; struct isl_band;
typedef struct isl_band isl_band; typedef struct isl_band isl_band;
__isl_give isl_band *isl_band_copy(__isl_keep isl_band *band); __isl_give isl_band *isl_band_copy(__isl_keep isl_band *band);
void *isl_band_free(__isl_take isl_band *band); void *isl_band_free(__isl_take isl_band *band);
skipping to change at line 31 skipping to change at line 32
__isl_give isl_band_list *isl_band_get_children( __isl_give isl_band_list *isl_band_get_children(
__isl_keep isl_band *band); __isl_keep isl_band *band);
__isl_give isl_union_map *isl_band_get_prefix_schedule( __isl_give isl_union_map *isl_band_get_prefix_schedule(
__isl_keep isl_band *band); __isl_keep isl_band *band);
__isl_give isl_union_map *isl_band_get_partial_schedule( __isl_give isl_union_map *isl_band_get_partial_schedule(
__isl_keep isl_band *band); __isl_keep isl_band *band);
__isl_give isl_union_map *isl_band_get_suffix_schedule( __isl_give isl_union_map *isl_band_get_suffix_schedule(
__isl_keep isl_band *band); __isl_keep isl_band *band);
int isl_options_set_tile_scale_tile_loops(isl_ctx *ctx, int val);
int isl_options_get_tile_scale_tile_loops(isl_ctx *ctx);
int isl_band_tile(__isl_keep isl_band *band, __isl_take isl_vec *sizes);
int isl_band_n_member(__isl_keep isl_band *band); int isl_band_n_member(__isl_keep isl_band *band);
int isl_band_member_is_zero_distance(__isl_keep isl_band *band, int pos); int isl_band_member_is_zero_distance(__isl_keep isl_band *band, int pos);
int isl_band_list_foreach_band(__isl_keep isl_band_list *list,
int (*fn)(__isl_keep isl_band *band, void *user), void *user);
__isl_give isl_printer *isl_printer_print_band(__isl_take isl_printer *p, __isl_give isl_printer *isl_printer_print_band(__isl_take isl_printer *p,
__isl_keep isl_band *band); __isl_keep isl_band *band);
void isl_band_dump(__isl_keep isl_band *band); void isl_band_dump(__isl_keep isl_band *band);
#if defined(__cplusplus) #if defined(__cplusplus)
} }
#endif #endif
#endif #endif
 End of changes. 3 change blocks. 
1 lines changed or deleted 10 lines changed or added


 blk.h   blk.h 
/* /*
* Copyright 2008-2009 Katholieke Universiteit Leuven * Copyright 2008-2009 Katholieke Universiteit Leuven
* *
* Use of this software is governed by the GNU LGPLv2.1 license * Use of this software is governed by the MIT license
* *
* Written by Sven Verdoolaege, K.U.Leuven, Departement * Written by Sven Verdoolaege, K.U.Leuven, Departement
* Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium * Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium
*/ */
#ifndef ISL_BLK_H #ifndef ISL_BLK_H
#define ISL_BLK_H #define ISL_BLK_H
#include <isl/int.h> #include <isl/int.h>
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 clast.h   clast.h 
skipping to change at line 34 skipping to change at line 34
* val * var (if var != NULL) * val * var (if var != NULL)
* or * or
* val (if var == NULL) * val (if var == NULL)
*/ */
struct clast_term { struct clast_term {
struct clast_expr expr; struct clast_expr expr;
cloog_int_t val; cloog_int_t val;
struct clast_expr *var; struct clast_expr *var;
}; };
#define CLAST_PARALLEL_NOT 0
#define CLAST_PARALLEL_OMP 1
#define CLAST_PARALLEL_MPI 2
#define CLAST_PARALLEL_VEC 4
enum clast_red_type { clast_red_sum, clast_red_min, clast_red_max }; enum clast_red_type { clast_red_sum, clast_red_min, clast_red_max };
struct clast_reduction { struct clast_reduction {
struct clast_expr expr; struct clast_expr expr;
enum clast_red_type type; enum clast_red_type type;
int n; int n;
struct clast_expr* elts[1]; struct clast_expr* elts[1];
}; };
enum clast_bin_type { clast_bin_fdiv, clast_bin_cdiv, enum clast_bin_type { clast_bin_fdiv, clast_bin_cdiv,
clast_bin_div, clast_bin_mod }; clast_bin_div, clast_bin_mod };
skipping to change at line 101 skipping to change at line 106
}; };
struct clast_for { struct clast_for {
struct clast_stmt stmt; struct clast_stmt stmt;
CloogDomain * domain; CloogDomain * domain;
const char * iterator; const char * iterator;
struct clast_expr * LB; struct clast_expr * LB;
struct clast_expr * UB; struct clast_expr * UB;
cloog_int_t stride; cloog_int_t stride;
struct clast_stmt * body; struct clast_stmt * body;
int parallel;
/* Comma separated list of loop private variables for OpenMP paralleliz
ation */
char *private_vars;
/* Comma separated list of reduction variable/operators for OpenMP para
llelization */
char *reduction_vars;
}; };
struct clast_equation { struct clast_equation {
struct clast_expr * LHS; struct clast_expr * LHS;
struct clast_expr * RHS; struct clast_expr * RHS;
int sign; int sign;
}; };
struct clast_guard { struct clast_guard {
struct clast_stmt stmt; struct clast_stmt stmt;
skipping to change at line 150 skipping to change at line 160
void free_clast_binary(struct clast_binary *b); void free_clast_binary(struct clast_binary *b);
void free_clast_reduction(struct clast_reduction *r); void free_clast_reduction(struct clast_reduction *r);
void free_clast_expr(struct clast_expr *e); void free_clast_expr(struct clast_expr *e);
void free_clast_stmt(struct clast_stmt *s); void free_clast_stmt(struct clast_stmt *s);
int clast_expr_equal(struct clast_expr *e1, struct clast_expr *e2); int clast_expr_equal(struct clast_expr *e1, struct clast_expr *e2);
struct clast_expr *clast_bound_from_constraint(CloogConstraint *constraint, struct clast_expr *clast_bound_from_constraint(CloogConstraint *constraint,
int level, CloogNames *names) ; int level, CloogNames *names) ;
typedef enum filterType {exact, subset} ClastFilterType;
typedef struct clastFilter{
const char *iter;
const int *stmts_filter;
int nstmts_filter;
ClastFilterType filter_type;
} ClastFilter;
void clast_filter(struct clast_stmt *node, ClastFilter filter,
struct clast_for ***loops, int *nloops, int **stmts, int *nstmts);
#if defined(__cplusplus) #if defined(__cplusplus)
} }
#endif #endif
#endif /* define _H */ #endif /* define _H */
 End of changes. 3 change blocks. 
0 lines changed or deleted 24 lines changed or added


 constraint.h   constraint.h 
/* /*
* Copyright 2008-2009 Katholieke Universiteit Leuven * Copyright 2008-2009 Katholieke Universiteit Leuven
* *
* Use of this software is governed by the GNU LGPLv2.1 license * Use of this software is governed by the MIT license
* *
* Written by Sven Verdoolaege, K.U.Leuven, Departement * Written by Sven Verdoolaege, K.U.Leuven, Departement
* Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium * Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium
*/ */
#ifndef ISL_CONSTRAINT_H #ifndef ISL_CONSTRAINT_H
#define ISL_CONSTRAINT_H #define ISL_CONSTRAINT_H
#include <isl/local_space.h> #include <isl/local_space.h>
#include <isl/space.h> #include <isl/space.h>
skipping to change at line 35 skipping to change at line 35
isl_ctx *isl_constraint_get_ctx(__isl_keep isl_constraint *c); isl_ctx *isl_constraint_get_ctx(__isl_keep isl_constraint *c);
__isl_give isl_constraint *isl_equality_alloc(__isl_take isl_local_space *l s); __isl_give isl_constraint *isl_equality_alloc(__isl_take isl_local_space *l s);
__isl_give isl_constraint *isl_inequality_alloc(__isl_take isl_local_space *ls); __isl_give isl_constraint *isl_inequality_alloc(__isl_take isl_local_space *ls);
struct isl_constraint *isl_constraint_cow(struct isl_constraint *c); struct isl_constraint *isl_constraint_cow(struct isl_constraint *c);
struct isl_constraint *isl_constraint_copy(struct isl_constraint *c); struct isl_constraint *isl_constraint_copy(struct isl_constraint *c);
void *isl_constraint_free(__isl_take isl_constraint *c); void *isl_constraint_free(__isl_take isl_constraint *c);
int isl_basic_set_n_constraint(__isl_keep isl_basic_set *bset);
int isl_basic_map_foreach_constraint(__isl_keep isl_basic_map *bmap, int isl_basic_map_foreach_constraint(__isl_keep isl_basic_map *bmap,
int (*fn)(__isl_take isl_constraint *c, void *user), void *user); int (*fn)(__isl_take isl_constraint *c, void *user), void *user);
int isl_basic_set_foreach_constraint(__isl_keep isl_basic_set *bset, int isl_basic_set_foreach_constraint(__isl_keep isl_basic_set *bset,
int (*fn)(__isl_take isl_constraint *c, void *user), void *user); int (*fn)(__isl_take isl_constraint *c, void *user), void *user);
int isl_constraint_is_equal(struct isl_constraint *constraint1, int isl_constraint_is_equal(struct isl_constraint *constraint1,
struct isl_constraint *constraint2); struct isl_constraint *constraint2);
int isl_basic_set_foreach_bound_pair(__isl_keep isl_basic_set *bset, int isl_basic_set_foreach_bound_pair(__isl_keep isl_basic_set *bset,
enum isl_dim_type type, unsigned pos, enum isl_dim_type type, unsigned pos,
int (*fn)(__isl_take isl_constraint *lower, int (*fn)(__isl_take isl_constraint *lower,
skipping to change at line 70 skipping to change at line 71
int isl_basic_set_has_defining_equality( int isl_basic_set_has_defining_equality(
struct isl_basic_set *bset, enum isl_dim_type type, int pos, struct isl_basic_set *bset, enum isl_dim_type type, int pos,
struct isl_constraint **constraint); struct isl_constraint **constraint);
int isl_basic_set_has_defining_inequalities( int isl_basic_set_has_defining_inequalities(
struct isl_basic_set *bset, enum isl_dim_type type, int pos, struct isl_basic_set *bset, enum isl_dim_type type, int pos,
struct isl_constraint **lower, struct isl_constraint **lower,
struct isl_constraint **upper); struct isl_constraint **upper);
__isl_give isl_space *isl_constraint_get_space( __isl_give isl_space *isl_constraint_get_space(
__isl_keep isl_constraint *constraint); __isl_keep isl_constraint *constraint);
__isl_give isl_local_space *isl_constraint_get_local_space(
__isl_keep isl_constraint *constraint);
int isl_constraint_dim(struct isl_constraint *constraint, int isl_constraint_dim(struct isl_constraint *constraint,
enum isl_dim_type type); enum isl_dim_type type);
int isl_constraint_involves_dims(__isl_keep isl_constraint *constraint, int isl_constraint_involves_dims(__isl_keep isl_constraint *constraint,
enum isl_dim_type type, unsigned first, unsigned n); enum isl_dim_type type, unsigned first, unsigned n);
const char *isl_constraint_get_dim_name(__isl_keep isl_constraint *constrai nt, const char *isl_constraint_get_dim_name(__isl_keep isl_constraint *constrai nt,
enum isl_dim_type type, unsigned pos); enum isl_dim_type type, unsigned pos);
void isl_constraint_get_constant(__isl_keep isl_constraint *constraint, void isl_constraint_get_constant(__isl_keep isl_constraint *constraint,
isl_int *v); isl_int *v);
skipping to change at line 101 skipping to change at line 104
enum isl_dim_type type, int pos, int v); enum isl_dim_type type, int pos, int v);
__isl_give isl_aff *isl_constraint_get_div(__isl_keep isl_constraint *const raint, __isl_give isl_aff *isl_constraint_get_div(__isl_keep isl_constraint *const raint,
int pos); int pos);
struct isl_constraint *isl_constraint_negate(struct isl_constraint *constra int); struct isl_constraint *isl_constraint_negate(struct isl_constraint *constra int);
int isl_constraint_is_equality(__isl_keep isl_constraint *constraint); int isl_constraint_is_equality(__isl_keep isl_constraint *constraint);
int isl_constraint_is_div_constraint(__isl_keep isl_constraint *constraint) ; int isl_constraint_is_div_constraint(__isl_keep isl_constraint *constraint) ;
int isl_constraint_is_lower_bound(__isl_keep isl_constraint *constraint,
enum isl_dim_type type, unsigned pos);
int isl_constraint_is_upper_bound(__isl_keep isl_constraint *constraint,
enum isl_dim_type type, unsigned pos);
__isl_give isl_basic_map *isl_basic_map_from_constraint( __isl_give isl_basic_map *isl_basic_map_from_constraint(
__isl_take isl_constraint *constraint); __isl_take isl_constraint *constraint);
struct isl_basic_set *isl_basic_set_from_constraint( struct isl_basic_set *isl_basic_set_from_constraint(
struct isl_constraint *constraint); struct isl_constraint *constraint);
__isl_give isl_aff *isl_constraint_get_bound( __isl_give isl_aff *isl_constraint_get_bound(
__isl_keep isl_constraint *constraint, enum isl_dim_type type, int p os); __isl_keep isl_constraint *constraint, enum isl_dim_type type, int p os);
__isl_give isl_aff *isl_constraint_get_aff( __isl_give isl_aff *isl_constraint_get_aff(
__isl_keep isl_constraint *constraint); __isl_keep isl_constraint *constraint);
__isl_give isl_constraint *isl_equality_from_aff(__isl_take isl_aff *aff); __isl_give isl_constraint *isl_equality_from_aff(__isl_take isl_aff *aff);
 End of changes. 4 change blocks. 
1 lines changed or deleted 9 lines changed or added


 ctx.h   ctx.h 
/* /*
* Copyright 2008-2009 Katholieke Universiteit Leuven * Copyright 2008-2009 Katholieke Universiteit Leuven
* *
* Use of this software is governed by the GNU LGPLv2.1 license * Use of this software is governed by the MIT license
* *
* Written by Sven Verdoolaege, K.U.Leuven, Departement * Written by Sven Verdoolaege, K.U.Leuven, Departement
* Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium * Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium
*/ */
#ifndef ISL_CTX_H #ifndef ISL_CTX_H
#define ISL_CTX_H #define ISL_CTX_H
#include <stdio.h> #include <stdio.h>
#include <stdlib.h> #include <stdlib.h>
skipping to change at line 105 skipping to change at line 105
#define ISL_F_INIT(p, f) ISL_FL_INIT((p)->flags, f) /* Structure elemen t flags. */ #define ISL_F_INIT(p, f) ISL_FL_INIT((p)->flags, f) /* Structure elemen t flags. */
#define ISL_F_SET(p, f) ISL_FL_SET((p)->flags, f) #define ISL_F_SET(p, f) ISL_FL_SET((p)->flags, f)
#define ISL_F_CLR(p, f) ISL_FL_CLR((p)->flags, f) #define ISL_F_CLR(p, f) ISL_FL_CLR((p)->flags, f)
#define ISL_F_ISSET(p, f) ISL_FL_ISSET((p)->flags, f) #define ISL_F_ISSET(p, f) ISL_FL_ISSET((p)->flags, f)
/* isl_check_ctx() checks at compile time if 'ctx' is of type 'isl_ctx *' a nd /* isl_check_ctx() checks at compile time if 'ctx' is of type 'isl_ctx *' a nd
* returns the value of 'expr'. It is used to ensure, that always an isl_ct x is * returns the value of 'expr'. It is used to ensure, that always an isl_ct x is
* passed to the following macros, even if they currently do not use it. * passed to the following macros, even if they currently do not use it.
*/ */
#define isl_check_ctx(ctx, expr) (ctx != (isl_ctx *) 0) ? expr : expr #define isl_check_ctx(ctx, expr) ((ctx != (isl_ctx *) 0) ? expr : exp r)
#define isl_alloc(ctx,type,size) isl_check_ctx(ctx, (type *)malloc(si #define isl_alloc(ctx,type,size) ((type *)isl_check_ctx(ctx,\
ze)) malloc(size)))
#define isl_calloc(ctx,type,size) isl_check_ctx(ctx, \ #define isl_calloc(ctx,type,size) ((type *)isl_check_ctx(ctx,\
(type *)calloc(1, size)) calloc(1, size)))
#define isl_realloc(ctx,ptr,type,size) isl_check_ctx(ctx, \ #define isl_realloc(ctx,ptr,type,size) ((type *)isl_check_ctx(ctx,\
(type *)realloc(ptr,size)) realloc(ptr,size)))
#define isl_alloc_type(ctx,type) isl_alloc(ctx,type,sizeof(type)) #define isl_alloc_type(ctx,type) isl_alloc(ctx,type,sizeof(type))
#define isl_calloc_type(ctx,type) isl_calloc(ctx,type,sizeof(type)) #define isl_calloc_type(ctx,type) isl_calloc(ctx,type,sizeof(type))
#define isl_realloc_type(ctx,ptr,type) isl_realloc(ctx,ptr,type,sizeof(type )) #define isl_realloc_type(ctx,ptr,type) isl_realloc(ctx,ptr,type,sizeof(type ))
#define isl_alloc_array(ctx,type,n) isl_alloc(ctx,type,(n)*sizeof(type)) #define isl_alloc_array(ctx,type,n) isl_alloc(ctx,type,(n)*sizeof(type))
#define isl_calloc_array(ctx,type,n) isl_check_ctx(ctx,\ #define isl_calloc_array(ctx,type,n) ((type *)isl_check_ctx(ctx,\
(type *)calloc(n, sizeof(typ calloc(n, sizeof(type))))
e)))
#define isl_realloc_array(ctx,ptr,type,n) \ #define isl_realloc_array(ctx,ptr,type,n) \
isl_realloc(ctx,ptr,type,(n)*sizeof(type )) isl_realloc(ctx,ptr,type,(n)*sizeof(type ))
#define isl_die(ctx,errno,msg,code) \ #define isl_die(ctx,errno,msg,code) \
do { \ do { \
isl_handle_error(ctx, errno, msg, __FILE__, __LINE__); \ isl_handle_error(ctx, errno, msg, __FILE__, __LINE__); \
code; \ code; \
} while (0) } while (0)
void isl_handle_error(isl_ctx *ctx, int errno, const char *msg, void isl_handle_error(isl_ctx *ctx, enum isl_error error, const char *msg,
const char *file, int line); const char *file, int line);
#define isl_assert4(ctx,test,code,errno) \ #define isl_assert4(ctx,test,code,errno) \
do { \ do { \
if (test) \ if (test) \
break; \ break; \
isl_die(ctx, errno, "Assertion \"" #test "\" failed", code); \ isl_die(ctx, errno, "Assertion \"" #test "\" failed", code); \
} while (0) } while (0)
#define isl_assert(ctx,test,code) \ #define isl_assert(ctx,test,code) \
isl_assert4(ctx,test,code,isl_error_unknown) isl_assert4(ctx,test,code,isl_error_unknown)
skipping to change at line 192 skipping to change at line 193
st *options; \ st *options; \
options = isl_ctx_peek_ ## prefix(ctx); \ options = isl_ctx_peek_ ## prefix(ctx); \
if (!options) \ if (!options) \
isl_die(ctx, isl_error_invalid, \ isl_die(ctx, isl_error_invalid, \
"isl_ctx does not reference " #prefix, \ "isl_ctx does not reference " #prefix, \
return -1); \ return -1); \
options->field = val; \ options->field = val; \
return 0; \ return 0; \
} }
#define ISL_CTX_GET_STR_DEF(prefix,st,args,field) \
const char *prefix ## _get_ ## field(isl_ctx *ctx) \
{ \
st *options; \
options = isl_ctx_peek_ ## prefix(ctx); \
if (!options) \
isl_die(ctx, isl_error_invalid, \
"isl_ctx does not reference " #prefix, \
return NULL); \
return options->field; \
}
#define ISL_CTX_SET_STR_DEF(prefix,st,args,field) \
int prefix ## _set_ ## field(isl_ctx *ctx, const char *val) \
{ \
st *options; \
options = isl_ctx_peek_ ## prefix(ctx); \
if (!options) \
isl_die(ctx, isl_error_invalid, \
"isl_ctx does not reference " #prefix, \
return -1); \
if (!val) \
return -1; \
free(options->field); \
options->field = strdup(val); \
if (!options->field) \
return -1; \
return 0; \
}
#define ISL_CTX_GET_BOOL_DEF(prefix,st,args,field) \ #define ISL_CTX_GET_BOOL_DEF(prefix,st,args,field) \
ISL_CTX_GET_INT_DEF(prefix,st,args,field) ISL_CTX_GET_INT_DEF(prefix,st,args,field)
#define ISL_CTX_SET_BOOL_DEF(prefix,st,args,field) \ #define ISL_CTX_SET_BOOL_DEF(prefix,st,args,field) \
ISL_CTX_SET_INT_DEF(prefix,st,args,field) ISL_CTX_SET_INT_DEF(prefix,st,args,field)
#define ISL_CTX_GET_CHOICE_DEF(prefix,st,args,field) \ #define ISL_CTX_GET_CHOICE_DEF(prefix,st,args,field) \
ISL_CTX_GET_INT_DEF(prefix,st,args,field) ISL_CTX_GET_INT_DEF(prefix,st,args,field)
#define ISL_CTX_SET_CHOICE_DEF(prefix,st,args,field) \ #define ISL_CTX_SET_CHOICE_DEF(prefix,st,args,field) \
 End of changes. 6 change blocks. 
12 lines changed or deleted 41 lines changed or added


 flow.h   flow.h 
#ifndef ISL_FLOW_H #ifndef ISL_FLOW_H
#define ISL_FLOW_H #define ISL_FLOW_H
#include <isl/set_type.h> #include <isl/set_type.h>
#include <isl/map_type.h> #include <isl/map_type.h>
#include <isl/union_set.h> #include <isl/union_set_type.h>
#include <isl/union_map.h> #include <isl/union_map_type.h>
#if defined(__cplusplus) #if defined(__cplusplus)
extern "C" { extern "C" {
#endif #endif
/* Let n (>= 0) be the number of iterators shared by first and second. /* Let n (>= 0) be the number of iterators shared by first and second.
* If first precedes second textually return 2 * n + 1, * If first precedes second textually return 2 * n + 1,
* otherwise return 2 * n. * otherwise return 2 * n.
*/ */
typedef int (*isl_access_level_before)(void *first, void *second); typedef int (*isl_access_level_before)(void *first, void *second);
struct isl_restriction;
typedef struct isl_restriction isl_restriction;
void *isl_restriction_free(__isl_take isl_restriction *restr);
__isl_give isl_restriction *isl_restriction_empty(
__isl_take isl_map *source_map);
__isl_give isl_restriction *isl_restriction_none(
__isl_take isl_map *source_map);
__isl_give isl_restriction *isl_restriction_input(
__isl_take isl_set *source_restr, __isl_take isl_set *sink_restr);
__isl_give isl_restriction *isl_restriction_output(
__isl_take isl_set *source_restr);
isl_ctx *isl_restriction_get_ctx(__isl_keep isl_restriction *restr);
typedef __isl_give isl_restriction *(*isl_access_restrict)(
__isl_keep isl_map *source_map, __isl_keep isl_set *sink,
void *source_user, void *user);
struct isl_access_info; struct isl_access_info;
typedef struct isl_access_info isl_access_info; typedef struct isl_access_info isl_access_info;
struct isl_flow; struct isl_flow;
typedef struct isl_flow isl_flow; typedef struct isl_flow isl_flow;
__isl_give isl_access_info *isl_access_info_alloc(__isl_take isl_map *sink, __isl_give isl_access_info *isl_access_info_alloc(__isl_take isl_map *sink,
void *sink_user, isl_access_level_before fn, int max_source); void *sink_user, isl_access_level_before fn, int max_source);
__isl_give isl_access_info *isl_access_info_set_restrict(
__isl_take isl_access_info *acc, isl_access_restrict fn, void *user)
;
__isl_give isl_access_info *isl_access_info_add_source( __isl_give isl_access_info *isl_access_info_add_source(
__isl_take isl_access_info *acc, __isl_take isl_map *source, __isl_take isl_access_info *acc, __isl_take isl_map *source,
int must, void *source_user); int must, void *source_user);
void isl_access_info_free(__isl_take isl_access_info *acc); void *isl_access_info_free(__isl_take isl_access_info *acc);
isl_ctx *isl_access_info_get_ctx(__isl_keep isl_access_info *acc); isl_ctx *isl_access_info_get_ctx(__isl_keep isl_access_info *acc);
__isl_give isl_flow *isl_access_info_compute_flow(__isl_take isl_access_inf o *acc); __isl_give isl_flow *isl_access_info_compute_flow(__isl_take isl_access_inf o *acc);
int isl_flow_foreach(__isl_keep isl_flow *deps, int isl_flow_foreach(__isl_keep isl_flow *deps,
int (*fn)(__isl_take isl_map *dep, int must, void *dep_user, void *u ser), int (*fn)(__isl_take isl_map *dep, int must, void *dep_user, void *u ser),
void *user); void *user);
__isl_give isl_map *isl_flow_get_no_source(__isl_keep isl_flow *deps, int m ust); __isl_give isl_map *isl_flow_get_no_source(__isl_keep isl_flow *deps, int m ust);
void isl_flow_free(__isl_take isl_flow *deps); void isl_flow_free(__isl_take isl_flow *deps);
 End of changes. 4 change blocks. 
3 lines changed or deleted 25 lines changed or added


 hash.h   hash.h 
/* /*
* Copyright 2008-2009 Katholieke Universiteit Leuven * Copyright 2008-2009 Katholieke Universiteit Leuven
* *
* Use of this software is governed by the GNU LGPLv2.1 license * Use of this software is governed by the MIT license
* *
* Written by Sven Verdoolaege, K.U.Leuven, Departement * Written by Sven Verdoolaege, K.U.Leuven, Departement
* Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium * Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium
*/ */
#ifndef ISL_HASH_H #ifndef ISL_HASH_H
#define ISL_HASH_H #define ISL_HASH_H
#include <stdlib.h> #include <stdlib.h>
#include <isl/stdint.h> #include <isl/stdint.h>
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 id.h   id.h 
skipping to change at line 24 skipping to change at line 24
isl_ctx *isl_id_get_ctx(__isl_keep isl_id *id); isl_ctx *isl_id_get_ctx(__isl_keep isl_id *id);
__isl_give isl_id *isl_id_alloc(isl_ctx *ctx, __isl_give isl_id *isl_id_alloc(isl_ctx *ctx,
__isl_keep const char *name, void *user); __isl_keep const char *name, void *user);
__isl_give isl_id *isl_id_copy(isl_id *id); __isl_give isl_id *isl_id_copy(isl_id *id);
void *isl_id_free(__isl_take isl_id *id); void *isl_id_free(__isl_take isl_id *id);
void *isl_id_get_user(__isl_keep isl_id *id); void *isl_id_get_user(__isl_keep isl_id *id);
__isl_keep const char *isl_id_get_name(__isl_keep isl_id *id); __isl_keep const char *isl_id_get_name(__isl_keep isl_id *id);
__isl_give isl_id *isl_id_set_free_user(__isl_take isl_id *id,
__isl_give void (*free_user)(void *user));
__isl_give isl_printer *isl_printer_print_id(__isl_take isl_printer *p, __isl_give isl_printer *isl_printer_print_id(__isl_take isl_printer *p,
__isl_keep isl_id *id); __isl_keep isl_id *id);
void isl_id_dump(__isl_keep isl_id *id); void isl_id_dump(__isl_keep isl_id *id);
#if defined(__cplusplus) #if defined(__cplusplus)
} }
#endif #endif
#endif #endif
 End of changes. 1 change blocks. 
0 lines changed or deleted 3 lines changed or added


 ilp.h   ilp.h 
/* /*
* Copyright 2008-2009 Katholieke Universiteit Leuven * Copyright 2008-2009 Katholieke Universiteit Leuven
* *
* Use of this software is governed by the GNU LGPLv2.1 license * Use of this software is governed by the MIT license
* *
* Written by Sven Verdoolaege, K.U.Leuven, Departement * Written by Sven Verdoolaege, K.U.Leuven, Departement
* Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium * Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium
*/ */
#ifndef ISL_ILP_H #ifndef ISL_ILP_H
#define ISL_ILP_H #define ISL_ILP_H
#include <isl/aff_type.h> #include <isl/aff_type.h>
#include <isl/lp.h> #include <isl/lp.h>
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 int.h   int.h 
/* /*
* Copyright 2008-2009 Katholieke Universiteit Leuven * Copyright 2008-2009 Katholieke Universiteit Leuven
* *
* Use of this software is governed by the GNU LGPLv2.1 license * Use of this software is governed by the MIT license
* *
* Written by Sven Verdoolaege, K.U.Leuven, Departement * Written by Sven Verdoolaege, K.U.Leuven, Departement
* Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium * Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium
*/ */
#ifndef ISL_INT_H #ifndef ISL_INT_H
#define ISL_INT_H #define ISL_INT_H
#include <isl/hash.h> #include <isl/hash.h>
#include <string.h> #include <string.h>
skipping to change at line 49 skipping to change at line 49
#define isl_int_set(r,i) mpz_set(r,i) #define isl_int_set(r,i) mpz_set(r,i)
#define isl_int_set_gmp(r,i) mpz_set(r,i) #define isl_int_set_gmp(r,i) mpz_set(r,i)
#define isl_int_set_si(r,i) mpz_set_si(r,i) #define isl_int_set_si(r,i) mpz_set_si(r,i)
#define isl_int_set_ui(r,i) mpz_set_ui(r,i) #define isl_int_set_ui(r,i) mpz_set_ui(r,i)
#define isl_int_get_gmp(i,g) mpz_set(g,i) #define isl_int_get_gmp(i,g) mpz_set(g,i)
#define isl_int_get_si(r) mpz_get_si(r) #define isl_int_get_si(r) mpz_get_si(r)
#define isl_int_get_ui(r) mpz_get_ui(r) #define isl_int_get_ui(r) mpz_get_ui(r)
#define isl_int_get_d(r) mpz_get_d(r) #define isl_int_get_d(r) mpz_get_d(r)
#define isl_int_get_str(r) mpz_get_str(0, 10, r) #define isl_int_get_str(r) mpz_get_str(0, 10, r)
typedef void (*isl_int_print_gmp_free_t)(void *, size_t);
#define isl_int_free_str(s) \
do { \
isl_int_print_gmp_free_t gmp_free; \
mp_get_memory_functions(NULL, NULL, &gmp_free); \
(*gmp_free)(s, strlen(s) + 1); \
} while (0)
#define isl_int_abs(r,i) mpz_abs(r,i) #define isl_int_abs(r,i) mpz_abs(r,i)
#define isl_int_neg(r,i) mpz_neg(r,i) #define isl_int_neg(r,i) mpz_neg(r,i)
#define isl_int_swap(i,j) mpz_swap(i,j) #define isl_int_swap(i,j) mpz_swap(i,j)
#define isl_int_swap_or_set(i,j) mpz_swap(i,j) #define isl_int_swap_or_set(i,j) mpz_swap(i,j)
#define isl_int_add_ui(r,i,j) mpz_add_ui(r,i,j) #define isl_int_add_ui(r,i,j) mpz_add_ui(r,i,j)
#define isl_int_sub_ui(r,i,j) mpz_sub_ui(r,i,j) #define isl_int_sub_ui(r,i,j) mpz_sub_ui(r,i,j)
#define isl_int_add(r,i,j) mpz_add(r,i,j) #define isl_int_add(r,i,j) mpz_add(r,i,j)
#define isl_int_sub(r,i,j) mpz_sub(r,i,j) #define isl_int_sub(r,i,j) mpz_sub(r,i,j)
#define isl_int_mul(r,i,j) mpz_mul(r,i,j) #define isl_int_mul(r,i,j) mpz_mul(r,i,j)
skipping to change at line 76 skipping to change at line 83
#define isl_int_lcm(r,i,j) mpz_lcm(r,i,j) #define isl_int_lcm(r,i,j) mpz_lcm(r,i,j)
#define isl_int_divexact(r,i,j) mpz_divexact(r,i,j) #define isl_int_divexact(r,i,j) mpz_divexact(r,i,j)
#define isl_int_divexact_ui(r,i,j) mpz_divexact_ui(r,i,j) #define isl_int_divexact_ui(r,i,j) mpz_divexact_ui(r,i,j)
#define isl_int_tdiv_q(r,i,j) mpz_tdiv_q(r,i,j) #define isl_int_tdiv_q(r,i,j) mpz_tdiv_q(r,i,j)
#define isl_int_cdiv_q(r,i,j) mpz_cdiv_q(r,i,j) #define isl_int_cdiv_q(r,i,j) mpz_cdiv_q(r,i,j)
#define isl_int_fdiv_q(r,i,j) mpz_fdiv_q(r,i,j) #define isl_int_fdiv_q(r,i,j) mpz_fdiv_q(r,i,j)
#define isl_int_fdiv_r(r,i,j) mpz_fdiv_r(r,i,j) #define isl_int_fdiv_r(r,i,j) mpz_fdiv_r(r,i,j)
#define isl_int_fdiv_q_ui(r,i,j) mpz_fdiv_q_ui(r,i,j) #define isl_int_fdiv_q_ui(r,i,j) mpz_fdiv_q_ui(r,i,j)
#define isl_int_read(r,s) mpz_set_str(r,s,10) #define isl_int_read(r,s) mpz_set_str(r,s,10)
typedef void (*isl_int_print_gmp_free_t)(void *, size_t);
#define isl_int_print(out,i,width) \ #define isl_int_print(out,i,width) \
do { \ do { \
char *s; \ char *s; \
isl_int_print_gmp_free_t gmp_free; \
s = mpz_get_str(0, 10, i); \ s = mpz_get_str(0, 10, i); \
fprintf(out, "%*s", width, s); \ fprintf(out, "%*s", width, s); \
mp_get_memory_functions(NULL, NULL, &gmp_free); \ isl_int_free_str(s);
(*gmp_free)(s, strlen(s)+1); \ \
} while (0) } while (0)
#define isl_int_sgn(i) mpz_sgn(i) #define isl_int_sgn(i) mpz_sgn(i)
#define isl_int_cmp(i,j) mpz_cmp(i,j) #define isl_int_cmp(i,j) mpz_cmp(i,j)
#define isl_int_cmp_si(i,si) mpz_cmp_si(i,si) #define isl_int_cmp_si(i,si) mpz_cmp_si(i,si)
#define isl_int_eq(i,j) (mpz_cmp(i,j) == 0) #define isl_int_eq(i,j) (mpz_cmp(i,j) == 0)
#define isl_int_ne(i,j) (mpz_cmp(i,j) != 0) #define isl_int_ne(i,j) (mpz_cmp(i,j) != 0)
#define isl_int_lt(i,j) (mpz_cmp(i,j) < 0) #define isl_int_lt(i,j) (mpz_cmp(i,j) < 0)
#define isl_int_le(i,j) (mpz_cmp(i,j) <= 0) #define isl_int_le(i,j) (mpz_cmp(i,j) <= 0)
#define isl_int_gt(i,j) (mpz_cmp(i,j) > 0) #define isl_int_gt(i,j) (mpz_cmp(i,j) > 0)
skipping to change at line 124 skipping to change at line 128
#if defined(__cplusplus) #if defined(__cplusplus)
} }
#endif #endif
#if defined(__cplusplus) #if defined(__cplusplus)
extern "C" { typedef void (*isl_gmp_free_t)(void *, size_t); } extern "C" { typedef void (*isl_gmp_free_t)(void *, size_t); }
static inline std::ostream &operator<<(std::ostream &os, isl_int i) static inline std::ostream &operator<<(std::ostream &os, isl_int i)
{ {
char *s; char *s;
isl_gmp_free_t gmp_free;
s = mpz_get_str(0, 10, i); s = mpz_get_str(0, 10, i);
os << s; os << s;
mp_get_memory_functions(NULL, NULL, &gmp_free); isl_int_free_str(s);
(*gmp_free)(s, strlen(s)+1);
return os; return os;
} }
#endif #endif
#endif #endif
 End of changes. 7 change blocks. 
8 lines changed or deleted 11 lines changed or added


 list.h   list.h 
/* /*
* Copyright 2008-2009 Katholieke Universiteit Leuven * Copyright 2008-2009 Katholieke Universiteit Leuven
* *
* Use of this software is governed by the GNU LGPLv2.1 license * Use of this software is governed by the MIT license
* *
* Written by Sven Verdoolaege, K.U.Leuven, Departement * Written by Sven Verdoolaege, K.U.Leuven, Departement
* Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium * Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium
*/ */
#ifndef ISL_LIST_H #ifndef ISL_LIST_H
#define ISL_LIST_H #define ISL_LIST_H
#include <isl/ctx.h> #include <isl/ctx.h>
#include <isl/printer.h> #include <isl/printer.h>
skipping to change at line 34 skipping to change at line 34
isl_ctx *isl_##EL##_list_get_ctx(__isl_keep isl_##EL##_list *list); \ isl_ctx *isl_##EL##_list_get_ctx(__isl_keep isl_##EL##_list *list); \
__isl_give isl_##EL##_list *isl_##EL##_list_from_##EL( \ __isl_give isl_##EL##_list *isl_##EL##_list_from_##EL( \
__isl_take struct isl_##EL *el); \ __isl_take struct isl_##EL *el); \
__isl_give isl_##EL##_list *isl_##EL##_list_alloc(isl_ctx *ctx, int n); \ __isl_give isl_##EL##_list *isl_##EL##_list_alloc(isl_ctx *ctx, int n); \
__isl_give isl_##EL##_list *isl_##EL##_list_copy( \ __isl_give isl_##EL##_list *isl_##EL##_list_copy( \
__isl_keep isl_##EL##_list *list); \ __isl_keep isl_##EL##_list *list); \
void *isl_##EL##_list_free(__isl_take isl_##EL##_list *list); \ void *isl_##EL##_list_free(__isl_take isl_##EL##_list *list); \
__isl_give isl_##EL##_list *isl_##EL##_list_add( \ __isl_give isl_##EL##_list *isl_##EL##_list_add( \
__isl_take isl_##EL##_list *list, \ __isl_take isl_##EL##_list *list, \
__isl_take struct isl_##EL *el); \ __isl_take struct isl_##EL *el); \
__isl_give isl_##EL##_list *isl_##EL##_list_insert( \
__isl_take isl_##EL##_list *list, unsigned pos, \
__isl_take struct isl_##EL *el); \
__isl_give isl_##EL##_list *isl_##EL##_list_drop( \
__isl_take isl_##EL##_list *list, unsigned first, unsigned n); \
__isl_give isl_##EL##_list *isl_##EL##_list_concat( \ __isl_give isl_##EL##_list *isl_##EL##_list_concat( \
__isl_take isl_##EL##_list *list1, \ __isl_take isl_##EL##_list *list1, \
__isl_take isl_##EL##_list *list2); \ __isl_take isl_##EL##_list *list2); \
int isl_##EL##_list_n_##EL(__isl_keep isl_##EL##_list *list); \ int isl_##EL##_list_n_##EL(__isl_keep isl_##EL##_list *list); \
__isl_give struct isl_##EL *isl_##EL##_list_get_##EL( \ __isl_give struct isl_##EL *isl_##EL##_list_get_##EL( \
__isl_keep isl_##EL##_list *list, int index); \ __isl_keep isl_##EL##_list *list, int index); \
__isl_give struct isl_##EL##_list *isl_##EL##_list_set_##EL( \
__isl_take struct isl_##EL##_list *list, int index, \
__isl_take struct isl_##EL *el); \
int isl_##EL##_list_foreach(__isl_keep isl_##EL##_list *list, \ int isl_##EL##_list_foreach(__isl_keep isl_##EL##_list *list, \
int (*fn)(__isl_take struct isl_##EL *el, void *user), \ int (*fn)(__isl_take struct isl_##EL *el, void *user), \
void *user); \ void *user); \
__isl_give isl_printer *isl_printer_print_##EL##_list( \ __isl_give isl_printer *isl_printer_print_##EL##_list( \
__isl_take isl_printer *p, __isl_keep isl_##EL##_list *list); \ __isl_take isl_printer *p, __isl_keep isl_##EL##_list *list); \
void isl_##EL##_list_dump(__isl_keep isl_##EL##_list *list); void isl_##EL##_list_dump(__isl_keep isl_##EL##_list *list);
ISL_DECLARE_LIST(id)
ISL_DECLARE_LIST(constraint)
ISL_DECLARE_LIST(basic_set) ISL_DECLARE_LIST(basic_set)
ISL_DECLARE_LIST(set) ISL_DECLARE_LIST(set)
ISL_DECLARE_LIST(aff) ISL_DECLARE_LIST(aff)
ISL_DECLARE_LIST(pw_aff) ISL_DECLARE_LIST(pw_aff)
ISL_DECLARE_LIST(band) ISL_DECLARE_LIST(band)
#if defined(__cplusplus) #if defined(__cplusplus)
} }
#endif #endif
 End of changes. 4 change blocks. 
1 lines changed or deleted 11 lines changed or added


 local_space.h   local_space.h 
skipping to change at line 28 skipping to change at line 28
__isl_give isl_local_space *isl_local_space_from_space(__isl_take isl_space *dim); __isl_give isl_local_space *isl_local_space_from_space(__isl_take isl_space *dim);
__isl_give isl_local_space *isl_local_space_copy( __isl_give isl_local_space *isl_local_space_copy(
__isl_keep isl_local_space *ls); __isl_keep isl_local_space *ls);
void *isl_local_space_free(__isl_take isl_local_space *ls); void *isl_local_space_free(__isl_take isl_local_space *ls);
int isl_local_space_is_set(__isl_keep isl_local_space *ls); int isl_local_space_is_set(__isl_keep isl_local_space *ls);
int isl_local_space_dim(__isl_keep isl_local_space *ls, int isl_local_space_dim(__isl_keep isl_local_space *ls,
enum isl_dim_type type); enum isl_dim_type type);
int isl_local_space_has_dim_name(__isl_keep isl_local_space *ls,
enum isl_dim_type type, unsigned pos);
const char *isl_local_space_get_dim_name(__isl_keep isl_local_space *ls, const char *isl_local_space_get_dim_name(__isl_keep isl_local_space *ls,
enum isl_dim_type type, unsigned pos); enum isl_dim_type type, unsigned pos);
__isl_give isl_local_space *isl_local_space_set_dim_name( __isl_give isl_local_space *isl_local_space_set_dim_name(
__isl_take isl_local_space *ls, __isl_take isl_local_space *ls,
enum isl_dim_type type, unsigned pos, const char *s); enum isl_dim_type type, unsigned pos, const char *s);
int isl_local_space_has_dim_id(__isl_keep isl_local_space *ls,
enum isl_dim_type type, unsigned pos);
__isl_give isl_id *isl_local_space_get_dim_id(__isl_keep isl_local_space *l
s,
enum isl_dim_type type, unsigned pos);
__isl_give isl_local_space *isl_local_space_set_dim_id( __isl_give isl_local_space *isl_local_space_set_dim_id(
__isl_take isl_local_space *ls, __isl_take isl_local_space *ls,
enum isl_dim_type type, unsigned pos, __isl_take isl_id *id); enum isl_dim_type type, unsigned pos, __isl_take isl_id *id);
__isl_give isl_space *isl_local_space_get_space(__isl_keep isl_local_space *ls); __isl_give isl_space *isl_local_space_get_space(__isl_keep isl_local_space *ls);
__isl_give isl_aff *isl_local_space_get_div(__isl_keep isl_local_space *ls, __isl_give isl_aff *isl_local_space_get_div(__isl_keep isl_local_space *ls,
int pos); int pos);
__isl_give isl_local_space *isl_local_space_domain( __isl_give isl_local_space *isl_local_space_domain(
__isl_take isl_local_space *ls); __isl_take isl_local_space *ls);
__isl_give isl_local_space *isl_local_space_range( __isl_give isl_local_space *isl_local_space_range(
 End of changes. 2 change blocks. 
0 lines changed or deleted 7 lines changed or added


 lp.h   lp.h 
/* /*
* Copyright 2008-2009 Katholieke Universiteit Leuven * Copyright 2008-2009 Katholieke Universiteit Leuven
* *
* Use of this software is governed by the GNU LGPLv2.1 license * Use of this software is governed by the MIT license
* *
* Written by Sven Verdoolaege, K.U.Leuven, Departement * Written by Sven Verdoolaege, K.U.Leuven, Departement
* Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium * Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium
*/ */
#ifndef ISL_LP_H #ifndef ISL_LP_H
#define ISL_LP_H #define ISL_LP_H
#include <isl/int.h> #include <isl/int.h>
#include <isl/vec.h> #include <isl/vec.h>
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 map.h   map.h 
/* /*
* Copyright 2008-2009 Katholieke Universiteit Leuven * Copyright 2008-2009 Katholieke Universiteit Leuven
* *
* Use of this software is governed by the GNU LGPLv2.1 license * Use of this software is governed by the MIT license
* *
* Written by Sven Verdoolaege, K.U.Leuven, Departement * Written by Sven Verdoolaege, K.U.Leuven, Departement
* Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium * Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium
*/ */
#ifndef ISL_MAP_H #ifndef ISL_MAP_H
#define ISL_MAP_H #define ISL_MAP_H
#include <stdio.h> #include <stdio.h>
skipping to change at line 73 skipping to change at line 73
__isl_give isl_aff *isl_basic_map_get_div(__isl_keep isl_basic_map *bmap, __isl_give isl_aff *isl_basic_map_get_div(__isl_keep isl_basic_map *bmap,
int pos); int pos);
__isl_give isl_local_space *isl_basic_map_get_local_space( __isl_give isl_local_space *isl_basic_map_get_local_space(
__isl_keep isl_basic_map *bmap); __isl_keep isl_basic_map *bmap);
__isl_give isl_basic_map *isl_basic_map_set_tuple_name( __isl_give isl_basic_map *isl_basic_map_set_tuple_name(
__isl_take isl_basic_map *bmap, enum isl_dim_type type, const char * s); __isl_take isl_basic_map *bmap, enum isl_dim_type type, const char * s);
const char *isl_basic_map_get_tuple_name(__isl_keep isl_basic_map *bmap, const char *isl_basic_map_get_tuple_name(__isl_keep isl_basic_map *bmap,
enum isl_dim_type type); enum isl_dim_type type);
int isl_map_has_tuple_name(__isl_keep isl_map *map, enum isl_dim_type type) ;
const char *isl_map_get_tuple_name(__isl_keep isl_map *map, const char *isl_map_get_tuple_name(__isl_keep isl_map *map,
enum isl_dim_type type); enum isl_dim_type type);
__isl_give isl_map *isl_map_set_tuple_name(__isl_take isl_map *map, __isl_give isl_map *isl_map_set_tuple_name(__isl_take isl_map *map,
enum isl_dim_type type, const char *s); enum isl_dim_type type, const char *s);
const char *isl_basic_map_get_dim_name(__isl_keep isl_basic_map *bmap, const char *isl_basic_map_get_dim_name(__isl_keep isl_basic_map *bmap,
enum isl_dim_type type, unsigned pos); enum isl_dim_type type, unsigned pos);
int isl_map_has_dim_name(__isl_keep isl_map *map,
enum isl_dim_type type, unsigned pos);
const char *isl_map_get_dim_name(__isl_keep isl_map *map, const char *isl_map_get_dim_name(__isl_keep isl_map *map,
enum isl_dim_type type, unsigned pos); enum isl_dim_type type, unsigned pos);
__isl_give isl_basic_map *isl_basic_map_set_dim_name( __isl_give isl_basic_map *isl_basic_map_set_dim_name(
__isl_take isl_basic_map *bmap, __isl_take isl_basic_map *bmap,
enum isl_dim_type type, unsigned pos, const char *s); enum isl_dim_type type, unsigned pos, const char *s);
__isl_give isl_map *isl_map_set_dim_name(__isl_take isl_map *map, __isl_give isl_map *isl_map_set_dim_name(__isl_take isl_map *map,
enum isl_dim_type type, unsigned pos, const char *s); enum isl_dim_type type, unsigned pos, const char *s);
__isl_give isl_map *isl_map_set_dim_id(__isl_take isl_map *map, __isl_give isl_map *isl_map_set_dim_id(__isl_take isl_map *map,
enum isl_dim_type type, unsigned pos, __isl_take isl_id *id); enum isl_dim_type type, unsigned pos, __isl_take isl_id *id);
skipping to change at line 116 skipping to change at line 119
const char *name); const char *name);
int isl_basic_map_is_rational(__isl_keep isl_basic_map *bmap); int isl_basic_map_is_rational(__isl_keep isl_basic_map *bmap);
struct isl_basic_map *isl_basic_map_alloc(struct isl_ctx *ctx, struct isl_basic_map *isl_basic_map_alloc(struct isl_ctx *ctx,
unsigned nparam, unsigned in, unsigned out, unsigned extra, unsigned nparam, unsigned in, unsigned out, unsigned extra,
unsigned n_eq, unsigned n_ineq); unsigned n_eq, unsigned n_ineq);
__isl_give isl_basic_map *isl_basic_map_identity(__isl_take isl_space *dim) ; __isl_give isl_basic_map *isl_basic_map_identity(__isl_take isl_space *dim) ;
struct isl_basic_map *isl_basic_map_identity_like(struct isl_basic_map *mod el); struct isl_basic_map *isl_basic_map_identity_like(struct isl_basic_map *mod el);
struct isl_basic_map *isl_basic_map_finalize(struct isl_basic_map *bmap); struct isl_basic_map *isl_basic_map_finalize(struct isl_basic_map *bmap);
void isl_basic_map_free(__isl_take isl_basic_map *bmap); void *isl_basic_map_free(__isl_take isl_basic_map *bmap);
__isl_give isl_basic_map *isl_basic_map_copy(__isl_keep isl_basic_map *bmap ); __isl_give isl_basic_map *isl_basic_map_copy(__isl_keep isl_basic_map *bmap );
struct isl_basic_map *isl_basic_map_extend(struct isl_basic_map *base, struct isl_basic_map *isl_basic_map_extend(struct isl_basic_map *base,
unsigned nparam, unsigned n_in, unsigned n_out, unsigned ext ra, unsigned nparam, unsigned n_in, unsigned n_out, unsigned ext ra,
unsigned n_eq, unsigned n_ineq); unsigned n_eq, unsigned n_ineq);
struct isl_basic_map *isl_basic_map_extend_constraints( struct isl_basic_map *isl_basic_map_extend_constraints(
struct isl_basic_map *base, unsigned n_eq, unsigned n_ineq); struct isl_basic_map *base, unsigned n_eq, unsigned n_ineq);
__isl_give isl_basic_map *isl_basic_map_equal( __isl_give isl_basic_map *isl_basic_map_equal(
__isl_take isl_space *dim, unsigned n_equal); __isl_take isl_space *dim, unsigned n_equal);
__isl_give isl_basic_map *isl_basic_map_less_at(__isl_take isl_space *dim, __isl_give isl_basic_map *isl_basic_map_less_at(__isl_take isl_space *dim,
unsigned pos); unsigned pos);
skipping to change at line 140 skipping to change at line 143
struct isl_basic_map *isl_basic_map_empty_like(struct isl_basic_map *model) ; struct isl_basic_map *isl_basic_map_empty_like(struct isl_basic_map *model) ;
struct isl_basic_map *isl_basic_map_empty_like_map(struct isl_map *model); struct isl_basic_map *isl_basic_map_empty_like_map(struct isl_map *model);
__isl_give isl_basic_map *isl_basic_map_universe(__isl_take isl_space *dim) ; __isl_give isl_basic_map *isl_basic_map_universe(__isl_take isl_space *dim) ;
__isl_give isl_basic_map *isl_basic_map_nat_universe(__isl_take isl_space * dim); __isl_give isl_basic_map *isl_basic_map_nat_universe(__isl_take isl_space * dim);
__isl_give isl_basic_map *isl_basic_map_universe_like( __isl_give isl_basic_map *isl_basic_map_universe_like(
__isl_keep isl_basic_map *bmap); __isl_keep isl_basic_map *bmap);
__isl_give isl_basic_map *isl_basic_map_remove_redundancies( __isl_give isl_basic_map *isl_basic_map_remove_redundancies(
__isl_take isl_basic_map *bmap); __isl_take isl_basic_map *bmap);
__isl_give isl_map *isl_map_remove_redundancies(__isl_take isl_map *map); __isl_give isl_map *isl_map_remove_redundancies(__isl_take isl_map *map);
__isl_give isl_basic_map *isl_map_simple_hull(__isl_take isl_map *map); __isl_give isl_basic_map *isl_map_simple_hull(__isl_take isl_map *map);
__isl_give isl_basic_map *isl_map_unshifted_simple_hull(
__isl_take isl_map *map);
__isl_export __isl_export
__isl_give isl_basic_map *isl_basic_map_intersect_domain( __isl_give isl_basic_map *isl_basic_map_intersect_domain(
__isl_take isl_basic_map *bmap, __isl_take isl_basic_map *bmap,
__isl_take isl_basic_set *bset); __isl_take isl_basic_set *bset);
__isl_export __isl_export
__isl_give isl_basic_map *isl_basic_map_intersect_range( __isl_give isl_basic_map *isl_basic_map_intersect_range(
__isl_take isl_basic_map *bmap, __isl_take isl_basic_map *bmap,
__isl_take isl_basic_set *bset); __isl_take isl_basic_set *bset);
__isl_export __isl_export
skipping to change at line 214 skipping to change at line 219
unsigned output_format); unsigned output_format);
__isl_give isl_printer *isl_printer_print_basic_map( __isl_give isl_printer *isl_printer_print_basic_map(
__isl_take isl_printer *printer, __isl_keep isl_basic_map *bmap); __isl_take isl_printer *printer, __isl_keep isl_basic_map *bmap);
__isl_give isl_printer *isl_printer_print_map(__isl_take isl_printer *print er, __isl_give isl_printer *isl_printer_print_map(__isl_take isl_printer *print er,
__isl_keep isl_map *map); __isl_keep isl_map *map);
__isl_give isl_basic_map *isl_basic_map_fix_si(__isl_take isl_basic_map *bm ap, __isl_give isl_basic_map *isl_basic_map_fix_si(__isl_take isl_basic_map *bm ap,
enum isl_dim_type type, unsigned pos, int value); enum isl_dim_type type, unsigned pos, int value);
__isl_give isl_basic_map *isl_basic_map_lower_bound_si( __isl_give isl_basic_map *isl_basic_map_lower_bound_si(
__isl_take isl_basic_map *bmap, __isl_take isl_basic_map *bmap,
enum isl_dim_type type, unsigned pos, int value); enum isl_dim_type type, unsigned pos, int value);
__isl_give isl_basic_map *isl_basic_map_upper_bound_si(
__isl_take isl_basic_map *bmap,
enum isl_dim_type type, unsigned pos, int value);
struct isl_basic_map *isl_basic_map_sum( struct isl_basic_map *isl_basic_map_sum(
struct isl_basic_map *bmap1, struct isl_basic_map *bmap2); struct isl_basic_map *bmap1, struct isl_basic_map *bmap2);
struct isl_basic_map *isl_basic_map_neg(struct isl_basic_map *bmap); struct isl_basic_map *isl_basic_map_neg(struct isl_basic_map *bmap);
struct isl_basic_map *isl_basic_map_floordiv(struct isl_basic_map *bmap, struct isl_basic_map *isl_basic_map_floordiv(struct isl_basic_map *bmap,
isl_int d); isl_int d);
struct isl_map *isl_map_sum(struct isl_map *map1, struct isl_map *map2); struct isl_map *isl_map_sum(struct isl_map *map1, struct isl_map *map2);
struct isl_map *isl_map_neg(struct isl_map *map); struct isl_map *isl_map_neg(struct isl_map *map);
struct isl_map *isl_map_floordiv(struct isl_map *map, isl_int d); struct isl_map *isl_map_floordiv(struct isl_map *map, isl_int d);
skipping to change at line 258 skipping to change at line 266
__isl_export __isl_export
__isl_give isl_map *isl_map_lexmax(__isl_take isl_map *map); __isl_give isl_map *isl_map_lexmax(__isl_take isl_map *map);
__isl_give isl_pw_multi_aff *isl_basic_map_partial_lexmin_pw_multi_aff( __isl_give isl_pw_multi_aff *isl_basic_map_partial_lexmin_pw_multi_aff(
__isl_take isl_basic_map *bmap, __isl_take isl_basic_set *dom, __isl_take isl_basic_map *bmap, __isl_take isl_basic_set *dom,
__isl_give isl_set **empty); __isl_give isl_set **empty);
__isl_give isl_pw_multi_aff *isl_basic_map_partial_lexmax_pw_multi_aff( __isl_give isl_pw_multi_aff *isl_basic_map_partial_lexmax_pw_multi_aff(
__isl_take isl_basic_map *bmap, __isl_take isl_basic_set *dom, __isl_take isl_basic_map *bmap, __isl_take isl_basic_set *dom,
__isl_give isl_set **empty); __isl_give isl_set **empty);
__isl_give isl_pw_multi_aff *isl_basic_map_lexmin_pw_multi_aff( __isl_give isl_pw_multi_aff *isl_basic_map_lexmin_pw_multi_aff(
__isl_take isl_basic_map *bmap); __isl_take isl_basic_map *bmap);
__isl_give isl_pw_multi_aff *isl_map_lexmin_pw_multi_aff(
__isl_take isl_map *map);
__isl_give isl_pw_multi_aff *isl_map_lexmax_pw_multi_aff(
__isl_take isl_map *map);
void isl_basic_map_print_internal(__isl_keep isl_basic_map *bmap, void isl_basic_map_print_internal(__isl_keep isl_basic_map *bmap,
FILE *out, int indent); FILE *out, int indent);
struct isl_basic_map *isl_map_copy_basic_map(struct isl_map *map); struct isl_basic_map *isl_map_copy_basic_map(struct isl_map *map);
__isl_give isl_map *isl_map_drop_basic_map(__isl_take isl_map *map, __isl_give isl_map *isl_map_drop_basic_map(__isl_take isl_map *map,
__isl_keep isl_basic_map *bm ap); __isl_keep isl_basic_map *bm ap);
int isl_basic_map_plain_is_fixed(__isl_keep isl_basic_map *bmap, int isl_basic_map_plain_is_fixed(__isl_keep isl_basic_map *bmap,
enum isl_dim_type type, unsigned pos, isl_int *val); enum isl_dim_type type, unsigned pos, isl_int *val);
int isl_basic_map_image_is_bounded(__isl_keep isl_basic_map *bmap); int isl_basic_map_image_is_bounded(__isl_keep isl_basic_map *bmap);
int isl_basic_map_is_universe(__isl_keep isl_basic_map *bmap); int isl_basic_map_is_universe(__isl_keep isl_basic_map *bmap);
int isl_basic_map_plain_is_empty(__isl_keep isl_basic_map *bmap); int isl_basic_map_plain_is_empty(__isl_keep isl_basic_map *bmap);
int isl_basic_map_fast_is_empty(__isl_keep isl_basic_map *bmap); int isl_basic_map_fast_is_empty(__isl_keep isl_basic_map *bmap);
__isl_export __isl_export
int isl_basic_map_is_empty(__isl_keep isl_basic_map *bmap); int isl_basic_map_is_empty(__isl_keep isl_basic_map *bmap);
__isl_export
int isl_basic_map_is_subset(__isl_keep isl_basic_map *bmap1, int isl_basic_map_is_subset(__isl_keep isl_basic_map *bmap1,
__isl_keep isl_basic_map *bmap2); __isl_keep isl_basic_map *bmap2);
int isl_basic_map_is_strict_subset(__isl_keep isl_basic_map *bmap1, int isl_basic_map_is_strict_subset(__isl_keep isl_basic_map *bmap1,
__isl_keep isl_basic_map *bmap2); __isl_keep isl_basic_map *bmap2);
struct isl_map *isl_map_alloc(struct isl_ctx *ctx, struct isl_map *isl_map_alloc(struct isl_ctx *ctx,
unsigned nparam, unsigned in, unsigned out, int n, unsigned nparam, unsigned in, unsigned out, int n,
unsigned flags); unsigned flags);
__isl_give isl_map *isl_map_universe(__isl_take isl_space *dim); __isl_give isl_map *isl_map_universe(__isl_take isl_space *dim);
__isl_give isl_map *isl_map_nat_universe(__isl_take isl_space *dim); __isl_give isl_map *isl_map_nat_universe(__isl_take isl_space *dim);
skipping to change at line 303 skipping to change at line 316
struct isl_map *isl_map_identity_like_basic_map(struct isl_basic_map *model ); struct isl_map *isl_map_identity_like_basic_map(struct isl_basic_map *model );
__isl_give isl_map *isl_map_lex_lt_first(__isl_take isl_space *dim, unsigne d n); __isl_give isl_map *isl_map_lex_lt_first(__isl_take isl_space *dim, unsigne d n);
__isl_give isl_map *isl_map_lex_le_first(__isl_take isl_space *dim, unsigne d n); __isl_give isl_map *isl_map_lex_le_first(__isl_take isl_space *dim, unsigne d n);
__isl_give isl_map *isl_map_lex_lt(__isl_take isl_space *set_dim); __isl_give isl_map *isl_map_lex_lt(__isl_take isl_space *set_dim);
__isl_give isl_map *isl_map_lex_le(__isl_take isl_space *set_dim); __isl_give isl_map *isl_map_lex_le(__isl_take isl_space *set_dim);
__isl_give isl_map *isl_map_lex_gt_first(__isl_take isl_space *dim, unsigne d n); __isl_give isl_map *isl_map_lex_gt_first(__isl_take isl_space *dim, unsigne d n);
__isl_give isl_map *isl_map_lex_ge_first(__isl_take isl_space *dim, unsigne d n); __isl_give isl_map *isl_map_lex_ge_first(__isl_take isl_space *dim, unsigne d n);
__isl_give isl_map *isl_map_lex_gt(__isl_take isl_space *set_dim); __isl_give isl_map *isl_map_lex_gt(__isl_take isl_space *set_dim);
__isl_give isl_map *isl_map_lex_ge(__isl_take isl_space *set_dim); __isl_give isl_map *isl_map_lex_ge(__isl_take isl_space *set_dim);
struct isl_map *isl_map_finalize(struct isl_map *map); struct isl_map *isl_map_finalize(struct isl_map *map);
void isl_map_free(__isl_take isl_map *map); void *isl_map_free(__isl_take isl_map *map);
__isl_give isl_map *isl_map_copy(__isl_keep isl_map *map); __isl_give isl_map *isl_map_copy(__isl_keep isl_map *map);
struct isl_map *isl_map_extend(struct isl_map *base, struct isl_map *isl_map_extend(struct isl_map *base,
unsigned nparam, unsigned n_in, unsigned n_out); unsigned nparam, unsigned n_in, unsigned n_out);
__isl_export __isl_export
__isl_give isl_map *isl_map_reverse(__isl_take isl_map *map); __isl_give isl_map *isl_map_reverse(__isl_take isl_map *map);
__isl_export __isl_export
__isl_give isl_map *isl_map_union( __isl_give isl_map *isl_map_union(
__isl_take isl_map *map1, __isl_take isl_map *map1,
__isl_take isl_map *map2); __isl_take isl_map *map2);
struct isl_map *isl_map_union_disjoint( struct isl_map *isl_map_union_disjoint(
skipping to change at line 331 skipping to change at line 344
__isl_take isl_map *map, __isl_take isl_map *map,
__isl_take isl_set *set); __isl_take isl_set *set);
__isl_export __isl_export
__isl_give isl_map *isl_map_apply_domain( __isl_give isl_map *isl_map_apply_domain(
__isl_take isl_map *map1, __isl_take isl_map *map1,
__isl_take isl_map *map2); __isl_take isl_map *map2);
__isl_export __isl_export
__isl_give isl_map *isl_map_apply_range( __isl_give isl_map *isl_map_apply_range(
__isl_take isl_map *map1, __isl_take isl_map *map1,
__isl_take isl_map *map2); __isl_take isl_map *map2);
__isl_give isl_basic_map *isl_basic_map_product(
__isl_take isl_basic_map *bmap1, __isl_take isl_basic_map *bmap2);
__isl_give isl_map *isl_map_product(__isl_take isl_map *map1, __isl_give isl_map *isl_map_product(__isl_take isl_map *map1,
__isl_take isl_map *map2); __isl_take isl_map *map2);
__isl_give isl_basic_map *isl_basic_map_domain_product( __isl_give isl_basic_map *isl_basic_map_domain_product(
__isl_take isl_basic_map *bmap1, __isl_take isl_basic_map *bmap2); __isl_take isl_basic_map *bmap1, __isl_take isl_basic_map *bmap2);
__isl_give isl_basic_map *isl_basic_map_range_product( __isl_give isl_basic_map *isl_basic_map_range_product(
__isl_take isl_basic_map *bmap1, __isl_take isl_basic_map *bmap2); __isl_take isl_basic_map *bmap1, __isl_take isl_basic_map *bmap2);
__isl_give isl_map *isl_map_domain_product(__isl_take isl_map *map1, __isl_give isl_map *isl_map_domain_product(__isl_take isl_map *map1,
__isl_take isl_map *map2); __isl_take isl_map *map2);
__isl_give isl_map *isl_map_range_product(__isl_take isl_map *map1, __isl_give isl_map *isl_map_range_product(__isl_take isl_map *map1,
__isl_take isl_map *map2); __isl_take isl_map *map2);
skipping to change at line 365 skipping to change at line 380
__isl_give isl_map *isl_map_intersect_params(__isl_take isl_map *map, __isl_give isl_map *isl_map_intersect_params(__isl_take isl_map *map,
__isl_take isl_set *params); __isl_take isl_set *params);
__isl_export __isl_export
__isl_give isl_map *isl_map_subtract( __isl_give isl_map *isl_map_subtract(
__isl_take isl_map *map1, __isl_take isl_map *map1,
__isl_take isl_map *map2); __isl_take isl_map *map2);
__isl_give isl_map *isl_map_subtract_domain(__isl_take isl_map *map, __isl_give isl_map *isl_map_subtract_domain(__isl_take isl_map *map,
__isl_take isl_set *dom); __isl_take isl_set *dom);
__isl_give isl_map *isl_map_subtract_range(__isl_take isl_map *map, __isl_give isl_map *isl_map_subtract_range(__isl_take isl_map *map,
__isl_take isl_set *dom); __isl_take isl_set *dom);
__isl_export
__isl_give isl_map *isl_map_complement(__isl_take isl_map *map);
struct isl_map *isl_map_fix_input_si(struct isl_map *map, struct isl_map *isl_map_fix_input_si(struct isl_map *map,
unsigned input, int value); unsigned input, int value);
__isl_give isl_map *isl_map_fix(__isl_take isl_map *map,
enum isl_dim_type type, unsigned pos, isl_int value);
__isl_give isl_map *isl_map_fix_si(__isl_take isl_map *map, __isl_give isl_map *isl_map_fix_si(__isl_take isl_map *map,
enum isl_dim_type type, unsigned pos, int value); enum isl_dim_type type, unsigned pos, int value);
__isl_give isl_map *isl_map_lower_bound_si(__isl_take isl_map *map, __isl_give isl_map *isl_map_lower_bound_si(__isl_take isl_map *map,
enum isl_dim_type type, unsigned pos, int value); enum isl_dim_type type, unsigned pos, int value);
__isl_give isl_map *isl_map_upper_bound_si(__isl_take isl_map *map, __isl_give isl_map *isl_map_upper_bound_si(__isl_take isl_map *map,
enum isl_dim_type type, unsigned pos, int value); enum isl_dim_type type, unsigned pos, int value);
__isl_export __isl_export
__isl_give isl_basic_set *isl_basic_map_deltas(__isl_take isl_basic_map *bm ap); __isl_give isl_basic_set *isl_basic_map_deltas(__isl_take isl_basic_map *bm ap);
__isl_export __isl_export
__isl_give isl_set *isl_map_deltas(__isl_take isl_map *map); __isl_give isl_set *isl_map_deltas(__isl_take isl_map *map);
skipping to change at line 391 skipping to change at line 410
__isl_give isl_map *isl_map_detect_equalities(__isl_take isl_map *map); __isl_give isl_map *isl_map_detect_equalities(__isl_take isl_map *map);
__isl_export __isl_export
__isl_give isl_basic_map *isl_map_affine_hull(__isl_take isl_map *map); __isl_give isl_basic_map *isl_map_affine_hull(__isl_take isl_map *map);
__isl_give isl_basic_map *isl_map_convex_hull(__isl_take isl_map *map); __isl_give isl_basic_map *isl_map_convex_hull(__isl_take isl_map *map);
__isl_export __isl_export
__isl_give isl_basic_map *isl_map_polyhedral_hull(__isl_take isl_map *map); __isl_give isl_basic_map *isl_map_polyhedral_hull(__isl_take isl_map *map);
__isl_give isl_basic_map *isl_basic_map_add(__isl_take isl_basic_map *bmap, __isl_give isl_basic_map *isl_basic_map_add(__isl_take isl_basic_map *bmap,
enum isl_dim_type type, unsigned n); enum isl_dim_type type, unsigned n);
__isl_give isl_map *isl_map_add_dims(__isl_take isl_map *map, __isl_give isl_map *isl_map_add_dims(__isl_take isl_map *map,
enum isl_dim_type type, unsigned n); enum isl_dim_type type, unsigned n);
__isl_give isl_basic_map *isl_basic_map_insert_dims(
__isl_take isl_basic_map *bmap, enum isl_dim_type type,
unsigned pos, unsigned n);
__isl_give isl_map *isl_map_insert_dims(__isl_take isl_map *map, __isl_give isl_map *isl_map_insert_dims(__isl_take isl_map *map,
enum isl_dim_type type, unsigned pos, unsigned n); enum isl_dim_type type, unsigned pos, unsigned n);
__isl_give isl_basic_map *isl_basic_map_move_dims( __isl_give isl_basic_map *isl_basic_map_move_dims(
__isl_take isl_basic_map *bmap, __isl_take isl_basic_map *bmap,
enum isl_dim_type dst_type, unsigned dst_pos, enum isl_dim_type dst_type, unsigned dst_pos,
enum isl_dim_type src_type, unsigned src_pos, unsigned n); enum isl_dim_type src_type, unsigned src_pos, unsigned n);
__isl_give isl_map *isl_map_move_dims(__isl_take isl_map *map, __isl_give isl_map *isl_map_move_dims(__isl_take isl_map *map,
enum isl_dim_type dst_type, unsigned dst_pos, enum isl_dim_type dst_type, unsigned dst_pos,
enum isl_dim_type src_type, unsigned src_pos, unsigned n); enum isl_dim_type src_type, unsigned src_pos, unsigned n);
__isl_give isl_basic_map *isl_basic_map_project_out( __isl_give isl_basic_map *isl_basic_map_project_out(
__isl_take isl_basic_map *bmap, __isl_take isl_basic_map *bmap,
enum isl_dim_type type, unsigned first, unsigned n); enum isl_dim_type type, unsigned first, unsigned n);
__isl_give isl_map *isl_map_project_out(__isl_take isl_map *map, __isl_give isl_map *isl_map_project_out(__isl_take isl_map *map,
enum isl_dim_type type, unsigned first, unsigned n); enum isl_dim_type type, unsigned first, unsigned n);
__isl_give isl_basic_map *isl_basic_map_remove_divs( __isl_give isl_basic_map *isl_basic_map_remove_divs(
__isl_take isl_basic_map *bmap); __isl_take isl_basic_map *bmap);
__isl_give isl_map *isl_map_remove_unknown_divs(__isl_take isl_map *map);
__isl_give isl_map *isl_map_remove_divs(__isl_take isl_map *map); __isl_give isl_map *isl_map_remove_divs(__isl_take isl_map *map);
__isl_give isl_map *isl_map_eliminate(__isl_take isl_map *map, __isl_give isl_map *isl_map_eliminate(__isl_take isl_map *map,
enum isl_dim_type type, unsigned first, unsigned n); enum isl_dim_type type, unsigned first, unsigned n);
__isl_give isl_map *isl_map_remove_dims(__isl_take isl_map *map, __isl_give isl_map *isl_map_remove_dims(__isl_take isl_map *map,
enum isl_dim_type type, unsigned first, unsigned n); enum isl_dim_type type, unsigned first, unsigned n);
__isl_give isl_basic_map *isl_basic_map_remove_divs_involving_dims(
__isl_take isl_basic_map *bmap,
enum isl_dim_type type, unsigned first, unsigned n);
__isl_give isl_map *isl_map_remove_divs_involving_dims(__isl_take isl_map *
map,
enum isl_dim_type type, unsigned first, unsigned n);
struct isl_map *isl_map_remove_inputs(struct isl_map *map, struct isl_map *isl_map_remove_inputs(struct isl_map *map,
unsigned first, unsigned n); unsigned first, unsigned n);
__isl_give isl_basic_map *isl_basic_map_equate(__isl_take isl_basic_map *bm
ap,
enum isl_dim_type type1, int pos1, enum isl_dim_type type2, int pos2
);
__isl_give isl_basic_map *isl_basic_map_order_ge(__isl_take isl_basic_map *
bmap,
enum isl_dim_type type1, int pos1, enum isl_dim_type type2, int pos2
);
__isl_give isl_map *isl_map_equate(__isl_take isl_map *map, __isl_give isl_map *isl_map_equate(__isl_take isl_map *map,
enum isl_dim_type type1, int pos1, enum isl_dim_type type2, int pos2 ); enum isl_dim_type type1, int pos1, enum isl_dim_type type2, int pos2 );
__isl_give isl_map *isl_map_oppose(__isl_take isl_map *map, __isl_give isl_map *isl_map_oppose(__isl_take isl_map *map,
enum isl_dim_type type1, int pos1, enum isl_dim_type type2, int pos2 ); enum isl_dim_type type1, int pos1, enum isl_dim_type type2, int pos2 );
__isl_give isl_map *isl_map_order_lt(__isl_take isl_map *map,
enum isl_dim_type type1, int pos1, enum isl_dim_type type2, int pos2
);
__isl_give isl_map *isl_map_order_gt(__isl_take isl_map *map,
enum isl_dim_type type1, int pos1, enum isl_dim_type type2, int pos2
);
__isl_export __isl_export
__isl_give isl_map *isl_set_identity(__isl_take isl_set *set); __isl_give isl_map *isl_set_identity(__isl_take isl_set *set);
__isl_export __isl_export
int isl_basic_set_is_wrapping(__isl_keep isl_basic_set *bset); int isl_basic_set_is_wrapping(__isl_keep isl_basic_set *bset);
__isl_export __isl_export
int isl_set_is_wrapping(__isl_keep isl_set *set); int isl_set_is_wrapping(__isl_keep isl_set *set);
__isl_give isl_basic_set *isl_basic_map_wrap(__isl_take isl_basic_map *bmap ); __isl_give isl_basic_set *isl_basic_map_wrap(__isl_take isl_basic_map *bmap );
__isl_give isl_set *isl_map_wrap(__isl_take isl_map *map); __isl_give isl_set *isl_map_wrap(__isl_take isl_map *map);
skipping to change at line 485 skipping to change at line 521
int isl_map_plain_is_universe(__isl_keep isl_map *map); int isl_map_plain_is_universe(__isl_keep isl_map *map);
__isl_export __isl_export
int isl_map_is_empty(__isl_keep isl_map *map); int isl_map_is_empty(__isl_keep isl_map *map);
__isl_export __isl_export
int isl_map_is_subset(__isl_keep isl_map *map1, __isl_keep isl_map *map2); int isl_map_is_subset(__isl_keep isl_map *map1, __isl_keep isl_map *map2);
__isl_export __isl_export
int isl_map_is_strict_subset(__isl_keep isl_map *map1, __isl_keep isl_map * map2); int isl_map_is_strict_subset(__isl_keep isl_map *map1, __isl_keep isl_map * map2);
__isl_export __isl_export
int isl_map_is_equal(__isl_keep isl_map *map1, __isl_keep isl_map *map2); int isl_map_is_equal(__isl_keep isl_map *map1, __isl_keep isl_map *map2);
__isl_export __isl_export
int isl_map_is_disjoint(__isl_keep isl_map *map1, __isl_keep isl_map *map2)
;
int isl_basic_map_is_single_valued(__isl_keep isl_basic_map *bmap);
int isl_map_plain_is_single_valued(__isl_keep isl_map *map);
__isl_export
int isl_map_is_single_valued(__isl_keep isl_map *map); int isl_map_is_single_valued(__isl_keep isl_map *map);
int isl_map_plain_is_injective(__isl_keep isl_map *map); int isl_map_plain_is_injective(__isl_keep isl_map *map);
__isl_export __isl_export
int isl_map_is_injective(__isl_keep isl_map *map); int isl_map_is_injective(__isl_keep isl_map *map);
__isl_export __isl_export
int isl_map_is_bijective(__isl_keep isl_map *map); int isl_map_is_bijective(__isl_keep isl_map *map);
int isl_map_is_translation(__isl_keep isl_map *map); int isl_map_is_translation(__isl_keep isl_map *map);
int isl_map_has_equal_space(__isl_keep isl_map *map1, __isl_keep isl_map *m ap2); int isl_map_has_equal_space(__isl_keep isl_map *map1, __isl_keep isl_map *m ap2);
int isl_basic_map_can_zip(__isl_keep isl_basic_map *bmap); int isl_basic_map_can_zip(__isl_keep isl_basic_map *bmap);
int isl_map_can_zip(__isl_keep isl_map *map); int isl_map_can_zip(__isl_keep isl_map *map);
__isl_give isl_basic_map *isl_basic_map_zip(__isl_take isl_basic_map *bmap) ; __isl_give isl_basic_map *isl_basic_map_zip(__isl_take isl_basic_map *bmap) ;
__isl_give isl_map *isl_map_zip(__isl_take isl_map *map); __isl_give isl_map *isl_map_zip(__isl_take isl_map *map);
int isl_basic_map_can_curry(__isl_keep isl_basic_map *bmap);
int isl_map_can_curry(__isl_keep isl_map *map);
__isl_give isl_basic_map *isl_basic_map_curry(__isl_take isl_basic_map *bma
p);
__isl_give isl_map *isl_map_curry(__isl_take isl_map *map);
int isl_basic_map_can_uncurry(__isl_keep isl_basic_map *bmap);
int isl_map_can_uncurry(__isl_keep isl_map *map);
__isl_give isl_basic_map *isl_basic_map_uncurry(__isl_take isl_basic_map *b
map);
__isl_give isl_map *isl_map_uncurry(__isl_take isl_map *map);
__isl_give isl_map *isl_map_make_disjoint(__isl_take isl_map *map); __isl_give isl_map *isl_map_make_disjoint(__isl_take isl_map *map);
__isl_give isl_map *isl_basic_map_compute_divs(__isl_take isl_basic_map *bm ap); __isl_give isl_map *isl_basic_map_compute_divs(__isl_take isl_basic_map *bm ap);
__isl_give isl_map *isl_map_compute_divs(__isl_take isl_map *map); __isl_give isl_map *isl_map_compute_divs(__isl_take isl_map *map);
__isl_give isl_map *isl_map_align_divs(__isl_take isl_map *map); __isl_give isl_map *isl_map_align_divs(__isl_take isl_map *map);
__isl_give isl_map *isl_map_drop_constraints_involving_dims(
__isl_take isl_map *map,
enum isl_dim_type type, unsigned first, unsigned n);
int isl_basic_map_involves_dims(__isl_keep isl_basic_map *bmap, int isl_basic_map_involves_dims(__isl_keep isl_basic_map *bmap,
enum isl_dim_type type, unsigned first, unsigned n); enum isl_dim_type type, unsigned first, unsigned n);
int isl_map_involves_dims(__isl_keep isl_map *map, int isl_map_involves_dims(__isl_keep isl_map *map,
enum isl_dim_type type, unsigned first, unsigned n); enum isl_dim_type type, unsigned first, unsigned n);
void isl_map_print_internal(__isl_keep isl_map *map, FILE *out, int indent) ; void isl_map_print_internal(__isl_keep isl_map *map, FILE *out, int indent) ;
int isl_map_plain_input_is_fixed(__isl_keep isl_map *map, int isl_map_plain_input_is_fixed(__isl_keep isl_map *map,
unsigned in, isl_int *val); unsigned in, isl_int *val);
int isl_map_plain_is_fixed(__isl_keep isl_map *map, int isl_map_plain_is_fixed(__isl_keep isl_map *map,
skipping to change at line 548 skipping to change at line 602
int isl_map_fast_is_equal(__isl_keep isl_map *map1, __isl_keep isl_map *map 2); int isl_map_fast_is_equal(__isl_keep isl_map *map1, __isl_keep isl_map *map 2);
uint32_t isl_map_get_hash(__isl_keep isl_map *map); uint32_t isl_map_get_hash(__isl_keep isl_map *map);
__isl_export __isl_export
int isl_map_foreach_basic_map(__isl_keep isl_map *map, int isl_map_foreach_basic_map(__isl_keep isl_map *map,
int (*fn)(__isl_take isl_basic_map *bmap, void *user), void *user); int (*fn)(__isl_take isl_basic_map *bmap, void *user), void *user);
__isl_give isl_map *isl_set_lifting(__isl_take isl_set *set); __isl_give isl_map *isl_set_lifting(__isl_take isl_set *set);
__isl_give isl_map *isl_map_fixed_power(__isl_take isl_map *map, isl_int ex p);
__isl_give isl_map *isl_map_power(__isl_take isl_map *map, int *exact); __isl_give isl_map *isl_map_power(__isl_take isl_map *map, int *exact);
__isl_give isl_map *isl_map_reaching_path_lengths(__isl_take isl_map *map, __isl_give isl_map *isl_map_reaching_path_lengths(__isl_take isl_map *map,
int *exact); int *exact);
__isl_give isl_map *isl_map_transitive_closure(__isl_take isl_map *map, __isl_give isl_map *isl_map_transitive_closure(__isl_take isl_map *map,
int *exact); int *exact);
__isl_give isl_map *isl_map_lex_le_map(__isl_take isl_map *map1, __isl_give isl_map *isl_map_lex_le_map(__isl_take isl_map *map1,
__isl_take isl_map *map2); __isl_take isl_map *map2);
__isl_give isl_map *isl_map_lex_lt_map(__isl_take isl_map *map1, __isl_give isl_map *isl_map_lex_lt_map(__isl_take isl_map *map1,
__isl_take isl_map *map2); __isl_take isl_map *map2);
__isl_give isl_map *isl_map_lex_ge_map(__isl_take isl_map *map1, __isl_give isl_map *isl_map_lex_ge_map(__isl_take isl_map *map1,
__isl_take isl_map *map2); __isl_take isl_map *map2);
__isl_give isl_map *isl_map_lex_gt_map(__isl_take isl_map *map1, __isl_give isl_map *isl_map_lex_gt_map(__isl_take isl_map *map1,
__isl_take isl_map *map2); __isl_take isl_map *map2);
__isl_give isl_basic_map *isl_basic_map_align_params(
__isl_take isl_basic_map *bmap, __isl_take isl_space *model);
__isl_give isl_map *isl_map_align_params(__isl_take isl_map *map, __isl_give isl_map *isl_map_align_params(__isl_take isl_map *map,
__isl_take isl_space *model); __isl_take isl_space *model);
__isl_give isl_mat *isl_basic_map_equalities_matrix( __isl_give isl_mat *isl_basic_map_equalities_matrix(
__isl_keep isl_basic_map *bmap, enum isl_dim_type c1, __isl_keep isl_basic_map *bmap, enum isl_dim_type c1,
enum isl_dim_type c2, enum isl_dim_type c3, enum isl_dim_type c2, enum isl_dim_type c3,
enum isl_dim_type c4, enum isl_dim_type c5); enum isl_dim_type c4, enum isl_dim_type c5);
__isl_give isl_mat *isl_basic_map_inequalities_matrix( __isl_give isl_mat *isl_basic_map_inequalities_matrix(
__isl_keep isl_basic_map *bmap, enum isl_dim_type c1, __isl_keep isl_basic_map *bmap, enum isl_dim_type c1,
enum isl_dim_type c2, enum isl_dim_type c3, enum isl_dim_type c2, enum isl_dim_type c3,
skipping to change at line 586 skipping to change at line 643
__isl_take isl_mat *eq, __isl_take isl_mat *ineq, enum isl_dim_type c1, __isl_take isl_mat *eq, __isl_take isl_mat *ineq, enum isl_dim_type c1,
enum isl_dim_type c2, enum isl_dim_type c3, enum isl_dim_type c2, enum isl_dim_type c3,
enum isl_dim_type c4, enum isl_dim_type c5); enum isl_dim_type c4, enum isl_dim_type c5);
__isl_give isl_basic_map *isl_basic_map_from_aff(__isl_take isl_aff *aff); __isl_give isl_basic_map *isl_basic_map_from_aff(__isl_take isl_aff *aff);
__isl_give isl_basic_map *isl_basic_map_from_multi_aff( __isl_give isl_basic_map *isl_basic_map_from_multi_aff(
__isl_take isl_multi_aff *maff); __isl_take isl_multi_aff *maff);
__isl_give isl_basic_map *isl_basic_map_from_aff_list( __isl_give isl_basic_map *isl_basic_map_from_aff_list(
__isl_take isl_space *domain_dim, __isl_take isl_aff_list *list); __isl_take isl_space *domain_dim, __isl_take isl_aff_list *list);
__isl_give isl_map *isl_map_from_aff(__isl_take isl_aff *aff);
__isl_give isl_map *isl_map_from_multi_aff(__isl_take isl_multi_aff *maff);
__isl_give isl_pw_aff *isl_map_dim_max(__isl_take isl_map *map, int pos); __isl_give isl_pw_aff *isl_map_dim_max(__isl_take isl_map *map, int pos);
#if defined(__cplusplus) #if defined(__cplusplus)
} }
#endif #endif
#include <isl/dim.h> #include <isl/dim.h>
#endif #endif
 End of changes. 23 change blocks. 
3 lines changed or deleted 73 lines changed or added


 map_type.h   map_type.h 
#ifndef ISL_MAP_TYPE_H #ifndef ISL_MAP_TYPE_H
#define ISL_MAP_TYPE_H #define ISL_MAP_TYPE_H
#include <isl/ctx.h> #include <isl/ctx.h>
#if defined(__cplusplus) #if defined(__cplusplus)
extern "C" { extern "C" {
#endif #endif
__isl_subclass(isl_map) struct __isl_subclass(isl_map) isl_basic_map;
struct isl_basic_map;
typedef struct isl_basic_map isl_basic_map; typedef struct isl_basic_map isl_basic_map;
__isl_subclass(isl_union_map) struct __isl_subclass(isl_union_map) isl_map;
struct isl_map;
typedef struct isl_map isl_map; typedef struct isl_map isl_map;
#ifndef isl_basic_set #ifndef isl_basic_set
__isl_subclass(isl_set) struct __isl_subclass(isl_set) isl_basic_set;
struct isl_basic_set;
typedef struct isl_basic_set isl_basic_set; typedef struct isl_basic_set isl_basic_set;
#endif #endif
#ifndef isl_set #ifndef isl_set
__isl_subclass(isl_union_set) struct __isl_subclass(isl_union_set) isl_set;
struct isl_set;
typedef struct isl_set isl_set; typedef struct isl_set isl_set;
#endif #endif
#if defined(__cplusplus) #if defined(__cplusplus)
} }
#endif #endif
#endif #endif
 End of changes. 4 change blocks. 
8 lines changed or deleted 4 lines changed or added


 mat.h   mat.h 
/* /*
* Copyright 2008-2009 Katholieke Universiteit Leuven * Copyright 2008-2009 Katholieke Universiteit Leuven
* *
* Use of this software is governed by the GNU LGPLv2.1 license * Use of this software is governed by the MIT license
* *
* Written by Sven Verdoolaege, K.U.Leuven, Departement * Written by Sven Verdoolaege, K.U.Leuven, Departement
* Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium * Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium
*/ */
#ifndef ISL_MAT_H #ifndef ISL_MAT_H
#define ISL_MAT_H #define ISL_MAT_H
#include <stdio.h> #include <stdio.h>
skipping to change at line 68 skipping to change at line 68
struct isl_mat *isl_mat_left_hermite(struct isl_mat *M, struct isl_mat *isl_mat_left_hermite(struct isl_mat *M,
int neg, struct isl_mat **U, struct isl_mat **Q); int neg, struct isl_mat **U, struct isl_mat **Q);
struct isl_mat *isl_mat_lin_to_aff(struct isl_mat *mat); struct isl_mat *isl_mat_lin_to_aff(struct isl_mat *mat);
struct isl_mat *isl_mat_inverse_product(struct isl_mat *left, struct isl_mat *isl_mat_inverse_product(struct isl_mat *left,
struct isl_mat *right); struct isl_mat *right);
struct isl_mat *isl_mat_product(struct isl_mat *left, struct isl_mat *right ); struct isl_mat *isl_mat_product(struct isl_mat *left, struct isl_mat *right );
struct isl_mat *isl_mat_transpose(struct isl_mat *mat); struct isl_mat *isl_mat_transpose(struct isl_mat *mat);
__isl_give isl_mat *isl_mat_right_inverse(__isl_take isl_mat *mat); __isl_give isl_mat *isl_mat_right_inverse(__isl_take isl_mat *mat);
__isl_give isl_mat *isl_mat_right_kernel(__isl_take isl_mat *mat); __isl_give isl_mat *isl_mat_right_kernel(__isl_take isl_mat *mat);
__isl_give isl_mat *isl_mat_scale_down_row(__isl_take isl_mat *mat, int row
,
isl_int m);
__isl_give isl_mat *isl_mat_normalize(__isl_take isl_mat *mat); __isl_give isl_mat *isl_mat_normalize(__isl_take isl_mat *mat);
__isl_give isl_mat *isl_mat_normalize_row(__isl_take isl_mat *mat, int row) ; __isl_give isl_mat *isl_mat_normalize_row(__isl_take isl_mat *mat, int row) ;
struct isl_mat *isl_mat_drop_cols(struct isl_mat *mat, struct isl_mat *isl_mat_drop_cols(struct isl_mat *mat,
unsigned col, unsigned n); unsigned col, unsigned n);
struct isl_mat *isl_mat_drop_rows(struct isl_mat *mat, struct isl_mat *isl_mat_drop_rows(struct isl_mat *mat,
unsigned row, unsigned n); unsigned row, unsigned n);
__isl_give isl_mat *isl_mat_insert_cols(__isl_take isl_mat *mat, __isl_give isl_mat *isl_mat_insert_cols(__isl_take isl_mat *mat,
unsigned col, unsigned n); unsigned col, unsigned n);
__isl_give isl_mat *isl_mat_insert_rows(__isl_take isl_mat *mat, __isl_give isl_mat *isl_mat_insert_rows(__isl_take isl_mat *mat,
 End of changes. 2 change blocks. 
1 lines changed or deleted 5 lines changed or added


 multi.h   multi.h 
skipping to change at line 14 skipping to change at line 14
#include <isl/list.h> #include <isl/list.h>
#if defined(__cplusplus) #if defined(__cplusplus)
extern "C" { extern "C" {
#endif #endif
#define ISL_DECLARE_MULTI(BASE) \ #define ISL_DECLARE_MULTI(BASE) \
__isl_give isl_multi_##BASE *isl_multi_##BASE##_from_##BASE##_list( \ __isl_give isl_multi_##BASE *isl_multi_##BASE##_from_##BASE##_list( \
__isl_take isl_space *space, __isl_take isl_##BASE##_list *list); \ __isl_take isl_space *space, __isl_take isl_##BASE##_list *list); \
const char *isl_multi_##BASE##_get_tuple_name( \ const char *isl_multi_##BASE##_get_tuple_name( \
__isl_keep isl_multi_##BASE *multi, enum isl_dim_type type); __isl_keep isl_multi_##BASE *multi, enum isl_dim_type type); \
__isl_give isl_multi_##BASE *isl_multi_##BASE##_set_##BASE( \
__isl_take isl_multi_##BASE *multi, int pos, \
__isl_take isl_##BASE *el);
ISL_DECLARE_MULTI(aff) ISL_DECLARE_MULTI(aff)
ISL_DECLARE_MULTI(pw_aff)
#if defined(__cplusplus) #if defined(__cplusplus)
} }
#endif #endif
#endif #endif
 End of changes. 2 change blocks. 
1 lines changed or deleted 5 lines changed or added


 obj.h   obj.h 
#ifndef ISL_OBJ_H #ifndef ISL_OBJ_H
#define ISL_OBJ_H #define ISL_OBJ_H
#include <isl/set_type.h> #include <isl/set_type.h>
#include <isl/map_type.h> #include <isl/map_type.h>
#include <isl/union_set.h> #include <isl/union_set_type.h>
#include <isl/union_map.h> #include <isl/union_map_type.h>
#include <isl/polynomial_type.h> #include <isl/polynomial_type.h>
#include <isl/printer.h> #include <isl/printer.h>
#if defined(__cplusplus) #if defined(__cplusplus)
extern "C" { extern "C" {
#endif #endif
struct isl_obj_vtable { struct isl_obj_vtable {
void *(*copy)(void *v1); void *(*copy)(void *v1);
void *(*add)(void *v1, void *v2); void *(*add)(void *v1, void *v2);
 End of changes. 1 change blocks. 
2 lines changed or deleted 2 lines changed or added


 options.h   options.h 
/* /*
* Copyright 2008-2009 Katholieke Universiteit Leuven * Copyright 2008-2009 Katholieke Universiteit Leuven
* *
* Use of this software is governed by the GNU LGPLv2.1 license * Use of this software is governed by the MIT license
* *
* Written by Sven Verdoolaege, K.U.Leuven, Departement * Written by Sven Verdoolaege, K.U.Leuven, Departement
* Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium * Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium
*/ */
#ifndef ISL_OPTIONS_H #ifndef ISL_OPTIONS_H
#define ISL_OPTIONS_H #define ISL_OPTIONS_H
#include <isl/arg.h> #include <isl/arg.h>
#include <isl/ctx.h> #include <isl/ctx.h>
skipping to change at line 38 skipping to change at line 38
#define ISL_ON_ERROR_WARN 0 #define ISL_ON_ERROR_WARN 0
#define ISL_ON_ERROR_CONTINUE 1 #define ISL_ON_ERROR_CONTINUE 1
#define ISL_ON_ERROR_ABORT 2 #define ISL_ON_ERROR_ABORT 2
int isl_options_set_on_error(isl_ctx *ctx, int val); int isl_options_set_on_error(isl_ctx *ctx, int val);
int isl_options_get_on_error(isl_ctx *ctx); int isl_options_get_on_error(isl_ctx *ctx);
int isl_options_set_gbr_only_first(isl_ctx *ctx, int val); int isl_options_set_gbr_only_first(isl_ctx *ctx, int val);
int isl_options_get_gbr_only_first(isl_ctx *ctx); int isl_options_get_gbr_only_first(isl_ctx *ctx);
#define ISL_SCHEDULE_ALGORITHM_ISL 0
#define ISL_SCHEDULE_ALGORITHM_FEAUTRIER 1
int isl_options_set_schedule_algorithm(isl_ctx *ctx, int val);
int isl_options_get_schedule_algorithm(isl_ctx *ctx);
int isl_options_set_coalesce_bounded_wrapping(isl_ctx *ctx, int val);
int isl_options_get_coalesce_bounded_wrapping(isl_ctx *ctx);
#if defined(__cplusplus) #if defined(__cplusplus)
} }
#endif #endif
#endif #endif
 End of changes. 2 change blocks. 
1 lines changed or deleted 9 lines changed or added


 point.h   point.h 
skipping to change at line 36 skipping to change at line 36
__isl_give isl_point *isl_point_add_ui(__isl_take isl_point *pnt, __isl_give isl_point *isl_point_add_ui(__isl_take isl_point *pnt,
enum isl_dim_type type, int pos, unsigned val); enum isl_dim_type type, int pos, unsigned val);
__isl_give isl_point *isl_point_sub_ui(__isl_take isl_point *pnt, __isl_give isl_point *isl_point_sub_ui(__isl_take isl_point *pnt,
enum isl_dim_type type, int pos, unsigned val); enum isl_dim_type type, int pos, unsigned val);
__isl_give isl_point *isl_point_void(__isl_take isl_space *dim); __isl_give isl_point *isl_point_void(__isl_take isl_space *dim);
int isl_point_is_void(__isl_keep isl_point *pnt); int isl_point_is_void(__isl_keep isl_point *pnt);
__isl_give isl_printer *isl_printer_print_point( __isl_give isl_printer *isl_printer_print_point(
__isl_take isl_printer *printer, __isl_keep isl_point *pnt); __isl_take isl_printer *printer, __isl_keep isl_point *pnt);
void isl_point_dump(__isl_keep isl_point *pnt);
#if defined(__cplusplus) #if defined(__cplusplus)
} }
#endif #endif
#include <isl/dim.h> #include <isl/dim.h>
#endif #endif
 End of changes. 1 change blocks. 
0 lines changed or deleted 1 lines changed or added


 polynomial.h   polynomial.h 
#ifndef ISL_POLYNOMIAL_H #ifndef ISL_POLYNOMIAL_H
#define ISL_POLYNOMIAL_H #define ISL_POLYNOMIAL_H
#include <isl/ctx.h> #include <isl/ctx.h>
#include <isl/constraint.h> #include <isl/constraint.h>
#include <isl/space.h> #include <isl/space.h>
#include <isl/set_type.h> #include <isl/set_type.h>
#include <isl/point.h> #include <isl/point.h>
#include <isl/printer.h> #include <isl/printer.h>
#include <isl/union_set.h> #include <isl/union_set_type.h>
#include <isl/aff_type.h> #include <isl/aff_type.h>
#include <isl/polynomial_type.h> #include <isl/polynomial_type.h>
#if defined(__cplusplus) #if defined(__cplusplus)
extern "C" { extern "C" {
#endif #endif
isl_ctx *isl_qpolynomial_get_ctx(__isl_keep isl_qpolynomial *qp); isl_ctx *isl_qpolynomial_get_ctx(__isl_keep isl_qpolynomial *qp);
__isl_give isl_space *isl_qpolynomial_get_domain_space( __isl_give isl_space *isl_qpolynomial_get_domain_space(
__isl_keep isl_qpolynomial *qp); __isl_keep isl_qpolynomial *qp);
skipping to change at line 448 skipping to change at line 448
__isl_keep isl_union_pw_qpolynomial *upwqp2); __isl_keep isl_union_pw_qpolynomial *upwqp2);
__isl_give isl_union_pw_qpolynomial *isl_union_pw_qpolynomial_from_pw_qpoly nomial(__isl_take isl_pw_qpolynomial *pwqp); __isl_give isl_union_pw_qpolynomial *isl_union_pw_qpolynomial_from_pw_qpoly nomial(__isl_take isl_pw_qpolynomial *pwqp);
__isl_give isl_union_pw_qpolynomial *isl_union_pw_qpolynomial_zero( __isl_give isl_union_pw_qpolynomial *isl_union_pw_qpolynomial_zero(
__isl_take isl_space *dim); __isl_take isl_space *dim);
__isl_give isl_union_pw_qpolynomial *isl_union_pw_qpolynomial_add_pw_qpolyn omial( __isl_give isl_union_pw_qpolynomial *isl_union_pw_qpolynomial_add_pw_qpolyn omial(
__isl_take isl_union_pw_qpolynomial *upwqp, __isl_take isl_union_pw_qpolynomial *upwqp,
__isl_take isl_pw_qpolynomial *pwqp); __isl_take isl_pw_qpolynomial *pwqp);
__isl_give isl_union_pw_qpolynomial *isl_union_pw_qpolynomial_copy( __isl_give isl_union_pw_qpolynomial *isl_union_pw_qpolynomial_copy(
__isl_keep isl_union_pw_qpolynomial *upwqp); __isl_keep isl_union_pw_qpolynomial *upwqp);
void isl_union_pw_qpolynomial_free(__isl_take isl_union_pw_qpolynomial *upw qp); void *isl_union_pw_qpolynomial_free(__isl_take isl_union_pw_qpolynomial *up wqp);
__isl_constructor __isl_constructor
__isl_give isl_union_pw_qpolynomial *isl_union_pw_qpolynomial_read_from_str ( __isl_give isl_union_pw_qpolynomial *isl_union_pw_qpolynomial_read_from_str (
isl_ctx *ctx, const char *str); isl_ctx *ctx, const char *str);
__isl_give isl_union_pw_qpolynomial *isl_union_pw_qpolynomial_add( __isl_give isl_union_pw_qpolynomial *isl_union_pw_qpolynomial_add(
__isl_take isl_union_pw_qpolynomial *upwqp1, __isl_take isl_union_pw_qpolynomial *upwqp1,
__isl_take isl_union_pw_qpolynomial *upwqp2); __isl_take isl_union_pw_qpolynomial *upwqp2);
__isl_give isl_union_pw_qpolynomial *isl_union_pw_qpolynomial_sub( __isl_give isl_union_pw_qpolynomial *isl_union_pw_qpolynomial_sub(
__isl_take isl_union_pw_qpolynomial *upwqp1, __isl_take isl_union_pw_qpolynomial *upwqp1,
skipping to change at line 516 skipping to change at line 516
int isl_union_pw_qpolynomial_fold_plain_is_equal( int isl_union_pw_qpolynomial_fold_plain_is_equal(
__isl_keep isl_union_pw_qpolynomial_fold *upwf1, __isl_keep isl_union_pw_qpolynomial_fold *upwf1,
__isl_keep isl_union_pw_qpolynomial_fold *upwf2); __isl_keep isl_union_pw_qpolynomial_fold *upwf2);
__isl_give isl_union_pw_qpolynomial_fold *isl_union_pw_qpolynomial_fold_fro m_pw_qpolynomial_fold(__isl_take isl_pw_qpolynomial_fold *pwf); __isl_give isl_union_pw_qpolynomial_fold *isl_union_pw_qpolynomial_fold_fro m_pw_qpolynomial_fold(__isl_take isl_pw_qpolynomial_fold *pwf);
__isl_give isl_union_pw_qpolynomial_fold *isl_union_pw_qpolynomial_fold_zer o( __isl_give isl_union_pw_qpolynomial_fold *isl_union_pw_qpolynomial_fold_zer o(
__isl_take isl_space *dim, enum isl_fold type); __isl_take isl_space *dim, enum isl_fold type);
__isl_give isl_union_pw_qpolynomial_fold *isl_union_pw_qpolynomial_fold_fol d_pw_qpolynomial_fold( __isl_give isl_union_pw_qpolynomial_fold *isl_union_pw_qpolynomial_fold_fol d_pw_qpolynomial_fold(
__isl_take isl_union_pw_qpolynomial_fold *upwqp, __isl_take isl_union_pw_qpolynomial_fold *upwqp,
__isl_take isl_pw_qpolynomial_fold *pwqp); __isl_take isl_pw_qpolynomial_fold *pwqp);
void isl_union_pw_qpolynomial_fold_free( void *isl_union_pw_qpolynomial_fold_free(
__isl_take isl_union_pw_qpolynomial_fold *upwf); __isl_take isl_union_pw_qpolynomial_fold *upwf);
__isl_give isl_union_pw_qpolynomial_fold *isl_union_pw_qpolynomial_fold_cop y( __isl_give isl_union_pw_qpolynomial_fold *isl_union_pw_qpolynomial_fold_cop y(
__isl_keep isl_union_pw_qpolynomial_fold *upwf); __isl_keep isl_union_pw_qpolynomial_fold *upwf);
__isl_give isl_union_pw_qpolynomial_fold *isl_union_pw_qpolynomial_fold_fol d( __isl_give isl_union_pw_qpolynomial_fold *isl_union_pw_qpolynomial_fold_fol d(
__isl_take isl_union_pw_qpolynomial_fold *upwf1, __isl_take isl_union_pw_qpolynomial_fold *upwf1,
__isl_take isl_union_pw_qpolynomial_fold *upwf2); __isl_take isl_union_pw_qpolynomial_fold *upwf2);
__isl_give isl_union_pw_qpolynomial_fold *isl_union_pw_qpolynomial_fold_add _union_pw_qpolynomial( __isl_give isl_union_pw_qpolynomial_fold *isl_union_pw_qpolynomial_fold_add _union_pw_qpolynomial(
__isl_take isl_union_pw_qpolynomial_fold *upwf, __isl_take isl_union_pw_qpolynomial_fold *upwf,
__isl_take isl_union_pw_qpolynomial *upwqp); __isl_take isl_union_pw_qpolynomial *upwqp);
 End of changes. 3 change blocks. 
3 lines changed or deleted 3 lines changed or added


 polynomial_type.h   polynomial_type.h 
#ifndef ISL_POLYNOMIAL_TYPE_H #ifndef ISL_POLYNOMIAL_TYPE_H
#define ISL_POLYNOMIAL_TYPE_H #define ISL_POLYNOMIAL_TYPE_H
struct isl_qpolynomial; struct isl_qpolynomial;
typedef struct isl_qpolynomial isl_qpolynomial; typedef struct isl_qpolynomial isl_qpolynomial;
struct isl_term; struct isl_term;
typedef struct isl_term isl_term; typedef struct isl_term isl_term;
__isl_export struct __isl_export isl_pw_qpolynomial;
struct isl_pw_qpolynomial;
typedef struct isl_pw_qpolynomial isl_pw_qpolynomial; typedef struct isl_pw_qpolynomial isl_pw_qpolynomial;
enum isl_fold { enum isl_fold {
isl_fold_min, isl_fold_min,
isl_fold_max, isl_fold_max,
isl_fold_list isl_fold_list
}; };
struct isl_qpolynomial_fold; struct isl_qpolynomial_fold;
typedef struct isl_qpolynomial_fold isl_qpolynomial_fold; typedef struct isl_qpolynomial_fold isl_qpolynomial_fold;
struct isl_pw_qpolynomial_fold; struct isl_pw_qpolynomial_fold;
typedef struct isl_pw_qpolynomial_fold isl_pw_qpolynomial_fold; typedef struct isl_pw_qpolynomial_fold isl_pw_qpolynomial_fold;
__isl_export struct __isl_export isl_union_pw_qpolynomial;
struct isl_union_pw_qpolynomial;
typedef struct isl_union_pw_qpolynomial isl_union_pw_qpolynomial; typedef struct isl_union_pw_qpolynomial isl_union_pw_qpolynomial;
struct isl_union_pw_qpolynomial_fold; struct isl_union_pw_qpolynomial_fold;
typedef struct isl_union_pw_qpolynomial_fold isl_union_pw_qpolynomial_fold; typedef struct isl_union_pw_qpolynomial_fold isl_union_pw_qpolynomial_fold;
#endif #endif
 End of changes. 2 change blocks. 
4 lines changed or deleted 2 lines changed or added


 printer.h   printer.h 
skipping to change at line 16 skipping to change at line 16
#if defined(__cplusplus) #if defined(__cplusplus)
extern "C" { extern "C" {
#endif #endif
struct isl_printer; struct isl_printer;
typedef struct isl_printer isl_printer; typedef struct isl_printer isl_printer;
__isl_give isl_printer *isl_printer_to_file(isl_ctx *ctx, FILE *file); __isl_give isl_printer *isl_printer_to_file(isl_ctx *ctx, FILE *file);
__isl_give isl_printer *isl_printer_to_str(isl_ctx *ctx); __isl_give isl_printer *isl_printer_to_str(isl_ctx *ctx);
void isl_printer_free(__isl_take isl_printer *printer); void *isl_printer_free(__isl_take isl_printer *printer);
isl_ctx *isl_printer_get_ctx(__isl_keep isl_printer *printer); isl_ctx *isl_printer_get_ctx(__isl_keep isl_printer *printer);
FILE *isl_printer_get_file(__isl_keep isl_printer *printer);
__isl_give char *isl_printer_get_str(__isl_keep isl_printer *printer); __isl_give char *isl_printer_get_str(__isl_keep isl_printer *printer);
__isl_give isl_printer *isl_printer_set_indent(__isl_take isl_printer *p, __isl_give isl_printer *isl_printer_set_indent(__isl_take isl_printer *p,
int indent); int indent);
__isl_give isl_printer *isl_printer_indent(__isl_take isl_printer *p, __isl_give isl_printer *isl_printer_indent(__isl_take isl_printer *p,
int indent); int indent);
#define ISL_FORMAT_ISL 0 #define ISL_FORMAT_ISL 0
#define ISL_FORMAT_POLYLIB 1 #define ISL_FORMAT_POLYLIB 1
#define ISL_FORMAT_POLYLIB_CONSTRAINTS 2 #define ISL_FORMAT_POLYLIB_CONSTRAINTS 2
#define ISL_FORMAT_OMEGA 3 #define ISL_FORMAT_OMEGA 3
#define ISL_FORMAT_C 4 #define ISL_FORMAT_C 4
#define ISL_FORMAT_LATEX 5 #define ISL_FORMAT_LATEX 5
#define ISL_FORMAT_EXT_POLYLIB 6 #define ISL_FORMAT_EXT_POLYLIB 6
__isl_give isl_printer *isl_printer_set_output_format(__isl_take isl_printe r *p, __isl_give isl_printer *isl_printer_set_output_format(__isl_take isl_printe r *p,
int output_format); int output_format);
int isl_printer_get_output_format(__isl_keep isl_printer *p);
__isl_give isl_printer *isl_printer_set_prefix(__isl_take isl_printer *p, __isl_give isl_printer *isl_printer_set_prefix(__isl_take isl_printer *p,
const char *prefix); const char *prefix);
__isl_give isl_printer *isl_printer_set_suffix(__isl_take isl_printer *p, __isl_give isl_printer *isl_printer_set_suffix(__isl_take isl_printer *p,
const char *suffix); const char *suffix);
__isl_give isl_printer *isl_printer_set_isl_int_width(__isl_take isl_printe r *p, __isl_give isl_printer *isl_printer_set_isl_int_width(__isl_take isl_printe r *p,
int width); int width);
__isl_give isl_printer *isl_printer_start_line(__isl_take isl_printer *p); __isl_give isl_printer *isl_printer_start_line(__isl_take isl_printer *p);
__isl_give isl_printer *isl_printer_end_line(__isl_take isl_printer *p); __isl_give isl_printer *isl_printer_end_line(__isl_take isl_printer *p);
__isl_give isl_printer *isl_printer_print_double(__isl_take isl_printer *p,
double d);
__isl_give isl_printer *isl_printer_print_int(__isl_take isl_printer *p, in t i); __isl_give isl_printer *isl_printer_print_int(__isl_take isl_printer *p, in t i);
__isl_give isl_printer *isl_printer_print_isl_int(__isl_take isl_printer *p , __isl_give isl_printer *isl_printer_print_isl_int(__isl_take isl_printer *p ,
isl_int i); isl_int i);
__isl_give isl_printer *isl_printer_print_str(__isl_take isl_printer *p, __isl_give isl_printer *isl_printer_print_str(__isl_take isl_printer *p,
const char *s); const char *s);
__isl_give isl_printer *isl_printer_flush(__isl_take isl_printer *p); __isl_give isl_printer *isl_printer_flush(__isl_take isl_printer *p);
#if defined(__cplusplus) #if defined(__cplusplus)
} }
 End of changes. 4 change blocks. 
1 lines changed or deleted 5 lines changed or added


 schedule.h   schedule.h 
#ifndef ISL_SCHEDULE_H #ifndef ISL_SCHEDULE_H
#define ISL_SCHEDULE_H #define ISL_SCHEDULE_H
#include <isl/union_set.h> #include <isl/union_set_type.h>
#include <isl/union_map.h> #include <isl/union_map_type.h>
#include <isl/band.h>
#include <isl/list.h> #include <isl/list.h>
#if defined(__cplusplus) #if defined(__cplusplus)
extern "C" { extern "C" {
#endif #endif
struct isl_schedule; struct isl_schedule;
typedef struct isl_schedule isl_schedule; typedef struct isl_schedule isl_schedule;
int isl_options_set_schedule_max_coefficient(isl_ctx *ctx, int val);
int isl_options_get_schedule_max_coefficient(isl_ctx *ctx);
int isl_options_set_schedule_max_constant_term(isl_ctx *ctx, int val); int isl_options_set_schedule_max_constant_term(isl_ctx *ctx, int val);
int isl_options_get_schedule_max_constant_term(isl_ctx *ctx); int isl_options_get_schedule_max_constant_term(isl_ctx *ctx);
int isl_options_set_schedule_maximize_band_depth(isl_ctx *ctx, int val); int isl_options_set_schedule_maximize_band_depth(isl_ctx *ctx, int val);
int isl_options_get_schedule_maximize_band_depth(isl_ctx *ctx); int isl_options_get_schedule_maximize_band_depth(isl_ctx *ctx);
int isl_options_set_schedule_outer_zero_distance(isl_ctx *ctx, int val); int isl_options_set_schedule_outer_zero_distance(isl_ctx *ctx, int val);
int isl_options_get_schedule_outer_zero_distance(isl_ctx *ctx); int isl_options_get_schedule_outer_zero_distance(isl_ctx *ctx);
int isl_options_set_schedule_split_scaled(isl_ctx *ctx, int val);
int isl_options_get_schedule_split_scaled(isl_ctx *ctx);
int isl_options_set_schedule_separate_components(isl_ctx *ctx, int val);
int isl_options_get_schedule_separate_components(isl_ctx *ctx);
#define ISL_SCHEDULE_FUSE_MAX 0
#define ISL_SCHEDULE_FUSE_MIN 1
int isl_options_set_schedule_fuse(isl_ctx *ctx, int val);
int isl_options_get_schedule_fuse(isl_ctx *ctx);
__isl_give isl_schedule *isl_union_set_compute_schedule( __isl_give isl_schedule *isl_union_set_compute_schedule(
__isl_take isl_union_set *domain, __isl_take isl_union_set *domain,
__isl_take isl_union_map *validity, __isl_take isl_union_map *validity,
__isl_take isl_union_map *proximity); __isl_take isl_union_map *proximity);
void *isl_schedule_free(__isl_take isl_schedule *sched); void *isl_schedule_free(__isl_take isl_schedule *sched);
__isl_give isl_union_map *isl_schedule_get_map(__isl_keep isl_schedule *sch ed); __isl_give isl_union_map *isl_schedule_get_map(__isl_keep isl_schedule *sch ed);
isl_ctx *isl_schedule_get_ctx(__isl_keep isl_schedule *sched); isl_ctx *isl_schedule_get_ctx(__isl_keep isl_schedule *sched);
__isl_give isl_band_list *isl_schedule_get_band_forest( __isl_give isl_band_list *isl_schedule_get_band_forest(
__isl_keep isl_schedule *schedule); __isl_keep isl_schedule *schedule);
__isl_give isl_printer *isl_printer_print_schedule(__isl_take isl_printer * p, __isl_give isl_printer *isl_printer_print_schedule(__isl_take isl_printer * p,
__isl_keep isl_schedule *schedule); __isl_keep isl_schedule *schedule);
void isl_schedule_dump(__isl_keep isl_schedule *schedule); void isl_schedule_dump(__isl_keep isl_schedule *schedule);
int isl_schedule_foreach_band(__isl_keep isl_schedule *sched,
int (*fn)(__isl_keep isl_band *band, void *user), void *user);
#if defined(__cplusplus) #if defined(__cplusplus)
} }
#endif #endif
#endif #endif
 End of changes. 4 change blocks. 
2 lines changed or deleted 20 lines changed or added


 seq.h   seq.h 
/* /*
* Copyright 2008-2009 Katholieke Universiteit Leuven * Copyright 2008-2009 Katholieke Universiteit Leuven
* *
* Use of this software is governed by the GNU LGPLv2.1 license * Use of this software is governed by the MIT license
* *
* Written by Sven Verdoolaege, K.U.Leuven, Departement * Written by Sven Verdoolaege, K.U.Leuven, Departement
* Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium * Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium
*/ */
#ifndef ISL_SEQ_H #ifndef ISL_SEQ_H
#define ISL_SEQ_H #define ISL_SEQ_H
#include <sys/types.h> #include <sys/types.h>
#include <isl/int.h> #include <isl/int.h>
#include <isl/ctx.h> #include <isl/ctx.h>
#if defined(__cplusplus) #if defined(__cplusplus)
extern "C" { extern "C" {
#endif #endif
/* Some common operations on sequences of isl_int's */ /* Some common operations on sequences of isl_int's */
void isl_seq_clr(isl_int *p, unsigned len); void isl_seq_clr(isl_int *p, unsigned len);
void isl_seq_set(isl_int *p, isl_int v, unsigned len); void isl_seq_set(isl_int *p, isl_int v, unsigned len);
void isl_seq_set_si(isl_int *p, int v, unsigned len);
void isl_seq_neg(isl_int *dat, isl_int *src, unsigned len); void isl_seq_neg(isl_int *dat, isl_int *src, unsigned len);
void isl_seq_cpy(isl_int *dst, isl_int *src, unsigned len); void isl_seq_cpy(isl_int *dst, isl_int *src, unsigned len);
void isl_seq_addmul(isl_int *dst, isl_int f, isl_int *src, unsigned len); void isl_seq_addmul(isl_int *dst, isl_int f, isl_int *src, unsigned len);
void isl_seq_submul(isl_int *dst, isl_int f, isl_int *src, unsigned len); void isl_seq_submul(isl_int *dst, isl_int f, isl_int *src, unsigned len);
void isl_seq_swp_or_cpy(isl_int *dst, isl_int *src, unsigned len); void isl_seq_swp_or_cpy(isl_int *dst, isl_int *src, unsigned len);
void isl_seq_scale(isl_int *dst, isl_int *src, isl_int f, unsigned len); void isl_seq_scale(isl_int *dst, isl_int *src, isl_int f, unsigned len);
void isl_seq_scale_down(isl_int *dst, isl_int *src, isl_int f, unsigned len ); void isl_seq_scale_down(isl_int *dst, isl_int *src, isl_int f, unsigned len );
void isl_seq_cdiv_q(isl_int *dst, isl_int *src, isl_int m, unsigned len); void isl_seq_cdiv_q(isl_int *dst, isl_int *src, isl_int m, unsigned len);
void isl_seq_fdiv_q(isl_int *dst, isl_int *src, isl_int m, unsigned len); void isl_seq_fdiv_q(isl_int *dst, isl_int *src, isl_int m, unsigned len);
void isl_seq_fdiv_r(isl_int *dst, isl_int *src, isl_int m, unsigned len); void isl_seq_fdiv_r(isl_int *dst, isl_int *src, isl_int m, unsigned len);
void isl_seq_combine(isl_int *dst, isl_int m1, isl_int *src1, void isl_seq_combine(isl_int *dst, isl_int m1, isl_int *src1,
isl_int m2, isl_int *src2, unsigned len); isl_int m2, isl_int *src2, unsigned len);
void isl_seq_elim(isl_int *dst, isl_int *src, unsigned pos, unsigned len, void isl_seq_elim(isl_int *dst, isl_int *src, unsigned pos, unsigned len,
isl_int *m); isl_int *m);
void isl_seq_abs_max(isl_int *p, unsigned len, isl_int *max);
void isl_seq_gcd(isl_int *p, unsigned len, isl_int *gcd); void isl_seq_gcd(isl_int *p, unsigned len, isl_int *gcd);
void isl_seq_lcm(isl_int *p, unsigned len, isl_int *lcm); void isl_seq_lcm(isl_int *p, unsigned len, isl_int *lcm);
void isl_seq_normalize(struct isl_ctx *ctx, isl_int *p, unsigned len); void isl_seq_normalize(struct isl_ctx *ctx, isl_int *p, unsigned len);
void isl_seq_inner_product(isl_int *p1, isl_int *p2, unsigned len, void isl_seq_inner_product(isl_int *p1, isl_int *p2, unsigned len,
isl_int *prod); isl_int *prod);
int isl_seq_first_non_zero(isl_int *p, unsigned len); int isl_seq_first_non_zero(isl_int *p, unsigned len);
int isl_seq_last_non_zero(isl_int *p, unsigned len); int isl_seq_last_non_zero(isl_int *p, unsigned len);
int isl_seq_abs_min_non_zero(isl_int *p, unsigned len); int isl_seq_abs_min_non_zero(isl_int *p, unsigned len);
int isl_seq_eq(isl_int *p1, isl_int *p2, unsigned len); int isl_seq_eq(isl_int *p1, isl_int *p2, unsigned len);
int isl_seq_cmp(isl_int *p1, isl_int *p2, unsigned len); int isl_seq_cmp(isl_int *p1, isl_int *p2, unsigned len);
 End of changes. 3 change blocks. 
1 lines changed or deleted 3 lines changed or added


 set.h   set.h 
/* /*
* Copyright 2008-2009 Katholieke Universiteit Leuven * Copyright 2008-2009 Katholieke Universiteit Leuven
* *
* Use of this software is governed by the GNU LGPLv2.1 license * Use of this software is governed by the MIT license
* *
* Written by Sven Verdoolaege, K.U.Leuven, Departement * Written by Sven Verdoolaege, K.U.Leuven, Departement
* Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium * Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium
*/ */
#ifndef ISL_SET_H #ifndef ISL_SET_H
#define ISL_SET_H #define ISL_SET_H
#include <isl/map_type.h> #include <isl/map_type.h>
#include <isl/aff_type.h> #include <isl/aff_type.h>
skipping to change at line 48 skipping to change at line 48
__isl_give isl_set *isl_set_reset_space(__isl_take isl_set *set, __isl_give isl_set *isl_set_reset_space(__isl_take isl_set *set,
__isl_take isl_space *dim); __isl_take isl_space *dim);
__isl_give isl_aff *isl_basic_set_get_div(__isl_keep isl_basic_set *bset, __isl_give isl_aff *isl_basic_set_get_div(__isl_keep isl_basic_set *bset,
int pos); int pos);
__isl_give isl_local_space *isl_basic_set_get_local_space( __isl_give isl_local_space *isl_basic_set_get_local_space(
__isl_keep isl_basic_set *bset); __isl_keep isl_basic_set *bset);
const char *isl_basic_set_get_tuple_name(__isl_keep isl_basic_set *bset); const char *isl_basic_set_get_tuple_name(__isl_keep isl_basic_set *bset);
int isl_set_has_tuple_name(__isl_keep isl_set *set);
const char *isl_set_get_tuple_name(__isl_keep isl_set *set); const char *isl_set_get_tuple_name(__isl_keep isl_set *set);
__isl_give isl_basic_set *isl_basic_set_set_tuple_name( __isl_give isl_basic_set *isl_basic_set_set_tuple_name(
__isl_take isl_basic_set *set, const char *s); __isl_take isl_basic_set *set, const char *s);
__isl_give isl_set *isl_set_set_tuple_name(__isl_take isl_set *set, __isl_give isl_set *isl_set_set_tuple_name(__isl_take isl_set *set,
const char *s); const char *s);
const char *isl_basic_set_get_dim_name(__isl_keep isl_basic_set *bset, const char *isl_basic_set_get_dim_name(__isl_keep isl_basic_set *bset,
enum isl_dim_type type, unsigned pos); enum isl_dim_type type, unsigned pos);
__isl_give isl_basic_set *isl_basic_set_set_dim_name( __isl_give isl_basic_set *isl_basic_set_set_dim_name(
__isl_take isl_basic_set *bset, __isl_take isl_basic_set *bset,
enum isl_dim_type type, unsigned pos, const char *s); enum isl_dim_type type, unsigned pos, const char *s);
int isl_set_has_dim_name(__isl_keep isl_set *set,
enum isl_dim_type type, unsigned pos);
const char *isl_set_get_dim_name(__isl_keep isl_set *set, const char *isl_set_get_dim_name(__isl_keep isl_set *set,
enum isl_dim_type type, unsigned pos); enum isl_dim_type type, unsigned pos);
__isl_give isl_set *isl_set_set_dim_name(__isl_take isl_set *set, __isl_give isl_set *isl_set_set_dim_name(__isl_take isl_set *set,
enum isl_dim_type type, unsigned pos, const char *s); enum isl_dim_type type, unsigned pos, const char *s);
__isl_give isl_id *isl_basic_set_get_dim_id(__isl_keep isl_basic_set *bset,
enum isl_dim_type type, unsigned pos);
__isl_give isl_set *isl_set_set_dim_id(__isl_take isl_set *set, __isl_give isl_set *isl_set_set_dim_id(__isl_take isl_set *set,
enum isl_dim_type type, unsigned pos, __isl_take isl_id *id); enum isl_dim_type type, unsigned pos, __isl_take isl_id *id);
int isl_set_has_dim_id(__isl_keep isl_set *set, int isl_set_has_dim_id(__isl_keep isl_set *set,
enum isl_dim_type type, unsigned pos); enum isl_dim_type type, unsigned pos);
__isl_give isl_id *isl_set_get_dim_id(__isl_keep isl_set *set, __isl_give isl_id *isl_set_get_dim_id(__isl_keep isl_set *set,
enum isl_dim_type type, unsigned pos); enum isl_dim_type type, unsigned pos);
__isl_give isl_set *isl_set_set_tuple_id(__isl_take isl_set *set, __isl_give isl_set *isl_set_set_tuple_id(__isl_take isl_set *set,
__isl_take isl_id *id); __isl_take isl_id *id);
__isl_give isl_set *isl_set_reset_tuple_id(__isl_take isl_set *set); __isl_give isl_set *isl_set_reset_tuple_id(__isl_take isl_set *set);
int isl_set_has_tuple_id(__isl_keep isl_set *set); int isl_set_has_tuple_id(__isl_keep isl_set *set);
skipping to change at line 91 skipping to change at line 96
struct isl_basic_set *isl_basic_set_alloc(struct isl_ctx *ctx, struct isl_basic_set *isl_basic_set_alloc(struct isl_ctx *ctx,
unsigned nparam, unsigned dim, unsigned extra, unsigned nparam, unsigned dim, unsigned extra,
unsigned n_eq, unsigned n_ineq); unsigned n_eq, unsigned n_ineq);
struct isl_basic_set *isl_basic_set_extend(struct isl_basic_set *base, struct isl_basic_set *isl_basic_set_extend(struct isl_basic_set *base,
unsigned nparam, unsigned dim, unsigned extra, unsigned nparam, unsigned dim, unsigned extra,
unsigned n_eq, unsigned n_ineq); unsigned n_eq, unsigned n_ineq);
struct isl_basic_set *isl_basic_set_extend_constraints( struct isl_basic_set *isl_basic_set_extend_constraints(
struct isl_basic_set *base, unsigned n_eq, unsigned n_ineq); struct isl_basic_set *base, unsigned n_eq, unsigned n_ineq);
struct isl_basic_set *isl_basic_set_finalize(struct isl_basic_set *bset); struct isl_basic_set *isl_basic_set_finalize(struct isl_basic_set *bset);
void isl_basic_set_free(__isl_take isl_basic_set *bset); void *isl_basic_set_free(__isl_take isl_basic_set *bset);
__isl_give isl_basic_set *isl_basic_set_copy(__isl_keep isl_basic_set *bset ); __isl_give isl_basic_set *isl_basic_set_copy(__isl_keep isl_basic_set *bset );
struct isl_basic_set *isl_basic_set_dup(struct isl_basic_set *bset); struct isl_basic_set *isl_basic_set_dup(struct isl_basic_set *bset);
__isl_give isl_basic_set *isl_basic_set_empty(__isl_take isl_space *dim); __isl_give isl_basic_set *isl_basic_set_empty(__isl_take isl_space *dim);
struct isl_basic_set *isl_basic_set_empty_like(struct isl_basic_set *bset); struct isl_basic_set *isl_basic_set_empty_like(struct isl_basic_set *bset);
__isl_give isl_basic_set *isl_basic_set_universe(__isl_take isl_space *dim) ; __isl_give isl_basic_set *isl_basic_set_universe(__isl_take isl_space *dim) ;
__isl_give isl_basic_set *isl_basic_set_nat_universe(__isl_take isl_space * dim); __isl_give isl_basic_set *isl_basic_set_nat_universe(__isl_take isl_space * dim);
struct isl_basic_set *isl_basic_set_universe_like(struct isl_basic_set *bse t); struct isl_basic_set *isl_basic_set_universe_like(struct isl_basic_set *bse t);
__isl_give isl_basic_set *isl_basic_set_universe_like_set( __isl_give isl_basic_set *isl_basic_set_universe_like_set(
__isl_keep isl_set *model); __isl_keep isl_set *model);
struct isl_basic_set *isl_basic_set_interval(struct isl_ctx *ctx, struct isl_basic_set *isl_basic_set_interval(struct isl_ctx *ctx,
skipping to change at line 118 skipping to change at line 123
__isl_give isl_basic_set *isl_basic_set_intersect( __isl_give isl_basic_set *isl_basic_set_intersect(
__isl_take isl_basic_set *bset1, __isl_take isl_basic_set *bset1,
__isl_take isl_basic_set *bset2); __isl_take isl_basic_set *bset2);
__isl_export __isl_export
__isl_give isl_basic_set *isl_basic_set_intersect_params( __isl_give isl_basic_set *isl_basic_set_intersect_params(
__isl_take isl_basic_set *bset1, __isl_take isl_basic_set *bset2); __isl_take isl_basic_set *bset1, __isl_take isl_basic_set *bset2);
__isl_export __isl_export
__isl_give isl_basic_set *isl_basic_set_apply( __isl_give isl_basic_set *isl_basic_set_apply(
__isl_take isl_basic_set *bset, __isl_take isl_basic_set *bset,
__isl_take isl_basic_map *bmap); __isl_take isl_basic_map *bmap);
__isl_give isl_basic_set *isl_basic_set_preimage_multi_aff(
__isl_take isl_basic_set *bset, __isl_take isl_multi_aff *ma);
__isl_export __isl_export
__isl_give isl_basic_set *isl_basic_set_affine_hull( __isl_give isl_basic_set *isl_basic_set_affine_hull(
__isl_take isl_basic_set *bset); __isl_take isl_basic_set *bset);
__isl_give isl_basic_set *isl_basic_set_remove_dims( __isl_give isl_basic_set *isl_basic_set_remove_dims(
__isl_take isl_basic_set *bset, __isl_take isl_basic_set *bset,
enum isl_dim_type type, unsigned first, unsigned n); enum isl_dim_type type, unsigned first, unsigned n);
__isl_export
__isl_give isl_basic_set *isl_basic_set_sample(__isl_take isl_basic_set *bs
et);
struct isl_basic_set *isl_basic_set_simplify(struct isl_basic_set *bset); struct isl_basic_set *isl_basic_set_simplify(struct isl_basic_set *bset);
__isl_export __isl_export
__isl_give isl_basic_set *isl_basic_set_detect_equalities( __isl_give isl_basic_set *isl_basic_set_detect_equalities(
__isl_take isl_basic_set *bs et); __isl_take isl_basic_set *bs et);
__isl_give isl_basic_set *isl_basic_set_remove_redundancies( __isl_give isl_basic_set *isl_basic_set_remove_redundancies(
__isl_take isl_basic_set *bset); __isl_take isl_basic_set *bset);
__isl_give isl_set *isl_set_remove_redundancies(__isl_take isl_set *set); __isl_give isl_set *isl_set_remove_redundancies(__isl_take isl_set *set);
__isl_give isl_basic_set *isl_basic_set_list_product( __isl_give isl_basic_set *isl_basic_set_list_product(
__isl_take struct isl_basic_set_list *list); __isl_take struct isl_basic_set_list *list);
skipping to change at line 160 skipping to change at line 169
void isl_set_print(__isl_keep struct isl_set *set, FILE *out, int indent, void isl_set_print(__isl_keep struct isl_set *set, FILE *out, int indent,
unsigned output_format); unsigned output_format);
__isl_give isl_basic_set *isl_basic_set_fix(__isl_take isl_basic_set *bset, __isl_give isl_basic_set *isl_basic_set_fix(__isl_take isl_basic_set *bset,
enum isl_dim_type type, unsigned pos, isl_int value); enum isl_dim_type type, unsigned pos, isl_int value);
__isl_give isl_basic_set *isl_basic_set_fix_si(__isl_take isl_basic_set *bs et, __isl_give isl_basic_set *isl_basic_set_fix_si(__isl_take isl_basic_set *bs et,
enum isl_dim_type type, unsigned pos, int value); enum isl_dim_type type, unsigned pos, int value);
__isl_give isl_set *isl_set_fix_si(__isl_take isl_set *set, __isl_give isl_set *isl_set_fix_si(__isl_take isl_set *set,
enum isl_dim_type type, unsigned pos, int value); enum isl_dim_type type, unsigned pos, int value);
__isl_give isl_set *isl_set_lower_bound_si(__isl_take isl_set *set, __isl_give isl_set *isl_set_lower_bound_si(__isl_take isl_set *set,
enum isl_dim_type type, unsigned pos, int value); enum isl_dim_type type, unsigned pos, int value);
__isl_give isl_set *isl_set_lower_bound(__isl_take isl_set *set,
enum isl_dim_type type, unsigned pos, isl_int value);
__isl_give isl_set *isl_set_upper_bound_si(__isl_take isl_set *set, __isl_give isl_set *isl_set_upper_bound_si(__isl_take isl_set *set,
enum isl_dim_type type, unsigned pos, int value); enum isl_dim_type type, unsigned pos, int value);
__isl_give isl_set *isl_set_upper_bound(__isl_take isl_set *set,
enum isl_dim_type type, unsigned pos, isl_int value);
__isl_give isl_set *isl_set_equate(__isl_take isl_set *set, __isl_give isl_set *isl_set_equate(__isl_take isl_set *set,
enum isl_dim_type type1, int pos1, enum isl_dim_type type2, int pos2 ); enum isl_dim_type type1, int pos1, enum isl_dim_type type2, int pos2 );
struct isl_basic_set *isl_basic_set_from_underlying_set( struct isl_basic_set *isl_basic_set_from_underlying_set(
struct isl_basic_set *bset, struct isl_basic_set *like); struct isl_basic_set *bset, struct isl_basic_set *like);
struct isl_set *isl_set_from_underlying_set( struct isl_set *isl_set_from_underlying_set(
struct isl_set *set, struct isl_basic_set *like); struct isl_set *set, struct isl_basic_set *like);
struct isl_set *isl_set_to_underlying_set(struct isl_set *set); struct isl_set *isl_set_to_underlying_set(struct isl_set *set);
skipping to change at line 214 skipping to change at line 227
__isl_give isl_set *isl_basic_set_union( __isl_give isl_set *isl_basic_set_union(
__isl_take isl_basic_set *bset1, __isl_take isl_basic_set *bset1,
__isl_take isl_basic_set *bset2); __isl_take isl_basic_set *bset2);
int isl_basic_set_compare_at(struct isl_basic_set *bset1, int isl_basic_set_compare_at(struct isl_basic_set *bset1,
struct isl_basic_set *bset2, int pos); struct isl_basic_set *bset2, int pos);
int isl_set_follows_at(__isl_keep isl_set *set1, int isl_set_follows_at(__isl_keep isl_set *set1,
__isl_keep isl_set *set2, int pos); __isl_keep isl_set *set2, int pos);
__isl_give isl_basic_set *isl_basic_set_params(__isl_take isl_basic_set *bs et); __isl_give isl_basic_set *isl_basic_set_params(__isl_take isl_basic_set *bs et);
__isl_give isl_basic_set *isl_basic_set_from_params(
__isl_take isl_basic_set *bset);
__isl_give isl_set *isl_set_params(__isl_take isl_set *set); __isl_give isl_set *isl_set_params(__isl_take isl_set *set);
__isl_give isl_set *isl_set_from_params(__isl_take isl_set *set); __isl_give isl_set *isl_set_from_params(__isl_take isl_set *set);
int isl_basic_set_dims_get_sign(__isl_keep isl_basic_set *bset, int isl_basic_set_dims_get_sign(__isl_keep isl_basic_set *bset,
enum isl_dim_type type, unsigned pos, unsigned n, int *signs); enum isl_dim_type type, unsigned pos, unsigned n, int *signs);
int isl_basic_set_is_universe(__isl_keep isl_basic_set *bset); int isl_basic_set_is_universe(__isl_keep isl_basic_set *bset);
int isl_basic_set_plain_is_empty(__isl_keep isl_basic_set *bset); int isl_basic_set_plain_is_empty(__isl_keep isl_basic_set *bset);
int isl_basic_set_fast_is_empty(__isl_keep isl_basic_set *bset); int isl_basic_set_fast_is_empty(__isl_keep isl_basic_set *bset);
__isl_export __isl_export
int isl_basic_set_is_empty(__isl_keep isl_basic_set *bset); int isl_basic_set_is_empty(__isl_keep isl_basic_set *bset);
int isl_basic_set_is_bounded(__isl_keep isl_basic_set *bset); int isl_basic_set_is_bounded(__isl_keep isl_basic_set *bset);
__isl_export
int isl_basic_set_is_subset(__isl_keep isl_basic_set *bset1,
__isl_keep isl_basic_set *bset2);
struct isl_set *isl_set_alloc(struct isl_ctx *ctx, struct isl_set *isl_set_alloc(struct isl_ctx *ctx,
unsigned nparam, unsigned dim, int n, unsigned flags); unsigned nparam, unsigned dim, int n, unsigned flags);
struct isl_set *isl_set_extend(struct isl_set *base, struct isl_set *isl_set_extend(struct isl_set *base,
unsigned nparam, unsigned dim); unsigned nparam, unsigned dim);
__isl_give isl_set *isl_set_empty(__isl_take isl_space *dim); __isl_give isl_set *isl_set_empty(__isl_take isl_space *dim);
struct isl_set *isl_set_empty_like(struct isl_set *set); struct isl_set *isl_set_empty_like(struct isl_set *set);
__isl_give isl_set *isl_set_universe(__isl_take isl_space *dim); __isl_give isl_set *isl_set_universe(__isl_take isl_space *dim);
__isl_give isl_set *isl_set_nat_universe(__isl_take isl_space *dim); __isl_give isl_set *isl_set_nat_universe(__isl_take isl_space *dim);
__isl_give isl_set *isl_set_universe_like(__isl_keep isl_set *model); __isl_give isl_set *isl_set_universe_like(__isl_keep isl_set *model);
__isl_give isl_set *isl_set_add_basic_set(__isl_take isl_set *set, __isl_give isl_set *isl_set_add_basic_set(__isl_take isl_set *set,
__isl_take isl_basic_set *bs et); __isl_take isl_basic_set *bs et);
struct isl_set *isl_set_finalize(struct isl_set *set); struct isl_set *isl_set_finalize(struct isl_set *set);
__isl_give isl_set *isl_set_copy(__isl_keep isl_set *set); __isl_give isl_set *isl_set_copy(__isl_keep isl_set *set);
void isl_set_free(__isl_take isl_set *set); void *isl_set_free(__isl_take isl_set *set);
struct isl_set *isl_set_dup(struct isl_set *set); struct isl_set *isl_set_dup(struct isl_set *set);
__isl_constructor __isl_constructor
__isl_give isl_set *isl_set_from_basic_set(__isl_take isl_basic_set *bset); __isl_give isl_set *isl_set_from_basic_set(__isl_take isl_basic_set *bset);
__isl_export
__isl_give isl_basic_set *isl_set_sample(__isl_take isl_set *set); __isl_give isl_basic_set *isl_set_sample(__isl_take isl_set *set);
__isl_give isl_point *isl_basic_set_sample_point(__isl_take isl_basic_set * bset); __isl_give isl_point *isl_basic_set_sample_point(__isl_take isl_basic_set * bset);
__isl_give isl_point *isl_set_sample_point(__isl_take isl_set *set); __isl_give isl_point *isl_set_sample_point(__isl_take isl_set *set);
__isl_export __isl_export
__isl_give isl_set *isl_set_detect_equalities(__isl_take isl_set *set); __isl_give isl_set *isl_set_detect_equalities(__isl_take isl_set *set);
__isl_export __isl_export
__isl_give isl_basic_set *isl_set_affine_hull(__isl_take isl_set *set); __isl_give isl_basic_set *isl_set_affine_hull(__isl_take isl_set *set);
__isl_give isl_basic_set *isl_set_convex_hull(__isl_take isl_set *set); __isl_give isl_basic_set *isl_set_convex_hull(__isl_take isl_set *set);
__isl_export __isl_export
__isl_give isl_basic_set *isl_set_polyhedral_hull(__isl_take isl_set *set); __isl_give isl_basic_set *isl_set_polyhedral_hull(__isl_take isl_set *set);
__isl_give isl_basic_set *isl_set_simple_hull(__isl_take isl_set *set); __isl_give isl_basic_set *isl_set_simple_hull(__isl_take isl_set *set);
__isl_give isl_basic_set *isl_set_unshifted_simple_hull(
__isl_take isl_set *set);
struct isl_basic_set *isl_set_bounded_simple_hull(struct isl_set *set); struct isl_basic_set *isl_set_bounded_simple_hull(struct isl_set *set);
__isl_give isl_set *isl_set_recession_cone(__isl_take isl_set *set); __isl_give isl_set *isl_set_recession_cone(__isl_take isl_set *set);
struct isl_set *isl_set_union_disjoint( struct isl_set *isl_set_union_disjoint(
struct isl_set *set1, struct isl_set *set2); struct isl_set *set1, struct isl_set *set2);
__isl_export __isl_export
__isl_give isl_set *isl_set_union( __isl_give isl_set *isl_set_union(
__isl_take isl_set *set1, __isl_take isl_set *set1,
__isl_take isl_set *set2); __isl_take isl_set *set2);
__isl_give isl_set *isl_set_product(__isl_take isl_set *set1, __isl_give isl_set *isl_set_product(__isl_take isl_set *set1,
skipping to change at line 287 skipping to change at line 308
__isl_export __isl_export
__isl_give isl_set *isl_set_subtract( __isl_give isl_set *isl_set_subtract(
__isl_take isl_set *set1, __isl_take isl_set *set1,
__isl_take isl_set *set2); __isl_take isl_set *set2);
__isl_export __isl_export
__isl_give isl_set *isl_set_complement(__isl_take isl_set *set); __isl_give isl_set *isl_set_complement(__isl_take isl_set *set);
__isl_export __isl_export
__isl_give isl_set *isl_set_apply( __isl_give isl_set *isl_set_apply(
__isl_take isl_set *set, __isl_take isl_set *set,
__isl_take isl_map *map); __isl_take isl_map *map);
__isl_give isl_set *isl_set_preimage_multi_aff(__isl_take isl_set *set,
__isl_take isl_multi_aff *ma);
__isl_give isl_set *isl_set_preimage_pw_multi_aff(__isl_take isl_set *set,
__isl_take isl_pw_multi_aff *pma);
__isl_give isl_set *isl_set_fix(__isl_take isl_set *set, __isl_give isl_set *isl_set_fix(__isl_take isl_set *set,
enum isl_dim_type type, unsigned pos, isl_int value); enum isl_dim_type type, unsigned pos, isl_int value);
struct isl_set *isl_set_fix_dim_si(struct isl_set *set, struct isl_set *isl_set_fix_dim_si(struct isl_set *set,
unsigned dim, int value); unsigned dim, int value);
struct isl_set *isl_set_lower_bound_dim(struct isl_set *set, struct isl_set *isl_set_lower_bound_dim(struct isl_set *set,
unsigned dim, isl_int value); unsigned dim, isl_int value);
__isl_give isl_basic_set *isl_basic_set_insert_dims(
__isl_take isl_basic_set *bset,
enum isl_dim_type type, unsigned pos, unsigned n);
__isl_give isl_set *isl_set_insert_dims(__isl_take isl_set *set, __isl_give isl_set *isl_set_insert_dims(__isl_take isl_set *set,
enum isl_dim_type type, unsigned pos, unsigned n); enum isl_dim_type type, unsigned pos, unsigned n);
__isl_give isl_basic_set *isl_basic_set_add(__isl_take isl_basic_set *bset, __isl_give isl_basic_set *isl_basic_set_add_dims(__isl_take isl_basic_set * bset,
enum isl_dim_type type, unsigned n); enum isl_dim_type type, unsigned n);
/* deprecated */
__isl_give isl_basic_set *isl_basic_set_add(__isl_take isl_basic_set *bset,
enum isl_dim_type type, unsigned n);
__isl_give isl_set *isl_set_add_dims(__isl_take isl_set *set, __isl_give isl_set *isl_set_add_dims(__isl_take isl_set *set,
enum isl_dim_type type, unsigned n); enum isl_dim_type type, unsigned n);
__isl_give isl_basic_set *isl_basic_set_move_dims(__isl_take isl_basic_set *bset, __isl_give isl_basic_set *isl_basic_set_move_dims(__isl_take isl_basic_set *bset,
enum isl_dim_type dst_type, unsigned dst_pos, enum isl_dim_type dst_type, unsigned dst_pos,
enum isl_dim_type src_type, unsigned src_pos, unsigned n); enum isl_dim_type src_type, unsigned src_pos, unsigned n);
__isl_give isl_set *isl_set_move_dims(__isl_take isl_set *set, __isl_give isl_set *isl_set_move_dims(__isl_take isl_set *set,
enum isl_dim_type dst_type, unsigned dst_pos, enum isl_dim_type dst_type, unsigned dst_pos,
enum isl_dim_type src_type, unsigned src_pos, unsigned n); enum isl_dim_type src_type, unsigned src_pos, unsigned n);
__isl_give isl_basic_set *isl_basic_set_project_out( __isl_give isl_basic_set *isl_basic_set_project_out(
__isl_take isl_basic_set *bset, __isl_take isl_basic_set *bset,
enum isl_dim_type type, unsigned first, unsigned n); enum isl_dim_type type, unsigned first, unsigned n);
__isl_give isl_set *isl_set_project_out(__isl_take isl_set *set, __isl_give isl_set *isl_set_project_out(__isl_take isl_set *set,
enum isl_dim_type type, unsigned first, unsigned n); enum isl_dim_type type, unsigned first, unsigned n);
__isl_give isl_basic_set *isl_basic_set_remove_divs( __isl_give isl_basic_set *isl_basic_set_remove_divs(
__isl_take isl_basic_set *bset); __isl_take isl_basic_set *bset);
__isl_give isl_basic_set *isl_basic_set_eliminate(
__isl_take isl_basic_set *bset,
enum isl_dim_type type, unsigned first, unsigned n);
__isl_give isl_set *isl_set_eliminate(__isl_take isl_set *set, __isl_give isl_set *isl_set_eliminate(__isl_take isl_set *set,
enum isl_dim_type type, unsigned first, unsigned n); enum isl_dim_type type, unsigned first, unsigned n);
struct isl_set *isl_set_eliminate_dims(struct isl_set *set, struct isl_set *isl_set_eliminate_dims(struct isl_set *set,
unsigned first, unsigned n); unsigned first, unsigned n);
__isl_give isl_set *isl_set_remove_dims(__isl_take isl_set *bset, __isl_give isl_set *isl_set_remove_dims(__isl_take isl_set *bset,
enum isl_dim_type type, unsigned first, unsigned n); enum isl_dim_type type, unsigned first, unsigned n);
__isl_give isl_basic_set *isl_basic_set_remove_divs_involving_dims(
__isl_take isl_basic_set *bset,
enum isl_dim_type type, unsigned first, unsigned n);
__isl_give isl_set *isl_set_remove_divs_involving_dims(__isl_take isl_set * set, __isl_give isl_set *isl_set_remove_divs_involving_dims(__isl_take isl_set * set,
enum isl_dim_type type, unsigned first, unsigned n); enum isl_dim_type type, unsigned first, unsigned n);
__isl_give isl_basic_set *isl_basic_set_remove_unknown_divs(
__isl_take isl_basic_set *bset);
__isl_give isl_set *isl_set_remove_unknown_divs(__isl_take isl_set *set); __isl_give isl_set *isl_set_remove_unknown_divs(__isl_take isl_set *set);
__isl_give isl_set *isl_set_remove_divs(__isl_take isl_set *set); __isl_give isl_set *isl_set_remove_divs(__isl_take isl_set *set);
__isl_give isl_set *isl_set_split_dims(__isl_take isl_set *set, __isl_give isl_set *isl_set_split_dims(__isl_take isl_set *set,
enum isl_dim_type type, unsigned first, unsigned n); enum isl_dim_type type, unsigned first, unsigned n);
__isl_give isl_basic_set *isl_basic_set_drop_constraints_involving_dims(
__isl_take isl_basic_set *bset,
enum isl_dim_type type, unsigned first, unsigned n);
__isl_give isl_basic_set *isl_basic_set_drop_constraints_not_involving_dims
(
__isl_take isl_basic_set *bset,
enum isl_dim_type type, unsigned first, unsigned n);
__isl_give isl_set *isl_set_drop_constraints_involving_dims(
__isl_take isl_set *set,
enum isl_dim_type type, unsigned first, unsigned n);
int isl_basic_set_involves_dims(__isl_keep isl_basic_set *bset, int isl_basic_set_involves_dims(__isl_keep isl_basic_set *bset,
enum isl_dim_type type, unsigned first, unsigned n); enum isl_dim_type type, unsigned first, unsigned n);
int isl_set_involves_dims(__isl_keep isl_set *set, int isl_set_involves_dims(__isl_keep isl_set *set,
enum isl_dim_type type, unsigned first, unsigned n); enum isl_dim_type type, unsigned first, unsigned n);
void isl_set_print_internal(__isl_keep isl_set *set, FILE *out, int indent) ; void isl_set_print_internal(__isl_keep isl_set *set, FILE *out, int indent) ;
int isl_set_plain_is_empty(__isl_keep isl_set *set); int isl_set_plain_is_empty(__isl_keep isl_set *set);
int isl_set_fast_is_empty(__isl_keep isl_set *set); int isl_set_fast_is_empty(__isl_keep isl_set *set);
int isl_set_plain_is_universe(__isl_keep isl_set *set); int isl_set_plain_is_universe(__isl_keep isl_set *set);
int isl_set_fast_is_universe(__isl_keep isl_set *set); int isl_set_fast_is_universe(__isl_keep isl_set *set);
int isl_set_is_params(__isl_keep isl_set *set); int isl_set_is_params(__isl_keep isl_set *set);
__isl_export __isl_export
int isl_set_is_empty(__isl_keep isl_set *set); int isl_set_is_empty(__isl_keep isl_set *set);
int isl_set_is_bounded(__isl_keep isl_set *set); int isl_set_is_bounded(__isl_keep isl_set *set);
__isl_export __isl_export
int isl_set_is_subset(__isl_keep isl_set *set1, __isl_keep isl_set *set2); int isl_set_is_subset(__isl_keep isl_set *set1, __isl_keep isl_set *set2);
__isl_export __isl_export
int isl_set_is_strict_subset(__isl_keep isl_set *set1, __isl_keep isl_set * set2); int isl_set_is_strict_subset(__isl_keep isl_set *set1, __isl_keep isl_set * set2);
__isl_export __isl_export
int isl_set_is_equal(__isl_keep isl_set *set1, __isl_keep isl_set *set2); int isl_set_is_equal(__isl_keep isl_set *set1, __isl_keep isl_set *set2);
__isl_export
int isl_set_is_disjoint(__isl_keep isl_set *set1, __isl_keep isl_set *set2)
;
int isl_set_is_singleton(__isl_keep isl_set *set); int isl_set_is_singleton(__isl_keep isl_set *set);
int isl_set_is_box(__isl_keep isl_set *set); int isl_set_is_box(__isl_keep isl_set *set);
int isl_set_has_equal_space(__isl_keep isl_set *set1, __isl_keep isl_set *s et2); int isl_set_has_equal_space(__isl_keep isl_set *set1, __isl_keep isl_set *s et2);
__isl_give isl_set *isl_set_sum(__isl_take isl_set *set1, __isl_give isl_set *isl_set_sum(__isl_take isl_set *set1,
__isl_take isl_set *set2); __isl_take isl_set *set2);
__isl_give isl_basic_set *isl_basic_set_neg(__isl_take isl_basic_set *bset) ; __isl_give isl_basic_set *isl_basic_set_neg(__isl_take isl_basic_set *bset) ;
__isl_give isl_set *isl_set_neg(__isl_take isl_set *set); __isl_give isl_set *isl_set_neg(__isl_take isl_set *set);
__isl_give isl_set *isl_set_make_disjoint(__isl_take isl_set *set); __isl_give isl_set *isl_set_make_disjoint(__isl_take isl_set *set);
skipping to change at line 380 skipping to change at line 431
int isl_set_fast_dim_is_fixed(__isl_keep isl_set *set, int isl_set_fast_dim_is_fixed(__isl_keep isl_set *set,
unsigned dim, isl_int *val); unsigned dim, isl_int *val);
int isl_set_plain_dim_has_fixed_lower_bound(__isl_keep isl_set *set, int isl_set_plain_dim_has_fixed_lower_bound(__isl_keep isl_set *set,
unsigned dim, isl_int *val); unsigned dim, isl_int *val);
int isl_set_dim_is_bounded(__isl_keep isl_set *set, int isl_set_dim_is_bounded(__isl_keep isl_set *set,
enum isl_dim_type type, unsigned pos); enum isl_dim_type type, unsigned pos);
int isl_set_dim_has_lower_bound(__isl_keep isl_set *set, int isl_set_dim_has_lower_bound(__isl_keep isl_set *set,
enum isl_dim_type type, unsigned pos); enum isl_dim_type type, unsigned pos);
int isl_set_dim_has_upper_bound(__isl_keep isl_set *set, int isl_set_dim_has_upper_bound(__isl_keep isl_set *set,
enum isl_dim_type type, unsigned pos); enum isl_dim_type type, unsigned pos);
int isl_set_dim_has_any_lower_bound(__isl_keep isl_set *set,
enum isl_dim_type type, unsigned pos);
int isl_set_dim_has_any_upper_bound(__isl_keep isl_set *set,
enum isl_dim_type type, unsigned pos);
__isl_export __isl_export
__isl_give isl_basic_set *isl_basic_set_gist(__isl_take isl_basic_set *bset , __isl_give isl_basic_set *isl_basic_set_gist(__isl_take isl_basic_set *bset ,
__isl_take isl_basic_set *contex t); __isl_take isl_basic_set *contex t);
__isl_give isl_set *isl_set_gist_basic_set(__isl_take isl_set *set, __isl_give isl_set *isl_set_gist_basic_set(__isl_take isl_set *set,
__isl_take isl_basic_set *context); __isl_take isl_basic_set *context);
__isl_export __isl_export
__isl_give isl_set *isl_set_gist(__isl_take isl_set *set, __isl_give isl_set *isl_set_gist(__isl_take isl_set *set,
__isl_take isl_set *context); __isl_take isl_set *context);
__isl_give isl_set *isl_set_gist_params(__isl_take isl_set *set, __isl_give isl_set *isl_set_gist_params(__isl_take isl_set *set,
__isl_take isl_set *context); __isl_take isl_set *context);
int isl_basic_set_dim_residue_class(struct isl_basic_set *bset, int isl_basic_set_dim_residue_class(struct isl_basic_set *bset,
int pos, isl_int *modulo, isl_int *residue); int pos, isl_int *modulo, isl_int *residue);
int isl_set_dim_residue_class(struct isl_set *set, int isl_set_dim_residue_class(struct isl_set *set,
int pos, isl_int *modulo, isl_int *residue); int pos, isl_int *modulo, isl_int *residue);
__isl_export __isl_export
__isl_give isl_set *isl_set_coalesce(__isl_take isl_set *set); __isl_give isl_set *isl_set_coalesce(__isl_take isl_set *set);
int isl_set_plain_cmp(__isl_keep isl_set *set1, __isl_keep isl_set *set2);
int isl_set_plain_is_equal(__isl_keep isl_set *set1, __isl_keep isl_set *se t2); int isl_set_plain_is_equal(__isl_keep isl_set *set1, __isl_keep isl_set *se t2);
int isl_set_fast_is_equal(__isl_keep isl_set *set1, __isl_keep isl_set *set 2); int isl_set_fast_is_equal(__isl_keep isl_set *set1, __isl_keep isl_set *set 2);
int isl_set_plain_is_disjoint(__isl_keep isl_set *set1, int isl_set_plain_is_disjoint(__isl_keep isl_set *set1,
__isl_keep isl_set *set2); __isl_keep isl_set *set2);
int isl_set_fast_is_disjoint(__isl_keep isl_set *set1, int isl_set_fast_is_disjoint(__isl_keep isl_set *set1,
__isl_keep isl_set *set2); __isl_keep isl_set *set2);
uint32_t isl_set_get_hash(struct isl_set *set); uint32_t isl_set_get_hash(struct isl_set *set);
int isl_set_dim_is_unique(struct isl_set *set, unsigned dim); int isl_set_dim_is_unique(struct isl_set *set, unsigned dim);
skipping to change at line 443 skipping to change at line 499
__isl_take isl_set *set2); __isl_take isl_set *set2);
__isl_give isl_map *isl_set_lex_lt_set(__isl_take isl_set *set1, __isl_give isl_map *isl_set_lex_lt_set(__isl_take isl_set *set1,
__isl_take isl_set *set2); __isl_take isl_set *set2);
__isl_give isl_map *isl_set_lex_ge_set(__isl_take isl_set *set1, __isl_give isl_map *isl_set_lex_ge_set(__isl_take isl_set *set1,
__isl_take isl_set *set2); __isl_take isl_set *set2);
__isl_give isl_map *isl_set_lex_gt_set(__isl_take isl_set *set1, __isl_give isl_map *isl_set_lex_gt_set(__isl_take isl_set *set1,
__isl_take isl_set *set2); __isl_take isl_set *set2);
int isl_set_size(__isl_keep isl_set *set); int isl_set_size(__isl_keep isl_set *set);
__isl_give isl_basic_set *isl_basic_set_align_params(
__isl_take isl_basic_set *bset, __isl_take isl_space *model);
__isl_give isl_set *isl_set_align_params(__isl_take isl_set *set, __isl_give isl_set *isl_set_align_params(__isl_take isl_set *set,
__isl_take isl_space *model); __isl_take isl_space *model);
__isl_give isl_mat *isl_basic_set_equalities_matrix( __isl_give isl_mat *isl_basic_set_equalities_matrix(
__isl_keep isl_basic_set *bset, enum isl_dim_type c1, __isl_keep isl_basic_set *bset, enum isl_dim_type c1,
enum isl_dim_type c2, enum isl_dim_type c3, enum isl_dim_type c4); enum isl_dim_type c2, enum isl_dim_type c3, enum isl_dim_type c4);
__isl_give isl_mat *isl_basic_set_inequalities_matrix( __isl_give isl_mat *isl_basic_set_inequalities_matrix(
__isl_keep isl_basic_set *bset, enum isl_dim_type c1, __isl_keep isl_basic_set *bset, enum isl_dim_type c1,
enum isl_dim_type c2, enum isl_dim_type c3, enum isl_dim_type c4); enum isl_dim_type c2, enum isl_dim_type c3, enum isl_dim_type c4);
__isl_give isl_basic_set *isl_basic_set_from_constraint_matrices( __isl_give isl_basic_set *isl_basic_set_from_constraint_matrices(
 End of changes. 26 change blocks. 
4 lines changed or deleted 65 lines changed or added


 space.h   space.h 
/* /*
* Copyright 2008-2009 Katholieke Universiteit Leuven * Copyright 2008-2009 Katholieke Universiteit Leuven
* *
* Use of this software is governed by the GNU LGPLv2.1 license * Use of this software is governed by the MIT license
* *
* Written by Sven Verdoolaege, K.U.Leuven, Departement * Written by Sven Verdoolaege, K.U.Leuven, Departement
* Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium * Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium
*/ */
#ifndef ISL_SPACE_H #ifndef ISL_SPACE_H
#define ISL_SPACE_H #define ISL_SPACE_H
#include <isl/ctx.h> #include <isl/ctx.h>
#include <isl/id.h> #include <isl/id.h>
skipping to change at line 41 skipping to change at line 41
isl_dim_all isl_dim_all
}; };
isl_ctx *isl_space_get_ctx(__isl_keep isl_space *dim); isl_ctx *isl_space_get_ctx(__isl_keep isl_space *dim);
__isl_give isl_space *isl_space_alloc(isl_ctx *ctx, __isl_give isl_space *isl_space_alloc(isl_ctx *ctx,
unsigned nparam, unsigned n_in, unsigned n_out); unsigned nparam, unsigned n_in, unsigned n_out);
__isl_give isl_space *isl_space_set_alloc(isl_ctx *ctx, __isl_give isl_space *isl_space_set_alloc(isl_ctx *ctx,
unsigned nparam, unsigned dim); unsigned nparam, unsigned dim);
__isl_give isl_space *isl_space_params_alloc(isl_ctx *ctx, unsigned nparam) ; __isl_give isl_space *isl_space_params_alloc(isl_ctx *ctx, unsigned nparam) ;
__isl_give isl_space *isl_space_copy(__isl_keep isl_space *dim); __isl_give isl_space *isl_space_copy(__isl_keep isl_space *dim);
void isl_space_free(__isl_take isl_space *dim); void *isl_space_free(__isl_take isl_space *dim);
int isl_space_is_params(__isl_keep isl_space *space); int isl_space_is_params(__isl_keep isl_space *space);
int isl_space_is_set(__isl_keep isl_space *space); int isl_space_is_set(__isl_keep isl_space *space);
int isl_space_is_map(__isl_keep isl_space *space);
__isl_give isl_space *isl_space_set_tuple_name(__isl_take isl_space *dim, __isl_give isl_space *isl_space_set_tuple_name(__isl_take isl_space *dim,
enum isl_dim_type type, const char *s); enum isl_dim_type type, const char *s);
int isl_space_has_tuple_name(__isl_keep isl_space *space,
enum isl_dim_type type);
const char *isl_space_get_tuple_name(__isl_keep isl_space *dim, const char *isl_space_get_tuple_name(__isl_keep isl_space *dim,
enum isl_dim_type type); enum isl_dim_type type);
__isl_give isl_space *isl_space_set_tuple_id(__isl_take isl_space *dim, __isl_give isl_space *isl_space_set_tuple_id(__isl_take isl_space *dim,
enum isl_dim_type type, __isl_take isl_id *id); enum isl_dim_type type, __isl_take isl_id *id);
__isl_give isl_space *isl_space_reset_tuple_id(__isl_take isl_space *dim, __isl_give isl_space *isl_space_reset_tuple_id(__isl_take isl_space *dim,
enum isl_dim_type type); enum isl_dim_type type);
int isl_space_has_tuple_id(__isl_keep isl_space *dim, enum isl_dim_type typ e); int isl_space_has_tuple_id(__isl_keep isl_space *dim, enum isl_dim_type typ e);
__isl_give isl_id *isl_space_get_tuple_id(__isl_keep isl_space *dim, __isl_give isl_id *isl_space_get_tuple_id(__isl_keep isl_space *dim,
enum isl_dim_type type); enum isl_dim_type type);
skipping to change at line 70 skipping to change at line 73
int isl_space_has_dim_id(__isl_keep isl_space *dim, int isl_space_has_dim_id(__isl_keep isl_space *dim,
enum isl_dim_type type, unsigned pos); enum isl_dim_type type, unsigned pos);
__isl_give isl_id *isl_space_get_dim_id(__isl_keep isl_space *dim, __isl_give isl_id *isl_space_get_dim_id(__isl_keep isl_space *dim,
enum isl_dim_type type, unsigned pos); enum isl_dim_type type, unsigned pos);
int isl_space_find_dim_by_id(__isl_keep isl_space *dim, enum isl_dim_type t ype, int isl_space_find_dim_by_id(__isl_keep isl_space *dim, enum isl_dim_type t ype,
__isl_keep isl_id *id); __isl_keep isl_id *id);
int isl_space_find_dim_by_name(__isl_keep isl_space *space, int isl_space_find_dim_by_name(__isl_keep isl_space *space,
enum isl_dim_type type, const char *name); enum isl_dim_type type, const char *name);
int isl_space_has_dim_name(__isl_keep isl_space *space,
enum isl_dim_type type, unsigned pos);
__isl_give isl_space *isl_space_set_dim_name(__isl_take isl_space *dim, __isl_give isl_space *isl_space_set_dim_name(__isl_take isl_space *dim,
enum isl_dim_type type, unsigned pos, enum isl_dim_type type, unsigned pos,
__isl_keep const char *name); __isl_keep const char *name);
__isl_keep const char *isl_space_get_dim_name(__isl_keep isl_space *dim, __isl_keep const char *isl_space_get_dim_name(__isl_keep isl_space *dim,
enum isl_dim_type type, unsigned pos); enum isl_dim_type type, unsigned pos);
__isl_give isl_space *isl_space_extend(__isl_take isl_space *dim, __isl_give isl_space *isl_space_extend(__isl_take isl_space *dim,
unsigned nparam, unsigned n_in, unsigned n_out); unsigned nparam, unsigned n_in, unsigned n_out);
__isl_give isl_space *isl_space_add_dims(__isl_take isl_space *dim, enum is l_dim_type type, __isl_give isl_space *isl_space_add_dims(__isl_take isl_space *dim, enum is l_dim_type type,
unsigned n); unsigned n);
skipping to change at line 94 skipping to change at line 99
enum isl_dim_type type, unsigned pos, unsigned n); enum isl_dim_type type, unsigned pos, unsigned n);
__isl_give isl_space *isl_space_join(__isl_take isl_space *left, __isl_give isl_space *isl_space_join(__isl_take isl_space *left,
__isl_take isl_space *right); __isl_take isl_space *right);
__isl_give isl_space *isl_space_product(__isl_take isl_space *left, __isl_give isl_space *isl_space_product(__isl_take isl_space *left,
__isl_take isl_space *right); __isl_take isl_space *right);
__isl_give isl_space *isl_space_domain_product(__isl_take isl_space *left, __isl_give isl_space *isl_space_domain_product(__isl_take isl_space *left,
__isl_take isl_space *right); __isl_take isl_space *right);
__isl_give isl_space *isl_space_range_product(__isl_take isl_space *left, __isl_give isl_space *isl_space_range_product(__isl_take isl_space *left,
__isl_take isl_space *right); __isl_take isl_space *right);
__isl_give isl_space *isl_space_map_from_set(__isl_take isl_space *dim); __isl_give isl_space *isl_space_map_from_set(__isl_take isl_space *dim);
__isl_give isl_space *isl_space_map_from_domain_and_range(
__isl_take isl_space *domain, __isl_take isl_space *range);
__isl_give isl_space *isl_space_reverse(__isl_take isl_space *dim); __isl_give isl_space *isl_space_reverse(__isl_take isl_space *dim);
__isl_give isl_space *isl_space_drop_dims(__isl_take isl_space *dim, __isl_give isl_space *isl_space_drop_dims(__isl_take isl_space *dim,
enum isl_dim_type type, unsigned first, unsigned num); enum isl_dim_type type, unsigned first, unsigned num);
__isl_give isl_space *isl_space_drop_inputs(__isl_take isl_space *dim, __isl_give isl_space *isl_space_drop_inputs(__isl_take isl_space *dim,
unsigned first, unsigned n); unsigned first, unsigned n);
__isl_give isl_space *isl_space_drop_outputs(__isl_take isl_space *dim, __isl_give isl_space *isl_space_drop_outputs(__isl_take isl_space *dim,
unsigned first, unsigned n); unsigned first, unsigned n);
__isl_give isl_space *isl_space_domain(__isl_take isl_space *dim); __isl_give isl_space *isl_space_domain(__isl_take isl_space *dim);
__isl_give isl_space *isl_space_from_domain(__isl_take isl_space *dim); __isl_give isl_space *isl_space_from_domain(__isl_take isl_space *dim);
__isl_give isl_space *isl_space_range(__isl_take isl_space *dim); __isl_give isl_space *isl_space_range(__isl_take isl_space *dim);
skipping to change at line 118 skipping to change at line 125
__isl_give isl_space *isl_space_align_params(__isl_take isl_space *dim1, __isl_give isl_space *isl_space_align_params(__isl_take isl_space *dim1,
__isl_take isl_space *dim2); __isl_take isl_space *dim2);
int isl_space_is_wrapping(__isl_keep isl_space *dim); int isl_space_is_wrapping(__isl_keep isl_space *dim);
__isl_give isl_space *isl_space_wrap(__isl_take isl_space *dim); __isl_give isl_space *isl_space_wrap(__isl_take isl_space *dim);
__isl_give isl_space *isl_space_unwrap(__isl_take isl_space *dim); __isl_give isl_space *isl_space_unwrap(__isl_take isl_space *dim);
int isl_space_can_zip(__isl_keep isl_space *dim); int isl_space_can_zip(__isl_keep isl_space *dim);
__isl_give isl_space *isl_space_zip(__isl_take isl_space *dim); __isl_give isl_space *isl_space_zip(__isl_take isl_space *dim);
int isl_space_is_equal(__isl_keep isl_space *dim1, __isl_keep isl_space *di int isl_space_can_curry(__isl_keep isl_space *space);
m2); __isl_give isl_space *isl_space_curry(__isl_take isl_space *space);
int isl_space_can_uncurry(__isl_keep isl_space *space);
__isl_give isl_space *isl_space_uncurry(__isl_take isl_space *space);
int isl_space_is_domain(__isl_keep isl_space *space1,
__isl_keep isl_space *space2);
int isl_space_is_range(__isl_keep isl_space *space1,
__isl_keep isl_space *space2);
int isl_space_is_equal(__isl_keep isl_space *space1,
__isl_keep isl_space *space2);
int isl_space_match(__isl_keep isl_space *dim1, enum isl_dim_type dim1_type , int isl_space_match(__isl_keep isl_space *dim1, enum isl_dim_type dim1_type ,
__isl_keep isl_space *dim2, enum isl_dim_type dim2_type); __isl_keep isl_space *dim2, enum isl_dim_type dim2_type);
int isl_space_tuple_match(__isl_keep isl_space *dim1, enum isl_dim_type dim 1_type, int isl_space_tuple_match(__isl_keep isl_space *dim1, enum isl_dim_type dim 1_type,
__isl_keep isl_space *dim2, enum isl_dim_type dim2_t ype); __isl_keep isl_space *dim2, enum isl_dim_type dim2_t ype);
int isl_space_compatible(__isl_keep isl_space *dim1, int isl_space_compatible(__isl_keep isl_space *dim1,
__isl_keep isl_space *dim2); __isl_keep isl_space *dim2);
unsigned isl_space_dim(__isl_keep isl_space *dim, enum isl_dim_type type); unsigned isl_space_dim(__isl_keep isl_space *dim, enum isl_dim_type type);
__isl_give isl_printer *isl_printer_print_space(__isl_take isl_printer *p, __isl_give isl_printer *isl_printer_print_space(__isl_take isl_printer *p,
__isl_keep isl_space *dim); __isl_keep isl_space *dim);
 End of changes. 7 change blocks. 
4 lines changed or deleted 21 lines changed or added


 stdint.h   stdint.h 
#ifndef _ISL_INCLUDE_ISL_STDINT_H #ifndef _ISL_INCLUDE_ISL_STDINT_H
#define _ISL_INCLUDE_ISL_STDINT_H 1 #define _ISL_INCLUDE_ISL_STDINT_H 1
#ifndef _GENERATED_STDINT_H #ifndef _GENERATED_STDINT_H
#define _GENERATED_STDINT_H "isl 0.08" #define _GENERATED_STDINT_H "isl 0.11.1"
/* generated using gnu compiler gcc (GCC) 4.6.1 20110627 (Mandriva) */ /* generated using gnu compiler gcc (GCC) 4.6.1 20110627 (Mandriva) */
#define _STDINT_HAVE_STDINT_H 1 #define _STDINT_HAVE_STDINT_H 1
#include <stdint.h> #include <stdint.h>
#endif #endif
#endif #endif
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 stream.h   stream.h 
/* /*
* Copyright 2008-2009 Katholieke Universiteit Leuven * Copyright 2008-2009 Katholieke Universiteit Leuven
* *
* Use of this software is governed by the GNU LGPLv2.1 license * Use of this software is governed by the MIT license
* *
* Written by Sven Verdoolaege, K.U.Leuven, Departement * Written by Sven Verdoolaege, K.U.Leuven, Departement
* Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium * Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium
*/ */
#ifndef ISL_STREAM_H #ifndef ISL_STREAM_H
#define ISL_STREAM_H #define ISL_STREAM_H
#include <stdio.h> #include <stdio.h>
#include <isl/hash.h> #include <isl/hash.h>
skipping to change at line 40 skipping to change at line 40
ISL_TOKEN_OR, ISL_TOKEN_EXISTS, ISL_TOKEN_NOT, ISL_TOKEN_OR, ISL_TOKEN_EXISTS, ISL_TOKEN_NOT,
ISL_TOKEN_DEF, ISL_TOKEN_INFTY, ISL_TOKEN_NAN, ISL_TOKEN_DEF, ISL_TOKEN_INFTY, ISL_TOKEN_NAN,
ISL_TOKEN_MIN, ISL_TOKEN_MAX, ISL_TOKEN_RAT, ISL_TOKEN_MIN, ISL_TOKEN_MAX, ISL_TOKEN_RAT,
ISL_TOKEN_TRUE, ISL_TOKEN_FALSE, ISL_TOKEN_TRUE, ISL_TOKEN_FALSE,
ISL_TOKEN_CEILD, ISL_TOKEN_FLOORD, ISL_TOKEN_MOD, ISL_TOKEN_CEILD, ISL_TOKEN_FLOORD, ISL_TOKEN_MOD,
ISL_TOKEN_STRING, ISL_TOKEN_STRING,
ISL_TOKEN_MAP, ISL_TOKEN_AFF, ISL_TOKEN_MAP, ISL_TOKEN_AFF,
ISL_TOKEN_LAST }; ISL_TOKEN_LAST };
struct isl_token { struct isl_token {
enum isl_token_type type; int type;
unsigned int on_new_line : 1; unsigned int on_new_line : 1;
unsigned is_keyword : 1; unsigned is_keyword : 1;
int line; int line;
int col; int col;
union { union {
isl_int v; isl_int v;
char *s; char *s;
isl_map *map; isl_map *map;
skipping to change at line 100 skipping to change at line 100
int isl_stream_eat_if_available(struct isl_stream *s, int type); int isl_stream_eat_if_available(struct isl_stream *s, int type);
char *isl_stream_read_ident_if_available(struct isl_stream *s); char *isl_stream_read_ident_if_available(struct isl_stream *s);
int isl_stream_eat(struct isl_stream *s, int type); int isl_stream_eat(struct isl_stream *s, int type);
int isl_stream_is_empty(struct isl_stream *s); int isl_stream_is_empty(struct isl_stream *s);
int isl_stream_skip_line(struct isl_stream *s); int isl_stream_skip_line(struct isl_stream *s);
enum isl_token_type isl_stream_register_keyword(struct isl_stream *s, enum isl_token_type isl_stream_register_keyword(struct isl_stream *s,
const char *name); const char *name);
struct isl_obj isl_stream_read_obj(struct isl_stream *s); struct isl_obj isl_stream_read_obj(struct isl_stream *s);
__isl_give isl_multi_aff *isl_stream_read_multi_aff(struct isl_stream *s);
__isl_give isl_map *isl_stream_read_map(struct isl_stream *s); __isl_give isl_map *isl_stream_read_map(struct isl_stream *s);
__isl_give isl_set *isl_stream_read_set(struct isl_stream *s); __isl_give isl_set *isl_stream_read_set(struct isl_stream *s);
__isl_give isl_pw_qpolynomial *isl_stream_read_pw_qpolynomial( __isl_give isl_pw_qpolynomial *isl_stream_read_pw_qpolynomial(
struct isl_stream *s); struct isl_stream *s);
__isl_give isl_union_map *isl_stream_read_union_map(struct isl_stream *s); __isl_give isl_union_map *isl_stream_read_union_map(struct isl_stream *s);
#if defined(__cplusplus) #if defined(__cplusplus)
} }
#endif #endif
 End of changes. 3 change blocks. 
2 lines changed or deleted 3 lines changed or added


 union_map.h   union_map.h 
#ifndef ISL_UNION_MAP_H #ifndef ISL_UNION_MAP_H
#define ISL_UNION_MAP_H #define ISL_UNION_MAP_H
#include <isl/space.h> #include <isl/space.h>
#include <isl/map_type.h> #include <isl/map_type.h>
#include <isl/union_map_type.h>
#include <isl/printer.h> #include <isl/printer.h>
#if defined(__cplusplus) #if defined(__cplusplus)
extern "C" { extern "C" {
#endif #endif
__isl_export __isl_constructor
struct isl_union_map; __isl_give isl_union_map *isl_union_map_from_basic_map(
typedef struct isl_union_map isl_union_map; __isl_take isl_basic_map *bmap);
#ifndef isl_union_set
__isl_export
struct isl_union_set;
typedef struct isl_union_set isl_union_set;
#endif
__isl_constructor __isl_constructor
__isl_give isl_union_map *isl_union_map_from_map(__isl_take isl_map *map); __isl_give isl_union_map *isl_union_map_from_map(__isl_take isl_map *map);
__isl_give isl_union_map *isl_union_map_empty(__isl_take isl_space *dim); __isl_give isl_union_map *isl_union_map_empty(__isl_take isl_space *dim);
__isl_give isl_union_map *isl_union_map_copy(__isl_keep isl_union_map *umap ); __isl_give isl_union_map *isl_union_map_copy(__isl_keep isl_union_map *umap );
void *isl_union_map_free(__isl_take isl_union_map *umap); void *isl_union_map_free(__isl_take isl_union_map *umap);
isl_ctx *isl_union_map_get_ctx(__isl_keep isl_union_map *umap); isl_ctx *isl_union_map_get_ctx(__isl_keep isl_union_map *umap);
__isl_give isl_space *isl_union_map_get_space(__isl_keep isl_union_map *uma p); __isl_give isl_space *isl_union_map_get_space(__isl_keep isl_union_map *uma p);
__isl_give isl_union_map *isl_union_map_universe( __isl_give isl_union_map *isl_union_map_universe(
skipping to change at line 78 skipping to change at line 73
__isl_give isl_union_map *isl_union_map_subtract( __isl_give isl_union_map *isl_union_map_subtract(
__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2); __isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2);
__isl_export __isl_export
__isl_give isl_union_map *isl_union_map_intersect( __isl_give isl_union_map *isl_union_map_intersect(
__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2); __isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2);
__isl_export __isl_export
__isl_give isl_union_map *isl_union_map_intersect_params( __isl_give isl_union_map *isl_union_map_intersect_params(
__isl_take isl_union_map *umap, __isl_take isl_set *set); __isl_take isl_union_map *umap, __isl_take isl_set *set);
__isl_give isl_union_map *isl_union_map_product(__isl_take isl_union_map *u map1, __isl_give isl_union_map *isl_union_map_product(__isl_take isl_union_map *u map1,
__isl_take isl_union_map *umap2); __isl_take isl_union_map *umap2);
__isl_give isl_union_map *isl_union_map_domain_product(
__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2);
__isl_give isl_union_map *isl_union_map_range_product( __isl_give isl_union_map *isl_union_map_range_product(
__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2); __isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2);
__isl_give isl_union_map *isl_union_map_flat_range_product( __isl_give isl_union_map *isl_union_map_flat_range_product(
__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2); __isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2);
__isl_export __isl_export
__isl_give isl_union_map *isl_union_map_gist(__isl_take isl_union_map *umap , __isl_give isl_union_map *isl_union_map_gist(__isl_take isl_union_map *umap ,
__isl_take isl_union_map *context); __isl_take isl_union_map *context);
__isl_export __isl_export
__isl_give isl_union_map *isl_union_map_gist_params( __isl_give isl_union_map *isl_union_map_gist_params(
__isl_take isl_union_map *umap, __isl_take isl_set *set); __isl_take isl_union_map *umap, __isl_take isl_set *set);
__isl_export __isl_export
__isl_give isl_union_map *isl_union_map_gist_domain( __isl_give isl_union_map *isl_union_map_gist_domain(
__isl_take isl_union_map *umap, __isl_take isl_union_set *uset); __isl_take isl_union_map *umap, __isl_take isl_union_set *uset);
__isl_export
__isl_give isl_union_map *isl_union_map_gist_range(
__isl_take isl_union_map *umap, __isl_take isl_union_set *uset);
__isl_export __isl_export
__isl_give isl_union_map *isl_union_map_intersect_domain( __isl_give isl_union_map *isl_union_map_intersect_domain(
__isl_take isl_union_map *umap, __isl_take isl_union_set *uset); __isl_take isl_union_map *umap, __isl_take isl_union_set *uset);
__isl_export __isl_export
__isl_give isl_union_map *isl_union_map_intersect_range( __isl_give isl_union_map *isl_union_map_intersect_range(
__isl_take isl_union_map *umap, __isl_take isl_union_set *uset); __isl_take isl_union_map *umap, __isl_take isl_union_set *uset);
__isl_export __isl_export
__isl_give isl_union_map *isl_union_map_subtract_domain(
__isl_take isl_union_map *umap, __isl_take isl_union_set *dom);
__isl_export
__isl_give isl_union_map *isl_union_map_subtract_range(
__isl_take isl_union_map *umap, __isl_take isl_union_set *dom);
__isl_export
__isl_give isl_union_map *isl_union_map_apply_domain( __isl_give isl_union_map *isl_union_map_apply_domain(
__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2); __isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2);
__isl_export __isl_export
__isl_give isl_union_map *isl_union_map_apply_range( __isl_give isl_union_map *isl_union_map_apply_range(
__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2); __isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2);
__isl_export __isl_export
__isl_give isl_union_map *isl_union_map_reverse(__isl_take isl_union_map *u map); __isl_give isl_union_map *isl_union_map_reverse(__isl_take isl_union_map *u map);
__isl_give isl_union_map *isl_union_map_from_domain_and_range( __isl_give isl_union_map *isl_union_map_from_domain_and_range(
__isl_take isl_union_set *domain, __isl_take isl_union_set *range); __isl_take isl_union_set *domain, __isl_take isl_union_set *range);
__isl_export __isl_export
__isl_give isl_union_map *isl_union_map_detect_equalities( __isl_give isl_union_map *isl_union_map_detect_equalities(
__isl_keep isl_union_map *umap); __isl_take isl_union_map *umap);
__isl_export __isl_export
__isl_give isl_union_set *isl_union_map_deltas(__isl_take isl_union_map *um ap); __isl_give isl_union_set *isl_union_map_deltas(__isl_take isl_union_map *um ap);
__isl_give isl_union_map *isl_union_map_deltas_map( __isl_give isl_union_map *isl_union_map_deltas_map(
__isl_take isl_union_map *umap); __isl_take isl_union_map *umap);
__isl_export __isl_export
__isl_give isl_union_map *isl_union_set_identity(__isl_take isl_union_set * uset); __isl_give isl_union_map *isl_union_set_identity(__isl_take isl_union_set * uset);
__isl_export __isl_export
int isl_union_map_is_empty(__isl_keep isl_union_map *umap); int isl_union_map_is_empty(__isl_keep isl_union_map *umap);
__isl_export __isl_export
skipping to change at line 152 skipping to change at line 159
int isl_union_map_foreach_map(__isl_keep isl_union_map *umap, int isl_union_map_foreach_map(__isl_keep isl_union_map *umap,
int (*fn)(__isl_take isl_map *map, void *user), void *user); int (*fn)(__isl_take isl_map *map, void *user), void *user);
__isl_give int isl_union_map_contains(__isl_keep isl_union_map *umap, __isl_give int isl_union_map_contains(__isl_keep isl_union_map *umap,
__isl_keep isl_space *dim); __isl_keep isl_space *dim);
__isl_give isl_map *isl_union_map_extract_map(__isl_keep isl_union_map *uma p, __isl_give isl_map *isl_union_map_extract_map(__isl_keep isl_union_map *uma p,
__isl_take isl_space *dim); __isl_take isl_space *dim);
__isl_give isl_map *isl_map_from_union_map(__isl_take isl_union_map *umap); __isl_give isl_map *isl_map_from_union_map(__isl_take isl_union_map *umap);
__isl_give isl_basic_map *isl_union_map_sample(__isl_take isl_union_map *um ap); __isl_give isl_basic_map *isl_union_map_sample(__isl_take isl_union_map *um ap);
__isl_give isl_union_map *isl_union_map_fixed_power(
__isl_take isl_union_map *umap, isl_int exp);
__isl_give isl_union_map *isl_union_map_power(__isl_take isl_union_map *uma p, __isl_give isl_union_map *isl_union_map_power(__isl_take isl_union_map *uma p,
int *exact); int *exact);
__isl_give isl_union_map *isl_union_map_transitive_closure( __isl_give isl_union_map *isl_union_map_transitive_closure(
__isl_take isl_union_map *umap, int *exact); __isl_take isl_union_map *umap, int *exact);
__isl_give isl_union_map *isl_union_map_lex_lt_union_map( __isl_give isl_union_map *isl_union_map_lex_lt_union_map(
__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2); __isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2);
__isl_give isl_union_map *isl_union_map_lex_le_union_map( __isl_give isl_union_map *isl_union_map_lex_le_union_map(
__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2); __isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2);
__isl_give isl_union_map *isl_union_map_lex_gt_union_map( __isl_give isl_union_map *isl_union_map_lex_gt_union_map(
skipping to change at line 179 skipping to change at line 188
__isl_give isl_union_map *isl_union_map_read_from_str(isl_ctx *ctx, __isl_give isl_union_map *isl_union_map_read_from_str(isl_ctx *ctx,
const char *str); const char *str);
__isl_give isl_printer *isl_printer_print_union_map(__isl_take isl_printer *p, __isl_give isl_printer *isl_printer_print_union_map(__isl_take isl_printer *p,
__isl_keep isl_union_map *umap); __isl_keep isl_union_map *umap);
void isl_union_map_dump(__isl_keep isl_union_map *umap); void isl_union_map_dump(__isl_keep isl_union_map *umap);
__isl_give isl_union_set *isl_union_map_wrap(__isl_take isl_union_map *umap ); __isl_give isl_union_set *isl_union_map_wrap(__isl_take isl_union_map *umap );
__isl_give isl_union_map *isl_union_set_unwrap(__isl_take isl_union_set *us et); __isl_give isl_union_map *isl_union_set_unwrap(__isl_take isl_union_set *us et);
__isl_give isl_union_map *isl_union_map_zip(__isl_take isl_union_map *umap) ; __isl_give isl_union_map *isl_union_map_zip(__isl_take isl_union_map *umap) ;
__isl_give isl_union_map *isl_union_map_curry(__isl_take isl_union_map *uma
p);
__isl_give isl_union_map *isl_union_map_uncurry(__isl_take isl_union_map *u
map);
__isl_give isl_union_map *isl_union_map_align_params( __isl_give isl_union_map *isl_union_map_align_params(
__isl_take isl_union_map *umap, __isl_take isl_space *model); __isl_take isl_union_map *umap, __isl_take isl_space *model);
__isl_give isl_union_set *isl_union_set_align_params( __isl_give isl_union_set *isl_union_set_align_params(
__isl_take isl_union_set *uset, __isl_take isl_space *model); __isl_take isl_union_set *uset, __isl_take isl_space *model);
#if defined(__cplusplus) #if defined(__cplusplus)
} }
#endif #endif
 End of changes. 8 change blocks. 
10 lines changed or deleted 23 lines changed or added


 union_set.h   union_set.h 
skipping to change at line 12 skipping to change at line 12
#define ISL_UNION_SET_H #define ISL_UNION_SET_H
#include <isl/point.h> #include <isl/point.h>
#include <isl/union_map.h> #include <isl/union_map.h>
#if defined(__cplusplus) #if defined(__cplusplus)
extern "C" { extern "C" {
#endif #endif
__isl_constructor __isl_constructor
__isl_give isl_union_set *isl_union_set_from_basic_set(
__isl_take isl_basic_set *bset);
__isl_constructor
__isl_give isl_union_set *isl_union_set_from_set(__isl_take isl_set *set); __isl_give isl_union_set *isl_union_set_from_set(__isl_take isl_set *set);
__isl_give isl_union_set *isl_union_set_empty(__isl_take isl_space *dim); __isl_give isl_union_set *isl_union_set_empty(__isl_take isl_space *dim);
__isl_give isl_union_set *isl_union_set_copy(__isl_keep isl_union_set *uset ); __isl_give isl_union_set *isl_union_set_copy(__isl_keep isl_union_set *uset );
void *isl_union_set_free(__isl_take isl_union_set *uset); void *isl_union_set_free(__isl_take isl_union_set *uset);
isl_ctx *isl_union_set_get_ctx(__isl_keep isl_union_set *uset); isl_ctx *isl_union_set_get_ctx(__isl_keep isl_union_set *uset);
__isl_give isl_space *isl_union_set_get_space(__isl_keep isl_union_set *use t); __isl_give isl_space *isl_union_set_get_space(__isl_keep isl_union_set *use t);
__isl_give isl_union_set *isl_union_set_universe( __isl_give isl_union_set *isl_union_set_universe(
__isl_take isl_union_set *uset); __isl_take isl_union_set *uset);
 End of changes. 1 change blocks. 
0 lines changed or deleted 3 lines changed or added


 vec.h   vec.h 
/* /*
* Copyright 2008-2009 Katholieke Universiteit Leuven * Copyright 2008-2009 Katholieke Universiteit Leuven
* *
* Use of this software is governed by the GNU LGPLv2.1 license * Use of this software is governed by the MIT license
* *
* Written by Sven Verdoolaege, K.U.Leuven, Departement * Written by Sven Verdoolaege, K.U.Leuven, Departement
* Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium * Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium
*/ */
#ifndef ISL_VEC_H #ifndef ISL_VEC_H
#define ISL_VEC_H #define ISL_VEC_H
#include <stdio.h> #include <stdio.h>
skipping to change at line 36 skipping to change at line 36
struct isl_ctx *ctx; struct isl_ctx *ctx;
unsigned size; unsigned size;
isl_int *el; isl_int *el;
struct isl_blk block; struct isl_blk block;
}; };
typedef struct isl_vec isl_vec; typedef struct isl_vec isl_vec;
struct isl_vec *isl_vec_alloc(struct isl_ctx *ctx, unsigned size); __isl_give isl_vec *isl_vec_alloc(isl_ctx *ctx, unsigned size);
struct isl_vec *isl_vec_copy(struct isl_vec *vec); __isl_give isl_vec *isl_vec_copy(__isl_keep isl_vec *vec);
struct isl_vec *isl_vec_cow(struct isl_vec *vec); struct isl_vec *isl_vec_cow(struct isl_vec *vec);
void isl_vec_free(struct isl_vec *vec); void *isl_vec_free(__isl_take isl_vec *vec);
isl_ctx *isl_vec_get_ctx(__isl_keep isl_vec *vec); isl_ctx *isl_vec_get_ctx(__isl_keep isl_vec *vec);
int isl_vec_size(__isl_keep isl_vec *vec);
int isl_vec_get_element(__isl_keep isl_vec *vec, int pos, isl_int *v);
__isl_give isl_vec *isl_vec_set_element(__isl_take isl_vec *vec,
int pos, isl_int v);
__isl_give isl_vec *isl_vec_set_element_si(__isl_take isl_vec *vec,
int pos, int v);
int isl_vec_is_equal(__isl_keep isl_vec *vec1, __isl_keep isl_vec *vec2); int isl_vec_is_equal(__isl_keep isl_vec *vec1, __isl_keep isl_vec *vec2);
void isl_vec_dump(__isl_keep isl_vec *vec); void isl_vec_dump(__isl_keep isl_vec *vec);
__isl_give isl_printer *isl_printer_print_vec(__isl_take isl_printer *print er, __isl_give isl_printer *isl_printer_print_vec(__isl_take isl_printer *print er,
__isl_keep isl_vec *vec); __isl_keep isl_vec *vec);
void isl_vec_lcm(struct isl_vec *vec, isl_int *lcm); void isl_vec_lcm(struct isl_vec *vec, isl_int *lcm);
struct isl_vec *isl_vec_ceil(struct isl_vec *vec); struct isl_vec *isl_vec_ceil(struct isl_vec *vec);
struct isl_vec *isl_vec_normalize(struct isl_vec *vec); struct isl_vec *isl_vec_normalize(struct isl_vec *vec);
__isl_give isl_vec *isl_vec_set(__isl_take isl_vec *vec, isl_int v);
__isl_give isl_vec *isl_vec_set_si(__isl_take isl_vec *vec, int v);
__isl_give isl_vec *isl_vec_clr(__isl_take isl_vec *vec); __isl_give isl_vec *isl_vec_clr(__isl_take isl_vec *vec);
__isl_give isl_vec *isl_vec_neg(__isl_take isl_vec *vec); __isl_give isl_vec *isl_vec_neg(__isl_take isl_vec *vec);
__isl_give isl_vec *isl_vec_scale(__isl_take isl_vec *vec, isl_int m); __isl_give isl_vec *isl_vec_scale(__isl_take isl_vec *vec, isl_int m);
__isl_give isl_vec *isl_vec_fdiv_r(__isl_take isl_vec *vec, isl_int m);
__isl_give isl_vec *isl_vec_add(__isl_take isl_vec *vec1, __isl_give isl_vec *isl_vec_add(__isl_take isl_vec *vec1,
__isl_take isl_vec *vec2); __isl_take isl_vec *vec2);
__isl_give isl_vec *isl_vec_extend(__isl_take isl_vec *vec, unsigned size); __isl_give isl_vec *isl_vec_extend(__isl_take isl_vec *vec, unsigned size);
__isl_give isl_vec *isl_vec_zero_extend(__isl_take isl_vec *vec, unsigned s ize); __isl_give isl_vec *isl_vec_zero_extend(__isl_take isl_vec *vec, unsigned s ize);
__isl_give isl_vec *isl_vec_concat(__isl_take isl_vec *vec1,
__isl_take isl_vec *vec2);
__isl_give isl_vec *isl_vec_sort(__isl_take isl_vec *vec); __isl_give isl_vec *isl_vec_sort(__isl_take isl_vec *vec);
__isl_give isl_vec *isl_vec_read_from_file(isl_ctx *ctx, FILE *input); __isl_give isl_vec *isl_vec_read_from_file(isl_ctx *ctx, FILE *input);
__isl_give isl_vec *isl_vec_drop_els(__isl_take isl_vec *vec, __isl_give isl_vec *isl_vec_drop_els(__isl_take isl_vec *vec,
unsigned pos, unsigned n); unsigned pos, unsigned n);
__isl_give isl_vec *isl_vec_insert_els(__isl_take isl_vec *vec, __isl_give isl_vec *isl_vec_insert_els(__isl_take isl_vec *vec,
unsigned pos, unsigned n); unsigned pos, unsigned n);
__isl_give isl_vec *isl_vec_insert_zero_els(__isl_take isl_vec *vec, __isl_give isl_vec *isl_vec_insert_zero_els(__isl_take isl_vec *vec,
 End of changes. 7 change blocks. 
4 lines changed or deleted 16 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/