LLVM Weekly - #454, September 12th 2022

LLVM Weekly - #454, September 12th 2022

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

Welcome to the four hundred and fifty-fourth 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.

I started a blog, Muxup. Expect more on-topic-for-LLVM-Weekly posts in the future.

News and articles from around the web

LLVM 15.0.0 was released. Congratulations and thank you to everyone involved!

David Spickett blogged about LLDB 15’s greatly improved handling of AArch64 extensions that reuse unused address bits.

Fangrui Song blogged about toolchain support for Zstd compressed debug sections, including Clang/LLVM of course.

Henrique Bucher blogged about LLVM XRay instrumentation.

On the forums

LLVM commits

  • Patches started to land to support the ARM64EC ABI. 488ad99, 63335af, 4658366, 5637ec0.

  • LLVM can now write Zstd compressed debug info sections. fbf5e87.

  • PC Sections Metadata was introduced. c70f6e1.

  • The ExpandLargeDivRem pass was enabled for X86, Arm, and AArch64. 2090e85.

  • A new --reserve-regs-for-regalloc option was added to the AARch64 backend to help simulate high register pressure when testing. 3cf4ab5.

  • A RISC-V usage page was added to document the supported extensions in the RISC-V backend. 7f2b016, be442d2.

  • New thresholds were added to CodeGenPrepare to limit compilation time for functions with a very large number of basic blocks. 16743c9.

  • MC layer support was added for the RISC-V Ztso extension. a4a2943.

  • Codegen support for armv2,2a,3,3m was disabled (as noted in the commit, codegen for these targets was untested and known to be broken). e428baf.

Clang commits

  • GNU++17 is now used as the default C++ and ObjC++ standard. 3e99b8d.

  • The clang and clang-tools-extra code owners files were updated following the RFC discussion on Discourse. 3c604e9.

  • -fexperimental-sanitize-metadata was introduced, which enables SanitizerBinaryMetadata instrumentation. c4842bb.

  • Function calls, array initialisers, and array subscript expressions were implemented in the Clang interpreter. 8e41e6a, 3a7d476.

Other project commits

  • Documentation was written for the Mach-O LLD port. 0f9590a.

  • Gather/scatter operation definitions were added to MLIR’s tensor dialect. d2613d5.

  • The Flang build documentation was updated to reflect recent changes. 49dab97.

  • Clang 13 support was removed from libcxx. 3695cf2.

  • A wide integer emulation pass was added to MLIR. fa8eb27.