LLVM


Topic | v1 | created by jjones |
Description

The LLVM compiler infrastructure project is a set of compiler and toolchain technologies, which can be used to develop a front end for any programming language and a back end for any instruction set architecture. LLVM is designed around a language-independent intermediate representation (IR) that serves as a portable, high-level assembly language that can be optimized with a variety of transformations over multiple passes. LLVM is written in C++ and is designed for compile-time, link-time, run-time, and "idle-time" optimization. Originally implemented for C and C++, the language-agnostic design of LLVM has since spawned a wide variety of front ends: languages with compilers that use LLVM include ActionScript, Ada, C#, Common Lisp, Crystal, CUDA, D, Delphi, Dylan, Fortran, Graphical G, Halide, Haskell, Java bytecode, Julia, Kotlin, Lua, Objective-C, OpenCL, PostgreSQL's SQL and PLpgSQL, Ruby, Rust, Scala, Swift, XC, Xojo and Zig.


Relations

is Compiler

In computing, a compiler is a computer program that translates computer code written in one programmi...

a tool for C++

C++ (C plus plus) is a general-purpose programming language created by Bjarne Stroustrup as an extens...


Edit topic New topic

Resources

No beginner resources matching your criteria have been registered, yet.

No intermediate resources matching your criteria have been registered, yet.

No advanced resources matching your criteria have been registered, yet.

is applicable to Alive2: Bounded Translation Validation for LLVM

We designed, implemented, and deployed Alive2: a bounded translation validation tool for the LLVM com...