of Illinois with the goal of providing a modern, SSA-based compilation strategy capable of supporting both static and dynamic compilation of arbitrary programming languages [llvm.org] The main project components are: A common intermediate representation (IR) roughly equivalent to a generic assembly language. Tools and libraries to create, transform and consume LLVM IR. Now strongly supported by Apple Inc. Lead developers are Apple employees. Apple ecosystem uses LLVM-based compilers, most notably for Objective-C and Swift. 2 / 15
result in local one Binary (Binding (Local ("1")), Add (List (NoSignedWrap ())), IntT (32), Named (Local ("0")), Const (IntC (1))) %1 = add nsw i32 %0, 1 Store local one to i’s address Store (NotVolatile (), IntT (32), Named (Local ("1")), PointerT (IntT (32), DefaultAddrSpace ()), Named (Local ("i.addr")), DefaultAlign ()) store i32 %1, i32* %i.addr 14 / 15
information LLVM llvm.org The Architecture of Open Source Applications: http://www.aosabook.org/en/llvm.html Software Language Engineering sbt-rats: bitbucket.org/inkytonik/sbt-rats Kiama: bitbucket.org/inkytonik/kiama Twitter @plvmq @inkytonik 15 / 15