| 2 | |
| 3 | = Path Forward = |
| 4 | |
| 5 | Here are some general steps forward |
| 6 | |
| 7 | - Decide on a standard intermediate language for our Ops (C what we have now, Lorito, or JIT Definitions) |
| 8 | - Write a parser for that intermediate language |
| 9 | - Write code generation backends for the intermediate language to output C Functions and JIT Definitions for at least one JIT engine * |
| 10 | - Write all the ops in the intermediate language * |
| 11 | |
| 12 | Note: if our intermediate language for Ops is C, we can ignore at least part of the starred steps, but will have to do a lot more work building a suitable parser. |
| 13 | |
| 14 | The specific plan is: |
| 15 | |
| 16 | * Design Lorito |
| 17 | * Create a Lorito parser with multiple backends (C code in several formats, LLVM code) |
| 18 | * read LLVM documentation like mad men (whiteknight, help wanted!) |
| 19 | * Make a C code backend for PCT |
| 20 | |
| 21 | Accomplished steps: |
| 22 | |
| 23 | * Redirect --runcore=jit to the fast core (also redirected switch JIT and CGP JIT cores and their Makefile targets) |
| 24 | * rip out the current JIT system |
103 | | |
104 | | = Path Forward = |
105 | | |
106 | | Here are some general steps forward |
107 | | |
108 | | - Decide on a standard intermediate language for our Ops (C what we have now, Lorito, or JIT Definitions) |
109 | | - Write a parser for that intermediate language |
110 | | - Write code generation backends for the intermediate language to output C Functions and JIT Definitions for at least one JIT engine * |
111 | | - Write all the ops in the intermediate language * |
112 | | |
113 | | Note: if our intermediate language for Ops is C, we can ignore at least part of the starred steps, but will have to do a lot more work building a suitable parser. |
114 | | |
115 | | The specific plan is: |
116 | | |
117 | | * Design Lorito |
118 | | * Create a Lorito parser with multiple backends (C code in several formats, LLVM code) |
119 | | * read LLVM documentation like mad men (whiteknight, help wanted!) |
120 | | * Make a C code backend for PCT |
121 | | |
122 | | Accomplished steps: |
123 | | |
124 | | * Redirect --runcore=jit to the fast core (also redirected switch JIT and CGP JIT cores and their Makefile targets) |
125 | | * rip out the current JIT system |