Alex Bradbury via llvm-dev
2018-Aug-06 19:08 UTC
[llvm-dev] LLVM Weekly - #240, August 6th 2018
LLVM Weekly - #240, August 6th 2018 ================================== If you prefer, you can read a HTML version of this email at <http://llvmweekly.org/issue/240>. Welcome to the two hundred and fortieth 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 LLVM 7.0.0 rc1 [has been tagged](http://lists.llvm.org/pipermail/llvm-dev/2018-August/125058.html). Release blockers are [tracked here](https://bugs.llvm.org/show_bug.cgi?id=38406). Rust 1.28 was [released](https://blog.rust-lang.org/2018/08/02/Rust-1.28.html). ## On the mailing lists * Amara Emerson has shared an [update on GlobalISel design and goals](http://lists.llvm.org/pipermail/llvm-dev/2018-July/124917.html). Compile time performance remains withing 5% of FastISel. * Greg Bedwell has [shared](http://lists.llvm.org/pipermail/llvm-dev/2018-August/125043.html) materials from EuroLLVM describing the DExTer tool for tracking debuginfo quality and updated on its status. * Raphael Isemann [shares](http://lists.llvm.org/pipermail/lldb-dev/2018-August/014004.html) that nightly LLDB benchmarks and flame graphs are now available. * Sergey Dmitriev posted an RFC to [allow dropping OpenMP offload targets at link time](http://lists.llvm.org/pipermail/cfe-dev/2018-July/058670.html). * Rodrigo Caetano Rocha is [seeking feedback](http://lists.llvm.org/pipermail/llvm-dev/2018-August/125027.html) on a new proposed function merging optimisation. * Paul Robinson [announces](http://lists.llvm.org/pipermail/llvm-dev/2018-August/125068.html) that preliminary DWARFv5 support is in Clang/LLVM 7.0. * There has been a large amount of new discussion regarding support for variable-length vectors. Bruce Hoult shares his [expectation of how RISC-V vector support will end up](http://lists.llvm.org/pipermail/llvm-dev/2018-July/124947.html) while Robin Kruppe [clarifies](http://lists.llvm.org/pipermail/llvm-dev/2018-July/124980.html) that there are really two notions of vector length throughout these discussions. ## LLVM commits * Profile loading functionality for XRay was implemented. [r338825](https://reviews.llvm.org/rL338825). * Pseudo-iterator adaptors implementing 'early increment' style loops were added to LLVM's ADT library. [r338955](https://reviews.llvm.org/rL338955). * The MachineOutliner for AArch64 learned to save LR to a register rather than the stack. [r338278](https://reviews.llvm.org/rL338278). * llvm-mca documentation was extended to describe the instruction flow. [r338319](https://reviews.llvm.org/rL338319). * Rudimentary C++11 support was added to the MS demangler. [r338324](https://reviews.llvm.org/rL338324). * A very subtle miscompile due to a bug in EFLAGS copy lowering for X86 was fixed. Chandler suggests maintainers of out-of-tree branches using the X86 backend may want to cherry-pick this fix. [r338481](https://reviews.llvm.org/rL338481). * The Hexagon backend will now simplify the control-flow graph after atomic expansion. [r338774](https://reviews.llvm.org/rL338774). * Assembler/disassembler support for Arm SVE is now complete. [r338261](https://reviews.llvm.org/rL338261). ## Clang commits * Support for a new implicit conversion sanitizer was added. [r338288](https://reviews.llvm.org/rL338288). * Clang learned to support the `[[clang::lifetimebound]]` attribute. This indicates the lifetime of a function result is related to one of the function arguments. [r338464](https://reviews.llvm.org/rL338464). * Clang's ABI lowering for composite types on AArch64 and ARM was adjusted to match GCC and the AAPCS. [r338279](https://reviews.llvm.org/rL338279). ## Other project commits * LLDB now supports syntax highlighting, meaning ANSI color escape sequences are emitted with printed source code. [r338662](https://reviews.llvm.org/rL338662). * Support for weighted mutation leveraging was aded to libFuzzer, which gives mutations weight based on how much new coverage they provide. [r338776](https://reviews.llvm.org/rL338776) * String conversions for integral types, `<charconv>`, was added to libcxx. [r338479](https://reviews.llvm.org/rL338479).