LLVM Weekly - #643, April 27th 2026
If you prefer, you can read the canonical version of this issue at https://llvmweekly.org/issue/643.
Welcome to the six hundred and forty-third 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
Slide decks from EuroLLVM are now available.
According to the LLVM Calendar in the coming week there will be the following:
- Office hours with the following hosts: Johannes Doerfert, Renato Golin.
- Online sync-ups on the following topics: Flang, modules, lifetime safety, LLVM/Offload, JIT, 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
-
Sameer Sahasrabuddhe shared a proposal for a memory model incubated under AMDGPU target that is weaker than the LLVM memory model, aiming for compatibility with the Vulkan memory model.
-
You might have seen GitHub recently share a preview of a stacked PR workflow. LLVM has asked for access.
-
LLVM 22.1.4 was released.
-
Simon Tatham started an RFC discussing on improving function size estimation for Arm.
-
EuroLLVM roundtable notes were shared for PAuthABI, MLIR assembly dialects, and LLVM_ENABLE_RUNTIMES, embedded toolchains.
-
Hassnaa Hamdi is checking for interest in setting up a GitHub roadmap board for vectorisers work.
-
Felipe de Azevedo Piovezan proposed adding a new packet type to the gdbremote protocol in LLDB for setting/removing multiple breakpoints.
-
Pankaj Dwivedi suggests adding a ValueDeletionListener class to LLVM IR.
-
Aryan Magoon is seeking feedback on handling CFG transforms on branch-divergent/SPMD targets.
-
Oskar Wirga shared a set of PRs adding arm64e support to LLD (Apple’s ABI variant of arm64 that implements Armv8.3 pointer authentication).
-
Zequan Wu posted an RFC on extending LLVM IR DILocation and the DWARF line table to track the source location history or merged instructions during optimisations.
LLVM commits
-
The Mips delay slot filler was extended to fix an issue when there is a combination of branch and load delay slots on MIPS1. 458e9c4.
-
GlobalISel FPInfo was implemented for AArch64, allowing ‘ambiguous’ FP types (fp types with the same width as others). c95a333.
-
Parsing the frame-pointer attribute is now done when creating a MachineFunction, resulting in a small but measurable speedup for codegen. f2efeab.
-
The Os and Oz pipelines were removed in favour of using O2 with the optsize or minsize attributes instead. 86b9775.
-
Volatile loads are no longer
willreturn. d28eeaa. -
TargetInfo for ABI information was added and implemented for BPF. b06f62f, ebbaa93.
-
The SLP vectorizer gained initial support for non-power-of-2 vectorisation. cb9b66c.
Clang commits
-
The
[[clang:unsafe_buffer_usage]]attribute is now supported in API notes. 849de61. -
-fstrict-boolwas implemented, allowing control over whether Clang can assume bool values loaded from pattern can’t have a bit pattern other than 0 or 1. 5659f86. -
Vector OFP8 types were added to RISC-V vector intrinsics. 228fabd.
-
clangd gained a persistent cache for a clangd built module file. 28d2537.
Other project commits
-
TypeSanitizer can now build for Hexagon. 87a9cba.
-
SIMD compiler directives and an
INLINEALWAYScompiler directive were added to Flang. f5e80c9, 839a22f. -
LLVM libc test running was moved to lit. fc9f14e.
-
views::enumerateandranges::stride_viewwas implemented in libcxx. 2039a51, 2f28e1d. -
Input file loaded was parallelised in LLD’s ELF linker. 83f8eee.
-
LLDB’s docs gained an index of previous dev meeting talks on debugging. df6792b.
-
Documentation was added on kernel record replay for OpenMP. 254fcbe.