LLVM Weekly - #392, July 5th 2021
Welcome to the three hundred and ninety-second 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
Phoronix posted an article benchmarking LLVM/Clang 12 with various settings.
A new data analytics framework has been released, Tuplex, which offers LLVM-backed code generation and promises speedups of 10-20x over PySpark or Dask.
Video is now available from a recent LLVM/Flang technical call, where Mark LeAir presented on how to add a new intrinsic to Flang.
The Red Hat Developer blog has a new article about using source-level annotations available in GCC to help protect buffer overflows.
On the mailing lists
Tom Stellard shared an RFC proposing to update the
LLVM_VERSION_SUFFIX
CMake variable for release candiates. This variable is used in the SONAME, so will affect the name of the built libraries.LLVM GPU News Issue #15 is out.
Azhar Mohammed posted about decommissioning the compiler build artifacts in Google cloud storage. This service will be turned off on July 12th. You’re most likely to notice this if you’d been using
llvmlab bisect
to bisect using pre-built binaries.LLVM 12.0.1-rc4 has been tagged.
Fāng-ruì Sòng initiated a discussion about moving utilities like llvm-objcopy to use OptTabl rather than llvm::cl for command-line parsing.
James Henderson announced the creation of the top-level cross-project-test project, replacing debuginfo-test.
Arthur Eubanks posted an RFC on migrating tests from
opt -foo
toopt -passes=foo
.
LLVM commits
A new combine was added for
G_PTR_ADD
in GlobalISel to allow better addressing mode usage. 0111da2.llvm-objdump will now print generated comments for disassembled instructions. abe0fa4
MC layer support was added for Armv9-A’s Realm Management Extension. 88b1135.
Support for forward references in textual IR was added as part of the OpaquePtr implementation effort. f8aaec1.
Clang commits
A new checker, bugprone-easily-swappable-parameters, was introduced. It will find function definitions where parameters of convertible types follow each other directly, meaning it’s easy to accidentally swap arguments. 499e39c.
An
-fprotect-parents
command-line option and__arithmetic_fence
builtin was added to provide expression-level control over floating point optimisation when-ffast-math
is enabled. e773216.
Other project commits
Documentation was added for the new Flang driver. ea3698d.
Documentation was added for mlir-reduce. 7dec20d.
Documentation was added on the OpenMP-aware optimisation pass. c9f3240.
debuginfo-tests was moved into a new top-level cross-project-tests directory. 1364750.
A minimal Windows build config and instructions for using it were added for LLVM’s libc. e4b9fec.
Identical Code Folding was moved earlier in lld-macho’s pipeline. 3a11528.