LLVM Weekly - #427, March 7th 2022
Welcome to the four hundred and twenty-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 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.
In personal news, I’ve just moved on from lowRISC CIC, the not-for-profit I co-founded almost seven and a half years ago. Watch this space for more on what’s next for me, but rest assured I’ll be remaining equally (or more) involved in the upstream LLVM community!
News and articles from around the web
Nothing this week that I’m aware of. As always, please drop me an email if there’s anything you think I should feature.
On the forums
LLVM 14.0.0-rc2 has been tagged and Tom Stellard provide an update on the 14.0.0 release. The final release candidate is planned for Tuesday March 8th.
As a final reminder, feedback on the move to Discourse is requested by end of day March 7th (anywhere on earth).
Mats Petersson shared a performance analysis of the ‘SNAP’ proxy benchmark with Flang.
‘bjacob’ argued that llvm_unreachable is widely misued. This generated a lot of follow-on discussion, much of it pushing back on some of the claims in the initial post.
Sam McCall kicked off a thread to discuss some issues related to RecursiveASTVisitor and template representation in the AST.
LLVM commits
Opaque pointer auto-upgrade was implemented. With this change, the entirety of llvm-test-suite passes at O3 with opaque pointers. e3a9f68.
Documentation was added for the llvm-ifs shared object stubbing tool. 8ada9b5.
MC layer support was added for the recently ratified RISC-V Sinval and hypervisor instructions. 386c5be.
update_llc_test_checks.py was extended with initial support for handling isel debug output. 8565b6f.
A new TableGenParseFile entry-point was aded to TableGen. e865fa7.
Clang commits
A new
-funstable
flag was added to enable unstable and experimental features. 3cdc1c1.Documentation was added for building a compilation database on Windows. d5d0313.
Clang Static Analyzer gained modeling of ‘errno’. d8a2afb.
Intrinsics were added for the RISC-V ‘K’ scalar cryptography extensions. fa9c8ba.
Other project commits
MLIR’s standard dialect was renamed to the Func dialect. 23aa5a7.
Lowering for more constructs in Flang was implemented, e.g. dynamic arrays and the ‘inquire’ statement. d88dfd2, 7e32cad.
LLVM’s libc was refactored to contain an internal platform independent thread support library and ‘Atomic’ library. a5ee818, 1137255.
A new way of loading modules with Scripted Processes was added to LLDB. 680ca7f.