LLVM Weekly - #509, October 2nd 2023

LLVM Weekly - #509, October 2nd 2023

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

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

The next LLVM meetup in Munich will take place on October 25th.

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

  • Office hours with the following hosts: Tobias Grosser, Anastasia Stulova, Quentin Colombet, Johannes Doerfert.
  • Online sync-ups on the following topics: Flang, MemorySSA, OpenMP, classic Flang, Clang C/C++ working group, loop optimisations, OpenMP for 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

  • MachineSink gained a new transformation, used by AArch64 to sink instruciton copies when they can be folded into the addressing modes of load/store instructions or replace another instruction. c649fd3.

  • -print-{before,after,all} can now dump IR to files rather than stderr if the -ir-dump-directory option is given. c718336.

  • A PagedVector data structure was added to LLVM’s ADT library. This allocates memory in “pages” and allocates only when an element of a “page” is accessed. 4ae5157.

  • Support was added for the SPIR-V SPV_KHR_expect_assume extension. 0564065.

  • myst-parser is now used rather than recommonmark when building the Sphinx documentation. b7ff032.

  • Vector constant materialisation was implemented for AArch64’s GlobalISel. eb96d6e.

  • A LLVM_FORCE_VC_REVISION CMake option was introduced. 247b7d0.

  • An image intrinsic optimizer pass was added to the AMDGPU backend. d85d143.

  • DWARFLinkerParallel gained support for accelerator tables. 08136d8.

  • llvm.ptrmask can now be used on a vector of pointers. 47b7f33.

Clang commits

  • Clang now prints its ‘note’ diagnostic in cyan. 918863d.

  • IntegralAP was introduced to support arbitrary-precision integers in the implementation of the clang interpreter. 18461dc.

Other project commits

  • A new flang-rt directory and build target was added for building the Flang runtime libraries. 6403287.

  • libc’s RISC-V support was refactored in order to support both 32 and 64-bit RISC-V. e3087c4.

  • A new code layout algorithm for function reordering was added to LLDs ELF linker. 904b3f6.

  • A RISC-V ABI plugin was added for LLDB. 847de9c.

  • MLIR’s documentation gained a tutorial implementing a schedule from the Halide DSL using the transform dialect. 6841eff.