I keep hearing about LLVM all the time. It’s in Perl, then it’s in Haskell, then someone uses it in some other language? What is it?
- What exactly distinguishes it from GCC (perspectives = safety etc.)?
Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.
Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.
Lost your password? Please enter your email address. You will receive a link and will create a new password via email.
Please briefly explain why you feel this question should be reported.
Please briefly explain why you feel this answer should be reported.
Please briefly explain why you feel this user should be reported.
LLVM is a library that is used to construct, optimize and produce intermediate and/or binary machine code.
LLVM can be used as a compiler framework, where you provide the "front-end" (parser and lexer) and the "back-end" (code that converts LLVM’s representation to actual machine code).
LLVM can also act as a JIT compiler – it has support for x86/x86_64 and PPC/PPC64 assembly generation with fast code optimizations aimed for compilation speed.
Unfortunately disabled since 2013, there was the ability to play with LLVM’s machine code generated from C or C++ code at the demo page.