LLVM Weekly - #410, November 8th 2021
Welcome to the four hundred and tenth 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 http://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
Sylvestre Ledru writes on the LLVM blog about moving apt.llvm.org from a physical server to the cloud.
Alex Denisov blogged on ‘how to learn compilers: LLVM edition’, which includes a shout-out to LLVM Weekly as “the single newsletter I am aware of that doesn’t have ads”.
More videos from CppCon 2021 are now available.
On the mailing lists
Haojian Wu shared an RFC on contributing a C++ ‘pseudo-parser’ for use by clang tooling. This ‘pseudo-parser’ would be able to parse broken code, would resolve ambiguities using heuristics, and is intended to be fast. Sam McCall provided answers to some initial questions, noting in measurements that showed tree-sitter achieves ~95% average accuracy on a large codebase in response to concerns about feasibility.
Maksim Panchenko posted about preparing BOLT for the LLVM monorepo, seeking input on the proposed next steps.
Simon Moll proposed making the VE target ‘fficial’ (graduating from ‘experimental’).
Amara Emerson wrote to highlight patches to introduce llvm-bisectd, a tool to more rapidly bisect miscompiles by running in parallel.
Serge Guelton posted a response to the ‘Trojan Source’ CVE, which also linked to the now-public disclosure thread.
Ahmed Bougacha followed up to the thread on pointer authentication for arm64e to note patches are now up for review.
Anton Korobeynikov provided another update on the Bugzilla to GitHub issues migration. Unfortunately there were some problems in the ‘dry-run’ migration that will require input from GitHub to resolve.
ORC JIT Weekly #43 is out.
LLVM commits
The llvm-reduce tool can now operate on MIR (though for now, only a single machine function). fd41738.
Initial codegen infrastructure was committed for the CSKY target. cf78715.
The -print-changed=dot-cfg and -print-changed=dot-cfg-quiet option were added, which export a HTML page with DOT files showing colourized changes. 816761f.
The existence of the
llvm/utils/update_*
scripts was documented. 2a7c3f8.Hex string parsing in StringExtras.h was simplified in order to run faster when LLVM/Clang is built in debug mode. 2fcffcd.
The llvm.vp.load, llvm.vp.store, llp.vp.gather, and llvm.vp.scatter intrinsics were documented. 93e1802, 3a11fb57.
Support was added for the RISC-V Zfhmin extension. 5c3d718.
Clang commits
The patch to rename
enable-noundef-analysis
todisable-undef-analysis
and turn it off by default was committed again. aacfbb9.A new clang-tidy check was added for CERT rule ERR33-C. 4bcbb3d.
__builtin_reduce_max
and__builtin_reduce_min
builtins were added. 7999355.