The LLVM Compiler Infrastructure
Site Map:
Download!
Download now: LLVM 3.4.2
All Releases
APT Packages
Win Installer

View the open-source
license

Search this Site


Useful Links
Release Emails
3.4.2: June 2014
3.4.1: May 2014
3.4: Jan 2014
3.3: Jun 2013
3.2: Dec 2012
3.1: May 2012
3.0: Dec 2011
2.9: Apr 2011
2.8: Oct 2010
2.7: Apr 2010
2.6: Oct 2009
2.5: Mar 2009
2.4: Nov 2008
2.3: Jun 2008
2.2: Feb 2008
2.1: Sep 2007
2.0: May 2007
Older News

Developer Mtgs
Maintained by:
Chris Lattner
LLVM Users

This page lists the people and organizations that have used or are currently using LLVM in research, education, industry, or open source development. It only includes users who have publicly discussed their use of LLVM in one form or another (mentioned it on llvmdev, published work on it, etc.). We believe there are many other users not listed here and would welcome a brief note telling us about your use so that we can add you to the list.

This page has only brief entries. Some of these projects are described in more detail on the "Projects Using LLVM" page.

LLVM Distributions
Industry Users

Company Description
Adobe Systems Incorporated Optimizer and JIT codegen for the Hydra Language.
Adobe Systems Incorporated Alchemy C/C++ Compiler for the ActionScript Virtual Machine (AVM2). See the FAQ and Scott Petersen's DevMtg talk for more details.
Adobe Systems Incorporated ActionScript 3 Ahead-of-Time (AOT) Compiler for iPhone software development. See Aditya Bansod's blog entry and this video for more details.
Ageia Technologies Optimizer and back end for custom processor
Apple Inc. Xcode 4.2: "LLVM Compiler 3.0" (aka Clang) now supports many C++'11 features and libc++ is supported as a modern C++ runtime library. ARC is a major new Objective-C feature introduced in this release, introducing automated memory management to iOS programming. Xcode 4.2 no longer includes GCC 4.2, only the LLVM backend is supported (in the Clang and llvm-gcc compilers).

Mac OS X 10.7 Lion and iOS5: Virtually all of the code in these operating systems were built with Clang and llvm-gcc.

Xcode 4.1: LLDB supports debugging iOS devices.

Xcode 4.0: The Clang parser for C, C++, and Objective-C are now deeply integrated into the Xcode IDE for code completion, syntax highlighting, indexing, "Edit All In Scope", and other source code sensitive features. The Clang command line compiler (known as "LLVM Compiler" in Xcode) also now fully supports C++. This was the first Apple release of the LLDB Debugger.

Xcode 3.2: Clang is now included as a production quality C and Objective-C compiler that is available for use in Xcode or from the command line. It supports X86-32/X86-64 and builds code 2-3x faster than GCC in "-O0 -g" mode. Many "developer tools" GUI apps were shipped built with Clang, including Xcode, Interface Builder, Automator, and several others.

Xcode 3.2: The Xcode Static Analyzer is built on the Clang static analyzer, and allows Xcode users easy access to the Clang Static Analyzer as well as a first class user interface to dig through and visualize results.

Mac OS X 10.6: The OpenCL GPGPU implementation is built on Clang and LLVM compiler technology. This requires parsing an extended dialect of C at runtime and JIT compiling it to run on the CPU, GPU, or both at the same time. In addition, several performance sensitive pieces of Mac OS X 10.6 were built with llvm-gcc such as OpenSSL and Hotspot. Finally, the compiler_rt library has replaced libgcc and is now a part of libsystem.dylib.

Xcode 3.1: llvm-gcc 4.2 compiler is now available for use in Xcode or from the command line. It supports PPC32/X86-32/X86-64 and includes transparent LTO integration.

Mac OS X 10.4: Uses the LLVM JIT for optimizing many parts of the OpenGL pipeline, including emulating vertex/pixel shaders when hardware support is missing, performing texture format conversion before uploading to the GPU, efficiently packing GPU buffers for vertex submission, and many others.

Arxan Technologies, Inc. EnsureIT - Comprehensive software/code protection for Android, Apple iOS, and Linux. Covers against both static and dynamic analysis threats.
Ascenium Compiler for reconfigurable processor
AutoESL Design Technologies, Inc. Electronic System Level (ESL) to Silicon
C-to-Verilog Compiler from C into the Verilog hardware description language. Automates circuit design.
MTC Group Ltd. Morpher - compiler-driven obfuscation solution for C/C++/ObjC/ObjC++. Protection against reverse engineering, cracking and tampering.
Cray Inc. Backend for the Cray x86 compiler, available on the Cray XT5 and later machines.
Electronic Arts Experimental backend for custom language implementation
Intel OpenCL
Hue AS JIT compilation of shader programs
Kosada, Inc. The compiler for Vuo, a modern visual programming language for multimedia artists.
Mobileye Compiler for stack machine architecture
National Instruments Compiler for LabView 2010
Nuanti Browser Labs

