27 |
(see basis, high-il, IL, simplify, translation) |
(see basis, high-il, IL, simplify, translation) |
28 |
|
|
29 |
5) HighIL optimization |
5) HighIL optimization |
30 |
*** Not implemented yet *** |
The HighIL optimization phase is mostly a normalization phase that |
31 |
|
lifts static computations to the global level and eliminates |
32 |
|
dynamic field, kernel, and image values (i.e., statically resolves |
33 |
|
them). |
34 |
(see high-il, high-il-opt, IL) |
(see high-il, high-il-opt, IL) |
35 |
|
|
36 |
6) Translation to MidIL |
6) Translation to MidIL |
37 |
*** Not implemented yet *** |
This pass translates the HighIL representation to MidIL. The main |
38 |
|
purpose of this step is to replace fields with convolved images. |
39 |
|
The MidIL includes operations to transform world-space positions |
40 |
|
to image-space, to load voxels from images, and to evaluate kernels. |
41 |
|
The MidIL representation supports vector operations, but tensors |
42 |
|
with order > 1 are flattened. |
43 |
(see high-il, high-to-mid, IL, mid-il) |
(see high-il, high-to-mid, IL, mid-il) |
44 |
|
|
45 |
7) MidIL optimization |
7) MidIL optimization |
56 |
|
|
57 |
8) Code generation |
8) Code generation |
58 |
*** Not implemented yet *** |
*** Not implemented yet *** |
59 |
|
(see IL, low-il, c-target, codegen) |
60 |
|
|
61 |
And here is a roadmap of the subdirectories: |
And here is a roadmap of the subdirectories: |
62 |
|
|
65 |
IL/gen - A simple program generator for the IL modules. |
IL/gen - A simple program generator for the IL modules. |
66 |
ast - The typed AST representation |
ast - The typed AST representation |
67 |
basis - The definition of the Diderot Basis environment |
basis - The definition of the Diderot Basis environment |
68 |
|
c-target - Backend support for generating C code. |
69 |
|
codegen - Generic code-generation infrastructure |
70 |
common - Various miscellaneous utility modules |
common - Various miscellaneous utility modules |
71 |
driver - The driver glues the various phases together |
driver - The driver glues the various phases together |
72 |
env - The environment representation used in typechecking |
env - The environment representation used in typechecking |
76 |
high-to-mid - The HighIL to MidIL translation phase |
high-to-mid - The HighIL to MidIL translation phase |
77 |
low-il - The LowIL representation |
low-il - The LowIL representation |
78 |
mid-il - The MidIL representation |
mid-il - The MidIL representation |
79 |
|
mid-to-low - The MidIL to LowIL translation phase |
80 |
parser - The parser, scanner, and parse-tree representation. |
parser - The parser, scanner, and parse-tree representation. |
81 |
simplify - Contains the Simple AST representation and the |
simplify - Contains the Simple AST representation and the |
82 |
simplification phase. |
simplification phase. |