LLVM Weekly - #374, March 1st 2021
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. Subscribe to future issues at https://llvmweekly.org and pass it on to anyone else you think may be interested. Please send any tips or feedback to asb@asbradbury.org, or @llvmweekly or @asbradbury on Twitter.
News and articles from around the web
Registration for the Community.o summit has been extended. The event will take place March 8-10th and the agenda has now been published.
On the ACM Sigplan blog, Yotam Feldman and Mooly Sagiv shared their "backwards" compilers course structure and the advantages and challenges of this approach.
Rui Ueyama has started the 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. 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. 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. Stefanos Baziotis provided some useful pointers.
-
Braden N is seeking advice on register allocation strategy for the Parallax Propeller 2.
-
Jan Svoboda posted an update on the RFC for generating the cc1 commandline from CompilerInvocation, linking to patches that are now posted for review.
-
LLVM 12.0.0-rc2 has been tagged.
LLVM commits
-
JITLink gained an extensive design and API document. 93c8246.
-
lit gained an
--ignore-fail
option. 2a5aa81. -
Reassociation of min/max is now supported. 83d134c.
-
Documentation was added for using the new pass manager. 016f0ee.
-
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, efcdd59, 3bc5ed3.
Clang commits
-
A design document was added for the Clang recovery AST. 77a8589.
-
Support was added for the
retain
attribute. 8afdacb. -
libAnalysis gained MacroExpansionContext which aims to track the expansion of macros in a translation unit. 6e30710.
-
AArch64 SHA3 intrinsics were added. 2c25efc.
-
A new
-fsanitize-address-destructor-kind=
driver and frontend option was added, allowing control of how module destructors are emitted by ASan. 5d64dd8.