[KongchangAI]
ProductLow Level Virtual Machine

LLVM

An open-source compiler infrastructure initiated by Chris Lattner at the University of Illinois in 2003. It employs a three-stage decoupled architecture of front-end, IR, and back-end, and has been adopted as a backend by many languages including Clang, Rustc, Swift, and Julia.

Core Facts

Timeline (last 90 days)

Oct 11

Modern compilers such as GCC's -O2/-O3 and LLVM's auto-vectorization will automatically perform partial loop unrolling when optimization flags are enabled.

Unverified50%
Oct 8

The RISC-V ecosystem rapidly accumulated a usable software library in its early days by porting GCC and LLVM.

Unverified50%
Oct 4

MLIR is a modern compiler infrastructure led by Google and maintained by the LLVM community, which progressively lowers high-level algorithm descriptions to hardware instructions through multi-level intermediate representations.

Unverified50%
Oct 3

The current version of Zig retains both the LLVM backend (used for release builds) and the self-developed backend (used for development builds).

Unverified50%
Oct 3

The early Zig compiler was written in C++ and relied almost entirely on LLVM for code generation, resulting in slower compilation speeds and larger binary sizes.

Unverified50%
Oct 3

Starting from version 0.10, Zig launched a self-hosting project, rewriting the compiler frontend in Zig and progressively building self-developed backends (such as x86 and WebAssembly) that do not depend on LLVM.

Unverified50%
Oct 2

The LLVM project has evolved over more than twenty years to form a modular, industrial-grade compiler framework.

Unverified50%
Oct 1

Codegen units split a crate into multiple independent LLVM modules for parallel compilation, trading a slight runtime performance cost (which hinders cross-unit inlining) for faster compilation speed.

Unverified50%
Oct 1

The intrinsic reasons for slow Rust compilation include the powerful type system, the borrow checker, code bloat caused by monomorphization, and the optimization overhead of the LLVM backend.

Unverified50%
Oct 1

The open-source C++ compiler landscape has long been dominated primarily by two camps: GCC and Clang/LLVM

Unverified50%

15 more timeline events

All Facts (20)

Verified

Modern compiler infrastructures such as LLVM uniformly translate high-level language code into machine code for various architectures through an intermediate representation (IR) layer.

70%
Verified

LLVM is a modular compiler infrastructure project, originally initiated by Chris Lattner at the University of Illinois, and has been adopted by Apple's Swift, the Rust compiler, and others.

65%
Unverified

Xcode背后使用的是LLVM编译器基础设施,代码在运行前必须通过严格的静态类型检查和编译

90%
Unverified

Modern compilers such as GCC's -O2/-O3 and LLVM's auto-vectorization will automatically perform partial loop unrolling when optimization flags are enabled.

50%
Unverified

The RISC-V ecosystem rapidly accumulated a usable software library in its early days by porting GCC and LLVM.

50%
Unverified

MLIR is a modern compiler infrastructure led by Google and maintained by the LLVM community, which progressively lowers high-level algorithm descriptions to hardware instructions through multi-level intermediate representations.

50%
Unverified

The current version of Zig retains both the LLVM backend (used for release builds) and the self-developed backend (used for development builds).

50%
Unverified

Starting from version 0.10, Zig launched a self-hosting project, rewriting the compiler frontend in Zig and progressively building self-developed backends (such as x86 and WebAssembly) that do not depend on LLVM.

50%
Unverified

The early Zig compiler was written in C++ and relied almost entirely on LLVM for code generation, resulting in slower compilation speeds and larger binary sizes.

50%
Unverified

The LLVM project has evolved over more than twenty years to form a modular, industrial-grade compiler framework.

50%
Unverified

Codegen units split a crate into multiple independent LLVM modules for parallel compilation, trading a slight runtime performance cost (which hinders cross-unit inlining) for faster compilation speed.

50%
Unverified

The intrinsic reasons for slow Rust compilation include the powerful type system, the borrow checker, code bloat caused by monomorphization, and the optimization overhead of the LLVM backend.

50%
Unverified

Clang is a front end built on the LLVM architecture, known for its modular design, friendly diagnostics, and embeddability, and is the preferred choice of companies such as Apple and Google

50%
Unverified

The open-source C++ compiler landscape has long been dominated primarily by two camps: GCC and Clang/LLVM

50%
Unverified

TileLang can be understood as a domain-specific language (DSL) or compiler intermediate layer for AI computation, playing a role similar to that of LLVM in the general-purpose compiler domain.

50%
Unverified

Compiler backends such as GCC and LLVM use the mathematical identities summarized in Hacker's Delight when performing constant propagation and strength reduction.

50%
Unverified

The -funroll-loops option in LLVM and GCC heuristically selects the unroll factor, whereas using #pragma unroll N on performance-sensitive paths often yields more predictable results.

50%
Unverified

The recommended learning sequence for beginners is to first use Triton to build GPU programming intuition, then understand the end-to-end compilation process through TVM, and finally dive into MLIR/LLVM to master the underlying infrastructure principles.

50%
Unverified

Both Rust and Zig currently rely on LLVM as their compiler backend.

50%
Unverified

Mesa's llvmpipe uses LLVM to just-in-time compile shaders into native code and renders in parallel across tiles on multi-core CPUs.

50%

Source Articles