LLVM Weekly - #454, September 12th 2022
Welcome to the four hundred and fifty-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 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.
I started a blog, Muxup. Expect more on-topic-for-LLVM-Weekly posts in the future.
News and articles from around the web
LLVM 15.0.0 was released. Congratulations and thank you to everyone involved!
David Spickett blogged about LLDB 15’s greatly improved handling of AArch64 extensions that reuse unused address bits.
Fangrui Song blogged about toolchain support for Zstd compressed debug sections, including Clang/LLVM of course.
Henrique Bucher blogged about LLVM XRay instrumentation.
On the forums
Steven Wu provided an update on the RFC Thread about providing an LLVM content addressable storage (CAS) library, linking to an experimental branch where this work can be reviewed.
There was a lot more discussion in the thread on adding a high-level ML dialect in MLIR covering issues such as how aggressive to be in merging and governance.
Lang Hames provided a September update for the ORC JIT. The post also announces the first office hours session due to take place on September 26th.
LLVM GPU News #41 is out.
The call for round table submissions for the 2022 US LLVM Dev Meeting is open until October 20th.
Christian Sigg shared a PSA about planned removals of lit replacements in MLIR that may affect some downstream users.
Orlando Cazalet-Hyams provided another update on the implementation of the assignment tracking RFC.
Fangrui Song started a thread on adding
--gcc-install-dir
and deprecating--gcc-toolchain
for clang.
LLVM commits
Patches started to land to support the ARM64EC ABI. 488ad99, 63335af, 4658366, 5637ec0.
LLVM can now write Zstd compressed debug info sections. fbf5e87.
PC Sections Metadata was introduced. c70f6e1.
The ExpandLargeDivRem pass was enabled for X86, Arm, and AArch64. 2090e85.
A new
--reserve-regs-for-regalloc
option was added to the AARch64 backend to help simulate high register pressure when testing. 3cf4ab5.A RISC-V usage page was added to document the supported extensions in the RISC-V backend. 7f2b016, be442d2.
New thresholds were added to CodeGenPrepare to limit compilation time for functions with a very large number of basic blocks. 16743c9.
MC layer support was added for the RISC-V
Ztso
extension. a4a2943.Codegen support for armv2,2a,3,3m was disabled (as noted in the commit, codegen for these targets was untested and known to be broken). e428baf.
Clang commits
GNU++17 is now used as the default C++ and ObjC++ standard. 3e99b8d.
The clang and clang-tools-extra code owners files were updated following the RFC discussion on Discourse. 3c604e9.
-fexperimental-sanitize-metadata
was introduced, which enables SanitizerBinaryMetadata instrumentation. c4842bb.Function calls, array initialisers, and array subscript expressions were implemented in the Clang interpreter. 8e41e6a, 3a7d476.
Other project commits
Documentation was written for the Mach-O LLD port. 0f9590a.
Gather/scatter operation definitions were added to MLIR’s tensor dialect. d2613d5.
The Flang build documentation was updated to reflect recent changes. 49dab97.
Clang 13 support was removed from libcxx. 3695cf2.
A wide integer emulation pass was added to MLIR. fa8eb27.