Alex Bradbury via llvm-dev
2018-Jun-18 20:12 UTC
[llvm-dev] LLVM Weekly - #233, June 18th 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).