[llvm-dev] LLVM Weekly - #297, September 9th 2019

Alex Bradbury via llvm-dev llvm-dev at lists.llvm.org
Mon Sep 9 10:21:14 PDT 2019


LLVM Weekly - #297, September 9th 2019
======================================

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

Welcome to the two hundred and ninety-seventh 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

The program for the 2019 LLVM Developers' Meeting [has been
announced](http://blog.llvm.org/2019/09/announcing-program-for-2019-llvm.html).
It will take place Oct 22-23rd in San Jose, CA.


## On the mailing lists

* Chris Lattner announces that [Google's TensorFlow team would like to
contribute MLIR to the LLVM
Foundation](http://lists.llvm.org/pipermail/llvm-dev/2019-September/134992.html).
"We think that MLIR is a nice complement to existing LLVM functionality,
providing common infrastructure for higher level optimization and
transformation problems, and dovetails naturally with LLVM IR optimizations
and code generation. Please let us know if you have any thoughts, questions,
or concerns!"

* Rui Ueyama has shared an RFC on [changing the variable naming rules in the
LLVM
codebase](http://lists.llvm.org/pipermail/llvm-dev/2019-September/134921.html),
outlining a migration plan and detailing lessons learned from making the
change to LLD. Chris Lattner is
[supportive](http://lists.llvm.org/pipermail/llvm-dev/2019-September/134949.html)
but many other respondents are concerned that the benefit may not be worth the
cost.

* Stefan Pintille started a discussion on [reducing memory requirements for
compiling
PassBuilder.cpp](http://lists.llvm.org/pipermail/llvm-dev/2019-September/134920.html),
which currently requires 700MB-1GB. Both [David
Blaikie](http://lists.llvm.org/pipermail/llvm-dev/2019-September/134937.html)
and [Chandler
Carruth](http://lists.llvm.org/pipermail/llvm-dev/2019-September/134938.html)
had suggestions.

* David Greene posted [v2 of his his proposal for adding a complex type to
LLVM](http://lists.llvm.org/pipermail/llvm-dev/2019-August/134815.html) (this
was actually posted last week but I missed it - apologies!). "This proposal
introduces new complex types and overloads existing floating point
instructions and intrinsics for common complex operations and introduces new
intrinsics for complex-specific operations. Goals of this work include better
reasoning about complex operations within LLVM, leading to better
optimization, reporting and overall user experience."

* [Alex
Brachet-Mialot](http://lists.llvm.org/pipermail/llvm-dev/2019-September/134925.html)
and [Praveen
Velliengiri](http://lists.llvm.org/pipermail/llvm-dev/2019-September/134885.html)
have both shared write-ups of their GSoC projects, on librification of
llvm-objcopy and speculative compilation in ORC JIT.


## LLVM commits

* It is now possible to unit-test the MachinePipeliner schedule emitter by
checking annotated output. [r370705](https://reviews.llvm.org/rL370705).

* LLVM documentation is now organised into separate pages rather than a single
huge index. [r371096](https://reviews.llvm.org/rL371096).

* Support for the constrained fpto[su]i intrinsics was added to the SystemZ
backend. [r370674](https://reviews.llvm.org/rL370674).

* The Arm backend can now perform codegen for the new 8.1-m CSINC, CSNEG, and
CSINV conditional instructions. [r370739](https://reviews.llvm.org/rL370739).

* The Attributor framework learned to deduce the "no-capture" argument
attribute. [r370817](https://reviews.llvm.org/rL370817).

* GlobalISel gained support for splitting types according to calling
conventions. [r370822](https://reviews.llvm.org/rL370822).

* PeelingModuleScheduleExpander was introduced, which forms the beginning of a
reimplementation of ModuloScheduleExpander.
[r370893](https://reviews.llvm.org/rL370893).

* An MVE tail predication pass was implemented.
[r371179](https://reviews.llvm.org/rL371179).


## Clang commits

* The documentation on OpenMP support has been expanded with a more
fine-grained description of current status.
[r370930](https://reviews.llvm.org/rL370930).

* Support was added for the C++20 `constinit` keyword.
[r370972](https://reviews.llvm.org/rL370972).

* Minimal support is now present for attaching fix-it hints to Static Analyzer
BugReports. [r371257](https://reviews.llvm.org/rL371257).


## Other project commits

* libcxxabi has implemented support for demangling C++20 lambda expression
extensions. [r371273](https://reviews.llvm.org/rL371273).

* GDB pretty printers have been added for a wider variety of libc++ data
structures. [r371131](https://reviews.llvm.org/rL371131).


More information about the llvm-dev mailing list