handle pencil independent pragmas
commitd7e82167a4abafc2c9ed92c3f25552434102e073
authorSven Verdoolaege <skimo@kotnet.org>
Sun, 2 Feb 2014 06:52:41 +0000 (2 07:52 +0100)
committerSven Verdoolaege <skimo@kotnet.org>
Wed, 2 Apr 2014 08:22:47 +0000 (2 10:22 +0200)
tree93eebbfd533e81a034c090cd173c6e3a9e4c1947
parent6059163c2fb9c2eb30cee8cf7addb633f9faacde
handle pencil independent pragmas

For each pencil independent pragma, we keep track of the pairs
of statement instances that are excluded from depending on each other
as well as the variables that are local to the independent loop.
The representation may not be very efficient, but this potential
problem can be solved when we move to schedule trees and/or
perform dependence analysis inside pet.

We conservatively only keep track of independences on affine for loops
with an affine loop condition.  We can later extend this to other
types of loops as the need arises.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
21 files changed:
emit.c
include/pet.h
parse.c
pet.cc
scan.cc
scan.h
scop.c
scop.h
tests/encapsulate/independent5.c [new file with mode: 0644]
tests/encapsulate/independent5.scop [new file with mode: 0644]
tests/independent1.c [new file with mode: 0644]
tests/independent1.scop [new file with mode: 0644]
tests/independent2.c [new file with mode: 0644]
tests/independent2.scop [new file with mode: 0644]
tests/independent3.c [new file with mode: 0644]
tests/independent3.scop [new file with mode: 0644]
tests/independent4.c [new file with mode: 0644]
tests/independent4.scop [new file with mode: 0644]
tree.c
tree.h
tree2scop.c