silt icon indicating copy to clipboard operation
silt copied to clipboard

☔️ Lower GraphIR to LLVM IR

Open CodaFi opened this issue 7 years ago • 2 comments

A general lowering algorithm from Schedule GraphIR is given in Thorin. This issues serves as an umbrella for our version of this lowering algorithm.

CodaFi avatar Mar 05 '18 04:03 CodaFi

We're going to need a runtime to facilitate our dynamic type metadata system. We'll need to implement something similar to Swift's runtime boxes, with copy, move, and destroy operations that we can use to lower copy_value, destroy_value, and function parameter passing.

harlanhaskins avatar Mar 07 '18 04:03 harlanhaskins

We'll need to investigate ways to represent type metadata at runtime. Preferably in a way such that type metadata is lazily instantiated only for types we happen to use.

We'll also need a story for runtime instantiation of type metadata. Namely, how? We'll need to be able to track metadata instantiation in GIR as managed values as well.

harlanhaskins avatar Mar 07 '18 04:03 harlanhaskins