A sublte question about Dragonegg: is Dragonegg usable for Just-in-time compiling as well as ahead-of-time compilation? If not, how hard would it be to enable JIT using dragonegg? Say one wanted to use the gnu fortran-2008 front end, and to jit up some fortran code. How difficult would it be to adapt it? Thank you. Jason -- Jason E. Aten, Ph.D. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20110324/737c97ef/attachment.html>
Apologies if this gets double posted. A subtle question about Dragonegg: is Dragonegg usable for Just-in-time compiling as well as ahead-of-time compilation? If not, how hard would it be to enable JIT using dragonegg? Say one wanted to use the gnu fortran-2008 front end, and to jit up some fortran code. How difficult would it be to adapt it? Thank you. Jason -- Jason E. Aten, Ph.D. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20110324/c5fefd9d/attachment.html>
On Thu, Mar 24, 2011 at 11:33 AM, Jason E. Aten <j.e.aten at gmail.com> wrote:> A sublte question about Dragonegg: is Dragonegg usable for Just-in-time > compiling as well as ahead-of-time compilation? > > If not, how hard would it be to enable JIT using dragonegg? Say one wanted > to use the gnu fortran-2008 front end, and to jit up some fortran code. How > difficult would it be to adapt it?There isn't any fundamental reason why you couldn't compile a piece of Fortran and JIT the resulting IR; IR is IR, no matter how you get it. Given the architecture of gcc, though, you'd probably have to run dragonegg gfortran as a separate process. And you'd need to come up with some trickery to make the Fortran libs available for the application. All relatively straightforward, but I don't see the point. -Eli
Possibly Parallel Threads
- [LLVMdev] dragonegg + jit ?
- [LLVMdev] LLVM test-suite support for dragonegg / Fortran
- [LLVMdev] LLVM test-suite support for dragonegg / Fortran
- [LLVMdev] [DragonEgg] Why Fortran's "call flush()" is converted to "call void bitcast (void (...)* @_gfortran_flush_i4 to void (i8*)*)(i8* null) nounwind" ?
- [LLVMdev] LLVM test-suite support for dragonegg / Fortran