Alex Bradbury via llvm-dev
2021-Mar-01 18:04 UTC
[llvm-dev] LLVM Weekly - #374, March 1st 2021
LLVM Weekly - #374, March 1st 2021 ================================= If you prefer, you can read a HTML version of this email at <http://llvmweekly.org/issue/374>. Welcome to the three hundred and seventy-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 Registration for the Community.o summit [has been extended](https://lists.llvm.org/pipermail/llvm-dev/2021-February/148864.html). The event will take place March 8-10th and the [agenda has now been published](https://llvm.swoogo.com/community-o-summit/agenda). On the ACM Sigplan blog, Yotam Feldman and Mooly Sagiv [shared their "backwards" compilers course structure](https://blog.sigplan.org/2021/02/23/teaching-compilers-backward/) and the advantages and challenges of this approach. Rui Ueyama has started the [mold](https://github.com/rui314/mold) linker with the goal of being able to link a full debuginfo Chromium executable in 1 second (vs 12 seconds for LLD on the same machine). The project also [generated discussion on Hacker News](https://news.ycombinator.com/item?id=26233244). Note the disclaimer "Note that even though mold can create a runnable Chrome executable, it is far from complete and not usable for production. mold is still just a toy linker, and this is still just my pet project." ## On the mailing lists * Paul Robinson wrote a [detailed note on the "Rotten Green Tests" project](https://lists.llvm.org/pipermail/llvm-dev/2021-February/148842.html). This aims to identify test assertions that aren't actually executed (e.g. due to a mistake in the test). * Denis Bakhvalov kicked off a discussion on [potential drivers for compiler performance improvement in the future](https://lists.llvm.org/pipermail/llvm-dev/2021-February/148729.html). Stefanos Baziotis provided some [useful pointers](https://lists.llvm.org/pipermail/llvm-dev/2021-February/148731.html). * Braden N is [seeking advice on register allocation strategy for the Parallax Propeller 2](https://lists.llvm.org/pipermail/llvm-dev/2021-February/148739.html). * Jan Svoboda posted an [update on the RFC for generating the cc1 commandline from CompilerInvocation](https://lists.llvm.org/pipermail/cfe-dev/2021-February/067714.html), linking to patches that are now posted for review. * LLVM 12.0.0-rc2 [has been tagged](https://lists.llvm.org/pipermail/llvm-dev/2021-February/148758.html). ## LLVM commits * JITLink gained an extensive design and API document. [93c8246](https://reviews.llvm.org/rG93c8246952d0). * lit gained an `--ignore-fail` option. [2a5aa81](https://reviews.llvm.org/rG2a5aa81739d3). * Reassociation of min/max is now supported. [83d134c](https://reviews.llvm.org/rG83d134c3c422). * Documentation was added for using the new pass manager. [016f0ee](https://reviews.llvm.org/rG016f0ee68621). * A range of RISC-V vector improvements were made, such as support for insertion of misaliagned subvectors, use of VSETIVLI where possible, and additional fixed-length vector support. [dd68f3c](https://reviews.llvm.org/rGdd68f3cf2899), [efcdd59](https://reviews.llvm.org/rGefcdd598b766), [3bc5ed3](https://reviews.llvm.org/rG3bc5ed38750c). ## Clang commits * A design document was added for the Clang recovery AST. [77a8589](https://reviews.llvm.org/rG77a8589e5d2f). * Support was added for the `retain` attribute. [8afdacb](https://reviews.llvm.org/rG8afdacba9dcd). * libAnalysis gained MacroExpansionContext which aims to track the expansion of macros in a translation unit. [6e30710](https://reviews.llvm.org/rG6e3071007b4c). * AArch64 SHA3 intrinsics were added. [2c25efc](https://reviews.llvm.org/rG2c25efcbd322). * A new `-fsanitize-address-destructor-kind=` driver and frontend option was added, allowing control of how module destructors are emitted by ASan. [5d64dd8](https://reviews.llvm.org/rG5d64dd8e3c22). ## Other project commits * A 'debug action' framework was added to MLIR, allowing external entities to control aspects of compiler execution. It was used to implement DebugCounters. [72d5afa](https://reviews.llvm.org/rG72d5afa4acc3), [dc6a84f](https://reviews.llvm.org/rGdc6a84fce617). * LLVM's libc gained a standalone equivalent of `std::string_view`. [dbb131d](https://reviews.llvm.org/rGdbb131d53aac).