[llvm-dev] LLVM Weekly - #318, Feb 3rd 2020

Alex Bradbury via llvm-dev llvm-dev at lists.llvm.org
Mon Feb 3 10:41:57 PST 2020


LLVM Weekly - #318, Feb 3rd 2020
================================

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

Welcome to the three hundred and eighteenth 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 10.0.0-rc1 [has been
tagged](http://lists.llvm.org/pipermail/llvm-dev/2020-January/138806.html).

The program for EuroLLVM 2020 [is now
online](www.llvm.org/devmtg/2020-04/#program). The early bird registration
rate is available through to Feb 27th.

Joel Laity wrote a piece about [libc++'s implementation of
std::string](https://joellaity.com/2020/01/31/string.html), and the
optimisations it uses.

Martin Dørum wrote up [how he modified Clang to trial a new C++ lambda
syntax](https://mort.coffee/home/clang-compiler-hacking/).

The HPVM (Heterogenous Parallel Virtual Machine) research project [has
announced its v0.5
release](http://lists.llvm.org/pipermail/llvm-dev/2020-January/138724.html).


## On the mailing lists

* Tom Stellard [restarted discussion on moving from Bugzilla to GitHub
issues](http://lists.llvm.org/pipermail/llvm-dev/2020-January/138797.html),
proposing that creation of new bugs on bugzilla be disabled from Feb 11th.
Most concerns raised were related to the loss of ability to be automatically
subscribed to a subset of bugs (e.g. those with a certain label).

* Serge Guelton [proposes the deprecation of Python 2.x support during
2020](http://lists.llvm.org/pipermail/llvm-dev/2020-January/138730.html),
moving to a Python 3 requirement from Jan 2021. He follows up [with a proposed
timeline](http://lists.llvm.org/pipermail/llvm-dev/2020-January/138792.html).

* Eli Friedman wrote up an RFC on [extending shufflevector for vscale
vectors](http://lists.llvm.org/pipermail/llvm-dev/2020-January/138762.html)
(e.g. SVE). The proposal defines a number of named shuffles that express
common patterns.

* Andrew Kaylor wrote up a [summary of floating point semantic
modes](http://lists.llvm.org/pipermail/llvm-dev/2020-January/138652.html),
with the intent of turning this into documentation for Clang.

* Nemanja Ivanovic [asks about supporting specialised operations on multiple
registers in a
backend](http://lists.llvm.org/pipermail/llvm-dev/2020-January/138638.html)
and receives some useful advice.


## LLVM commits

* `llvm::StringRef` to `std::string` conversions were made explicit throughout
the codebase. [adcd026](https://reviews.llvm.org/rGadcd0268385),
[777180a](https://reviews.llvm.org/rG777180a32b6).

* A ThinLTOJIT example was added.
[234f3b1](https://reviews.llvm.org/rG234f3b16918).

* Optimization remarks are now generated for matrix expressions.
[949294f](https://reviews.llvm.org/rG949294f3962).

* MIPS GlobalISel can now select count leading zeros, count trailing zeros,
and popcount. [2b66d32](https://reviews.llvm.org/rG2b66d32f3f4),
[8bc7ba5](https://reviews.llvm.org/rG8bc7ba5b9ee),
[cbf03aee](https://reviews.llvm.org/rGcbf03aee6d8).

* TableGen will now emit string literals instead of char arrays in most cases,
to make its output more readable and debuggable.
[482e890](https://reviews.llvm.org/rG482e890d1f9).

* A new `@llvm.memcpy.inline` intrinsic was added.
[879c825](https://reviews.llvm.org/rG879c825cb80).

* llvm-objcopy and llvm-symbolizer gained some initial support for wasm.
[a928d12](https://reviews.llvm.org/rGa928d127a52),
[da6a896](https://reviews.llvm.org/rGda6a896e6b1).

* Documentation was added for the IR attribute "vector-function-abi-variant".
[4bc07c3](https://reviews.llvm.org/rG4bc07c332a2).

* The Attributor framework gained a pointer privatization attribute.
[89c2e73](https://reviews.llvm.org/rG89c2e733e80).


## Clang commits

* The `-fsemantic-interposition` flag was implemented, allowing for the
interposition of a symbol by another at runtime and thus preventing a variety
of inter-procedural optimisations.
[fd09f12](https://reviews.llvm.org/rGfd09f12f32f).

* It is now possible to limit the number of pre-processor tokens in a
translation unit. [739b410](https://reviews.llvm.org/rG739b410f1ff).

* The new `-ibuiltininc` flag lets the Darwin driver include Clang builtin
headers even with `-nostdinc`.
[f96f64d](https://reviews.llvm.org/rGf96f64d0f27).


## Other project commits

* MLIR gained a new dead code elimination pass to delete unreachable symbols.
[b276dec](https://reviews.llvm.org/rGb276dec5b65).

* A design document was committed for the MLIR Linalg dialect.
[1d58a7c](https://reviews.llvm.org/rG1d58a7c82f7).

* The LeakSanitizer runtime was ported to Fuchsia.
[90a10f0](https://reviews.llvm.org/rG90a10f00ff8).


More information about the llvm-dev mailing list