[llvm-dev] LLVM Weekly - #233, June 18th 2018

Alex Bradbury via llvm-dev llvm-dev at lists.llvm.org
Mon Jun 18 13:12:13 PDT 2018


LLVM Weekly - #233, June 18th 2018
==================================

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

Welcome to the two hundred and thirty-third 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](https://www.linkedin.com/in/alex-bradbury/). 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 2018 LLVM Developers' Meeting has been
[announced](http://lists.llvm.org/pipermail/llvm-dev/2018-June/124052.html)
for October 17th-18th in San Jose. Registration is [now
open](https://www.eventbrite.com/e/2018-llvm-developers-meeting-bay-area-tickets-47003409463).

zapcc, a caching C++ compiler based on Clang is now [open
source](https://github.com/yrnkrn/zapcc). It claims substantial speedups for
heavily-templated C++. See this [previous cfe-dev
post](http://lists.llvm.org/pipermail/cfe-dev/2015-May/043155.html) for an
overview of the technology.


## On the mailing lists

* Hal Finkel is
[arranging](http://lists.llvm.org/pipermail/cfe-dev/2018-June/058229.html) a
[poll](https://doodle.com/poll/4qstmakgw3fykuf4) on the date to hold a webinar
on the proposed rewrite of Flang, "Clang for Fortran".

* Alex Bradbury kicked off an RFC thread on the [lowering of atomic LL/SC loop
in LLVM](http://lists.llvm.org/pipermail/llvm-dev/2018-June/123993.html). This
revisits a topic
[raised](http://lists.llvm.org/pipermail/llvm-dev/2016-May/099490.html) by
James Knight in 2016. Most architectures have restrictions on the form of an
LL/SC loop (e.g. number and type of instructions, presence of other memory
accesses) in order to guarantee forward progress. This thread proposes a late
expansion lowering strategy for the inner LL/SC loop, while expanding anything
else at the IR level. Tim Northover is
[concerned](http://lists.llvm.org/pipermail/llvm-dev/2018-June/124030.html)
about possible performance loss, and Krzysztof Parzyszek
[comments](http://lists.llvm.org/pipermail/llvm-dev/2018-June/124069.html)
that Hexagon actually has no real restrictions on LL/SC loops.

* Pavel Labath has given an
[update](http://lists.llvm.org/pipermail/llvm-dev/2018-June/123986.html) on
efforts to add DWARF5 accelerator table support to LLVM, while Paul Robinson
gave a broad update on [DWARF v5
support](http://lists.llvm.org/pipermail/llvm-dev/2018-June/124013.html).

* Paul Robinson started a discussion on [bug-closing
protocol](http://lists.llvm.org/pipermail/llvm-dev/2018-June/123955.html).


## LLVM commits

* A new compact binary format is supported for sample profiles, reducing the
size by about 2/3rds. [r334447](https://reviews.llvm.org/rL334447).

* Codegen support for atomics has started to land for RISC-V.
[r334590](https://reviews.llvm.org/rL334590),
[r334591](https://reviews.llvm.org/rL334591).

* The microMIPS size reduction pass has been extended to transform SW/LW pairs
to SWP/LWP. [r334595](https://reviews.llvm.org/rL334595).

* There is now a default SelectionDAG expansion for rotates.
[r334497](https://reviews.llvm.org/rL334497).

* A new merge-git.sh script has been added, performing similar functionality
to the svn-based merge.sh script.
[r334568](https://reviews.llvm.org/rL334568).


## Clang commits

* The new `-fforce-emit-vtables` option forces the emission of vtables even in
modules where it isn't necessary, which increases opportunities for
devirtualisation. [r334600](https://reviews.llvm.org/rL334600).

* clang-format gained a new BreakInheritanceList option.
[r334408](https://reviews.llvm.org/rL334408).


## Other project commits

* Initial Hexagon support was committed to LLD.
[r334637](https://reviews.llvm.org/rL334637).

* XRay Profiling Mode can now write profiles to files. Future work will enable
support for loading, converting, and analysing them with the llvm-xray tool.
[r334472](https://reviews.llvm.org/rL334472).


More information about the llvm-dev mailing list