LLVM Weekly - #294, August 19th 2019
Welcome to the two hundred and ninety-fourth 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
LLVM 9.0.0-rc2 has been tagged.
On the mailing lists
-
Gary Elsesser started a discussion on options for better supporting multidimensional array references, inspired by MLIR, with the most ambitious option being to adopt MLIR in LLVM. Chris Lattner expressed interest in the proposed second option to "Create a middle-LLVM that works on MLIR; do all loop restructuring here; phase out existing LLVM loop restructuring."
-
JF Bastien reports Clang and LLVM are now using C++14.
-
Ismail Bennani is interning at Apple and working on Fast Conditional Breakpoints. This RFC explains the high level design as well as full implementation details. Ismail has already submitted initial patches, and is keen for feedback.
-
Michael Spencer shares an RFC on C++20 modules dependency discovery in Clang.
-
In response to a question about building a subset of LLVM source files with debug info, Mark de Wever provides a handy CMake tip.
-
Paolo Savini is seeking advice on selecting instructions from the proposed RISC-V bit manipulation extension, especially when input might be implemented using a loop. Tim Northover points to LoopIdiomRecognize.cpp.
-
Bardia Mahjour shared minutes from the Aug 14th Loop Opt working group meeting.
-
Cyndy Ishida is working on continuing TextAPI support for MachO, and points to some recently submitted patches.
-
lldb-mi has now moved to its own GitHub repository. The project is also seeking a maintainer.
-
Arem Dergachev proposes routing clang-tidy diagnostics through the Static Analyzer diagnostic engine, as a stepping stone towards allowing the Staic Analyzer to expose clang-tidy checks as its own.
LLVM commits
-
All uses of
llvm::make_unique
have been migrated to the C++14std::make_unique
. r369013. -
A proposal for a libc project under the LLVM umbrella was committed. r369012.
-
A new style of coroutine lowering was added, "returned-continuation lowering" which complements the alternative "switched-resume lowering". See the commit message and added documentation for a thorough description of the differences. r368788.
-
An optimised lowering for
X % C == 0
was introduced, based on a description in Hacker's Delight. r368702. -
The GlobalISel InstructionSelector instance is now non-const, allowing state to be maintained. r368652.
-
The LLVM codebase is now ready for C++14, as the minimum required Gcc/Clang/MSVC has been bumped. r368799.
-
The bugpoint redesign work continues, with the addition of a pass to remove global variables. r369061.
Clang commits
-
clang-docs generated HTML files were redesigned. r369139.
-
The Static Analyzer now understands a new silence-checkers analyzer-config, which of course silences the listed checkers. r369078.
Other project commits
-
LLDB now uses LLVM's debug line parser rather than its own. r368742.
-
LLDB gained initial support for native debugging of x86/x64 Windows processes. r368759.
-
GWP-ASan gained support for stack frame compression, reducing the memory conceumption of stack traces by up to 50%. r369048.
-
The Wasm linker now allows linking of pic code into static binaries. r368719.