mailwal

LLVM Weekly - #668, October 19th 2026

LLVM Weekly

LLVM Weekly - #668, October 19th 2026
=====================================

If you prefer, you can read a HTML version of this email at
<https://llvmweekly.org/issue/668>.

Welcome to the six hundred and sixty-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](https://www.linkedin.com/in/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: <[email protected]>, or Mastodon: [@[email protected]](https://fosstodon.org/@llvmweekly) / [@[email protected]](https://fosstodon.org/@asb), or Bluesky: [@llvmweekly.org](https://bsky.app/profile/llvmweekly.org) / [@asbradbury.org](https://bsky.app/profile/asbradbury.org).

## News and articles from around the web and events

Krish Gupta wrote on the LLVM project blog about [their GSoC project on a static memory planner for MLIR](https://blog.llvm.org/posts/2026-08-24-gsoc-2026-static-memory-planner/).

Luke Lau blogged about [speeding up a popcount function in LLVM](https://lukelau.me/2026/10/17/table-lookups.html), ultimately managing to reduce it down to a simple `vcpop.v` running 115x faster than the previously generated code.

According to the [LLVM
Calendar](https://calendar.google.com/calendar/u/0/[email protected])
in the coming week there will be the following:

* Office hours with the following hosts: Phoebe Wang.
* Online sync-ups on the following topics: formal specification, pointer
authentication, vectoriser improvements, OpenMP, Clang C and C++ language
working group, Flang, RISC-V LLVM libc, HLSL, LLVM libc math.
* For more details see the [LLVM
calendar](https://calendar.google.com/calendar/u/0/[email protected]),
getting involved documentation on [online sync
ups](https://llvm.org/docs/GettingInvolved.html#online-sync-ups) and [office
hours](https://llvm.org/docs/GettingInvolved.html#office-hours).

## On the forums

* The agenda for the LLVM Memory Safety Workshop is [now
available](https://discourse.llvm.org/t/cfp-2026-llvm-memory-safety-workshop/92531).

* Minutes and the slide deck from the recent community design review meeting
on pattern matching in C++ [are now
available](https://discourse.llvm.org/t/community-design-review-meeting-pattern-matching-wg21-p2688/92417/3).

* Pavel Labath proposed an API in LLVM libc that [makes it easier to
error-check memory allocation and
management](https://discourse.llvm.org/t/rfc-error-checking-apis-for-memory-allocation-and-management/92511).

* zerico2005 proposed [adding fpconvert as a generalisation of fpext and
fptrunc](https://discourse.llvm.org/t/rfc-adding-fpconvert-as-a-generalization-of-fpext-and-fptrunc/92514),
with the alternative of replacing both fptrunc and fpext with fpconvert also
mentioned. One of the motivations is that conversions between types of the
same width can't currently be expressed with fptrunc/fpext.

* Farzon Lotfi posted a Clang RFC on [using column-major matrix SSA in every
language
mode](https://discourse.llvm.org/t/rfc-clang-use-column-major-matrix-ssa-in-every-language-mode/92512).

* Jules Merckx looped back to their RFC on the MLIR 'match' dialect to [share
some timing measurements for a set of ported arith canonicalisation
patterns](https://discourse.llvm.org/t/rfc-match-a-new-dialect-in-between-pdl-and-pdl-interp/91847/10).

## LLVM commits

* An initial cost model was added for LoopFusion.
[a244d77](https://github.com/llvm/llvm-project/commit/a244d7762eec).

* Cycles running TableGen for building AMDGPU register banks was reduced by
8-12% by avoiding linear search for register class names. There's a whole
bunch of other TableGen optimisations this week as well.
[5ea8abe](https://github.com/llvm/llvm-project/commit/5ea8abe29386).

* RegAlloc got better at considering rematerialisation rather than using a
callee-saved register.
[2ee8123](https://github.com/llvm/llvm-project/commit/2ee8123379da).

* CompareSCEVComplexity now has a total order for SCEVs (previously the
comparison might return 0 for distinct nodes).
[f06e51b](https://github.com/llvm/llvm-project/commit/f06e51b852a0).

* AggressiveInstCombine learned to detect ctpop table lookups and lower them
to an llvm.ctpop intrinsic.
[db4132b](https://github.com/llvm/llvm-project/commit/db4132bc9760).

* Input section aware machine outlining was added, where the outlined function
will be emitted within the same section of the set of functions being
outlined.
[8d4e0bd](https://github.com/llvm/llvm-project/commit/8d4e0bdfbb2e).

## Clang commits

* Zstd compression support was added for time trace output.
[33632ff](https://github.com/llvm/llvm-project/commit/33632ffa1425).

* A `-Wexperimental-lifetime-safety-field-origin-escape` warning was added for
member functions returning field origins.
[63dcd11](https://github.com/llvm/llvm-project/commit/63dcd11b2cc0).

* The ClangIR docs landing page was refreshed.
[f9a417f](https://github.com/llvm/llvm-project/commit/f9a417ffdc91).

* A `modernize-use-if-consteval` clang-tidy check was added, which will
replace `std::is_contant_evaluated()` checks in `if` statements with C++23's
`if consteval` syntax.
[c25a312](https://github.com/llvm/llvm-project/commit/c25a312b1e2a).

## Other project commits

* A Flang design doc was added for inline runtime checks, and the `fir.assert`
operation described in that doc was implemented.
[7159d39](https://github.com/llvm/llvm-project/commit/7159d397636c),
[69ea540](https://github.com/llvm/llvm-project/commit/69ea540ba5d9).

* ASan adopted the operator-new framework from `sanitizer_common` which
amongst other things, allows `std::bad_alloc` to be thrown on OOM rather
than just dying.
[dc53f17](https://github.com/llvm/llvm-project/commit/dc53f17c1413).

* LLVM libc is now supported on Hexagon bare-metal targets.
[835ca75](https://github.com/llvm/llvm-project/commit/835ca7527dfb).