[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
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
now been announced.
Félix Cloutier has written a blog post about [how C compilers optimise
This post from Krister Walfridsson looks at [heuristics for estimating branch
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
* Paul Robinson has [proposed setting Clang's default C++ dialect to
* Johannes Doerfert is still seeking feedback on the Parallel IR proposal and
has [updated the
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
* Hans Wennborg has shared an update on the [status of the 4.0.0
listing the current blockers.
* Ashutosh Nema
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
* The MemorySSA updater now allows aliasing stores to be added.
* Propagation for poison values has been made more aggressive.
* 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
## 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.
## 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.
* LLDB gained support for hardware breakpoints on ARM and AArch64 Linux.
* New LLD code comments warn about the dangers of copy relocations.
More information about the llvm-dev