LLVM Weekly - #655, July 20th 2026
Welcome to the six hundred and fifty-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
The next LLVM Meetup in Munich will take place on July 29th.
A new set of C++ proposal papers is out.
According to the LLVM Calendar in the coming week there will be the following:
- Office hours with the following hosts: Johannes Doerfert, Amara Emerson.
- Online sync-ups on the following topics: Flang, vectorizer, modules, lifetime safety, LLVM/Offload, OpenMP for flang, HLSL, reflection.
- For more details see the LLVM calendar, getting involved documentation on online sync ups and office hours.
On the forums
LLVM 23.x has branched.
Another month has passed already and Bruno Cardoso Lopes has posted July’s progress report for ClangIR.
Peter Smith posted an RFC on adding full support for the AArch64 ELF Pointer Authentication ABI.
Saleem Abdulrasool proposed the DS2 debug server be incubated within LLVM. A number of responses discuss the fact this would be the third in-tree debug server and what the plan would be for reducing that number.
Following on from the previous meta-RFC on ADTs without a C++ runtime dependency, Robert Imschweiler’s new RFC is seeking approval of the concrete implementation details.
Arjun Harikumar proposed a new generalised strategy for vectorising early exit loops with multiple early exits.
Jiacong Ye started an RFC discussing on adding a probe dialect to CIRCT.
Luke Lau announced that lnt.llvm.org is now tracking RISC-V RVA23U64 performance for Clang and GCC on the new SpacemiT-X100. The results are also published to cc-perf.igalia.com.
Serge Pavlov proposed custom formatters for constant values in LLVM IR, motivated by the desire for more readable printing of
llvm.is_fpclass.Elaine Gibson is seeking feedback to their RFC on porting libcxx to Haiku.
LLVM commits
lit’s new
-pass-env FOOoption can be used to allow the named environment variable to be passed through without having to edit the source to add it to the allow list. f1b5b06.LLVM’s ADT library gained a non-owning view of a buffer formatted as a binary search tree in Eytzinger (breadth-first) order as well as EytzingerTable, an owning container shoring elements in that order. 8042e61, 75403b0.
The Arm backend’s ability to estimate the function size in bytes for Thumb1 was improved. 3a61e72.
MC layer support was added for the SpacemiT Xvsmtvdotii extension. 13e9cc2.
The SLPVectorizer can now vectorize straight-line code with may-alias dependencies by versioning the block (adding a branch to check for overlap). 36dd090.
There was a big series of patches converting AMDGPU tests from
-mtriple=amdgcn ... -mcpu=<gfx>to a new “folded subarch triple” form e.g.-mtriple=amdgpu9.00-amd-amdhsa. 194f7a3 and many more.The MetaRenamer pass now call prefixes basic block names with
bblrather thanbb. f7491ea.Support for running LLVM tests with external shell in lit was dropped. 3f46a5e.
Clang commits
Clang’s “Templight” template debugger was removed due to being unmaintained. 5f7060c.
The DanglingPtrDeref checker was implemented to detect user-after-scope lifetime errors. e1d7480.
A range of Clang docs were moved to Markdown. 1514df3.
clang-doc’s markdown and YAML generators were removed. c6ebd7a2, 1bd4601.