The code is about providing compiler and runtime support for the automatic
and transparent offloading of loop or function workloads to accelerators.
It is composed of the following:
a) Analysis and Transformation Passes for extracting loops or functions for
offloading.
b) A runtime library that handles scheduling, data sharing and coherency between
the host and accelerator sides.
c) A modular codebase and design. Adaptors specialize the code transformations
for the target accelerators. Runtime plugins manage the interaction with the
different accelerator environments.
This patch is huge. It will be split to smaller individual patches. This version is on
phabricator as a reference of the current implementation
https://drive.google.com/file/d/0B5GasMlWJhTOb2tXTDZsal9qclE/view?usp=sharing