LLVM Weekly - #450, August 15th 2022

LLVM Weekly - #450, August 15th 2022

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

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

The next Toronto LLVM meetup will take place on August 17th.

The Zurich LLVM compiler social is due to restart on 6th September, featuring a talk on “Finding Missed Optimizations Through the Lens of Dead Code Elimination”.

The next LLVM Bay Area meetup will take place on Monday September 19th.

The HotChips conference will feature an MLIR tutorial. Meanwhile, The Workshop on Open Source EDA Technology has a call for papers, with CIRCT being very much on-topic.

On the forums

LLVM commits

  • Support for SPIR-V capabilities and extensions was added to the SPIR-V backend. df87130.

  • A SelectionDAG::canCreateUndefOrPoison helper was implemented. 9641a20.

  • Big-endian AArch32 disassembly in llvm-objdump was fixed. 72017e9.

  • LLVM_FALLTHROUGH was replaced with [[fallthrough]] in the codebase. de9d80c.

  • A target feature to force-enable atomics was added to RISC-V, to allow atomic operations to be lowered to lock-free helpers. f5ed0cb.

  • The isUsedByReturnOnly hook was implemented for RISC-V, allowing many more libcalls to be tailcalled. 47b1f83.

Clang commits

  • The Clang C and C++ status pages were updated. e640250, bcc90f6, ba79c2a.

  • __bf16 was enabled for X86 targets where SSE2 is available. e4888a3.

  • A bug in git-clang-format --staged was fixed. 3f801e0.

  • The cppcoreguidelines-avoid-const-or-ref-data-members clang-tidy check was added. 9ae5896.

Other project commits

  • The ORC runtime gained initial support or the COFF/x86_64 platform. 9189a26.

  • pthread_exit, thrd_exit, pthread_key_{create,delete}, and pthread_{get,set}specific were implemented in LLVM’s libc. 0071a79, 4a738ee.

  • libunwind will use _dl_find_object if available, resulting in improved performance for unwinding on multi-threaded programs. df9a23e.

  • RISC-V register definitions and read/write support were added to LLDB. 7bece0f.

  • Polly’s pattern matching was extended to cover tensor contractions. A future patch will add optimisations. b02c7e2.