Native Code Generation

May 30, 2026 | 5 min read

Instruction Selection

LLVM maps IR instructions to target CPU instructions.

Register Allocation

Variables are assigned to CPU registers where possible.

Instruction Scheduling

Instructions are reordered to maximise pipeline utilisation.

Vectorisation

At opt_level 3, LLVM may auto-vectorise loops using SIMD.