[llvm-dev] LLVM Weekly - #286, June 24th 2019

Alex Bradbury via llvm-dev llvm-dev at lists.llvm.org
Mon Jun 24 09:12:09 PDT 2019

LLVM Weekly - #286, June 24th 2019

If you prefer, you can read a HTML version of this email at

Welcome to the two hundred and eighty-sixth 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 LLVM 9.0 release schedule has been
[proposed](http://lists.llvm.org/pipermail/llvm-dev/2019-June/133155.html) and
is now listed on llvm.org. It would branch on 18th July with rc1 soon after.
rc2 would follow on 7th August with a final on 28th August.

## On the mailing lists

* Richard Sandiford is [still seeking more
feedback](http://lists.llvm.org/pipermail/cfe-dev/2019-June/062631.html) on his
RFC on adding vscale vector types to C and C++.

* Francis Visoiu Mistrih has [written an
RFC](http://lists.llvm.org/pipermail/llvm-dev/2019-June/133149.html) on
optimisation remark encoding formats and future plans. The LLVM bitstream
format has been selected, producing a remarks file (for clang) that is 13.4x
smaller than the current YAML remarks output. The post also discusses plans to
emit remarks in object files.

* Jeremy Morse is [seeking
feedback](http://lists.llvm.org/pipermail/llvm-dev/2019-June/133165.html) on
using the Dexter debug experience tester tool for LLVM debuginfo
integration tests.

* Amara Emerson [shares an
RFC](http://lists.llvm.org/pipermail/llvm-dev/2019-June/133178.html) on memcpy
inlining in IR, with the motivation of sharing the same logic between
GlobalISel and SelectionDAG.

* Simon Pilgrim
retiring support for building LLVM/Clang on Visual Studio 2015. So far, nobody
has objected.

* Bardia Mahjour
minutes from the loop optimisation working group.

## LLVM commits

* The scalable vector IR type was recommitted.

* MC-layer ARM MVE instruction set support continues to expand.
[r364040](https://reviews.llvm.org/rL364040), and more.

* llvm-mca's bottleneck analysis can now identify and print the most expensive
sequence of instructions according to the simulation.

* The MachineIR stack-id is now an enum and the default stack-id is now pretty
printed as 'default'. [r365333](https://reviews.llvm.org/rL365333).

* CodeGenPrepare's GEP splitting support was improved. It will now split large
base addresses even when the GEP is in the same basic block, and the
DAGCombiner was modified so it won't just undo the split again.

* The GlobalISel localizer was rewritten to run in both an inter and
intra-block phase. This improved CTMark code size on arm64 by 1.2%.

* TableGen was enhanced to allow multiple encodings to disassembler to the same
instruction, using the `AdditionalEncoding` class.

* The ExpandISelPseudo pass was renamed to FinalizeISel.

* The RISC-V backend gained support for lowering of global TLS addresses.

## Clang commits

* Initial support for Clang interface subs has landed. This allows generation
of stub files containing mangled name information that can be used to produce a
stub library. [r363948](https://reviews.llvm.org/rL363948).

* Clang now understands the C++2a `[[no_unique_address]]` attribute.

## Other project commits

* libcxx gained a new style of meta-programming primitives.

* LLVM's openmp implementation gained support for OpenMP 5.0 detached tasks.

More information about the llvm-dev mailing list