[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
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
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
## On the mailing lists
* Guillaume Chatelet posted an RFC on [allowing efficient implementation of
libc's memory functions in
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
an LLVM session at the ISC-HPC conference.
* Martin Storsjö is [seeking
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
optimising TargetLibraryInfo getLibFunc lookups.
* Rui Ueyama [write an
supporting mostly-concurrent symbol resolution in LLD.
* Andrei Damian [seeks
using libclang or libtooling for a transpiler.
## LLVM commits
* The AMDGPU backend started to gain support for gfx1010
[r359316](https://reviews.llvm.org/rL359316), and more.
* LLVM gained support for the AArch64 MTE (Memory Tagging Extension) via
* The DAGCombiner learned to apply most ADD combines to an OR operation in the
case that the operands have no common bits set.
* LLVM's support library gained a JSON streaming output API.
## Clang commits
* `__builtin_is_constant_evaluated` was implemented for use in C++2a.
* MMX intrinsics were ported to PowerPC (using Altivec).
* 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)
* clang-tidy gained a new llvm-prefer-isa-or-dyn-cast-in-conditionals checker.
## 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.
* libcxx gained an implementation of `std::is_constant_evaluated`.
More information about the llvm-dev