LLVM Weekly - #601, July 7th 2025
Welcome to the six hundred and first 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
Videos from the inaugural 2025 AsiaLLVM Developers' Meeting are now available on YouTube.
The next LLVM meetup in Munich will take place on Thursday July 24th.
The next Portland LLVM social will take place on July 10th.
Fractal Fir (MichaĆ Kostrubiec) blogged about bootstrapping Rust with GCC.
According to the LLVM Calendar in the coming week there will be the following:
- Office hours with the following hosts: Alina Sbirlea, Johannes Doerfert.
- Online sync-ups on the following topics: Flang, MLIR C/C++ frontend, modules, libc++, LLVM/Offload, SPIR-V, OpenMP for flang, HLSL, memory safety.
- For more details see the LLVM calendar, getting involved documentation on online sync ups and office hours.
On the forums
Tulio Magno Quites Machado Filho proposed adding support to LLD for the GCC LTO format, allowing LLD to link object files that were generated with LTO.
Alexis Engelke started an RFC discussion on disallowing struct/array IR values inside functions (in the near term, at least disallowing array/struct loads/stores).
Sjoerd Meijer discussed plans for moving away from type-based getelementptr, to a ptradd that just adds an offset to a pointer. Specifically, raising questions about the impact on loop interchange and DependenceAnalysis.
Notes were shared from the first LLVM Qualification working group sync-up.
Yaxun (Sam) Liu provided a summary of the discussions on GNU Make jobserver support in LLVM so far and and noted that a PR is up for review.
There’s going to be an LLVM 20.1.8 release, due to be cut on Tuesday.
Kristof Beyls returned to the thread on improving the documentation of what is considered a security issue in LLVM to note that a PR is now available for review.
The MLIR area team shared the proposed list of MLIR maintainers.
The 75th edition of the MLIR newsletter is now out, providing the usual summary of updates from the MLIR ecosystem.
Gleb Gladilov made observations about issues with the current API for building MLIR operations and suggested alternatives.
LLVM commits
The
dead_on_return
attribute was added, indicating the memory poitned to by the argument is dead upon function return. f1cc0b6.LLVM’s developer policy now documents how to ask for permissions other than commit access (e.g. triage permissions). cd60247.
An attributor was added for identifying invariant loads. f393211.
LLVM’s
ArrayRef
now hasconsume_front
andconsume_back
methods. 2725765.LLVM’s developer policy received a bunch of clarifications and wording tweaks. f01017c.
Code generation for WebAssembly global addresses with offsets was improved. cbc2ac5.
Clang commits
Clang will now verify that alignments specified in the Clang TargetInfo match those specified by the LLVM data layout. 5fa4eb1.
A faster algorithm is was adaopted for the
misc-confusable-identifiers
clang-tidy check. c56c349.The work to remove the RISCVToolchain and migrate it to the BareMetal toolchain was completed. f8cb798.
The
_sys
Clang builtin (matching the MSVC intrinsic) became supported for AArch64. ed27f18.
Other project commits
The XeVM dialect was added to MLIR (“In short, XeVM is the nvvm or rocdl for Intel GPU”). b9b2661.
ELF LLD now supports integrated distributed ThinLTO (DLTO), which allows distribution of ThinLTO backend compilations via external systems like Incredibuild. 3b4e793.
flat_set
was made constexpr in libcxx. 9eb4fc7.