[llvm-dev] LLVM Weekly - #117, Mar 28th 2016

Alex Bradbury via llvm-dev llvm-dev at lists.llvm.org
Mon Mar 28 06:18:24 PDT 2016


LLVM Weekly - #117, Mar 28th 2016
=================================

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

Welcome to the one hundred and seventeenth 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.


## News and articles from around the web

Google Summer of Code applications are now closed. Applicants and interested
third-parties can look forward to finding out which projects were selected [on
April 22nd](https://summerofcode.withgoogle.com/how-it-works/).

Ramkumar Ramachandra has written a blog post giving a [whirlwind tour of the
internals of LLVM's fast register
allocator](http://artagnon.com/inside-a-register-allocator/)
(FastRegAlloc.cpp).

Alex Denisov has blogged about [the various test suites used within the LLVM
project](http://lowlevelbits.org/system-under-test-llvm/).

Version 1.13 of the TTA-based Co-design Environment (TCE) has [been
released](http://lists.llvm.org/pipermail/llvm-dev/2016-March/097139.html).
This adds support for LLVM 3.8.


## On the mailing lists

* Last week, Jia Chen's thread about [pointer analysis in
LLVM](http://lists.llvm.org/pipermail/llvm-dev/2016-March/096851.html) had yet
to receive replies. It's now received some extensive discussion. Daniel Berlin
argues there is [lower hanging fruit than improving
AA](http://lists.llvm.org/pipermail/llvm-dev/2016-March/097152.html). It does
seem there's [interest in getting in getting cfl-aa turned on by
default](http://lists.llvm.org/pipermail/llvm-dev/2016-March/097372.html),
which will require some careful bug fixing.

* The issue of LLD and fatal errors has again surfaced on the mailing list.
The more productive line of discussion focused around what should be expected
of LLD when given maliciously corrupted inputs. Rui Ueyama is suggesting
[adding a verifier
pass](http://lists.llvm.org/pipermail/llvm-dev/2016-March/097445.html) which
could be optionally enabled or disabled.

* Andrew Kaylor has shared an [RFC on adding new support to help triage
optimisation-related
failures](http://lists.llvm.org/pipermail/llvm-dev/2016-March/097617.html).
Optimisation passes are assigned numbers which can be used to help bisect a
failure. Michael Gottesman reports [a similar approach used in
Swift](http://lists.llvm.org/pipermail/llvm-dev/2016-March/097637.html).

* Samuel F Antao has [summarised recent discussion on unified offloading
support in
Clang](http://lists.llvm.org/pipermail/cfe-dev/2016-March/048087.html).

* Duncan P. N. Exon Smith has proposed an [RFC on lazy-loading of debug info
metadata](http://lists.llvm.org/pipermail/llvm-dev/2016-March/097419.html).

* What does it mean for a platform to support a type but not support a
particular operation? Krzysztof Parzyszek is kind enough to provide a [clear
and straight-forward
answer](http://lists.llvm.org/pipermail/llvm-dev/2016-March/097489.html).

* Applications for Google Summer of Code have closed, but the [list of new
project
ideas](http://lists.llvm.org/pipermail/llvm-dev/2016-March/097380.html) from
Philip Reames is a good starting point for anybody looking for a way to get
stuck in to making impactful contributions to LLVM.


## LLVM commits

* A new utility, `update_test_checks.py` was added to update opt or llc test
cases with new FileCheck patterns.
[r264357](http://reviews.llvm.org/rL264357).

* Non-power-of-2 loop unroll count pragmas are now supported.
[r264407](http://reviews.llvm.org/rL264407).

* The NVPTX backend gained a new address space inference pass.
[r263916](http://reviews.llvm.org/rL263916).

* Instances of Error are now convertible to `std::error_code`. Conversions are
also available between `Expected<T>` and `ErrorOr<T>`.
[r264221](http://reviews.llvm.org/rL264221),
[r264238](http://reviews.llvm.org/rL264238).

* Hexagon gained supported for run-time stack overflow checking.
[r264328](http://reviews.llvm.org/rL264328).


## Clang commits

* Clang now supports lambda capture of `*this` by value.
[r263921](http://reviews.llvm.org/rL263921).

* The bitreverse builtins are now documented.
[r264203](http://reviews.llvm.org/rL264203).


## Other project commits

* LLDB will fix inputted expressions with 'trivial' mistakes automatically.
[r264379](http://reviews.llvm.org/rL264379).

* ThreadSanitizer debugging support was added to LLDB.
[r264162](http://reviews.llvm.org/rL264162).

* Polly gained documentation to describe how it fits in to the LLVM pass
pipeline. [r264446](http://reviews.llvm.org/rL264446).

* LLDB has been updated to handle the UTF-16 APIs on Windows.
[r264074](http://reviews.llvm.org/rL264074).


More information about the llvm-dev mailing list