isl_bound.h 677 B

1234567891011121314151617181920212223242526272829
  1. #ifndef ISL_BOUND_H
  2. #define ISL_BOUND_H
  3. #include <isl/polynomial.h>
  4. struct isl_bound {
  5. /* input */
  6. int check_tight;
  7. int wrapping;
  8. enum isl_fold type;
  9. isl_space *dim;
  10. isl_basic_set *bset;
  11. isl_qpolynomial_fold *fold;
  12. /* output */
  13. isl_pw_qpolynomial_fold *pwf;
  14. isl_pw_qpolynomial_fold *pwf_tight;
  15. };
  16. __isl_give isl_pw_qpolynomial_fold *isl_qpolynomial_cst_bound(
  17. __isl_take isl_basic_set *bset, __isl_take isl_qpolynomial *poly,
  18. enum isl_fold type, isl_bool *tight);
  19. isl_stat isl_bound_add(struct isl_bound *bound,
  20. __isl_take isl_pw_qpolynomial_fold *pwf);
  21. isl_stat isl_bound_add_tight(struct isl_bound *bound,
  22. __isl_take isl_pw_qpolynomial_fold *pwf);
  23. #endif