LLVM Weekly - #531, March 4th 2024

LLVM Weekly - #531, March 4th 2024

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

Welcome to the five hundred and thirty-first 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 http://llvmweekly.org and pass it on to anyone else you think may be interested. Please send any tips or feedback to asb@asbradbury.org, @llvmweekly or @asbradbury on Twitter, or @llvmweekly@fosstodon.org or @asb@fosstodon.org.

News and articles from around the web and events

The program for EuroLLVM 2024 was announced.

Shafik Yaghmour wrote on Intel’s blog about the motivation for an Undefined Behavior Annex in the C++ language standard.

According to the LLVM calendar in the coming week there will be:

  • Office hours with the following hosts: Anastasia Stulova, Quentin Colombet, Johannes Doerfert.
  • Online sync-ups on the following topics: Flang, pointer authentication, AArch64, new contributors, LLVM/offload, classic flang, C/C++ language working group, loop optimisations, OpenMP in Flang, MLIR, PowerPC, HLSL, SPIR-V, MLGO.
  • For more details see the LLVM calendar, getting involved documentation on online sync ups and office hours.

On the forums

LLVM commits

  • The RISC-VRVVInitIndef pass was made target-independent and support added for the Arm architecture. 2823340.

  • The SPIR-V backend gained support for the SPV_INTEL_variable_length_array extension. ada70f5.

  • A bottom-up post-regalloc machine instruction scheduler was added. 9106b58.

  • A RefTypeMem2Local pass was added to the WebAssembly backend. d4cdb51.

  • An option was added to run mulitple lit suites in parallel. 782147e.

  • Guidance on bans was added to the code of conduct documentation. 4d12f70.

  • A new backend-only -enable-loop-header-duplication flag was added to force-anble loop rotation. 2fef685.

  • The HexagonLoopAlign pass was added to the Hexagon backend. ca9d2e9.

Clang commits

  • Clang learned to produce single-byte counters for source-based code coverage. 23f895f6.

  • More Clang API Notes functionality was upstreamed from Apple’s fork, adding logic to apply API note to declarations. 440b174.

  • __builtin_popcountg (a type-generic alternative to the __builtin_popcount{,l,ll} builtins) was implemented. 21d8332.

  • The dot, lerp, frac, and round intrinsics were implemented for HLSL. 82acec1, e60ebbd, 489eadd1, b542501.

  • A new modernize-use-designed-initializers check was added to clang-tidy. 525fe44.

Other project commits

  • BOLT gained support for the DWARFv5 .debug_names acceleration table. 6de5fcc.

  • LLVM’s libc printf implementation gained support for fixed point conversion specifiers. 8e3b6054.

  • Documentation was added to LLD on large sections. 4bc3b35.

  • An example was added to the MLIR tree of using the transform dialect standalone. 619ee20.