LLVM AI Tool Use Policy - LLVM
Contents
Menu
Expand
Light mode
Dark mode
Auto light/dark mode
Hide navigation sidebar
Hide table of contents sidebar
LLVM
Frequently Asked Questions (FAQ)
The LLVM Lexicon
Getting Started/TutorialsToggle navigation of Getting Started/Tutorials
Architecture & Platform Information for Compiler Writers
Performance Tips for Frontend Authors
Getting Started with the LLVM System
Getting Started with the LLVM System using Microsoft Visual Studio
LLVM Programmer’s Manual
Debugging LLVM
LLVM Tutorial: Table of ContentsToggle navigation of LLVM Tutorial: Table of Contents
My First Language Frontend with LLVM Tutorial
1. Kaleidoscope: Kaleidoscope Introduction and the Lexer
2. Kaleidoscope: Implementing a Parser and AST
3. Kaleidoscope: Code generation to LLVM IR
4. Kaleidoscope: Adding JIT and Optimizer Support
5. Kaleidoscope: Extending the Language: Control Flow
6. Kaleidoscope: Extending the Language: User-defined Operators
7. Kaleidoscope: Extending the Language: Mutable Variables
8. Kaleidoscope: Compiling to Object Code
9. Kaleidoscope: Adding Debug Information
10. Kaleidoscope: Conclusion and other useful LLVM tidbits
1. Building a JIT: Starting out with KaleidoscopeJIT
2. Building a JIT: Adding Optimizations – An introduction to ORC Layers
3. Building a JIT: Per-function Lazy Compilation
4. Building a JIT: Extreme Laziness - Using LazyReexports to JIT from ASTs
MyFirstTypoFix
ReferenceToggle navigation of Reference
How To Use Attributes
LLVM Command GuideToggle navigation of LLVM Command Guide
FileCheck - Flexible pattern matching file verifier
clang-tblgen - Description to C++ Code for Clang
dsymutil - manipulate archived DWARF debug symbol files
lit - LLVM Integrated Tester
llc - LLVM static compiler
lldb-tblgen - Description to C++ Code for LLDB
lli - directly execute programs from LLVM bitcode
llubi - LLVM UB-aware Interpreter
llvm-addr2line - a drop-in replacement for addr2line
llvm-ar - LLVM archiver
llvm-as - LLVM assembler
llvm-bcanalyzer - LLVM bitcode analyzer
llvm-calc-occupancy - AMDGPU occupancy calculator
llvm-cgdata - LLVM CodeGen Data Tool
llvm-config - Print LLVM compilation options
llvm-cov - emit coverage information
llvm-cxxfilt - LLVM symbol name demangler
llvm-cxxmap - Mangled name remapping tool
llvm-debuginfo-analyzer - Print a logical representation of low-level debug information.
llvm-diff - LLVM structural ‘diff’
llvm-dis - LLVM disassembler
llvm-dwarfdump - dump and verify DWARF debug information
llvm-dwarfutil - A tool to copy and manipulate debug info
llvm-exegesis - LLVM Machine Instruction Benchmark
llvm-extract - extract a function from an LLVM module
llvm-extract-bundle-entry - extract an offload bundle entry
llvm-ifs - shared object stubbing tool
llvm-install-name-tool - LLVM tool for manipulating install-names and rpaths
llvm-ir2vec - IR2Vec and MIR2Vec Embedding Generation Tool
llvm-lib - LLVM lib.exe compatible library tool
llvm-libtool-darwin - LLVM tool for creating libraries for Darwin
llvm-link - LLVM bitcode linker
llvm-lipo - LLVM tool for manipulating universal binaries
llvm-locstats - calculate statistics on DWARF debug location
llvm-mc - LLVM Machine Code Playground
llvm-mca - LLVM Machine Code Analyzer
llvm-nm - list LLVM bitcode and object file’s symbol table
llvm-objcopy - object copying and editing tool
llvm-objdump - LLVM’s object file dumper
llvm-offload-binary - LLVM Offload Binary Packager
llvm-opt-report - generate optimization report from YAML
llvm-otool - Mach-O dumping tool
llvm-pdbutil - PDB File forensics and diagnostics
llvm-profdata - Profile data tool
llvm-profgen - LLVM SPGO profile generation tool
llvm-ranlib - generates an archive index
llvm-readelf - GNU-style LLVM Object Reader
llvm-readobj - LLVM Object Reader
llvm-reduce - LLVM automatic testcase reducer.
llvm-remarkutil - Remark utility
llvm-size - print size information
llvm-stress - generate random .ll files
llvm-strings - print strings
llvm-strip - object stripping tool
llvm-symbolizer - convert addresses into source code locations
llvm-tblgen - Target Description to C++ Code for LLVM
llvm-test-mustache-spec - LLVM tool to test Mustache library compliance
llvm-tli-checker - TargetLibraryInfo vs library checker
mlir-tblgen - Description to C++ Code for MLIR
opt - LLVM optimizer
tblgen - Description to C++ Code
Using -opt-bisect-limit to debug optimization errors
Symbolizer Markup Format
The PDB File FormatToggle navigation of The PDB File Format
The MSF File Format
The PDB Info Stream (aka the PDB Stream)
The PDB TPI and IPI Streams
The PDB DBI (Debug Info) Stream
The Module Information Stream
The PDB Public Symbol Stream
The PDB Global Symbol Stream
The PDB Serialized Hash Table Format
Introduction
On-Disk Format
Present and Deleted Bit Vectors
CodeView Symbol Records
CodeView Type Records
Garbage Collection with LLVM
Garbage Collection...