LLVM Weekly - #440, June 6th 2022

LLVM Weekly - #440, June 6th 2022

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

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

Videos from the 2022 EuroLLVM Developers’ Meeting have started to be published.

Yuyou Fan and John Regehr have blogged about High-Throughput, Formal-Methods-Assisted Fuzzing for LLVM, applying mutation-based fuzzing for LLVM optimisation passes and using Alive2 to prove correctness.

The Call for Papers for the Eighth Workshop on the LLVM Compiler Infrastructure in HPC is now available. The event will take place on November 13th in Dallas, Texas and the paper submission deadline is August 19th.

The Standard C++ Foundation have shared their annual C++ developer survey. Unfortunately, it’s only open for a week and so will close in the next day or so.

On the forums

LLVM commits

  • Opaque pointers are now enabled by default. 41d5033, b0ce6a0.

  • Advanced use cases of LLVM-style RTTI were documented. 4723124. This follows-on from recent work to overhaul Casting.h (which I’d somehow failed to link to - thanks Aman for sending in the tip!).

  • The allockind attribute was introduced for describing allocation function behaviour. 42861fa, 73f6646.

  • LLVM’s coding standards regarding omitting braces for single-statement if/else/loop bodies were clarified. 3d56131.

  • Support was added for writing Arm WinEH unwind info. 6b75a35.

  • -branch-on-poison-as-ub is now the default. 03aceab.

Clang commits

  • Initial ABI lowering for CSKY was added. 563cc3f.

  • The clang-offload-packager documentation was expanded. e22b02d.

  • modernize-use-emplace learned to warn when emplac_back is used improperly. 987f9cb.

Other project commits

  • BOLT gained a new “cache-aware” strategy for tail duplication. 5904836.

  • LLVM’s libc gained fprintf, pthread_create, and pthread_join implementations. ba7e1cd, 70c8d12.

  • Python bindings were added for MLIR’s Transform dialect. 3f71765.