[llvm-dev] LLVM Weekly - #165, Feb 27th 2017

Alex Bradbury via llvm-dev llvm-dev at lists.llvm.org
Mon Feb 27 04:22:33 PST 2017


LLVM Weekly - #165, Feb 27th 2017
=================================

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

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


## News and articles from around the web

The list of [accepted sessions for EuroLLVM
2017](http://llvm.org/devmtg/2017-03//2017/02/20/accepted-sessions.html) has
now been announced.

FĂ©lix Cloutier has written a blog post about [how C compilers optimise
divisions](https://zneak.github.io/fcd/2017/02/19/divisions.html).

This post from Krister Walfridsson looks at [heuristics for estimating branch
probabilities in
GCC](https://kristerw.blogspot.co.uk/2017/02/branch-prediction.html), as well
as discussing branch prediction more generally.


## On the mailing lists

* Stephen Cross is looking for feedback on [his plans to refactor Clang's
target-specific ABI
logic](http://lists.llvm.org/pipermail/cfe-dev/2017-February/052772.html).

* Paul Robinson has [proposed setting Clang's default C++ dialect to
C++11](http://lists.llvm.org/pipermail/cfe-dev/2017-February/052820.html).

* Johannes Doerfert is still seeking feedback on the Parallel IR proposal and
has [updated the
thread](http://lists.llvm.org/pipermail/llvm-dev/2017-February/110501.html) to
note initial patches and a documentation draft are now available.

* Ivan A. Kosarev has shared on RFC on [supporting sanitizers on systems
without virtual memory
support](http://lists.llvm.org/pipermail/llvm-dev/2017-February/110479.html).

* Hans Wennborg has shared an update on the [status of the 4.0.0
release](http://lists.llvm.org/pipermail/llvm-dev/2017-February/110453.html),
listing the current blockers.

* Ashutosh Nema
[proposes](http://lists.llvm.org/pipermail/llvm-dev/2017-February/110424.html)
adding support for vectorising epilogue loops generated to handle remaining
iterations for loops with unknown iteration counts.


## LLVM commits

* A patch to enable splitting some critical edges from indirect branches has
landed. This is motivated by the observation that a clang-compiled Python
interpreter can be significantly (2.5x) slower on some workloads than a
GCC-compiled interpreter, due to unnecessary spills around the computed goto
in the main interpreter loop. [r296149](http://reviews.llvm.org/rL296149).

* The WebAssembly backend now supports the experimental Wasm object file
encoding. [r296190](http://reviews.llvm.org/rL296190).

* The MemorySSA updater now allows aliasing stores to be added.
[r295677](http://reviews.llvm.org/rL295677).

* Propagation for poison values has been made more aggressive.
[r295809](http://reviews.llvm.org/rL295809).

* An initial X86InstructionSelector has been implemented as part of the work
towards X86 GlobalISel support. [r295824](http://reviews.llvm.org/rL295824).

* The AArch64RedundantCopyElimination pass learned to do simple copy
propagation. [r295863](http://reviews.llvm.org/rL295863).


## Clang commits

* When producing UBSan-instrumented code, checks for promoted arithmetic will
no longer be generated. [r296213](http://reviews.llvm.org/rL296213).

* Work has started on refactoring lib/Drive/Tools.cpp, splitting
architecture-specific helpers out into separate files.
[r296056](http://reviews.llvm.org/rL296056).


## Other project commits

* The LLD introductory documentation has seen a large update, including new
link-time performance benchmarks. e.g. a debug build of mysqld takes 7.09s
with GNU ld, 2.49s with GNU gold, and 1.31s with LLD.
[r296072](http://reviews.llvm.org/rL296072).

* LLDB gained support for hardware breakpoints on ARM and AArch64 Linux.
[r296119](http://reviews.llvm.org/rL296119).

* New LLD code comments warn about the dangers of copy relocations.
[r296522](http://reviews.llvm.org/rL295622),
[r295632](http://reviews.llvm.org/rL295632).


More information about the llvm-dev mailing list