LLVM Weekly - #360, November 23rd 2020
Welcome to the three hundred and sixtieth 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 https://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
Support for the Cranelift code generation backend has been merged into Rust as an optional alternative to LLVM offering 20-30% faster build times.
Some previously missing videos from past LLVM Dev Meetings have been uploaded to the LLVM YouTube channel.
On the mailing lists
-
Paul C. Anagnostopoulos has posted the second occasional TableGen newsletter, covering recent documentation updates and feature additions.
-
Fāng-ruì Sòng proposes adding an
-fbinutils-verstion=
option to Clang. -
Geoffrey Martin-Noble restarted discussion on contributing Bazel BUILD files to LLVM, framing it in the context of the recently agreed support policy.
-
Paulo Matos has shared an RFC on supporting multiple program address spaces in LLVM. This is motivated by the support of reference types in WebAssembly.
-
Yuanke Luo authored an RFC on supporting the Intel AMX programming model in LLVM.
-
Mike Edwards linked to notes from the GitHub Pull Requests round table at the LLVM Dev Meeting, which led to a sub-thread bout rebase-based CI setups.
-
Rong Xu distributed an RFC on control-flow sensitive AutoFDO, which aims to mantain more proced AutoFDO profile counts for duplicated control flow.
-
Tom Stellard posted the proposed LLVM 11.0.1 release schedule.
LLVM commits
-
A new
llvm.pseudoprobe
IR intrinsic was introduced for pseudo-probe block instrumentation. See the RFC for more background. f3c4456. -
Support was added for "out of line atomics" on AArch64. 4d7df43.
-
A default address space for globals can now be specified in DataLayout. 3bc4157.
-
A SchedMachineModel was added for the Cortex-M7. 48b43c9.
-
BasicAA's checks for whether two getelementptrs with different offsets alias were generalised and unified. cd3c22c4.
-
RISC-V bitmanip GREVI and GORCI are now lowered as custom nodes, allowing more complex patterns to be matched. 1ac9b54.
Clang commits
-
The OpenMP 5.1 feature status table was updated. 7046be1
-
clangd gained an extension method to dump the AST. 8adc4d1.
Other project commits
-
LLDB was extended to show tagged regions on AArch64 Linux when the memory tagging extension (MTE) is enabled. 3254168.
-
Sparse tensor compiler support was started in MLIR. eced4a8.
-
New builtins were introduced to compiler-rt to convert between fp16 and fp128. 1fb91fc.
-
LLVM's libc gained implementations of ldexp[f|l]. bb8f258.
-
LLVM's libcxx was ported to the NuttX RTOS. f0785c1.