[llvm-dev] LLVM Weekly - #145, Oct 10th 2016

Alex Bradbury via llvm-dev llvm-dev at lists.llvm.org
Mon Oct 10 08:57:42 PDT 2016


LLVM Weekly - #145, Oct 10th 2016
=================================

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

Welcome to the one hundred and forty-fifth 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](http://asbradbury.org). 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.

Today's issue is going out slightly later than usual I'm travelling back from
[ORCONF](http://www.orconf.org) and have been stuck on networks that block SSH.
We can now all breathe a sigh of relief, LLVM Weekly has managed to go out on
the 145th consecutive Monday.


## News and articles from around the web

Neil Henning has written up [part
four](http://www.duskborn.com/adding-branching-mpc-llvm-for-the-neil-language-4/)
of his series on the 'Neil' language. This post discusses adding branching
support.

Version 0.1.33 of ELLCC cross-compilation toolchain has [been
released](http://lists.llvm.org/pipermail/llvm-dev/2016-October/105772.html).
This release includes version bumps for a number of the included libraries.


## On the mailing lists

* Dylan McKay has shared an [update on the status of the AVR
backend](http://lists.llvm.org/pipermail/llvm-dev/2016-October/105737.html).
Large parts of it have been merged now.

* I've posted an update on the [status of the initial set of patches to add a
RISC-V backend in
LLVM](http://lists.llvm.org/pipermail/llvm-dev/2016-October/105768.html). 6
are reviewed and ready to land, 3 have started the review process and awaiting
signoff, while 2 remain unreviewed. More developer attention on Krzstof's
Parzyszek's RFC on [adding variable-sized register
classes](http://lists.llvm.org/pipermail/llvm-dev/2016-September/105027.html)
would be appreciated. Over the weekend I've shared some thoughts on how this
may interact with the parsing of register names (see
[here](http://lists.llvm.org/pipermail/llvm-dev/2016-October/105753.html) and
[here](http://lists.llvm.org/pipermail/llvm-dev/2016-October/105763.html)).

* Hubert Tong has shared a [brief update on C++ concepts
status](http://lists.llvm.org/pipermail/cfe-dev/2016-October/051056.html) in
Clang.

* Matthias Braun has created a [new script to compare LLVM test-suite
runs](http://lists.llvm.org/pipermail/llvm-dev/2016-October/105739.html). The
aim is to enable quick comparison of a few runs without leaving the
commandline.

* As James Molloy
[confirms](http://lists.llvm.org/pipermail/llvm-dev/2016-October/105712.html),
the plan is still to end support for compiling LLVM with MSVC 2013 next week.

* In response to a question, Ryan Taylor has shared a [handy
snippet](http://lists.llvm.org/pipermail/llvm-dev/2016-October/105664.html)
explaining how to handle memory-to-memory operations.

* In response to a question about authoring a Z80 LLVM backend, Philipp Klaus
Krause [pointed
to](http://lists.llvm.org/pipermail/llvm-dev/2016-October/105655.html) his
experimental [LLVM+SDCC
toolchain](https://sourceforge.net/p/sdcc/mailman/message/35382805/) which
seems rather interesting.

* Sebastian Pop has shared a [proposal for making the test-suite succeed with
Ofast and
ffp-contract=on](http://lists.llvm.org/pipermail/llvm-dev/2016-October/105730.html).

## LLVM commits

* The new llvm-opt-report tool will generate source-annotated optimisation
summaries. [r283398](http://reviews.llvm.org/rL283398).

* WebAssembly has officially switched from being an AST to being a stack
machine, and the in-tree comments have been updated accordingly. Adjustments
to the implementation have also started.
[r283154](https://reviews.llvm.org/rL283154),
[r283501](http://reviews.llvm.org/rL283501).

* The AVR machine code backend, frame lowering, and assembly printer was added.
[r283297](http://reviews.llvm.org/rL283297),
[r283311](http://reviews.llvm.org/rL283311),
[r283623](http://reviews.llvm.org/rL283623).

* New target hooks have been added for the LoadStoreVectorizer.
[r283099](https://reviews.llvm.org/rL283099).

* A new utility has been added to visualise optimisation records. It produces
HTML from the YAML output generated from optimisation remarks.
[r283571](http://reviews.llvm.org/rL283571).


## Clang commits

* Builtins for coroutines intrinsics have been added. With this commit, simple
coroutines can be created in plain C.
[r283155](http://reviews.llvm.org/rL283155).

* When optimising for size, loop rerolling is enabled by default.
[r283685](http://reviews.llvm.org/rL283685).


## Other project commits

* Support for MIPS64 was added to EfficiencySanitizer.
[r283435](http://reviews.llvm.org/rL283435).

* A tweak to hash computation in LLD has shaved of about 0.8 seconds when
linking firefox with `-O2`. [r283367](http://reviews.llvm.org/rL283367).

* A cross-platform minidump post-mortem debugging plugin has been added to
LLDB. [r283259](http://reviews.llvm.org/rL283259).


More information about the llvm-dev mailing list