LLVM Weekly - #468, December 19th 2022

LLVM Weekly - #468, December 19th 2022

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

Welcome to the four hundred and sixty-eighth 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

All videos from the 2022 LLVM Developers’ Meeting have now been posted.

The Compilers for Machine Learning (C4ML) workshop has an open call for posters. The submission deadline for extended abstracts is Jan 5th 2023.

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

  • Office hours with the following hosts: Phoebe Wang, Johannes Doerfert.
  • Online sync-ups on the following topics: security gropu, OpenMP, Flang, MLIR, SPIR-V.
  • For more details see the LLVM calendar, getting involved documentation on online sync ups and office hours.

On the forums

LLVM commits

  • Auto-detection for typed pointers was removed. This is a step towards removing typed pointer support. e45cf47.

  • The CFL AA passes were removed due to lack of use/maintenance. 8005332.

  • The scalar replacement of aggregates pass was updated to account for assignment tracking. f354716.

  • Work on GlobalISel for PowerPC continued. 503a935, b41d22d, 110340c.

  • llvm-exegesis can now optionally provide a progress meter. 233ca84.

  • llvm-stress was extended to support scalable vectors and out of bounds indices to vector operations. 6b1ea24.

  • The NVPTX backend gained support for variadic functions. 619b7ce.

  • The llvm.vp.ctpop intrinsic was added and support for it implemented in the RISC-V backend. ad68586.

  • A scheduling model was added for the Syntacore SCR1 RISC-V CPU. c86a878.

  • WebAssembly TableGen patterns for memory operations were simplified by introducing a ComplexPattern. 982b8e0, 0cd9c51.

  • Initial enablement (basic definitions etc) was added for AMD Zen 4. 1f057e3.

Clang commits

  • Support for read-only types was added through the record declaration attribute __attribute__((enforce_read_only_placement)). 678ded0.

  • A number of SPARC target feature flags were added for compatibility with GCC. e0d1c29.

Other project commits

  • The ‘old’ version of the scudo secure allocator was removed. 512a98e.

  • HWASAN support was enabled for the RISC-V architecture. 2eac70c.

  • Flang gained support for Fortran submodules. 518e6f1.

  • LLVM’s libc gained scanf integer conversions. 65f4cc6.

  • std::expected was implemented for libcxx. e356f68.

  • LLDB visualisers for MLIR constructors were committed (see here for more info). 62fec08.

  • MLIR gained backwards dataflow analysis. 4e98d61.

I also posted an RFC to add the nofpclass attribute: RFC: Add nofpclass parameter attribute