[llvm-dev] LLVM Weekly - #157, Jan 2nd 2017

Alex Bradbury via llvm-dev llvm-dev at lists.llvm.org
Mon Jan 2 10:30:43 PST 2017


LLVM Weekly - #157, Jan 2nd 2017
================================

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

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

Happy New Year! Today marks three whole years of LLVM Weekly issues - in fact
an unbroken streak of 157 consecutive Mondays so far. Thank you to all of my
readers, especially those who have helped keep me motivated by providing
feedback or have assisted in suggesting content for inclusion. I hope you all
have a happy and productive 2017, punctuated of course by a new LLVM Weekly
issue in your inbox at the start of every week.

A group at the UFMG compilers laboratory have
[released](http://lists.llvm.org/pipermail/llvm-dev/2016-December/108609.html)
[DawnCC](http://cuda.dcc.ufmg.br/dawn/), a tool to automatically insert
OpenACC or OpenMP pragmas.

The first bay-area LLVM social of 2017 will be [taking
place](http://lists.llvm.org/pipermail/llvm-dev/2017-January/108618.html) this
Tuesday the 5th at 7pm.


## On the mailing lists

* Davide Italiano has [shared some
thoughts](http://lists.llvm.org/pipermail/llvm-dev/2016-December/108588.html)
on issues with sparse conditional constant propagation (SCCP) in the presence
of undef, and some ideas on addressing them.

* Piotr Padlewski has kicked off a discussion on [enforcing or further
encouraging the use of clang-tidy in LLVM
development](http://lists.llvm.org/pipermail/llvm-dev/2016-December/108559.html).
The thread also includes a related but somewhat parallel discussion on the use
of `emplace_back` in LLVM.

* Vedant Kumar has provided a [really helpful
description](http://lists.llvm.org/pipermail/llvm-dev/2016-December/108577.html)
of the definition of clobber and local dependence in the context of
DeadStoreElimination.

* Davide Italiano has put out a [call for
testers](http://lists.llvm.org/pipermail/llvm-dev/2016-December/108503.html)
to help identify remaining issues with the NewGVN pass.


## LLVM commits

* The new pass manager is continuing to make progress. With this commit, the
whole LLVM test suite can be built at O3 using it.
[r290664](http://reviews.llvm.org/rL290664).

* A new 'element-wise atomic' memcpy intrinsic has been introduced.
[r290708](http://reviews.llvm.org/rL290708).

* AVX-512 instructions that can be encoded with a shorter 'VEX' prefix
encoding, now will be. [r290663](http://reviews.llvm.org/rL290663).

* Module metadata is now indexed in bitcode, which allows the reader to load
records lazily on-demand. [r290690](http://reviews.llvm.org/rL290690).


## Clang commits

* Relaxed matching of template template arguments in C++17 was implemented,
but is disabled by default. [r290792](http://reviews.llvm.org/rL290792).

* A new checker was added for suspected misuse of enums.
[r290600](http://reviews.llvm.org/rL290600).


## Other project commits

* The performance of libcxx's implementation of string::find has been improved
dramatically. [r290761](http://reviews.llvm.org/rL290761).

* libcxx can now use a throwing version of `_LIBCPP_ASSERT` in its tests.
[r290651](http://reviews.llvm.org/rL290651).


More information about the llvm-dev mailing list