Alex Bradbury via llvm-dev
2019-Apr-29 18:22 UTC
[llvm-dev] LLVM Weekly - #278, April 29nd 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).