We are happy to announce that LLVM 21.1.1 is now released!
This includes the main LLVM project, and its subprojects including clang, lld, libc++, and MLIR.
Download
Find sources on GitHub.
A note on binaries
Official binaries will not be available right away. They will be provided later.
Third-party binaries will be posted to the following forum thread. Note that these binaries are not created or checked by the release managers, they should be used with care.
Next Release
The next release will be 21.1.2 and released Tuesday the 23rd of September. File bugs and backports to the LLVM 21.x Release Milestone.
Changes
- Andrei Safronov: [Xtensa] Fix lowering FP compare operations. (5a86dc996c26)
- Florian Hahn: [SCEVExp] Fix early exit in ComputeEndCheck. (#156910) (bb383adfafca)
- Florian Hahn: [LV] Don’t run instcombine for interleaved-accesses test. (2daad319889d)
- Florian Hahn: [LV] Add more tests for interleave groups requiring predicates. (2d726485a4a3)
- Simon Pilgrim: [X86] Only fold AND/ANDNP back to VSELECT if we know the predicated mask select is legal (#156663) (81d3b6ee82bf)
- David Tenty: [CMake][AIX] Enable CMP0182: Create shared library archives by default (#155686) (41df6d5e08b0)
- Brad Smith: compiler-rt: Use OpenBSD’s elf_aux_info to detect AArch64 HW features (#155768) (35f812f23263)
- Brad Smith: [builtins] Rename freebsd to elf_aux_info to reflect the function called. NFCI (#155749) (c75a0754d358)
- Louis Dionne: [libc++] Fix broken precondition of __bit_log2 (#155476) (0bbb93672952)
- Alex Rønne Petersen: [compiler-rt] Remove leftovers of FreeBSD md5/sha2 interceptors (#153351) (677a8a2d3c5a)
- Michael Buch: [lldb][DataFormatter] Allow std::string formatters to match against custom allocators (#156050) (fa462a66e418)
- Nikita Popov: [Coroutines] Restore accidentally dropped intrinsic IDs (12fbb344a1e8)
- correctmost: [clang][docs] Fix implicit-int-conversion-on-negation typos (160ad51687cc)
- Michael Buch: [lldb][DWARFASTParserClang] Don’t complete conflicting Objective-C++ types (#156681) (e0d94d9626e4)
- David Blaikie: [DebugInfo] When referencing structured bindings use the reference’s location, not the binding’s declaration’s location (#153637) (b4274c3bc8ee)
- David Tenty: [libc++][AIX] Fixup problems with ABI list checking (#155643) (7a077a1b312b)
- David Green: Remove EH_LABEL comments from tests (85e3f8ec7ff6)
- Shashi Shankar: [AArch64][BTI] Add BTI at EH entries. (#155308) (3751e53c3e89)
- Alex Rønne Petersen: [compiler-rt] Avoid depending on the libnvmm header for NetBSD (#153534) (f8a0ecfc6108)
- Michael Buch: [lldb][ClangASTImporter] Don’t ASTImport LambdaExpr nodes (#154962) (113916ccf75f)
- Michael Buch: [libcxx][fstream][NFC] Make __failed helper lambda a member function (#149390) (362b99f60ef5)
- Louis Dionne: [libc++] Ensure that we restore invariants in basic_filebuf::overflow (#147389) (b7c18c1e7ac0)
- Luke Lau: [RISCV] Cost casts with illegal types that can’t be legalized (#153030) (b63daf6312ab)
- Aiden Grossman: [clang-format] Use proper flags for git diff-tree (#155247) (ca11cf3afa42)
- Oliver Hunt: [clang][PAC] Fix builtins that claim address discriminated types are bitwise compatible (#154490) (27f0e6e579b7)
- Timm Baeder: [clang] Make sure EvalInfo pointer isn’t null (#155563) (e35cb1a59b3e)
- Princeton Ferro: [NVPTX] don’t erase CopyToRegs when folding movs into loads (#149393) (acabba4f6d30)
- Boyana Norris: [mlir][cmake] Fix mlir target export (#153341) (0e5c3f9b58b9)
- Anatoly Trosinenko: [AArch64][PAC] Do not execute AUT instructions speculatively (#155372) (1f1a20bcb03d)
- Anatoly Trosinenko: [AArch64][PAC] Fix clobbering registers by BLRA and AUTH_TCRETURN (#155373) (d69907d99beb)
- Oliver Hunt: Add pointer auth documentation to contents (#155763) (9f3f813c94f5)
- Nikolas Klauser: [libc++] Disable cv-qualified arithmetic hash specializations (#155786) (7dbfe40cb318)
- Aiden Grossman: [Clang][CMake] Use IRPGO instead of FE PGO for Cmake Caches (#155957) (ef3a6bd37c15)
- Alexey Bataev: [SLP]Do not to try to revectorize previously vectorized phis in loops (35215b6412b4)
- Brad Smith: [sanitizer_common] Older Haiku needs _GNU_SOURCE (#156291) (64dd5399f7a1)
- tangaac: [LoongArch] Fix broadcast load with extension. (#155960) (95608643573a)
- Simon Pilgrim: [X86] getScalarMaskingNode - if the mask is zero just return the blended passthrough and preserved source value (#153575) (0d6736704f38)
- David Spickett: [release] Correct download links for Windows on Arm packages (#156459) (1db648d1016d)
- Peter Collingbourne: ThinLTOBitcodeWriter: Emit __cfi_check to full LTO part of bitcode file. (562605cef22a)
- Aaron Ballman: [Analyzer] No longer crash with VLA operands to unary type traits (#151719) (33e18acf4a03)
- Tobias Hieta: Bump version to 21.1.1 (8b6caff342c3)