llvm - AshokBhat/notes GitHub Wiki
- Compiler Infrastructure
- Open source
LLVM Core libraries | Source- and target-independent optimizer, along with code generation support |
clang | C/C++/Objective-C compiler |
lld | Linker |
lldb | Debugger |
llvm-libc | C standard library |
libc++ | C++ standard library |
compiler-rt | Compiler runtime library |
libomp | OpenMP runtime |
- https://llvm.org/docs/Packaging.html
- Suggestion - Ship multiple versions as LLVM’s API changes with each release and users will want multiple versions installed at the same time.
- Roughly every 6 months
- Release manager - Hans Wennborg (Google)
RC | 14 | 13 | 12 (Apr 21) | 11 (Sep 20) | 10 (Mar 20) | 9 (Sep 19) | 8 (Mar 19) | 7 (Sep 18) |
---|---|---|---|---|---|---|---|---|
RC1 | 04 Aug | 28 Jan | 28 Jul | 30 Jan | 29 Jul | 30 Jan | 03 Aug | |
RC2 | 24 Feb | 20 Aug | 13 Feb | 14 Aug | 07 Feb | 22 Aug | ||
RC3 | 10 Mar | 22 Sep | 04 Mar | 30 Aug | 27 Feb | 10 Sep | ||
RC4 | 01 Apr | 28 Sep | 13 Mar | 10 Sep | 08 Mar | NA | ||
RC5 | 07 Apr | 30 Sep | 19 Mar | 13 Sep | 12 Mar | NA | ||
RC6 | NA | 07 Oct | 23 Mar | 17 Sep | NA | NA | ||
Rel | 2021-10-04 | 14 Apr | 12 Oct | 24 Mar | 19 Sep | 20 Mar | 19 Sep |
- Stable release manager (X.n): Tom Stellard (Red Hat)
- Who decides? Release manager. No set date.
- Typical scenarios of release
- Large number of bug-fixes in the stable branch
- Critical bug that affects a large number of users.
- Patch rules
- Only bug-fixes
- All patches must maintain both API and ABI compatibility with the previous major release
- See LLVM versions
Distro | LLVM | Notes |
---|---|---|
RHEL 9 | ? | |
RHEL 8 | 8.0 | |
CentOS 8 | 8.0.1 | |
Ubuntu 24.04 | 18.0? | |
Ubuntu 22.04 | 14.0 | |
Ubuntu 20.04 | 10.0 | |
Ubuntu 18.04 | 6.0 | |
OpenSUSE Leap 15.2 | 9.0.1 | |
OpenSUSE Leap 15.1 | 7.0.1 | |
SLES 15 | NA | |
Amazon Linux 2 | ? |
- See also https://developer.mozilla.org/en-US/docs/Mozilla/Firefox/Linux_compatibility_matrix
- See also https://pkgs.org/download/llvm
- Intermediate Representation
- MLIR
- LLVM Toolchain: llvm | llvm libc | lldb | lld | libc++ | compiler-rt
- GNU Toolchain : gcc | glibc | binutils | gdb | libstdc++ | libgcc