X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=isl_polynomial_private.h;h=737073106e393a3e83f873719473e564bf6ade0b;hb=7bc3560a92635b5dcf7eb9e7329992fc935a1ce2;hp=10682b00bf6ead44f40e732b32fb6e49beefe838;hpb=f3c292bf31fbb13ce50a8877ee71910897276a24;p=platform%2Fupstream%2Fisl.git diff --git a/isl_polynomial_private.h b/isl_polynomial_private.h index 10682b0..7370731 100644 --- a/isl_polynomial_private.h +++ b/isl_polynomial_private.h @@ -1,5 +1,4 @@ #include -#include #include #include #include @@ -24,13 +23,15 @@ struct isl_upoly_rec { int n; size_t size; - struct isl_upoly *p[1]; + struct isl_upoly *p[]; }; +/* dim represents the domain space. + */ struct isl_qpolynomial { int ref; - struct isl_dim *dim; + isl_space *dim; struct isl_mat *div; struct isl_upoly *upoly; }; @@ -41,7 +42,7 @@ struct isl_term { isl_int n; isl_int d; - struct isl_dim *dim; + isl_space *dim; struct isl_mat *div; int pow[1]; @@ -55,7 +56,7 @@ struct isl_pw_qpolynomial_piece { struct isl_pw_qpolynomial { int ref; - struct isl_dim *dim; + isl_space *dim; int n; @@ -63,11 +64,13 @@ struct isl_pw_qpolynomial { struct isl_pw_qpolynomial_piece p[1]; }; +/* dim represents the domain space. + */ struct isl_qpolynomial_fold { int ref; enum isl_fold type; - struct isl_dim *dim; + isl_space *dim; int n; @@ -84,7 +87,7 @@ struct isl_pw_qpolynomial_fold { int ref; enum isl_fold type; - struct isl_dim *dim; + isl_space *dim; int n; @@ -109,19 +112,18 @@ __isl_keep struct isl_upoly_rec *isl_upoly_as_rec(__isl_keep struct isl_upoly *u __isl_give struct isl_upoly *isl_upoly_sum(__isl_take struct isl_upoly *up1, __isl_take struct isl_upoly *up2); -__isl_give struct isl_upoly *isl_upoly_neg(__isl_take struct isl_upoly *up); +__isl_give struct isl_upoly *isl_upoly_mul_isl_int( + __isl_take struct isl_upoly *up, isl_int v); -__isl_give isl_qpolynomial *isl_qpolynomial_alloc(__isl_take isl_dim *dim, +__isl_give isl_qpolynomial *isl_qpolynomial_alloc(__isl_take isl_space *dim, unsigned n_div, __isl_take struct isl_upoly *up); __isl_give isl_qpolynomial *isl_qpolynomial_cow(__isl_take isl_qpolynomial *qp); __isl_give isl_qpolynomial *isl_qpolynomial_dup(__isl_keep isl_qpolynomial *qp); -__isl_give isl_qpolynomial *isl_qpolynomial_cst(__isl_take isl_dim *dim, +__isl_give isl_qpolynomial *isl_qpolynomial_cst_on_domain(__isl_take isl_space *dim, isl_int v); -__isl_give isl_qpolynomial *isl_qpolynomial_pow(__isl_take isl_dim *dim, +__isl_give isl_qpolynomial *isl_qpolynomial_var_pow_on_domain(__isl_take isl_space *dim, int pos, int power); -__isl_give isl_qpolynomial *isl_qpolynomial_div_pow(__isl_take isl_div *div, - int power); int isl_qpolynomial_is_one(__isl_keep isl_qpolynomial *qp); int isl_qpolynomial_is_affine(__isl_keep isl_qpolynomial *qp); @@ -144,7 +146,7 @@ __isl_give isl_qpolynomial *isl_qpolynomial_coeff( __isl_give isl_vec *isl_qpolynomial_extract_affine( __isl_keep isl_qpolynomial *qp); -__isl_give isl_qpolynomial *isl_qpolynomial_from_affine(__isl_take isl_dim *dim, +__isl_give isl_qpolynomial *isl_qpolynomial_from_affine(__isl_take isl_space *dim, isl_int *f, isl_int denom); __isl_give isl_pw_qpolynomial *isl_pw_qpolynomial_cow( @@ -155,9 +157,15 @@ __isl_give isl_pw_qpolynomial *isl_pw_qpolynomial_add_piece( __isl_take isl_set *set, __isl_take isl_qpolynomial *qp); int isl_pw_qpolynomial_is_one(__isl_keep isl_pw_qpolynomial *pwqp); +__isl_give isl_pw_qpolynomial *isl_pw_qpolynomial_project_out( + __isl_take isl_pw_qpolynomial *pwqp, + enum isl_dim_type type, unsigned first, unsigned n); + __isl_give isl_qpolynomial *isl_qpolynomial_opt_on_domain( __isl_take isl_qpolynomial *qp, __isl_take isl_set *set, int max); +enum isl_fold isl_fold_type_negate(enum isl_fold type); + __isl_give isl_qpolynomial_fold *isl_qpolynomial_fold_cow( __isl_take isl_qpolynomial_fold *fold); __isl_give isl_qpolynomial_fold *isl_qpolynomial_fold_dup( @@ -181,34 +189,45 @@ __isl_give isl_qpolynomial *isl_qpolynomial_fold_opt_on_domain( int isl_pw_qpolynomial_fold_covers(__isl_keep isl_pw_qpolynomial_fold *pwf1, __isl_keep isl_pw_qpolynomial_fold *pwf2); -__isl_give isl_qpolynomial *isl_qpolynomial_morph(__isl_take isl_qpolynomial *qp, - __isl_take isl_morph *morph); -__isl_give isl_pw_qpolynomial *isl_pw_qpolynomial_morph( +__isl_give isl_qpolynomial *isl_qpolynomial_morph_domain( + __isl_take isl_qpolynomial *qp, __isl_take isl_morph *morph); +__isl_give isl_pw_qpolynomial *isl_pw_qpolynomial_morph_domain( __isl_take isl_pw_qpolynomial *pwqp, __isl_take isl_morph *morph); -__isl_give isl_qpolynomial_fold *isl_qpolynomial_fold_morph( +__isl_give isl_qpolynomial_fold *isl_qpolynomial_fold_morph_domain( __isl_take isl_qpolynomial_fold *fold, __isl_take isl_morph *morph); -__isl_give isl_pw_qpolynomial_fold *isl_pw_qpolynomial_fold_morph( +__isl_give isl_pw_qpolynomial_fold *isl_pw_qpolynomial_fold_morph_domain( __isl_take isl_pw_qpolynomial_fold *pwf, __isl_take isl_morph *morph); __isl_give isl_qpolynomial *isl_qpolynomial_lift(__isl_take isl_qpolynomial *qp, - __isl_take isl_dim *dim); + __isl_take isl_space *dim); __isl_give isl_qpolynomial_fold *isl_qpolynomial_fold_lift( - __isl_take isl_qpolynomial_fold *fold, __isl_take isl_dim *dim); + __isl_take isl_qpolynomial_fold *fold, __isl_take isl_space *dim); __isl_give isl_qpolynomial *isl_qpolynomial_substitute_equalities( __isl_take isl_qpolynomial *qp, __isl_take isl_basic_set *eq); __isl_give isl_qpolynomial_fold *isl_qpolynomial_fold_substitute_equalities( __isl_take isl_qpolynomial_fold *fold, __isl_take isl_basic_set *eq); -__isl_give isl_qpolynomial *isl_qpolynomial_gist( - __isl_take isl_qpolynomial *qp, __isl_take isl_set *context); __isl_give isl_qpolynomial_fold *isl_qpolynomial_fold_gist( __isl_take isl_qpolynomial_fold *fold, __isl_take isl_set *context); -__isl_give isl_qpolynomial *isl_qpolynomial_realign( +__isl_give isl_qpolynomial *isl_qpolynomial_realign_domain( __isl_take isl_qpolynomial *qp, __isl_take isl_reordering *r); -__isl_give isl_qpolynomial_fold *isl_qpolynomial_fold_realign( +__isl_give isl_qpolynomial_fold *isl_qpolynomial_fold_realign_domain( __isl_take isl_qpolynomial_fold *fold, __isl_take isl_reordering *r); -__isl_give isl_pw_qpolynomial *isl_pw_qpolynomial_realign( +__isl_give isl_pw_qpolynomial *isl_pw_qpolynomial_realign_domain( __isl_take isl_pw_qpolynomial *pwqp, __isl_take isl_reordering *r); -__isl_give isl_pw_qpolynomial_fold *isl_pw_qpolynomial_fold_realign( +__isl_give isl_pw_qpolynomial_fold *isl_pw_qpolynomial_fold_realign_domain( __isl_take isl_pw_qpolynomial_fold *pwf, __isl_take isl_reordering *r); + +__isl_give isl_qpolynomial *isl_qpolynomial_reset_domain_space( + __isl_take isl_qpolynomial *qp, __isl_take isl_space *dim); +__isl_give isl_qpolynomial *isl_qpolynomial_reset_space_and_domain( + __isl_take isl_qpolynomial *qp, __isl_take isl_space *space, + __isl_take isl_space *domain); +__isl_give isl_qpolynomial_fold *isl_qpolynomial_fold_reset_domain_space( + __isl_take isl_qpolynomial_fold *fold, __isl_take isl_space *dim); +__isl_give isl_qpolynomial_fold *isl_qpolynomial_fold_reset_space_and_domain( + __isl_take isl_qpolynomial_fold *fold, __isl_take isl_space *space, + __isl_take isl_space *domain); +__isl_give isl_pw_qpolynomial_fold *isl_pw_qpolynomial_fold_reset_domain_space( + __isl_take isl_pw_qpolynomial_fold *pwf, __isl_take isl_space *dim);