[llvm-dev] LLVM Weekly - #315, Jan 13th 2020

Alex Bradbury via llvm-dev llvm-dev at lists.llvm.org
Mon Jan 13 15:59:19 PST 2020


LLVM Weekly - #315, Jan 13th 2020
=================================

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

Welcome to the three hundred and fifteenth 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

LLVM 10.0.0 [is
branching](http://lists.llvm.org/pipermail/llvm-dev/2020-January/138054.html)
on Wednesday 15th January, with a target date of Feb 26th for the final tag.


## On the mailing lists

* Further discussion took place on flang landing in the monorepo, which was
[summarised by Richard
Barton](http://lists.llvm.org/pipermail/llvm-dev/2020-January/138103.html),
who listed the concerns raised etc.

* Bill Wendling kicked of a discussion on [moving to GitHub pull
requests](http://lists.llvm.org/pipermail/llvm-dev/2020-January/138021.html).
This generated a range of responses discussing teh relative merits of
Phabricator's code review vs GitHub, e.g. [this one from David
Chisnall](http://lists.llvm.org/pipermail/llvm-dev/2020-January/138053.html).

* Florian Hahn has now posted two patches demonstrating what matrix support in
Clang might look like and [is seeking
feedback](http://lists.llvm.org/pipermail/cfe-dev/2020-January/064206.html).

* Zakk is seeking input on [how to encode the target-abi into LLVM bitcode for
LTO](http://lists.llvm.org/pipermail/llvm-dev/2020-January/137951.html). This
question is motivated by the RISC-V backend's needs, and Zakk has posted
patches for two possible approaches.

* Volodymyr Sapsai proposed [adding a publish-subscribe mechanism for GitHub
events](http://lists.llvm.org/pipermail/llvm-dev/2020-January/138138.html), to
allow people to implement webhooks for LLVM activity without requiring repo
admin involvement.

* Serge Pavlov started a discussion on [calling functions from the non-default
floating-point
environment](http://lists.llvm.org/pipermail/llvm-dev/2020-January/138003.html),
querying whether the floating point state should be saved/restored or not.

* JF Bastien has
[bumped](http://lists.llvm.org/pipermail/llvm-dev/2020-January/138048.html)
the thread he started on the proposed LLVM security group and process.

* Jie Zhou started a thread seeking advice on [the best way of implementing
fat pointers for
C](http://lists.llvm.org/pipermail/llvm-dev/2020-January/137981.html). David
Chisnall fed back [guidance on what CHERI
did](http://lists.llvm.org/pipermail/llvm-dev/2020-January/137986.html).

* Chris Kenelly started a discussion on [implementing memcpy, memset, memcmp,
and bcmp in LLVM's
libc](http://lists.llvm.org/pipermail/libc-dev/2020-January/000032.html). The
email contains a wealth of information on measured distrubtions and thoughts
on trade-offs. "We see hardware support for these operations as the future".


## LLVM commits

* An initial backend stub was committed for the NEC SX-Aurora TSUBASA Vector
Engine. [00c6e98](https://reviews.llvm.org/rG00c6e98409f).

* A scheduling model was committed for the AMD Znver2 (Rome) cores.
[3408940](https://reviews.llvm.org/rG3408940f736).

* check-llvm now runs 50% faster on macOS and 18% faster on Windows thanks to
using an unbounded regex cache.
[f654493](https://reviews.llvm.org/rGf6544934b94).

* The AArch64 backend gained definitions for missing Apple CPU names.
[903e5c3](https://reviews.llvm.org/rG903e5c3028d).

* The MachineIR infrastructure was enhanced with support for target-specific
MIR formatting and parsing. [be841f8](https://reviews.llvm.org/rGbe841f89d00).

* AArch64 and X86 gained support for a new patchable-function-entry attribute
to add NOPs at function entry.
[4d1e23e](https://reviews.llvm.org/rG4d1e23e3b3c),
[a8fbdc5](https://reviews.llvm.org/rGa8fbdc57699).

* The developer policy was updated to reflect that now LLVM has moved to Git,
the "Author" commit metadata should be used to reflect the original author,
rather than needing to add a "Patch by J. Bloggs" line to the commit messages.
[a5230ac](https://reviews.llvm.org/rGa5230ac10b0).


## Clang commits

* C++ concepts work continues with initial support for function trailing
requires clauses. [b65b1f3](https://reviews.llvm.org/rGb65b1f322bd).

* New `__builtin_align_up`, `__builtin_align_down`, and `__builtin_is_aligned`
builtins were added, working on both pointers and integers. These were
originally implemented in the downstream CHERI fork of LLVM, motivated by a
desire to avoid ptr-to-int casts.
[8c387cb](https://reviews.llvm.org/rG8c387cbea76).

* A new "optionally" AST matcher was added.
[2823e91](https://reviews.llvm.org/rG2823e91d558).

* clang-tidy gained a new bugprone-signed-char-misuse check.
[350da40](https://reviews.llvm.org/rG350da402ef6).


## Other project commits

* The vim-lldb plugin was removed from the monorepo as it was unmaintained and
doesn't work with Python 3. [c5adcdc](https://reviews.llvm.org/rGc5adcdc5c88).

* Tests in LLVM's libc project were moved to a top-level test directory.
[5b24c08](https://reviews.llvm.org/rG5b24c088171).

* New benchmarks were added to libcxx/benchmarks/string.bench.
[0c5102b](https://reviews.llvm.org/rG0c5102bd939).

* LLDB's build page now describes optional dependencies.
[317cbda](https://reviews.llvm.org/rG317cbdad4d1).


More information about the llvm-dev mailing list