LLVM Weekly - #289, July 15th 2019
Welcome to the two hundred and eighty-ninth 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 8.0.1-rc4 has been tagged.
Visual Studio 2019 16.2 Preview 3 includes built-in Clang/LLVM support for MSBuild projects.
See the lowRISC blog for further background on plans for RISC-V LLVM in LLVM/Clang 9.0 and on our large-scale testing using buildroot (90% of buildroot's 2000+ packages can be built).
On the mailing lists
-
Siva Chendra followed up on his LLVM libc thread with a draft charter to better explain the motivation and aims for the project. Rich Felker, author of Musl libc provided further feedback.
-
Guillaume Chatelet has worked to introduce an Alignment object in LLVM, so alignment is consistently represented in the codebase. He is seeking feedback on the next steps for this work (i.e. upstreaming).
-
Tom Stellard reminds us that LLVM's subversion is scheduled to be retired by Oct 21 2019, and enourages everyone to move their workflow to GitHub as soon as possible. See the GitHub migration status for more info.
-
Jonas Devlieghere is proposing an LLDB BoF for the upcoming LLVM Dev Meeting and is seeking input on topics.
-
Seiya Nuta is seeking feedback on syntax highlighting llvm-objdump output.
-
LLVM 9.0.0 will branch on 18th July 2019.
-
See this thread for an interesting discussion on the challenges of writing a backend for the WDC 65816 (as used in the SNES).
-
Scott Manley shared an RFC on making
-fp-contract=off
disable FMAs.
LLVM commits
-
New
preserve_{array,union,struct}_access_index
intrinsics were added to preserve debug information, used for new BPF "compile once and run everywhere" functionality. r365352, r365503. -
Support was added for the next-generation arch13 SystemZ CPU architecture. r365932.
-
A 'nofree' function attribute was introduced, and can now be inferred. r365336.
-
The "returned" argument can now be deduced. r365407.
-
Documentation for the LLVM remarks infrastructure was added. r365578.
-
The SanitizerCoverage pass was ported to the new pass manager. r365838.
Clang commits
-
Syntax trees, "a tooling-focused alternative to the AST" were introduced. As described in the commit message, there is more work to come in this area. r365355.
-
A CastValueChecker was added to the Clang static analyzer, supporting the LLVM casts. r365582.
-
The minimum supported Visual Studio version to compile LLVM and Clang is now VS2017. r365454.
-
A new DirectoryWatcher library was added, to be used by index-while-building. r365574.
-
The
__VERSION__
macro was removed. r365962.
Other project commits
-
LLD has had its codebase renamed to use camelBack for local variables. r365595.
-
Support for running the LLVM test suite with qemu user mode emulation using CMake/lit was fixed. r365783.
-
hwasan gained improved precision for its checks using "short granule tags". r365551.
-
The version of the Google benchmark library in the LLVM test suite gained a backported patch adding RISC-V support. r365610.