[llvm-dev] LLVM Weekly - #351, September 21st 2020
Alex Bradbury via llvm-dev
llvm-dev at lists.llvm.org
Mon Sep 21 10:44:03 PDT 2020
LLVM Weekly - #351, September 21st 2020
=======================================
If you prefer, you can read a HTML version of this email at
<http://llvmweekly.org/issue/351>.
Welcome to the three hundred and fifty-first 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
Slides from CppCon 2020 are [now
available](https://github.com/CppCon/CppCon2020).
If you're considering a round table at the virtual LLVM Dev Meeting, please
[submit a proposal by September
25th](http://lists.llvm.org/pipermail/llvm-dev/2020-September/145186.html).
As well as these scheduled round table discussions, impromptu sessions will
also be possible.
## On the mailing lists
* Mitch Philipps started a thread to discuss [tagging of globals with Arm's
Memory Tagging
Extension](http://lists.llvm.org/pipermail/llvm-dev/2020-September/145173.html),
and is seeking feedback on the proposed schemes.
* Walter Erquinigo shared an RFC on [processor trace support in
LLDB](http://lists.llvm.org/pipermail/lldb-dev/2020-September/016437.html).
* Tanya Lattner is [seeking
moderators](http://lists.llvm.org/pipermail/llvm-dev/2020-September/145205.html)
for the 2020 LLVM Dev Meeting.
* Arthur Eubanks proposes [removing the
DeadInstEliminationPass](http://lists.llvm.org/pipermail/llvm-dev/2020-September/145187.html)
on the basis that DeadCodeEliminationPass is more featureful and
DeadInstEliminationPass hasn't been ported to the new pass manager.
* Artur Pilipenko
[proposes](http://lists.llvm.org/pipermail/llvm-dev/2020-September/145192.html)
adding a new requires-statement call attribute to the
llvm.memcpy/memmov.element.unordered.atomic calls to make it possible to have
a GC safepoint during the copy operation.
## LLVM commits
* Documentation was added on writing passes for the new pass manager.
[c2590de](https://reviews.llvm.org/rGc2590de30df).
* An initial constraint elimination pass was added. This pass aims to add a
more flexible way to eliminate compares based on more complex constraints
collected from dominating conditions.
[3d42d54](https://reviews.llvm.org/rG3d42d549554).
* A sequence of 19 DWARF64 support patches were committed.
[380e746](https://reviews.llvm.org/rG380e746bcca),
[982b31f](https://reviews.llvm.org/rG982b31fad29), and 17 more.
* `-basic-block-sections=labels` will now emit basic block metadata in a new
`.bb_addr_map` section. [7841e21](https://reviews.llvm.org/rG7841e21c984).
* The PowerPC backend now supports thread local storage for local exec.
[c0f199e](https://reviews.llvm.org/rGc0f199e5667).
* `update_llc_test_checks` was updated to allow `$` in function names.
[ce0eb81](https://reviews.llvm.org/rGce0eb81c727).
* A new IRSimilarityIdentifier analysis was added.
[7e4c6fb](https://reviews.llvm.org/rG7e4c6fb8546).
* The WebAssembly backend gained initial support for dwarf fission.
[0ff28fa](https://reviews.llvm.org/rG0ff28fa6a75).
* The implicit null check transformation is now supported on AArch64.
[b04c181](https://reviews.llvm.org/rGb04c181ed77).
* The RISC-V backend now supports a shadow call stack.
[1c46647](https://reviews.llvm.org/rG1c466477ad4).
* `update_cc_test_checks` gained a new `--include-generated-funcs` option so
that any functions created by the compiler that don't exist in the source will
also be checked. [7c8bb40](https://reviews.llvm.org/rG7c8bb409f31).
## Clang commits
* clang-format gained a new option allowing unknown format options to be
tolerated (only giving a warning rather than an error).
[f64903f](https://reviews.llvm.org/rGf64903fd817).
* Clang now checks if builtin/library declarations have the correct type
and builtin-ness is tracked per declaration using BuiltinAttr.
Previously it was simply assumed based on the name; for example
incompatible redeclarations in the non-global scope would result in
crashes. This work also fixed a long-standing bug where builtins aren't
recognized if they aren't directly inside extern "C". Thanks to Raul Tambre
for emailing in a summary of this patch.
[e09107a](https://reviews.llvm.org/rGe09107ab80d).
* A new command line flag was added for the machine function splitter.
[f1a3ab9](https://reviews.llvm.org/rGf1a3ab90443).
* Implicit casts are now supported between GNU and SVE vectors.
[9218f92](https://reviews.llvm.org/rG9218f928380).
* Initial work has started on a random forest model for code completion in
clangd. [9b6765e](https://reviews.llvm.org/rG9b6765e784b).
## Other project commits
* Documentation was added on getting involved in Flang.
[fe395ae](https://reviews.llvm.org/rGfe395aecd9e).
* libunwind gained support for leaf function unwinding.
[22b615a](https://reviews.llvm.org/rG22b615a9659).
* LLVM's libc gained an implementation of hypotf.
[f55963d](https://reviews.llvm.org/rGf55963d501e).
* LLD's `--warn-backrefs` was documented.
[f6f3402](https://reviews.llvm.org/rGf6f34024e9a).
More information about the llvm-dev
mailing list