This is part of an effort to reduce the differences between the custom C++ bindings used right now by polly in lib/External/isl/include/isl/isl-noxceptions.h and the official isl C++ interface.
In the official interface the type isl::size cannot be casted to an unsigned without previously having checked if it contains a valid value with the function isl::size::is_error().
For this reason two helping functions have been added:
- IslAssert: assert that no errors are present in debug builds and just disables the mandatory error check in non-debug builds
- unisgnedFromIslSIze: cast the isl::size object to unsigned
Changes made:
- Add the functions IslAssert and unsignedFromIslSize
- Add the utility function rangeIslSize()
- Retype MaxDisjunctsInDomain from int to unsigned
- Retype RunTimeChecksMaxAccessDisjuncts from int to unsigned
- Retype MaxDimensionsInAccessRange from int to unsigned
- Replaced some usages of isl_size to unsigned since we aim not to use isl_size anymore
- isl-noexceptions.h has been generated by https://github.com/patacca/isl/commit/e704f73c88f0b4d88e62e447bdb732cf5914094b
No functional change intended.
clang-format: please reformat the code