Alex Bradbury via llvm-dev
2021-Jul-19 17:54 UTC
[llvm-dev] LLVM Weekly - #394, July 19th 2021
LLVM Weekly - #394, July 19th 2021 ================================= If you prefer, you can read a HTML version of this email at <http://llvmweekly.org/issue/394>. Welcome to the three hundred and ninety-fourth 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 The LLVM blog has a new article [introducing the LLVM Outreachy interns](https://blog.llvm.org/posts/2021-07-14-llvm-and-outreachy/). ## On the mailing lists * Amir Aupov posted an [update on the BOLT framework](https://lists.llvm.org/pipermail/llvm-dev/2021-July/151755.html), which has now been rebased on top of a much more recent LLVM. The post gives a detailed list of next steps and patches that are in the process of being upstreamed. * ORC JIT Weekly #36 [is out](https://lists.llvm.org/pipermail/llvm-dev/2021-July/151841.html): MachO platform support lands in the ORC runtime, JITLink ELF backends get easier to write, and the ORCv2 C API gets experimental lazy-compilation support. * Kevin Smith started a thread on [whether -ffast-math should affect intrinsics](https://lists.llvm.org/pipermail/llvm-dev/2021-July/151753.html). * Philip Reames [reported back on](https://lists.llvm.org/pipermail/llvm-dev/2021-July/151747.html) the previous RFC on decomposing deref(N) into deref(N) + nofree to say the proposal is a failure, and outlines three potential paths forwards. ## LLVM commits * The RegAlloc interface was modified to allow targets to split register allocation between different register classes (controlled by a callback function). The initial motivation is to allow AMDGPU to split allocation for SGPRs and VGPRs. [eebe841](https://reviews.llvm.org/rGeebe841a47cb). * Register definitions and initial MC layer support support was added for the Armv9-A Scalable Matrix Extension. [c08dabb](https://reviews.llvm.org/rGc08dabb0f476), [dfa7693](https://reviews.llvm.org/rGdfa76933c296), [99eb96f](https://reviews.llvm.org/rG99eb96f03186). * The language reference was updated to clarify semantics of inttoptr/ptrtoint for non-integral types. [f74bb95](https://reviews.llvm.org/rGf74bb95bbe4d). * llvm-readobj command line parsing was moved from llvm:cl to OptTable. [46580d4](https://reviews.llvm.org/rG46580d43fc70). * The Arm backend gained new MVESEXT and MVEZEXT nodes that larger-than-legal sext and zext are lowered to when MVE is enabled. [ca78151](https://reviews.llvm.org/rGca78151001d8). * A new pass was added to remove redundant `DBG_VALUE`. [df68684](https://reviews.llvm.org/rGdf686842bc52). * PPC now uses AtomicExpandPass to implement support for quadword lock-free atomic operations, expanding them after register allocation to avoid spilling that might prevent forward progress. [b9c3941](https://reviews.llvm.org/rGb9c3941cd61d). ## Clang commits * Support was added for OpenMP 5.1 attributes. [de59f56](https://reviews.llvm.org/rGde59f564400d). * The static analyzer can now print the time taken to analyze each function. [cad9b7f](https://reviews.llvm.org/rGcad9b7f708e2). ## Other project commits * Documentation was added for each of the remarks emitted by openmp-opt. [1616407](https://reviews.llvm.org/rG16164079213d). * Thread safety annotations were added to the sanitizer_common library. [0da172b](https://reviews.llvm.org/rG0da172b1766e). * The vendored google benchmark in libcxx was updated to v1.5.5. [5208ec5](https://reviews.llvm.org/rG5208ec5c66dc).