AST generation: fix handling of separation classes
authorSven Verdoolaege <skimo@kotnet.org>
Fri, 16 Nov 2012 15:29:04 +0000 (16:29 +0100)
committerSven Verdoolaege <skimo@kotnet.org>
Fri, 16 Nov 2012 15:39:20 +0000 (16:39 +0100)
commit8ee394c4db9afd801cc5f112c51f66d4ad039d51
tree2f236f8caf24a03a114d380f493bbdd5d351fc85
parent16b3b1edd2e16a26087591bc9716abb09674de66
AST generation: fix handling of separation classes

In particular, make sure that the classes remain separate.
After removing the previous classes from the current class,
we would intersect the result with the schedule domain
and then eliminate inner dimensions.  This elimination process
may drop some constraints that are needed to ensure that the
current class is disjoint from the previous classes.
We therefore intersect the result of the elimination step
with the current separation class domain.

Reported-by: Tobias Grosser <tobias@grosser.es>
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
isl_ast_codegen.c
test_inputs/codegen/separation_class2.c [new file with mode: 0644]
test_inputs/codegen/separation_class2.in [new file with mode: 0644]