Fixes for buffers in loops with step size > 1
This MR introduces some additions and fixes for generating CPU loops with step sizes > 1:
- The CPU
create_kernelfunction now exposes a flag to disable the double field write check - Rewrote
get_base_buffer_indexto use pure integer arithmetic, and corrected the computation of the buffer base index to correctly incorporate loop step sizes. Added test case to check correctness. - Added rudimentary
evalffunctionality to integer division sympy functionint_div(its absence lead to an infinite recursion during code generation). - Added correct printing of integer-typed expressions in
CustomSympyPrinter._typed_number.
Edited by Frederik Hennig