LLVM Weekly - #344, August 3rd 2020
Welcome to the three hundred and forty-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 11.0.0-rc1 has been tagged.
The 2020 Linux Plumbers Conference will feature an LLVM microconference.
On the mailing lists
-
Andrzej Warzynski shares a new clang tutorial. clang-tutor provides a collection of out-of-tree plugins for Clang with the intent to making it easier for people to get started developing plugins.
-
Andrzej Warzynski posted an RFC on refactoring libclangDriver/libclangFrontend to share with Flang.
-
Stephen Neuendorffer sent a heads-up that you may need to manually 'unwatch' the llvm/circt repo if you're a member of the LLVM org.
-
Johannes Doerfert proposed adding support for heterogeneous LLVM-IR modules.
-
Petr Hosek shared challenges he's facing related to the recent change in ld.bfd tombstone behaviour with suggestions for handling changes like this in the future.
-
ORC JIT Weekly #18 reports on the addition of the TargetProcessControl API.
-
"AE" asked about filesystem support in libcxx on Windows. Stephan T. Lavavej volunteered to contribute Microsoft's implementation to libcxx.
-
Zachary Turner enquired about the status of the LLVM re-licensing effort. Hal Finkel reports that it is still in progress and the January 2019 target date will be revised soon.
-
Craig Topper raised the issue of SimplifyCFG hoisting fences in if/else branches, and how this may harm attempts to use these fences to mitigate speculative execution vulnerabilities.
-
Son Tuan VU kicked off a discussion on maintaining metadata other than debug info through compilation. This triggered thoughts from others, e.g. Lorenzo Casalino.
LLVM commits
-
llvm-jitlink gained a new
-harness
option to enhance testing. 8ce8cee. -
RISC-V Vector MC layer support was updated to bring it in line with the v0.9 draft specification. 47a4a27.
-
The XRay infrastructure can now be used for runtime recursion detection. f2ab213.
-
llvm-exegesis learned to use
LBR
for more precise measurements on Skylake and onwards. ee7caa7. -
Support was removed from the PowerPC backend for the IBM BG/Q supercomputer. adffce7.
-
The TableGen GlobalISelEmitter now allows output instructions with multiple defs. ee3feef.
-
File lock/unlock functions were added to LLVM's support library. 5367369, 032ed39.
-
The X86CondBrFolding pass was removed due to correctness issues. e1dd212.
-
FileCheck
-dump-input
was extended with substitutions, and FileCheck will now report captured variables in input dumps and traces. d680711, 9f86b8e. -
The CastContextHint enum was added to getCastInstrCost (e.g. Normal, Masked, GatherScatter, etc). 60280e9.
Clang commits
-
Clang's coverage support was fixed to not count lines containing only comments.b46176b.
-
Support for the OpenMP 'present' motion modifier was added to Clang. 9f2f3b9.
Other project commits
-
The dataflow sanitizer gained an efficient "fast16labels" instrumentation mode, for use when the user needs no more than 16 labels. e2d0b44.
-
A WrapperGen tool was added to LLVM's libc implementation, to generate C wrappers for the C++ LLVM libc implementation.s a32af82.
-
The LLD ELF linker's CallGraphSort was ported to the COFF linker. 763671f.
-
Support for mutable types was added to MLIR. a518299.