LLVM Weekly - #649, June 8th 2026
Welcome to the six hundred and forty-ninth 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
The next LLVM Bay Area Monthly Meetup will take place today, 8th June.
Fangrui Song blogged about recent improvements to LLVM’s hash table implementations.
A milestone achieved this weak was llvm-dsymutil moving to use the parallel
linker by default. Jonas Devlieghere has a blog post about this
journey.
According to the LLVM Calendar in the coming week there will be the following:
- Office hours with the following hosts: Aaron Ballman, Alexey Bader, Kristof Beyls, Johannes Doerfert,
- Online sync-ups on the following topics: MLGO, Flang, LLVM qualification group, modules, libc++, lifetime safety, LLVM/Offload, OpenMP for flang, HLSL, memory safety working group, reflection.
- For more details see the LLVM calendar, getting involved documentation on online sync ups and office hours.
On the forums
Konstantinos Parasyris is seeking to define a ClangIR pipeline boundary analogous to -emit-llvm that can be used for testing, debugging, reduction, etc.
LLVM 22.1.7 was released.
Jan André Reuter proposed adding support for XRay in Flang.
Luke Lau started an RFC thread on removing trivial vector predication intrinsics.
Richard Pasek kicked off a discussion on accepting vibecoded backend targets. A majority of respondents are not keen, expressing concern about the maintenance burden.
Kazu Hirata shared an RFC on improving the speed of sample profile loading.
“jofrn” suggests adding the ability to narrow a lit test to a particular function. Although a number of respondents similarly will extract a function from a larger .ll test, many are concerned that adding this capability in a limited way to
litdirectly won’t help typical workflows, where people prefer to invoke the tools directly anyway.Stephen Tozer proposes changing the representation of source locations (DILocation metadata), building on a prior proposal.
Sumukh J Bharadwaj would like to enable the Loop Vectorizer’s MaximizeBandwidth heuristic by default for X86 fixed-width vectors.
A single LLDB binary now works against any Python from 3.8 up, while previously it was tied to the version used to build it. Jonas Devlieghere has written up in great details how the ‘revlock’ was broken, and all the work that went into achieving this goal.
LLVM commits
SphinxQuickStartTemplate and a long list of other docs were converted to Markdown. f31bc0a, cab8d8c.
GVN was modified to eliminate redundant loads via MemorySSA. 0a758f9.
The parallel DWARF linker is now the default. 9959cbf.
Custom markers in
llvm::Annotationsare now supported, even multi-byte characters. 09bf7ef.llvm-stripandllvm-objcopygained a--verboseoption. 7b0d00f.The loop vectorizer learned to vectorize early exit loops with stores using masking. f1b42dc.
64-bit frame offsets can now be used for 64-bi RISC-V. 3f67f16.
LLVM project governance documentation was added. 3c9afa9.
{u,s}itofpgained fast-math flag support. b66b10e.MC layer support was added for the proposed RISC-V integrated matrix tile load/store extensions. 0f18088.
DXContainer source info (SRCI) is now supported. de59f9e.
Clang commits
ClangIR work continues, e.g. with
cir.lifetime.startandcir.lifetime.endops marking the beginning and end of an alloca’s live range. b3438c9.Clang learned to generate IR for HLSL matrix layout keywords. 3a9c6cd.
CMake caches were added for a Hexagon cross-toolchain distribution. 3a1420e.
The
sentinelattribute was documented. 8858ddd.-fcrash-diagnostics-tarcan be used to create a tarball of crash reproducer files. e44d060.C23
wNandwfNlength modifiers are now supported. cff8815e.The
bugprone-missing-end-comparisonclang-tidy check was added, finding cases where the result of a standard algorithm is used directly in a boolean context without comparing against the end iterator. ff2fec3.
Other project commits
As previously proposed by RFC, MLIR grew a
!tokentype. 67aaa03.Support was added to the DExTer Debugging Experience Tester for running Dexter tests using “structured scripts”. 5816ef1, c7ecad5.
LLVM’s libc gained shrink-in-place support for reallocations as well as initial ptrace support. 243ddf6, 6ae71f3.
LLDB’s accelerator plugin protocol now supports breakpoints. 8eb2520.