X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;ds=sidebyside;f=doc%2Fuser.pod;h=06609fc8f1e98eaaf96d07bf8df1ddebdf39891f;hb=831d570fe1f68872766700bc969b7377d2f2b123;hp=9fbff364a53fafcc2064455db1745bf37e0c4e41;hpb=da1dc20cb7aa4509e375f703c35beaf27dfa4a15;p=platform%2Fupstream%2Fisl.git diff --git a/doc/user.pod b/doc/user.pod index 9fbff36..06609fc 100644 --- a/doc/user.pod +++ b/doc/user.pod @@ -363,8 +363,14 @@ Specific integer values can be created using the following functions. long i); __isl_give isl_val *isl_val_int_from_ui(isl_ctx *ctx, unsigned long u); + __isl_give isl_val *isl_val_int_from_chunks(isl_ctx *ctx, + size_t n, size_t size, const void *chunks); -They can be copied and freed using the following functions. +The function C constructs an C +from the C I, each consisting of C bytes, stored at C. +The least significant digit is assumed to be stored first. + +Value objects can be copied and freed using the following functions. #include __isl_give isl_val *isl_val_copy(__isl_keep isl_val *v); @@ -377,9 +383,20 @@ They can be inspected using the following functions. long isl_val_get_num_si(__isl_keep isl_val *v); long isl_val_get_den_si(__isl_keep isl_val *v); double isl_val_get_d(__isl_keep isl_val *v); - -Note that C, C and -C can only be applied to rational values. + size_t isl_val_n_abs_num_chunks(__isl_keep isl_val *v, + size_t size); + int isl_val_get_abs_num_chunks(__isl_keep isl_val *v, + size_t size, void *chunks); + +C returns the number of I +of C bytes needed to store the absolute value of the +numerator of C. +C stores these digits at C, +which is assumed to have been preallocated by the caller. +The least significant digit is stored first. +Note that C, C, +C, C +and C can only be applied to rational values. An C can be modified using the following function. @@ -534,14 +551,13 @@ in the next release. =head2 Integers (obsolescent) -All operations on integers, mainly the coefficients -of the constraints describing the sets and relations, -are performed in exact integer arithmetic using C. -However, to allow future versions of C to optionally -support fixed integer arithmetic, all calls to C -are wrapped inside C specific macros. -The basic type is C and the operations below -are available on this type. +In previous versions of C, integers were represented +in the external interface using the C type. +This type has now been superseded by C. +The C type will be removed from the external interface +in future releases. New code should should not use C. + +The operations below are currently available on Cs. The meanings of these operations are essentially the same as their C C counterparts. As always with C types, Cs need to be @@ -3526,6 +3542,9 @@ Operations include __isl_give isl_multi_val *isl_multi_val_scale_val( __isl_take isl_multi_val *mv, __isl_take isl_val *v); + __isl_give isl_multi_val *isl_multi_val_scale_multi_val( + __isl_take isl_multi_val *mv1, + __isl_take isl_multi_val *mv2); =head2 Vectors @@ -4366,18 +4385,24 @@ C subtracts the second argument from the first. __isl_give isl_multi_pw_aff *isl_multi_pw_aff_scale_val( __isl_take isl_multi_pw_aff *mpa, __isl_take isl_val *v); - __isl_give isl_multi_aff *isl_multi_aff_scale_vec( + __isl_give isl_multi_aff *isl_multi_aff_scale_multi_val( __isl_take isl_multi_aff *ma, - __isl_take isl_vec *v); - __isl_give isl_pw_multi_aff *isl_pw_multi_aff_scale_vec( + __isl_take isl_multi_val *mv); + __isl_give isl_pw_multi_aff * + isl_pw_multi_aff_scale_multi_val( __isl_take isl_pw_multi_aff *pma, - __isl_take isl_vec *v); - __isl_give isl_union_pw_multi_aff *isl_union_pw_multi_aff_scale_vec( + __isl_take isl_multi_val *mv); + __isl_give isl_multi_pw_aff * + isl_multi_pw_aff_scale_multi_val( + __isl_take isl_multi_pw_aff *mpa, + __isl_take isl_multi_val *mv); + __isl_give isl_union_pw_multi_aff * + isl_union_pw_multi_aff_scale_multi_val( __isl_take isl_union_pw_multi_aff *upma, - __isl_take isl_vec *v); + __isl_take isl_multi_val *mv); -C scales the first elements of C -by the corresponding elements of C. +C scales the elements of C +by the corresponding elements of C. __isl_give isl_pw_multi_aff *isl_pw_multi_aff_intersect_params( __isl_take isl_pw_multi_aff *pma,