LLVM Weekly - #466, December 5th 2022
Welcome to the four hundred and sixty-sixth 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 and events
LLVM 15.0.6 was released.
The LLVM Bay Area monthly meetup is taking place today (December 5th) at 6pm.
The CfP for the seventh LLVM performance workshop at CGO is now out. The deadline for submissions is Jan 25th 2023.
The deadline for submissions for the FOSDEM LLVM dev room has been extended to Sunday 11th December.
According to the LLVM calendar in the coming week there will be:
- Office hours with the following hosts: Paulo Matos, Tobias Grosser, Quentin Colombet, Johannes Doerfert, Anastasia Stulova.
- Online sync-ups on the following topics: MemorySSA, OpenMP, Flang, RISC-V, MLIR, embedded toolchains, SPIR-V.
- For more details see the LLVM calendar, getting involved documentation on online sync ups and office hours.
On the forums
Alina Sbirlea posted an RFC on pipeline and infrastructure extensions in the new pass manager, as a follow-up to discussions at the LLVM Dev Meeting round table (apologies, I seem to have missed it last week).
Paulo Matos posted an RFC on exposing WebAssembly reference types to Clang.
Scott Linder shared an RFC on heterogeneous debug info.
Yueh Ting Chen kicked off a discussion on vectorisation under RISC-V and the interface to controlling scalable vectorisation width.
Med Ismail Bennani initiated an RFC discussion on kernel/user-space co-debugging in LLDB with scripted processes.
Jannik Silvanus raised various questions about the current handling of over-aligned i8, noting that some passes rely on a natural alignment of i8.
Quentin Colombet shared a PSA to note you now need to run
expand-strided-metadata
beforememref-to-llvm
.Sam Elliott proposed moving Target Info out of
--version
by default.Roman Lebedev shared a proposal for improving user experience for Clang’s unwind-effecting attributes.
LLVM commits
Many tests were updated to use opaque pointers. b1dbc0a, d17f4f2, e472cf7, and much more.
All
update_*_test_checks.py
scripts now support generating lines for “unused” prefixes (previously it was justupdate_llc_test_checks.py
). 255e7e1.Code generation for shuffles in the Hexagon backend was improved. 073d5e5.
MC layer support was added for the AArch64 VMSA (Virtual Memory System Architecture), part of the 2022 A-Profile Architecture extensions. 7fea6f2.
The set of register allocator hints for compressible RISC-V instructions was expanded. a8c79121, df7ab6a, e00e20a.
The ExpandLargeFPConvert pass was added and enabled for X86. 89f36dd.
An
update_any_test_checks.py
helper utility was added, which will dispatch to the appropriateupdate_*_test_checks.py
tool. 1743052.A new MachineLatrInstrCleanup pass was added to be run after prolog and epilog insertion. It removes redundant address/immediate loads. 17db0de.
The select optimise pass was enabled for AArch64 when targeting cores that might benefit from it. 16a72a0.
Clang commits
Frame pointer optimisation was enabled by default for Sparc. 17d0a15.
The MinGW GCC/sysroot detection logic was improved. 02b25bd.
Basic documentation was added for clang-repl. 3ae07a4.
clang-repl now supports statements in the global scope in incremental mode. dc48893.
A script was added to maintain a list of fast clang-tidy checks. c7fc0ab.
Other project commits
Basic RISCV64 target definitions were added to Flang. bac88e8.
An experimental ‘GPU’ mode/configuration was added to LLVM’s libc, meant to allow calling libc routines during GPU execution. 55151e1, 194788b.
The
dwim-print
command was added to LLDB. It will intelligently pick the best means of printing a given expression. 185d496.