BSDCan2008 - Final - we hope

BSDCan 2008
The Technical BSD Conference

Chris Lattner
Day Talks - 2 (2008-05-17)
Room A
Start time 16:00
Duration 01:00
ID 99
Event type lecture
Track Invited Talks
Language en

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).