[LLVMdev] HLVM released

Jon Harrop jon at ffconsultancy.com
Sun Mar 8 22:16:43 PDT 2009


I have been working on a high-level virtual machine built upon LLVM since 
Christmas 2008 and just released the first working version:

  http://forge.ocamlcore.org/projects/hlvm/

This alpha release of HLVM provides:

. Unit, bool, int and float primitive types.
. Tuples (as first-class structs).
. Homogeneous array type.
. Boxed value type.
. Function pointers.
. Generic printing.
. Full tail calls.
. Precise garbage collection.
. Foreign function interface to C.
. JIT compilation to native code using LLVM.
. Catching of stack overflows using libsigsegv.

The GC is brand new (I wrote it over the weekend) and I need to fix and 
optimize it before moving HLVM into beta but the code already includes a 
variety of example programs (written in ASTs) including Sieve of 
Eratosthenes, Mandelbrot Rendering and n-Queens Solvers. Apart from the GC, 
performance is superb and is often several times faster than OCaml on x86.

HLVM is published under a 2-clause BSD license and has been funded entirely by 
Flying Frog Consultancy Ltd.

-- 
Dr Jon Harrop, Flying Frog Consultancy Ltd.
http://www.ffconsultancy.com/?e



More information about the llvm-dev mailing list