isl_printer_print_aff: detect (obvious) modulo expressions
That is, look for modulo expressions in the affine expression and
print them as such. For example, print
(x) mod 2
instead of
x - 2*floor((x)/2)
As was the case in
isl-0.18-894-gbd8b89077f (isl_printer_print_map:
try and print equality constraints as modulo constraints,
Thu Aug 10 10:33:51 2017 +0200), the first version
is easier to read.
Start from the last integer division to increase the chances
of detecting further integer divisions in the remainder.
The detection mechanism is just a heuristic, however, and
is not guaranteed to find all possible hidden modulo expressions.
Signed-off-by: Sven Verdoolaege <sven@cerebras.net>