LLVM Weekly - #459, October 17th 2022
Welcome to the four hundred and fifty-ninth 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
The build of LLVM used by rustc is now optimised with BOLT, resulting in 3-5% build time improvements of Rust crates.
Reddit user “catcat202x” wrote up notes on additions to GCC so far in the GCC 13 development cycle.
On the forums
Arthur Eubanks started a discussion about what to do with the ‘legacy’ opt pass syntax as part of the move to the new pass manager.
Raghavan Raman shared an RFC proposal for broadcasting in the MLIR Tensor Compute Primitive dialect.
Artem Dergachev commented with thoughts on the tension between encouragement to discuss ideas early and often and the community’s desire for things to be fully worked out.
Schrodinger Zhu sought feedback on using the ‘swisstable’ hash table implementation for
hsearch
in LLVM’s libc.eop Chen posted an updated RFC for loop vectorisation of width 1.
The next Berlin LLVM meetup will take place on October 26th.
Tanya Lattner sent a reminder about LLVM Dev Meeting registration.
LLVM commits
The LLVM go bindings were removed. bc839b4.
The RISC-V backend now generates better code for selects with 0 in either arm. 1c41d0c.
llvm-reduce gained an opcode reduction pass. 573a5de.
The developer policy on potentially breaking changes was updated to reflect what was agreed on Discourse. 8673444.
Clang commits
Clang’s thread safety analysis was extended to support copy-elided production of scoped capabilities through arbitrary calls. 54bfd04.
Work started on record types in the Clang interpreter, as well as a range of other additions. 1942a25, 5421234, c9ad877, d704ba2, and more.
nullptr
andnullptr_t
are now supported in C2x mode. 3a31970.The redundant
-menable-unsafe-fp-math
option was removed. 84a9ec2.clang-tidy gained a cppcoreguidelines-avoid-do-while check. 1ae33bf.
The clang(-tools) pseudo-parse approach to parse disambiguation was documented. b13f7f9.
Other project commits
Documentation was added on a new “HLFIR” (high-level FIR) dialect for Flang. 0623ce1.
LLVM’s libc gained implementations of functions including getrandom, pthread_atfork, isatty, and getcwd. 9eb1185, 438e591, 7639ba6, 8b0e84a.
The C++17
<memory_resource>
header was added to libcxx. 243da90.OpenMP gained documentation on multi-architecture binary handling and for linking OpenMP with CUDA/HIP. 55d043c, 316eaa3.