LLVM Weekly - #638, March 23rd 2026

LLVM Weekly - #638, March 23rd 2026

If you prefer, you can read the canonical version of this issue at https://llvmweekly.org/issue/638.

Welcome to the six hundred and thirty-eighth 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 Cambridge (UK) LLVM pub social will take place tomorrow, Tuesday 24th.

According to the LLVM Calendar in the coming week there will be the following (note: the US has entered daylight savings but Europe hasn’t yet, so some times may be different than normal):

  • Office hours with the following hosts: Kristof Beyls, Johannes Doerfert, Amara Emerson.
  • Online sync-ups on the following topics: formal specification, pointer authentication, OpenMP, Flang, SPIR-V, RISC-V, LLVM embedded toolchains, HLSL, LLVM libc math.
  • For more details see the LLVM calendar, getting involved documentation on online sync ups and office hours.

On the forums

LLVM commits

  • Initial support was added for the ‘byte type’ in IR. 57568c2.

  • Repeated<T> was added as a lightweight range representing N copies of the same value. 45fe4bb.

  • A function-level “flatten” function attribute was added to LLVM IR. This recursively inlines all viable callees. f66bd8e.

  • WebAssembly codegen now supports acquire-release atomics. 18d85a3.

  • An additional number was added for MachineBasicBlocks used for analyses that is intended to be more stable than their usual number. 9a2f23e.

  • The SLP vectoriser gained loop nest-aware tree building and cost estimation which should lead to more efficient vectorisation. 6261cb4.

  • BranchInst is now marked as deprecated. 8e1e371.

  • The -mtune option was added to llc. 69cd746.

  • A benchmark was added for PointerUnion. ea489fe.

Clang commits

  • The endian.h header was added, as specified in POSIX.1-2024. b17db271.

  • User documentation was added on Clangs lifetime safety analysis. 482e137.

  • ClangIR gained handling for nounwind attributes. f6f57f0.

  • -verify-directives was added as an aid for writing tests. ae9b5a4.

  • The bugprone-user-after-move clang-tidy check was extended to recognise user-defined smart-pointer-like types that make guarantees on the state of a moved-from object. 2566961.

Other project commits

  • The various ways of building LLVM’s libc were documented. df85f45.

  • free_sized and free_aligned_sized functions were added to the Scudo hardened allocator. 1b44e34.

  • iswpunct was implemented in LLVM’s libc. 6b2e347.

  • LLVM’s libc printf can be compiled with LIBC_CONF_PRINTF_MODULAR so that floating point support is weakly linked into the implementation and so remains only when needed. 7efcd61.

  • Documentation was added for cross-compiling LLDB on FreeBSD. 984417d.

  • TaskGroup was introduced to orc-rt for tracking completion of a set of tasks. 0f622c5.