LLVM Weekly - #337, June 15th 2020
Welcome to the three hundred and thirty-seventh 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 [email protected], or @llvmweekly or @asbradbury on Twitter.
News and articles from around the web
The 2020 Virtual LLVM Developers' Meeting call for papers is out, with a July 15th submission deadline. The Meeting has been moved to October 6-8 so as not to conflict with the Grace Hopper Conference.
On the mailing lists
-
The first of the new "LLVM Proposals" format has been accepted, "LP001 Introduce a new LLVM process to resolve contentious decisions". As Review Manager, Chris Lattner summarised the feedback raised in the review.
-
JF Bastien provided an update on the implementation of the LLVM security group and process. The RFC has been out for review for a substantial period of time and the LLVM board have approved the proposal, so the plan is to start implementing it.
-
Hans Wennborg shared the proposed 11.0 release schedule. This would involve creating the release branch on 15th July 2020 and the final release on 26th August 2020.
-
Kai Peter Nacke shared an RFC on adding support for the z/OS platform to LLVM and Clang.
-
Min-Yih Hsu shared work on Nacro, a small DSL aiming to provide a better C/C++ macro experience implemented as a Clang plugin.
-
Valeriy Savchenko started a discussion on regression testing the static analyzer.
-
Andrzej Warzynski provided a detailed summary of responses to the RFC on refactoring Clang's frontend/driver/diagnostics code.
-
Serge Guelton write an RFC on adding a check to ensure passes correctly indicate if they modified the IR or not.
-
Shoaib Meenai proposed contributing an LLVM version of Apples libtool utility to LLVM.
-
Guillaume Chatelet posted an RFC on adding small bitfield utilities to LLVM's ADT library.
LLVM commits
-
An AArch64SLSHardeningPass was introduced to provide hardening for speculative execution across RET, BR, and BLR instructions. 0ee176e, c35ed40.
-
The LLVM coding standards documentation was updated to clarify that single-statement bodies of if/else/loop statements don't have braces. c08ea07.
-
FileCheck will now default to dumping input upon failure. d31c9e5.
-
Suffix tree was factored out of the Machine Outliner to allow it to be used elsewhere. bb677ca.
-
Structured load intrinsics were added for SVE. b82be5d.
-
Additional folding was added for fadd+fmul to fma. 702cf93.
-
Numerical expressions in FileCheck now allow calls to predefined functions. 8fd2270.
-
yaml2obj now has a 10mb limit of the output by default. 3c123ac.
-
A lower complexity X86 Load Value Injection hardening pass was added for O0. 7e06cf0.
-
The X86 ASM parser can now harden inline assembly RET instructions against Load Value Injection. 0cbe713.
Clang commits
-
A new
-ftrivial-auto-var-init-stop-after=
flag was introduced to allow bisections of uninitialised uses of a stack variable exposed by the automatic variable initialisation. 4db2b70. -
A new
__builtin_matrix_transpose
builtin was added. 3323a62. -
Clang static analyser now supports on-demand parsing of needed ASTs during cross translation unit analysis. 5cc1851.
-
Clang gained the frontend support necessary for the relative vtables ABI. 71568a9.
-
-ffine-grained-bitfield-accesses
will now be more effective on targets with limited integer widths. 3dcfd48.