LLVM Weekly - #433, April 18th 2022
Welcome to the four hundred and thirty-third 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 2022 EuroLLVM program is now available.
LLVM 14.0.1 was released.
Ralf Jung blogged about pointer to integer casts. The post was also discussed on the LLVM Discourse.
David Malcolm provides an overview of the state of static analysis in the GCC 12 compiler.
I don’t typically cover job postings in LLVM Weekly, but as a reminder, you can follow the job postings category on LLVM Discourse.
On the forums
Tom Stellard summarised the next steps on the stand-alone build support RFC.
Joshua Cranmer explained why division-by-constant optimisation isn’t implemented at the IR level.
Matthew Voss posted an RFC on adding a unified LTO bitcode frontend.
LLVM commits
A DXIL bitcode writter was committed. f2526c1.
A pass was added to “insert the necessary instructions to adjust for the inconsistency of the call-frame information caused by final machine basic block layout”. b4ad28d.
Documentation on code removal was added to OrcV2. dfffb7d.
A custom binary format was introduced for bundling offloading metadata with a device object file. e471ba3.
Clang commits
Support was removed for the legacy pass manager. 2978d02.
Inline assembly address operands (the “p” constraint) are now supported on X86 and SystemZ. 46f83ca.
Flexible array initialisation is now allowed in C++. 5955a0f.
Basic PS5 compiler driver behaviour was committed. 7726ad0.
Other project commits
LLVM’s libc documentation was expanded to cover its C functions and to describe the current status of the libc runtimes build. f14334f, 6b4ee56.
ranges::lazy_split_view
andranges::filter_view
were implemented in libcxx. e53c461, 2b424f4.libunwind gained an unwinder for IBM AIX. a85da64.
Documentation was added to MLIR on how to declaratively define a dialect. 73c4f9d.