Alex Bradbury via llvm-dev
2021-Jun-21 17:57 UTC
[llvm-dev] LLVM Weekly - #390, June 21st 2021
LLVM Weekly - #390, June 21st 2021 ================================= If you prefer, you can read a HTML version of this email at <http://llvmweekly.org/issue/390>. Welcome to the three hundred and ninetieth 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](https://www.linkedin.com/in/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 at asbradbury.org>, or @llvmweekly or @asbradbury on Twitter. ## News and articles from around the web Uma Srinivasan will be presenting "From Packing Decimals With Cobol to Optimizing Tweets With Scala: A Journey Through Space, Time, & Culture with Compilers" at the [Women in Compilers and Tools June Meetup](https://www.meetup.com/meetup-group-ifwtlvwd/events/278899544/). June 24th, 6pm PDT. A new book on LLVM has been published - [Learn LLVM 12 by Kai Nacke](https://www.packtpub.com/product/learn-llvm-12/9781839213502). ## On the mailing lists * The [thread suggesting a migration to Discourse](https://lists.llvm.org/pipermail/llvm-dev/2021-June/150823.html) has seen continued discussions. To pick a few messages: * Christian Kühnel [shared](https://lists.llvm.org/pipermail/llvm-dev/2021-June/151172.html) a [draft migration user-guide](https://github.com/llvm/llvm-iwg/blob/main/discourse_migration/userguide.md). * James Y Knight [reported](https://lists.llvm.org/pipermail/llvm-dev/2021-June/151150.html) that the [Open Source Community Infrastructure](https://www.osci.io/tenants/) would be willing to provide Mailman3 hosting. * John McCall provided a [summary of issues with mailing lists](https://lists.llvm.org/pipermail/llvm-dev/2021-June/151215.html). "Now, forums have their own usability annoyances, without question. [...] My point is that those problems should not be treated as blockers when we have equal or worse problems with mailing lists that we've just come to accept." * Reid Kleckner [summarised responses to the RFC on LLD-as-a-library](https://lists.llvm.org/pipermail/llvm-dev/2021-June/151184.html). * Tom Stellard announced that [12.0.1-rc2 has been tagged](https://lists.llvm.org/pipermail/llvm-dev/2021-June/151223.html) and an extended deadline for requesting backports. * Matt Morehouse responded to an old thread on first-class metadata with a [list of potential use cases](https://lists.llvm.org/pipermail/llvm-dev/2021-June/151198.html). * Gulfem Savrun Yeniceri [proposes](https://lists.llvm.org/pipermail/llvm-dev/2021-June/151154.html) adding a binary id to profiles, in order to aid matching executables to profiles. * John McCall responded to the RFC thread on byte types in LLVM, [summarising how this may relate to work to add a provenance model to C](https://lists.llvm.org/pipermail/llvm-dev/2021-June/151199.html), and arguing that it would be better to start by considering inttoptr and ptrtoint casts. * Luke Drummond started a conversation about [when it is appropriate to use the [NFC] tag](https://lists.llvm.org/pipermail/llvm-dev/2021-June/151234.html). * LLVM GPU News Issue #14 [is out](https://lists.llvm.org/pipermail/llvm-dev/2021-June/151294.html). * Kito Cheng posted an [RFC on providing a #pragma to implement the riscv_vector.h contents](https://lists.llvm.org/pipermail/cfe-dev/2021-June/068340.html), avoiding the parsing of ~60k lines. David Rector [pointed to](https://lists.llvm.org/pipermail/cfe-dev/2021-June/068346.html) recent work to solve a similar problem in OpenCL. ## LLVM commits * A CustomBehaviour class was added llvm-mca, intended to allow developers to implement modelling for instructions that require special handling. [f7a23ec](https://reviews.llvm.org/rGf7a23ecece52). * The SpeculateAroundPHIs pass was removed, with the commit message noting some of the regressions observed with the NewPM transition may have been caused by it. [e523645](https://reviews.llvm.org/rGe52364532afb). * `DW_CFA_LLVM_` was added, as part of the work to add extensions for heterogeneous debugging on AMDGPU. [167e7af](https://reviews.llvm.org/rG167e7afcd52b). * DebugInfo handling was added for IR outlined functions. [2c21278](https://reviews.llvm.org/rG2c21278e7471). * Initial GlobalISel infrastructure was added for M68k. [2193347](https://reviews.llvm.org/rG2193347e72fa). * Relocation emission for RISC-V was refactored and improved, bringing it more closely in line with GNU as. [bbea642](https://reviews.llvm.org/rGbbea64250f65). * The MIRPrinter gained machine metadata support. [b9c05af](https://reviews.llvm.org/rGb9c05aff205b). ## Clang commits * Improvements were made for named return value optimisation. [12c90e2](https://reviews.llvm.org/rG12c90e2e25df). * The performance-unnecessary-copy-initialization checker was updated to fix some false positive cases. [bdd5da9](https://reviews.llvm.org/rGbdd5da9dec61). ## Other project commits * EmitC, an MLIR dialect for emitting C++, was upstreamed to MLIR. [876de06](https://reviews.llvm.org/rG876de062f946). * Identical code folding was implemented in lld-macho. [f27e454](https://reviews.llvm.org/rGf27e4548fc42). * An implementation of a two-level distributed barrier was added to LLVM's OpenMP library. [25073a4](https://reviews.llvm.org/rG25073a4ecfc9). * LLVM's libc gained implementation of a set of abstract elementary operations acting on fixed chunks of memory, intended to be used as building blocks for higher level abstractions. [454d92a](https://reviews.llvm.org/rG454d92ac3b3b).