On Aug 1, 2011, at 17:29 , Wojciech Meyer wrote: > Hello Benedikt,
Hello Wojciech, > It's also worth to note that there is some generic mid/back-end code ready, > in my OCaml native compiler framework called DragonKit in a spirit of LLVM, > which I am currently actively working on. It's already able to express a toy > language and JIT compile and run it within the same process on top of x86 > architecture: > > The code includes: > - SSA based IL using polymorphic variants > - monadic code generator > - plugable passes using first class modules > - very ad-hoc register allocator > - X86 backend > - example that evolved from LLVM kaleidoscope ported to DragonKit to > Pascal/ML like language, and another example using direct translation to X86 > backend. > > The code is functorised and almost purely functional (with few exceptions > where there is no benefit of doing that). > > Maybe it could have some use in your new toplevel, or maybe it would be worth > to reuse some of your work in DragonKit (or viceversa). > > I welcome anybody wanting to join me in this effort. > > Please take a look at: > > www.github.com/danmey/DragonKit I doubt that this would be applicable in the context of ocamlopt. What we are heading for is simply a way to avoid the external as and ld invocations by doing the work in-process. Code generation is done already, we just replace the last phase (see emit.ml). BTW: On a related note, we also have a student working on a LLVM backend for ocamlopt as part of his bachelor thesis, which may be related to what you do. > Cheers; > Wojciech greets, Benedikt -- Caml-list mailing list. Subscription management and archives: https://sympa-roc.inria.fr/wws/info/caml-list Beginner's list: http://groups.yahoo.com/group/ocaml_beginners Bug reports: http://caml.inria.fr/bin/caml-bugs
