clast.c: insert_guard: insert modulo guards based on existential variables first
commit57a3999baa11aff9af7101d66f884c5d14898dff
authorSven Verdoolaege <skimo@kotnet.org>
Sun, 4 Jan 2009 13:23:32 +0000 (4 14:23 +0100)
committerSven Verdoolaege <skimo@kotnet.org>
Fri, 23 Jan 2009 13:53:40 +0000 (23 14:53 +0100)
tree26cd849e669426393a721fe2196960efd829de76
parentb15a70edbe36db24236b96e6efea7e31529700f9
clast.c: insert_guard: insert modulo guards based on existential variables first

In the isl backend, the domains to be scanned may have existentially
quantified variables.  During the loop generation, we do not recurse
into these variables, i.e., there is no "level" corresponding to these
variables.  This means that insert_equation and the insert_modulo_guard
within that function will never be called for these variables,
while existential variables are expressly used to encode modulo constraints.

We therefore introduce a check for modulo constraints imposed by any
existential variable within each call to insert_guard.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
source/clast.c