LLVM Weekly - #563, October 14th 2024
Welcome to the five hundred and sixty-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, @llvmweekly or @asbradbury on Twitter, or @llvmweekly@fosstodon.org or @asb@fosstodon.org.
News and articles from around the web and events
Volodymyr Vasylkun wrote on the LLVM blog about their GSoC project on 3-way comparison intrinsics.
The preliminary program for the LLVM/Offload workshop at the LLVM Developers' Meeting is now available.
It’s the LLVM Developers' Meeting next week. Hopefully I’ll see some of you there! I’ll be at the dev meeting on Thursday, and the RISC-V Summit earlier in the week (where I’m giving a talk about RISC-V LLVM). Be sure to attend my colleague Mikhail R Gadelha’s quick talk on LLVM’s libc for RISC-V.
According to the LLVM calendar in the coming week there will be the following:
- Office hours with the following hosts: Aaron Ballman, Alexey Bader, Phoebe Wang, Johannes Doerfert.
- Online sync-ups on the following topics: Flang, vectorizer, security group, new contributors, LLVM/Offload, classic flang, Clang C/C++ language working group, floating point, OpenMP for flang, MLIR.
- For more details see the LLVM calendar, getting involved documentation on online sync ups and office hours.
On the forums
Peter Chou started an RFC discussion on adding a C++ implementation of the Mustache template language, to support work on clang-doc as well as other parts of LLVM that generate HTML.
Rahul Joshi proposed adding a new pretty printing mechanism for LLVM intrinsic arguments.
Matin Raayai is seeking feedback on a plan to rework the TargetMachine interface.
Takumi Nakamura posted an RFC on integrating SingleByteCoverage with branch coverage.
Matthias Springer kicked off an MLIR RFC discussion on merging 1:1 and 1:N dialect conversions.
LLVM commits
Custom ABIs for coroutines were documented. 29e192a.
The VLOptimizer pass was introduced to the RISC-V backend (off by default for now). 1c94388.
WriteIndexesThinBackend
is now multi-threaded, removing a bottleneck inthin-link
for large builds. 2edd897.noalias.addrspace
metadata was introduced, intended to address a problem lowering atomics in OpenMP and C++ for AMDGPU and NVPTX. a8e1311.Nikita Popov is now officially the lead maintainer for LLVM. 326b381.
For RISC-V,
.insn
gained the ability to assemble 48-bit and 64-bit instructions. f93f925.It’s now possible to perform global outlining with two codegen rounds. dc85d52.
The AArch64 backend gained lowering for
FMINNUM_IEEE
,FMAXNUM_IEEE
, andFCANONICALIZE
nodes. 8d35ab8, 72fb379.The documentation on LLVM’s floating point semantics was elaborated. a8a6624.
Clang commits
The DirectX target now uses the Itanium ABI. c2063de.
The
-Wdeprecated-literal-operator
warning is now on by default. c8554e13.An
AlignFunctionDeclarations
sub-option forAlignConsecutiveDeclarations
was added toclang-format
. f0bd62d.--multi-lib-config=
can now be used to set a custom path to be used for loading the multilib YAML config file. da759dd.Clang’s “Code Owners” file was moved over to “Maintainers”. 8565213.
clang-tidy files for ClangIR specific coding style rules were checked in. dd0fe4f
Other project commits
An
'mlir-rewrite
tool to aid rewriting.mlir
files was started. 4c25a53.flang-new
was renamed toflang
. 06eb10d.BOLT can now compute statistics for a profile’s “CFG discontinuity”. 4cab01f.
All libc++ implementation details are hidden from LLDB stacktraces by default. 7e16571.
As discussed via RFCs, the semantics of “program point” in MLIR has now been unified across both forward and backward data-flow analysis. 4b3f251.