LLVM Weekly - #549, July 8th 2024

LLVM Weekly - #549, July 8th 2024

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

Welcome to the five hundred and forty-ninth 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

A couple of papers were shared this week that may be of interest to readers, Verifying Peephole Rewriting In SSA Compiler IRs and Refined Input, Degraded Output: The Counterintuitive World of Compiler Behavior.

The 2024-06 C++ committee trip report from /r/cpp contributors is now available.

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

  • Office hours with the following hosts: Aaron Ballman, Alexey Bader, Anton Korobeynikov, Alina Sbirlea, Johannes Doerfert.
  • Online sync-ups on the following topics: Flang, alias analysis, pointer authentication, libc++, new contributors, LLVM/Offload, loop optimisations, BOLT, OpenMP in Flang, MLIR.
  • For more details see the LLVM calendar, getting involved documentation on online sync ups and office hours.

On the forums

LLVM commits

  • Documentation was added on RISC-V vector codegen. e860c16.

  • Initial code for the sandbox vectoriser started to land. f9efc29, d5f5dc9.

  • SimplifyCFG learned how to simplify nested branches. 4997af9.

  • InstCombine can now simplify select using KnownBits of the condition. 77eb056.

  • Support was added to the MC layer, llvm-readobj, and yaml2obj for the CREL relocation format. 1b704e8.

  • 128-bit operands can now be used in inline asm with the NVPTX backend. cbd3f25.

  • The “generic” and “bleeding-edge” WebAssembly CPU definitions were updated. fb6e024.

  • LoopIdiomVectorize now supports using VP intrinsics to replace byte compare loops. 8b55d34.

  • An llvm.experimental.partial.reduce.add* intrinsic was added. 6222c8f.

Clang commits

  • clang-repl now supports executing C++ code interactively inside a JS engine using WebAssembly when built with Emscripten. 9a9546e.

  • Clang static analyzer docs were migrated from HTML to RST. 3cab132, 093aaca.

  • A new bugprone-pointer-arithmetic-on-polymorphic-object check was introduced to clang-tidy. f329e3e.

Other project commits

  • A placeholder dlfcn.h header was added to LLVM’s libc. b151c7e.

  • MLIR OpenMP_Op definitions were reworked to be based on OpenMP_Clause which allows for more aspects to be tablegen’ed. d1fcfce.

1 Like