gpu: generate the AST from a single schedule tree
commitd4562a9902452d2c32a30929c37fe1054f5afd8d
authorSven Verdoolaege <skimo@kotnet.org>
Wed, 2 Oct 2013 19:54:23 +0000 (2 21:54 +0200)
committerSven Verdoolaege <skimo@kotnet.org>
Fri, 10 Apr 2015 13:18:58 +0000 (10 15:18 +0200)
tree608b1de0bad483ee896b4760515688a62e5d9019
parent9ff7c5358213e31d1c32e66efe1c5416b48aa8f9
gpu: generate the AST from a single schedule tree

In particular, this means that we no longer perform nested AST generation.
The main advantage is that the entire AST generation input is available
at once, making the flow a lot easier to understand and significantly
simplifying debugging.
We are however currently limited to only generating a single instance
of a kernel launch since all the information about the kernel is computed
up front.  We can also no longer set different iterator names for
different phases of the AST generation since there is only one phase left.

The synchronization may have changed sligthly in this commit.
The original synchronization was difficult to follow and it did not
seem worth it to try and replicate it exactly, especially since
we will be removing some synchronization in later commits.

In order to keep this commit as small as possible, some code
that is no longer used is still kept in the source.
This code will be removed in subsequent commits

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
gpu.c
gpu.h
gpu_array_tile.h
gpu_group.c
gpu_group.h