LLVM Weekly - #635, March 2nd 2026
Welcome to the six hundred and thirty-fifth issue of LLVM Weekly, a weekly newsletter (published every Monday) covering developments in LLVM, Clang, and related projects. LLVM Weekly is brought to you by Alex Bradbury. Subscribe to future issues at https://llvmweekly.org and pass it on to anyone else you think may be interested. Please send any tips or feedback via email: asb@asbradbury.org, or Mastodon: @llvmweekly@fosstodon.org / @asb@fosstodon.org, or Bluesky: @llvmweekly.org / @asbradbury.org.
News and articles from around the web and events
LLVM 22.1.0 was released.
According to the LLVM Calendar in the coming week there will be the following:
- Office hours with the following hosts: Quentin colombet, Johannes Doerfert, Renato Golin.
- Online sync-ups on the following topics: Flang, MLIR C/C++ frontend, LLVM qualification, modules, lifetime safety, LLVM/Offload, Clang C and C++ language working group, OpenMP for flang, HLSL, MLGO, reflection
- For more details see the LLVM calendar, getting involved documentation on online sync ups and office hours.
On the forums
Anton Korobeynikov made a thread with guidance for prospective GSoC 2026 applicants.
Oscar Smith queries the status of enabling GlobalISel by default on AArch64. Amara Emerson answers “While the initial correctness issues were eventually resolved, since 2022 GlobalISel also fell behind SelectionDAG in terms of code size and performance further. We need to address these issues before we can consider enabling this again.”
Fabian Ritter suggested bumping the recommended version of the black Python formatter. A number of the responses discussed whether it would be worth evaluating switching to
ruff.Petr Hosek proposes requiring pull requests for all commits (i.e. removing the currently available bypass). This does not require review prior to commit for cases in which that is allowed by the developer policy.
Alexis Engelke started an RFC discussion on splitting
BranchInstintoUncondBrandCondBron the basis that in most cases unconditional vs conditional branches require different handling anyway.Renato Golin posted an MLIR RC on changing how dialect canonicalisation patterns are populated in MLIR.
Mehdi Amini would like to reject i0 integer types in MLIR arith and vector ops.
LLVM commits
bugpoint was deleted. llvm-reduce should be used instead. 9d5574d.
The llvm-gpu-loader utility was rewritten to use the LLVMOffload interface. 049cfda.
In the RISC-V backend, code generation for the experimental P extension no longer requires an additional opt-in flag (beyond the flags needed to enable the extension). 118f64a.
Power-of-2 div/rem are now expanded at the IR level rather than left for backend peephole optimisations. 3031ba9.
Clang commits
An
optin.core.UnconditionalVAArgchecker was added, catching variadic functions that unconditionally useva_arg(). 36d60b1.-fpreferred-function-alignmentwas added. 4a7bffc2c.
Other project commits
The Fortran 2023 TOKENIZE intrinsic was implemented in flang. ca0e7d3.
std::equalwas optimised for segmented iterators. 12d8360.Some infrastructure was added towards loading LLDB modules dynamically. a14b72b.
RISC-V FreeBSD kernel debugging support was added to LLDB. 4a602c0.
MLIR python bindings can now be built against the Python stable API, allowing compatibility between different versions of Python 3.12 or above. 2c97209.