[llvm-dev] LLVM Weekly - #131, Jul 4th 2016

Alex Bradbury via llvm-dev llvm-dev at lists.llvm.org
Mon Jul 4 10:17:42 PDT 2016


LLVM Weekly - #131, Jul 4th 2016
================================

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

Welcome to the one hundred and thirty-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](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

We (your editor along with his co-conspirators) are pleased to
[announce](http://lists.llvm.org/pipermail/llvm-dev/2016-July/101932.html)
that registration and talk submission is now open for the [2016 LLVM
Cauldron](http://llvm.org/devmtg/2016-09/). This is a free one-day conference
which will be held on Thursday September 8th in Hebden Bridge, UK. It's held
on the day before the [GNU Tools
Cauldron](https://gcc.gnu.org/wiki/cauldron2016) which is at the same venue,
so you're strongly recommended to sign up for both. We're also looking for
additional sponsors. If you think you may be able to help then please contact
me at asb at asbradbury.org.

The 2016 LLVM Developers' Meeting has been announced. The [call for
papers](http://lists.llvm.org/pipermail/llvm-dev/2016-July/101876.html) is
open until August 25th. The Meeting will be held over November 3rd-4th in San
Jose, California and [registration is now
open](http://lists.llvm.org/pipermail/llvm-dev/2016-July/101860.html).

The SwiftShader CPU-based OpenGL ES implementation is [now open
source](http://blog.chromium.org/2016/06/universal-rendering-with-swiftshader.html).
It of course uses LLVM as the backend to its code generator.

Herb Sutter has written up a [trip report from the Summer ISO C++ standard
meeting at
Oulu](https://herbsutter.com/2016/06/30/trip-report-summer-iso-c-standards-meeting-oulu/).
The big news is that C++17 is now feature complete.


## On the mailing lists

* Renato Golin shared a [proposal for a community voting
mechanism](http://lists.llvm.org/pipermail/llvm-foundation/2016-June/000051.html).
This ultimately led to a lot of discussion on the governance structure of LLVM
and how the LLVM Foundation fits in to that. Paul Robinson [shared some
thoughts on
this](http://lists.llvm.org/pipermail/llvm-foundation/2016-June/000068.html).
David Chisnall also gave a helpful [overview of the FreeBSD governance
structure](http://lists.llvm.org/pipermail/llvm-foundation/2016-June/000063.html).

* Hal Finkel started a discussion on [various libc++ performance regressions
vs libstdc++](http://lists.llvm.org/pipermail/cfe-dev/2016-July/049814.html).
Now these have been identified, hopefully they will be addressed.

* Chandler Carruth shares that the [initial draft of the LLVM code of
conduct](http://lists.llvm.org/pipermail/llvm-dev/2016-June/101807.html) has
now been committed.

* The discussion about whether 4.0 or 3.10 should follow 3.9 continues. Chris
Lattner has again
[argued](http://lists.llvm.org/pipermail/llvm-dev/2016-June/101634.html) that
moving to 4.0 is more logical.

* Daniel Michael Berris has shared [instructions on building a simple demo of
the XRay tracing
infrastructure](http://lists.llvm.org/pipermail/llvm-dev/2016-June/101638.html)
and has some questions for the LLVM community on how best to move forwards.

* Xing Su wonders [why not do machine instruction scheduling on SSA
form](http://lists.llvm.org/pipermail/llvm-dev/2016-June/101591.html).
[Matthias
Braun](http://lists.llvm.org/pipermail/llvm-dev/2016-June/101624.html) and
[Andrew Trick](http://lists.llvm.org/pipermail/llvm-dev/2016-June/101756.html)
respond with some thoughts.

* Richard Smith has started a thread to discuss [Clang's policy for the
default language
standard](http://lists.llvm.org/pipermail/cfe-dev/2016-June/049725.html). i.e.
when should clang++ and clang-cl default to C++17.

* Renato Golin has shared a detailed proposal on [how to support a sequential
git ID hook on
Github](http://lists.llvm.org/pipermail/llvm-dev/2016-June/101783.html). Some
have suggested the solution is too complex vs just having a repository
containing all subprojects. Other have suggested using git tags to represent
sequential IDs.


## LLVM commits

* The LLVM command-line parser was updated to support subcommands.
[r274171](http://reviews.llvm.org/rL274171). Zachary Turner, the patch author
has [written about this on the mailing
list](http://lists.llvm.org/pipermail/llvm-dev/2016-June/101804.html).

* The `TargetInstrInfo` API will now always take `MachineInstr&` instead of
`MachineInstr*` or `MachineBasicBlock::iterator`.
[r274189](http://reviews.llvm.org/rL274189).

* A LoadStoreVectorizer pass has been added.
[r274293](http://reviews.llvm.org/rL274293).

* The Kaleidoscope tutorial now features a new chapter on creating object
files. [r274441](http://reviews.llvm.org/rL274441).

* Stack coloring has been implemented for SafeStack.
[r274162](http://reviews.llvm.org/rL274162).

* LLVM's internal datastructure library gained a priority worklist.
[r274198](http://reviews.llvm.org/rL274198).

* The Broadcom Vulcan processor (implementing ARMv8.1A) now has a scheduling
model. [r274213](http://reviews.llvm.org/rL274213).

* MCCodeGenInfo has been deleted. [r274258](http://reviews.llvm.org/rL274258).

* The draft LLVM community code of conduct has landed.
[r274268](http://reviews.llvm.org/rL274268).


## Clang commits

* A simple modules fuzzer script was added to Clang's utils directory.
[r273913](http://reviews.llvm.org/rL273913).

* Clang now implements a new approach for inheriting constructors.
[r274049](http://reviews.llvm.org/rL274049).

* Clang learnt to parse init-statements in 'if' and 'switch' statements.
Semantic analysis remains to be implemented.
[r274169](http://reviews.llvm.org/rL274169).


## Other project commits

* libcxx's `unordered_set<uint32_t>::find` has had its performance improved by
45%, with a benchmark also added to the repository.
[r274423](http://reviews.llvm.org/rL274423).

* lld now supports the `--unresolved-symbols` option, allowing you to
configure what to do when there are unresolved symbols.
[r274123](http://reviews.llvm.org/rL274123).

* LLDB gained support for thread local variables on all Apple OS variants.
[r274366](http://reviews.llvm.org/rL274366).


More information about the llvm-dev mailing list