WebKit Meta 2.0 SDK includes a specialized LLVM/clang toolchain for web application and game development featuring transparent C++ DOM and JavaScript bridging.

C++/CLI NG is a clang-based .NET compiler that embraces and extends the Microsoft / ECMA-372 language standard.

NVIDIA OpenCL runtime compiler (Clang + LLVM)
Rapidmind Compiler platform for their GPGPU, multicore CPU, and OpenCL runtime platforms.
REAL Software Optimizer and code generator for RBScript and REAL Studio compiler.
Siemens Technology-to-Business Center Compiler for embedded VLIW processor
Sony Computer Entertainment CPU compiler for the PlayStation®4 system.
Sun Microsystems Laboratories Parfait: Bug checker of C code
XMOS Technology Backend port for their architecture, also working on multicore codegen support.
Octasic Inc Opus Studio next generation, IDE and compiler for asynchronous DSP Architecture (in development).

Open Source Projects

Project Description
Objective Modula-2 Project Modula-2 compiler w/ObjC runtime support. Targets Objective-C and LLVM.
IcedTea Version of Sun's OpenJDK Uses LLVM as JIT on architectures other than x86 and Sparc.
PyPy Project Python interpreter written in Python. Targets LLVM and C.
Faust Signal Processing Language Signal processing language, uses the LLVM JIT for runtime codegen.
iPhone tool chain llvm-gcc Compiler for iPhone Dev Wiki toolchain.
IOQuake3 IOQuake3 Raytracing Patch, uses LLVM for runtime shader compilation.
llvm-py: Python Bindings for LLVM Build compilers and VMs in Python, using the LLVM Backend.
LDC LLVM-based D Compiler.
Unladen Swallow A faster implementation of Python.
Mono Mono has an option to use LLVM for JIT compilation.
Rubinius Ruby Environment.
MacRuby Ruby Implementation for Mac OS X.
Pure Term rewriting algebraic/functional programming language.
Roadsend PHP PHP implementation.
LLVM-Lua JIT and static compilation support for the Lua VM.
Emscripten An LLVM to JavaScript compiler.
Julia High-level, high-performance dynamic programming language for technical computing.
SkyEye Fast full system simulator.
Intel SPMD Compiler C-based SPMD language for CPU vector units.

Academic Research Users

Organization People Description
Åbo Akademi University Johan Lilius's Research Group, ES Lab NECST project
Brigham Young University David Penry's Research Group Microarchitectural Simulator Partitioning and Synthesis
Adaptive Online Parallel Optimization
Carnegie Mellon University David Koes Principled Compilation
Ecole Polytechnique Fédérale de Lausanne George Candea's Research Group
ETH Zurich Thomas Lenherr Language-independent library for alias analysis
Friedrich-Alexander Universität, Erlangen-Nüremberg Tobias Klaus, Fabian Scheler, and Florian Franzmann RTSC Real-Time Systems Compiler
Ghent University Kenneth Hoste Instrumentation of software
GH-SEL, INTEC, Ghent University Bram Adams Aspect weaver for an AOP-language for C called Aspicere2
Institut d'Electronique et Télécommunications de Rennes
ARTEMIS - Institut Telecom/Telecom SudParis
Mickaël Raulet, Matthieu Wipliez, Jérôme Gorin
New York University Anna Zaks Validation of interprocedural optimizations
Rice University Keith Cooper's Research Group
Stanford University Dawson Engler's Research Group KLEE Symbolic Virtual Machine
Tampere University of Technology Jarmo Takala's research group, Department of Computer Systems The TTA Based Codesign Environment (TCE) project
University of California, San Diego Michael McCracken LENS Framework
University of California, Irvine Samar Abdi, Dan Gajski Embedded System Environment project
University of California, Los Angeles Jason Cong xPilot behavioral synthesis system
University of California, Los Angeles Jens Palsberg
University of Illinois at Urbana-Champaign Vikram Adve's Research Group Secure Virtual Architecture/SAFECode
University of Illinois at Urbana-Champaign Ravi Iyer's Research Group Runtime monitoring for software reliability
University of Illinois at Urbana-Champaign Maria Garzaran's Research Group Automatic replication for software reliability
University of Illinois at Urbana-Champaign Sanjay Patel's Research Group Microarchitecture research
The University of Kansas Wesley Peck MicroBlaze backend for use on Xilinx FPGAs
The University of Pennsylvania Santosh Nagarakatte, Jianzhou Zhao, Milo M K Martin, and Steve Zdancewic SoftBound
University of Texas at Austin Calvin Lin's Research Group Turnkey Pointer Analysis

Educational Users

Valid CSS! Valid HTML 4.01!
LLVM Development List
Last modified: $Date: 2009/11/12 00:35:12 $