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 llvm-dev, 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.
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. | All of Apple’s operating systems, iOS, macOS, tvOS and watchOS, are built with LLVM technologies. And Xcode, Apple’s integrated development environment, supports development in Swift, C, C++, and Objective-C, all of which use and are built with LLVM technologies. Apple’s implementations of OpenCL and OpenGL, the Metal Shading Language, Core Image, and macOS graphics drivers also use LLVM technologies. |
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 |
Azul Systems, Inc. | Azul Systems' Zing Java Virtual Machine ships with Falcon, an LLVM based optimizing high-tier JIT compiler. |
C-to-Verilog | Compiler from C into the Verilog hardware description language. Automates circuit design. |
Codeplay Software | C/C++/OpenCL compilers and debuggers for CPUs, GPUs, DSPs and custom processors. |
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 |
Ericsson | Compiler for a custom telecom DSP VLIW architecture, featuring 16-bit bytes and fixed-point arithmetic. |
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 Interactive Entertainment | CPU compiler for the PlayStation®4 system. |
Sun Microsystems Laboratories | Parfait: Bug checker of C code |
Synopsys Inc. | DesignWare ARC MetaWare EV Development Toolkit (OpenCL) – EV6x processors DesignWare ARC MetaWare Development Toolkit (C/C++) – ARC processors |
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). |
Project | Description |
---|---|
SMACK Software Verifier | Software verifier that converts LLVM IR to Boogie |
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. |
XLA | XLA (Accelerated Linear Algebra) is a domain-specific compiler for linear algebra that optimizes TensorFlow computations. |
SeaHorn | An Algorithmic Logic-Based Reasoning Framework. |
Crab-llvm | A static analyzer based on abstract interpretation for LLVM. |
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 |
LLVM Development List