LLVM Weekly - #469, December 26th 2022

LLVM Weekly - #469, December 26th 2022

If you prefer, you can read a HTML version of this email at http://llvmweekly.org/issue/469.

Welcome to the four hundred and sixty-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, or @llvmweekly or @asbradbury on Twitter.

News and articles from around the web and events

Nikita Popov authored blog posts about how to contribute to LLVM and LLVM in 2022.

A few more videos from the 2022 LLVM Developers’ Meeting have made their way online.

A number of meetups have been scheduled for January. The next LLVM Bay Area meetup will take place on Mon Jan 23rd, there’ll be one in Darmstadt on January 25th, and one in Munich on January 20th.

A call for participation has been published for the 1st Enzyme Workshop, to be held on Feb 22nd-24th.

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

  • Office hours with the following hosts: Johannes Doerfert.
  • Online sync-ups on the following topics: Flang, MLIR C/C++ frontend, SYCL, OpenMP, loop optimisation, MLIR, and SPIR-V.
  • For more details see the LLVM calendar, getting involved documentation on online sync ups and office hours.

On the forums

LLVM commits

  • An implementation of uniformity analysis for irreducible control flow was implemented (alongside documentation). 475ce4c.

  • TargetParsers were moved from llvm/Support to a new component. f09cf34.

  • Target extension types were added to LLVM IR. e6b0221.

  • A helper script was added to automate teh use of relative line numbers in lit tests. cf9b25e.

  • Code generation support was added for the RISC-V XVentandaCondOps extension. 6a907a4.

  • Loop-invariant code motion was modified to allow load-only scalar promotion in the presence of aliasing loads. 88419a3.

  • MachineFunctionInfo is no longer lazily constructed. 69e75ae.

  • The testing guide was expanded with tipes on writing test constraints. 2549b8b.

  • A new RISC-V pass was added to convert ADDIW and SLLIW to ADDI and SLLI when possible, increasing opportunities for instructions compression. d64d3c5.

  • Function specialisation was enabled by default for all optimisation levels other than Os and Oz. 2656572.

Clang commits

  • Support was added for function multi versioning on AArch64. e43924a.

  • The nvptx-arch tool was added to query installed Nvidia GPUs. d5a5ee8.

Other project commits

  • The Flang overview document was updated. 62a410f.

  • A bare-metal config was added to LLVM’s libc. 3beb054.

  • BlockQuickSort was added to std::sort. 4eddbf9.

  • LLD gained support for absolute thunks for ArmV4T thumb and interworking. 62c60577.