[llvm-dev] LLVM Weekly - #278, April 29nd 2019

Alex Bradbury via llvm-dev llvm-dev at lists.llvm.org
Mon Apr 29 11:22:36 PDT 2019


LLVM Weekly - #278, April 29nd 2019
===================================

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

Welcome to the two hundred and seventy-eighth 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

Videos from most talks at the 2019 EuroLLVM Developers' meeting are
[now available](https://www.youtube.com/playlist?list=PL_R5A0lGi1ADu1ccg_aykRC3dxhlIKShL),
including the [keynote on MLIR](https://www.youtube.com/watch?v=qzljG6DKgic).

On Red Hat's developer blog, Serge Guelton has an article on [LLVM's Advanced
Data Types and trivially copyable
types](https://developers.redhat.com/blog/2019/04/01/a-look-at-llvm-advanced-data-types-and-trivially-copyable-types/).


## On the mailing lists

* Guillaume Chatelet posted an RFC on [allowing efficient implementation of
libc's memory functions in
C/C++](http://lists.llvm.org/pipermail/llvm-dev/2019-April/131973.html).
Currently, you have to ensure that LLVM odesn't replace the implementation of
a libc memory function with a call to itself.

* Anja Gerbes is [looking for more
speakers](http://lists.llvm.org/pipermail/llvm-dev/2019-April/132002.html) for
an LLVM session at the ISC-HPC conference.

* Martin Storsjö is [seeking
advice](http://lists.llvm.org/pipermail/llvm-dev/2019-April/131974.html) on
automatically saving and restoring x18 around function calls on AArch64. This
is useful when running Windows ARM64 executables under Wine, as Windows treats
x18 as a reserved register.

* Alexandre Ganea wrote an RFC on [supporting clang-cl
/MP](http://lists.llvm.org/pipermail/llvm-dev/2019-April/131967.html) in order
to improve compile-time performance.

* Philip Reames
[proposes](http://lists.llvm.org/pipermail/llvm-dev/2019-April/131939.html)
optimising TargetLibraryInfo getLibFunc lookups.

* Rui Ueyama [write an
RFC](http://lists.llvm.org/pipermail/llvm-dev/2019-April/131902.html) on
supporting mostly-concurrent symbol resolution in LLD.

* Andrei Damian [seeks
advice](http://lists.llvm.org/pipermail/cfe-dev/2019-April/062163.html) on
using libclang or libtooling for a transpiler.


## LLVM commits

* The AMDGPU backend started to gain support for gfx1010
[r359113](https://reviews.llvm.org/rL359113),
[r359139](https://reviews.llvm.org/rL359139),
[r359225](https://reviews.llvm.org/rL359225),
[r359316](https://reviews.llvm.org/rL359316), and more.

* LLVM gained support for the AArch64 MTE (Memory Tagging Extension) via
intrinsics. [r358963](https://reviews.llvm.org/rL358960).

* The DAGCombiner learned to apply most ADD combines to an OR operation in the
case that the operands have no common bits set.
[r358965](https://reviews.llvm.org/rL358965).

* LLVM's support library gained a JSON streaming output API.
[r359186](https://reviews.llvm.org/rL359186).


## Clang commits

* `__builtin_is_constant_evaluated` was implemented for use in C++2a.
[r359067](https://reviews.llvm.org/rL359067).

* MMX intrinsics were ported to PowerPC (using Altivec).
[r358949](https://reviews.llvm.org/rL358949).

* The behaviour of interaction of `__builtin_constant_p` and `constexpr` was
updated to match trunk GCC. [r359367](https://reviews.llvm.org/rL359367).

* Clang gained support for the AArch64 MTE (Memory Tagging Extension)
intrinsics. [r359348](https://reviews.llvm.org/rL359348).

* clang-tidy gained a new llvm-prefer-isa-or-dyn-cast-in-conditionals checker.
[r359142](https://reviews.llvm.org/rL359142).


## Other project commits

* The libcxxabi `cxa_guard` implementation was rewritten to use futexes and to
avoid a global lock. [r359060](https://reviews.llvm.org/rL359060).

* The compiler-rt builtins were reformatted with clang-format, and aliases are
now used for function redirects.
[r359410](https://reviews.llvm.org/rL359410),
[r359411](https://reviews.llvm.org/rL359411),
[r359413](https://reviews.llvm.org/rL359413).

* libcxx gained an implementation of `std::is_constant_evaluated`.
[r359119](https://reviews.llvm.org/rL359119).


More information about the llvm-dev mailing list