Tag: chris lattner

BSD licensed C++ compiler

LLVM is a suite of carefully designed open source
libraries that implement compiler components (like
language front-ends, code generators, aggressive
optimizers, Just-In-Time compiler support, debug
support, link-time optimization, etc.). The goal
of the LLVM project is to build these components
in a way that allows them to be combined together
to create familiar tools (like a C compiler),
interesting new tools (like an OpenGL JIT compiler),
and many other things we haven't thought of yet.
Because LLVM is under continuous development, clients
of these components naturally benefit from improvements
in the libraries.

This talk gives an overview of LLVM's design and
approach to compiler construction, and gives several
example applications. It describes applications of
LLVM technology to llvm-gcc (a C/C++/Objective C
compiler based on the GNU GCC front-end), the OpenGL
stack in Mac OS/X Leopard, and Clang. Among other
things, the Clang+LLVM Compiler provides a fully
BSD-Licensed C and Objective-C compiler (with C++
in development) which compiles code several times
faster than GCC, produces code that is faster than
GCC in many cases, produces better warnings and
error messages, and supports many other applications
(e.g. static analysis and refactoring).