Game World!

Join A World Of Gamers

Enter your email address:

Delivered by FeedBurner

Followers

Popular Posts

Saturday 26 June 2021

Does Apple use LLVM?

 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.

LLVM Distributions
Industry Users

CompanyDescription
Adobe Systems IncorporatedOptimizer and JIT codegen for the Hydra Language.
Adobe Systems IncorporatedAlchemy C/C++ Compiler for the ActionScript Virtual Machine (AVM2). See the FAQ and Scott Petersen's DevMtg talk for more details.
Adobe Systems IncorporatedActionScript 3 Ahead-of-Time (AOT) Compiler for iPhone software development. See Aditya Bansod's blog entry and this video for more details.
Ageia TechnologiesOptimizer 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.
AsceniumCompiler 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-VerilogCompiler from C into the Verilog hardware description language. Automates circuit design.
Codeplay SoftwareC/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 ArtsExperimental backend for custom language implementation
EricssonCompiler for a custom telecom DSP VLIW architecture, featuring 16-bit bytes and fixed-point arithmetic.
IntelOpenCL
Hue ASJIT compilation of shader programs
Kosada, Inc.The compiler for Vuo, a modern visual programming language for multimedia artists.
MobileyeCompiler for stack machine architecture
National InstrumentsCompiler 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.

NVIDIAOpenCL runtime compiler (Clang + LLVM)
RapidmindCompiler platform for their GPGPU, multicore CPU, and OpenCL runtime platforms.
REAL SoftwareOptimizer and code generator for RBScript and REAL Studio compiler.
Siemens Technology-to-Business CenterCompiler for embedded VLIW processor
Sony Interactive EntertainmentCPU compiler for the PlayStation®4 system.
Sun Microsystems LaboratoriesParfait: 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 TechnologyBackend port for their architecture, also working on multicore codegen support.
Octasic IncOpus Studio next generation, IDE and compiler for asynchronous DSP Architecture (in development).

Open Source Projects

ProjectDescription
SMACK Software VerifierSoftware verifier that converts LLVM IR to Boogie
Objective Modula-2 ProjectModula-2 compiler w/ObjC runtime support. Targets Objective-C and LLVM.
IcedTea Version of Sun's OpenJDKUses LLVM as JIT on architectures other than x86 and Sparc.
PyPy ProjectPython interpreter written in Python. Targets LLVM and C.
Faust Signal Processing LanguageSignal processing language, uses the LLVM JIT for runtime codegen.
iPhone tool chainllvm-gcc Compiler for iPhone Dev Wiki toolchain.
IOQuake3IOQuake3 Raytracing Patch, uses LLVM for runtime shader compilation.
llvm-py: Python Bindings for LLVMBuild compilers and VMs in Python, using the LLVM Backend.
LDCLLVM-based D Compiler.
Unladen SwallowA faster implementation of Python.
MonoMono has an option to use LLVM for JIT compilation.
RubiniusRuby Environment.
MacRubyRuby Implementation for Mac OS X.
PureTerm rewriting algebraic/functional programming language.
Roadsend PHPPHP implementation.
LLVM-LuaJIT and static compilation support for the Lua VM.
EmscriptenAn LLVM to JavaScript compiler.
JuliaHigh-level, high-performance dynamic programming language for technical computing.
SkyEyeFast full system simulator.
Intel SPMD CompilerC-based SPMD language for CPU vector units.
XLAXLA (Accelerated Linear Algebra) is a domain-specific compiler for linear algebra that optimizes TensorFlow computations.
SeaHornAn Algorithmic Logic-Based Reasoning Framework.
Crab-llvmA static analyzer based on abstract interpretation for LLVM.

Academic Research Users

OrganizationPeopleDescription
Åbo Akademi UniversityJohan Lilius's Research Group, ES LabNECST project
Brigham Young UniversityDavid Penry's Research GroupMicroarchitectural Simulator Partitioning and Synthesis
Adaptive Online Parallel Optimization
Carnegie Mellon UniversityDavid KoesPrincipled Compilation
Ecole Polytechnique Fédérale de LausanneGeorge Candea's Research Group
ETH ZurichThomas LenherrLanguage-independent library for alias analysis
Friedrich-Alexander Universität, Erlangen-NürembergTobias Klaus, Fabian Scheler, and Florian FranzmannRTSC Real-Time Systems Compiler
Ghent UniversityKenneth HosteInstrumentation of software
GH-SEL, INTEC, Ghent UniversityBram AdamsAspect 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 UniversityAnna ZaksValidation of interprocedural optimizations
Rice UniversityKeith Cooper's Research Group
Stanford UniversityDawson Engler's Research GroupKLEE Symbolic Virtual Machine
Tampere University of TechnologyJarmo Takala's research group, Department of Computer SystemsThe TTA Based Codesign Environment (TCE) project
University of California, San DiegoMichael McCrackenLENS Framework
University of California, IrvineSamar Abdi, Dan GajskiEmbedded System Environment project
University of California, Los AngelesJason CongxPilot behavioral synthesis system
University of California, Los AngelesJens Palsberg
University of Illinois at Urbana-ChampaignVikram Adve's Research GroupSecure Virtual Architecture/SAFECode
University of Illinois at Urbana-ChampaignRavi Iyer's Research GroupRuntime monitoring for software reliability
University of Illinois at Urbana-ChampaignMaria Garzaran's Research GroupAutomatic replication for software reliability
University of Illinois at Urbana-ChampaignSanjay Patel's Research GroupMicroarchitecture research
The University of KansasWesley PeckMicroBlaze backend for use on Xilinx FPGAs
The University of PennsylvaniaSantosh Nagarakatte, Jianzhou Zhao, Milo M K Martin, and Steve ZdancewicSoftBound
University of Texas at AustinCalvin Lin's Research GroupTurnkey Pointer Analysis

Educational Users


LLVM Development List

Floating Button

Button