Alex Bradbury via llvm-dev
2019-Apr-08 20:08 UTC
[llvm-dev] LLVM Weekly - #275, April 8th 2019
LLVM Weekly - #275, April 8th 2019 ================================= If you prefer, you can read a HTML version of this email at <http://llvmweekly.org/issue/275>. Welcome to the two hundred and seventy-fifth 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. I'm at EuroLLVM today and tomorrow - be sure to say hi! ## News and articles from around the web The April LLVM Austin social will [take place](http://lists.llvm.org/pipermail/llvm-dev/2019-April/131632.html) this Thursday 11th April at 6pm. The Portable Computing Language (pocl) 1.3 has [been released](http://lists.llvm.org/pipermail/llvm-dev/2019-April/131561.html), this is an open source implementation of the OpenCL standard. This release adds support for Clang/LLVM 8.0, amongst other changes. ## On the mailing lists * Erich Focht published an RFC on [adding the NEC SX-Aurora VE backend to upstream LLVM](http://lists.llvm.org/pipermail/llvm-dev/2019-April/131580.html). It plans to build on the LLVM-VP vector predication work. * JF Bastien [proposes](http://lists.llvm.org/pipermail/llvm-dev/2019-April/131486.html) flipping the switch on mandating C++14 compliant compilers for building LLVM. It sounds like most interested parties are ready, with Chandler Carruth [indicating](http://lists.llvm.org/pipermail/llvm-dev/2019-April/131489.html) Google needs a little more time. * A case of poor performance when using `git log --parents` on the LLVM monorepo is [likely to result in an upstream git fix](http://lists.llvm.org/pipermail/llvm-dev/2019-April/131506.html). * Puyan Lotfi shares an [RFC on clang-ifso](http://lists.llvm.org/pipermail/cfe-dev/2019-April/061953.html), a new clang-based tool for generating interface libraries. * Bruno Ricci starts a discussion on [improving Clang serialization tests](http://lists.llvm.org/pipermail/cfe-dev/2019-April/061896.html). * Don Hinton's brief post on [adding `isa_or_null<>`](http://lists.llvm.org/pipermail/llvm-dev/2019-April/131555.html) generated a relatively large number of responses. * Peter Hosek [proposes](http://lists.llvm.org/pipermail/llvm-dev/2019-April/131594.html) some cleanups to the compiler-rt builtins, reformatting and adjusting comment style to match the LLVM coding standards. ## LLVM commits * A new `isa_and_nonnull<>` operator was added which works just like `isa<>`, but allows for a null pointer as an argument. [r357761](https://reviews.llvm.org/rL357761). * New PDB documentation was added. [r357777](https://reviews.llvm.org/rL357777), [r357788](https://reviews.llvm.org/rL357788), [r357826](https://reviews.llvm.org/rL357826). * The RISC-V LLVM backend learned to emit appropriate address sequences for `-mcmodel=medium`. [r357393](https://reviews.llvm.org/rL357393). * A new `optForNone()` method was added to Function to more easily test for `-O0`. [r357638](https://reviews.llvm.org/rL357638). * SelectionDAG::computeKnownBits can now compute known bits for `ISD::CopyFromReg`. [r357745](https://reviews.llvm.org/rL357745). * The X86 CMOV, SETcc, and Jcc instruction definitions were refactored to merge the condition codes into single instructions storing the condition code as an immediate. [r357800](https://reviews.llvm.org/rL357800), [r357801](https://reviews.llvm.org/rL357801), [r357802](https://reviews.llvm.org/rL357802) ## Clang commits * Transformer, a library for clang-based source-to-source transformations was committed. [r357768](https://reviews.llvm.org/rL357768). * For loops with more than one transformation, the order in which those transformations are applied will now be encoded in the emitted metadata. [r357415](https://reviews.llvm.org/rL357415). ## Other project commits * libc++'s handling of error flags and exceptions propagated from input stream operations was modified to match behaviour of other implementations. [r357775](https://reviews.llvm.org/rL357775). * LLDB has started to move over to using the minidump parser in llvm/Object rather than its own. [r357748](https://reviews.llvm.org/rL357748).