I saw this at proggit[1].<p>The gccXllvm competition have been good for both parts, IMO.<p>[1]http://www.reddit.com/r/programming/comments/1nn6p3/libgccjitso_an_embeddable_jitcompiler_based_on_gcc/
This is very exciting news for GNU Octave.<p>One of the things in which Octave is much slower than Matlab is in looping. Matlab used to have this slowness too until they started JIT compiling their loops. For Octave, this has been more difficult, and the only tool that we've had for accomplishing this has been LLVM.<p>While our JIT compiler code is still very much alpha, it has already been quite a pain to deal with the LLVM JIT "API" because the truth is, they don't really have an API, i.e. no promise of stability. Every LLVM release has broken everything and our code keeps having to change in order to accomodate all of those changes. Every. Damn. LLVM. Release.<p>I don't know how stable the JIT API for gcc will be, but already it's starting to look much better and thought-out as a public API. Here's hoping that our fellow GNUs-in-arms can help us make a faster and better Octave!
This is pretty cool but even when it is more robust and works with optimized code I think most developers looking for something like this are far more likely to choose LLVM for licensing reasons.<p>Current gcc is GPLv3 and that is very unlikely to change, if you link your project to this you are thoroughly "infected" by the GPL since unlike many GNU projects that are explicitly meant to be linked to by your own projects, gcc's core is not LGPL and the runtime library exemption granted by gcc is not sufficient to save you from infection in this use case.