|
http://www.llvm.org/ Low Level Virtual Machine (LLVM) is:
LLVM is a robust system, particularly well suited for developing new mid-level language-independent analyses and optimizations of all sorts, including those that require extensive interprocedural analysis. LLVM is also a great target for front-end development for conventional or research programming languages, including those which require compile-time, link-time, or run-time optimization for effective implementation, proper tail calls or garbage collection. We have an incomplete list of projects which have used LLVM for various purposes, showing that you can get up-and-running quickly with LLVM, giving time to do interesting things, even if you only have a semester in a University course. We also have a list of ideas for projects in LLVM. Want to learn more?
If you'd like to learn more about LLVM, take a look at the LLVM Tutorials and the extensive documentation for LLVM. In particular, all of the tools distributed with LLVM are described in the LLVM Command Guide. If you're interested in what source-language features and optimizations we support, please check out the LLVM demo page. If you'd like to browse through the source code, either check out doxygen or download the most recent release. Finally, if you're interested in LLVM, have questions, and can't find any answers, please ask on the LLVM Developer mailing list. |
