X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=doc%2Fuser.pod;h=7ddf30f98e88ee25b205bb522b3a2f582bf57bcc;hb=ca90b151a05f17ccc1c3215ff24dc5d7b9198ff4;hp=0097f0fca22842406d955608fb60de768b1e9ea4;hpb=2d0fce082b6de7051cefa8f012b101c774c6a029;p=platform%2Fupstream%2Fisl.git diff --git a/doc/user.pod b/doc/user.pod index 0097f0f..7ddf30f 100644 --- a/doc/user.pod +++ b/doc/user.pod @@ -1509,12 +1509,19 @@ using the following functions. __isl_take isl_constraint *constraint, isl_int v); __isl_give isl_constraint *isl_constraint_set_constant_si( __isl_take isl_constraint *constraint, int v); + __isl_give isl_constraint *isl_constraint_set_constant_val( + __isl_take isl_constraint *constraint, + __isl_take isl_val *v); __isl_give isl_constraint *isl_constraint_set_coefficient( __isl_take isl_constraint *constraint, enum isl_dim_type type, int pos, isl_int v); __isl_give isl_constraint *isl_constraint_set_coefficient_si( __isl_take isl_constraint *constraint, enum isl_dim_type type, int pos, int v); + __isl_give isl_constraint * + isl_constraint_set_coefficient_val( + __isl_take isl_constraint *constraint, + enum isl_dim_type type, int pos, isl_val *v); __isl_give isl_basic_map *isl_basic_map_add_constraint( __isl_take isl_basic_map *bmap, __isl_take isl_constraint *constraint); @@ -1786,9 +1793,14 @@ the following functions. enum isl_dim_type type, unsigned pos); void isl_constraint_get_constant( __isl_keep isl_constraint *constraint, isl_int *v); + __isl_give isl_val *isl_constraint_get_constant_val( + __isl_keep isl_constraint *constraint); void isl_constraint_get_coefficient( __isl_keep isl_constraint *constraint, enum isl_dim_type type, int pos, isl_int *v); + __isl_give isl_val *isl_constraint_get_coefficient_val( + __isl_keep isl_constraint *constraint, + enum isl_dim_type type, int pos); int isl_constraint_involves_dims( __isl_keep isl_constraint *constraint, enum isl_dim_type type, unsigned first, unsigned n); @@ -3611,10 +3623,17 @@ The expression can be inspected using enum isl_dim_type type); int isl_aff_get_constant(__isl_keep isl_aff *aff, isl_int *v); + __isl_give isl_val *isl_aff_get_constant_val( + __isl_keep isl_aff *aff); int isl_aff_get_coefficient(__isl_keep isl_aff *aff, enum isl_dim_type type, int pos, isl_int *v); + __isl_give isl_val *isl_aff_get_coefficient_val( + __isl_keep isl_aff *aff, + enum isl_dim_type type, int pos); int isl_aff_get_denominator(__isl_keep isl_aff *aff, isl_int *v); + __isl_give isl_val *isl_aff_get_denominator_val( + __isl_keep isl_aff *aff); __isl_give isl_aff *isl_aff_get_div( __isl_keep isl_aff *aff, int pos); @@ -3657,12 +3676,18 @@ It can be modified using __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_val( + __isl_take isl_aff *aff, __isl_take isl_val *v); __isl_give isl_aff *isl_aff_set_coefficient( __isl_take isl_aff *aff, enum isl_dim_type type, int pos, isl_int v); __isl_give isl_aff *isl_aff_set_coefficient_si( __isl_take isl_aff *aff, enum isl_dim_type type, int pos, int v); + __isl_give isl_aff *isl_aff_set_coefficient_val( + __isl_take isl_aff *aff, + enum isl_dim_type type, int pos, + __isl_take isl_val *v); __isl_give isl_aff *isl_aff_set_denominator( __isl_take isl_aff *aff, isl_int v); @@ -3670,6 +3695,8 @@ It can be modified using __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_val( + __isl_take isl_aff *aff, __isl_take isl_val *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( @@ -3680,6 +3707,10 @@ It can be modified using __isl_give isl_aff *isl_aff_add_coefficient_si( __isl_take isl_aff *aff, enum isl_dim_type type, int pos, int v); + __isl_give isl_aff *isl_aff_add_coefficient_val( + __isl_take isl_aff *aff, + enum isl_dim_type type, int pos, + __isl_take isl_val *v); __isl_give isl_aff *isl_aff_insert_dims( __isl_take isl_aff *aff, @@ -3700,9 +3731,13 @@ It can be modified using __isl_take isl_pw_aff *pwaff, enum isl_dim_type type, unsigned first, unsigned n); -Note that the C and C functions +Note that C, C, +C and C set the I of the constant or coefficient, while -C and C add an integer value to +C and C set +the constant or coefficient as a whole. +The C and C functions add an integer +or rational value to the possibly rational constant or coefficient. The C functions add an integer value to the numerator. @@ -3748,16 +3783,22 @@ Operations include __isl_take isl_pw_aff *pwaff); __isl_give isl_aff *isl_aff_mod(__isl_take isl_aff *aff, isl_int mod); + __isl_give isl_aff *isl_aff_mod_val(__isl_take isl_aff *aff, + __isl_take isl_val *mod); __isl_give isl_pw_aff *isl_pw_aff_mod( __isl_take isl_pw_aff *pwaff, isl_int mod); __isl_give isl_aff *isl_aff_scale(__isl_take isl_aff *aff, isl_int f); + __isl_give isl_aff *isl_aff_scale_val(__isl_take isl_aff *aff, + __isl_take isl_val *v); __isl_give isl_pw_aff *isl_pw_aff_scale( __isl_take isl_pw_aff *pwaff, 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_val( + __isl_take isl_aff *aff, __isl_take isl_val *v); __isl_give isl_pw_aff *isl_pw_aff_scale_down( __isl_take isl_pw_aff *pwaff, isl_int f); @@ -4392,9 +4433,16 @@ using int isl_point_get_coordinate(__isl_keep isl_point *pnt, enum isl_dim_type type, int pos, isl_int *v); + __isl_give isl_val *isl_point_get_coordinate_val( + __isl_keep isl_point *pnt, + enum isl_dim_type type, int pos); __isl_give isl_point *isl_point_set_coordinate( __isl_take isl_point *pnt, enum isl_dim_type type, int pos, isl_int v); + __isl_give isl_point *isl_point_set_coordinate_val( + __isl_take isl_point *pnt, + enum isl_dim_type type, int pos, + __isl_take isl_val *v); __isl_give isl_point *isl_point_add_ui( __isl_take isl_point *pnt, @@ -4548,6 +4596,9 @@ on the resulting quasipolynomials __isl_give isl_qpolynomial *isl_qpolynomial_rat_cst_on_domain( __isl_take isl_space *domain, const isl_int n, const isl_int d); + __isl_give isl_qpolynomial *isl_qpolynomial_val_on_domain( + __isl_take isl_space *domain, + __isl_take isl_val *val); __isl_give isl_qpolynomial *isl_qpolynomial_var_on_domain( __isl_take isl_space *domain, enum isl_dim_type type, unsigned pos); @@ -4642,6 +4693,11 @@ will not have any existentially quantified variables, but that the dimensions of the sets may be different for different invocations of C. +The constant term of a quasipolynomial can be extracted using + + __isl_give isl_val *isl_qpolynomial_get_constant_val( + __isl_keep isl_qpolynomial *qp); + To iterate over all terms in a quasipolynomial, use @@ -4659,6 +4715,8 @@ these functions isl_int *n); void isl_term_get_den(__isl_keep isl_term *term, isl_int *d); + __isl_give isl_val *isl_term_get_coefficient_val( + __isl_keep isl_term *term); int isl_term_get_exp(__isl_keep isl_term *term, enum isl_dim_type type, unsigned pos); __isl_give isl_aff *isl_term_get_div( @@ -4695,6 +4753,9 @@ obviously equal, use __isl_give isl_qpolynomial *isl_qpolynomial_scale( __isl_take isl_qpolynomial *qp, isl_int v); + __isl_give isl_qpolynomial *isl_qpolynomial_scale_val( + __isl_take isl_qpolynomial *qp, + __isl_take isl_val *v); __isl_give isl_qpolynomial *isl_qpolynomial_neg( __isl_take isl_qpolynomial *qp); __isl_give isl_qpolynomial *isl_qpolynomial_add( @@ -4931,6 +4992,9 @@ obviously equal, use __isl_give isl_qpolynomial_fold *isl_qpolynomial_fold_scale( __isl_take isl_qpolynomial_fold *fold, isl_int v); + __isl_give isl_qpolynomial_fold *isl_qpolynomial_fold_scale_val( + __isl_take isl_qpolynomial_fold *fold, + __isl_take isl_val *v); __isl_give isl_pw_qpolynomial_fold *isl_pw_qpolynomial_fold_add( __isl_take isl_pw_qpolynomial_fold *pwf1,