LLVM Weekly - #530, February 26th 2024

LLVM Weekly - #530, February 26th 2024

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

Welcome to the five hundred and thirtieth 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 schedule for the Eighth LLVM Performance Workshop at CGO is now up.

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

  • Office hours with the following hosts: Amara Emerson, Johannes Doerfert.
  • Online sync-ups on the following topics: MLIR C/C++ frontend, pointer authentication, new contributors, OpenMP, Flang, RISC-V, MLIR, embedded toolchains, 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 SelectionDAG pattern matching framework (llvm::SDPatternMatch) was introduced, providing a DSL-like framework for matching SDValue/SDNode with a succinct syntax, similar to llvm::PatternMatch and llvm::MIPatternMatch. 5874874.

  • JumpTabletoSwitchPass was enabled by default. 1069823.

  • Pass manager nesting in the new pass manager was rewritten. 91e9e31.

  • llvm-exegesis gained documentation for its validation counters option. 0c1f620.

  • The SPIRV backend now supports atomic instructions on floating point numbers and the SPV_KHR_uniform_gropu_instructions extension. 925768e, 66ebda4.

  • LLVM’s stale profile matching routines gained support for computing and reporting the staleness metrics after fuzzy matching. c98da372.

  • Work started on adding llvm.dbg.label support to the RemoveDIs project. ababa96.

  • FP to BFloat16 rounding is now properly implemented when SelectionDAG nodes are expanded. cc13f3b.

  • MC layer support was added for ARM FDPIC relocations. 2167881.

  • String literals in LLVM IR were documented. 770fd38.

  • Initial support for vectors was added to ConstantInt and ConstantFP. cbb24e1.

Clang commits

  • Ideas for transitioning to modules were written up in Clang’s documentation. c8fab88.

  • The __is_layout_compatible builtin was introduced. d5922cf.

  • The expected differences between Clang and the HLSL reference compiler implementations were documented. 66f6929.

  • Unaligned access is now allowed for Armv7 and higher by default. e314622.

Other project commits

  • BOLT now supports the Linux kernel static calls table. 2646dcc.

  • Support for the GPU build in LLVM’s libc was reworked to be a “regular target”. 47b7c91.

  • lldb-dap now supports data breakpoints. df6f756.