LLVM Weekly - #205, Dec 4th 2017
Welcome to the two hundred and fifth 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.
If you weren't able to make it to the 7th RISC-V Workshop in Milpitas last week, you might find my blog summary on lowrisc.org useful.
News and articles from around the web
LLVM/Clang 5.0.1-rc2 has been tagged.
The call for papers has been issued for the LLVM Performance Workshop at CGO 2018. This will take place on February 24th in Vienna, Austria.
On the mailing lists
-
Alexey Kukanov has published an RFC on contributing Intel's Parallel STL implementation to libc++.
-
Artem Dergachev has started to document a number of issues preventing inlining in C++ code.
-
Mohammed Agabaria proposes adding a
no-overflow
keyword to the sdiv and udiv IR instructions. -
Greg Clayton has responded to a user question with a handy summary of how to remotely launch a new process in LLDB.
-
Jonas Thiem is looking for answers to a licensing question about the runtime libraries, and further elaborates in this follow-up.
LLVM commits
-
A new SpeculateAroundPHIs pass has been introduced. It's stunningly well documented, so well worth a ready. r319164.
-
The new
-stack-size-section
flag causes metadata to be emitted in an ELF section with information on function stack sizes. r319430. -
MergeConsecutiveStores is now run a second time, just before instruction selection. This allows lowered intrinsics to be merged as well. r319036.
-
The MachineVerifier PHI and register operand checking has been improved. r319140, r319141.
-
You can now use
-ppc-reg-with-percent-prefix
to get more readable PPC assembler output. r319381. -
The ARC backend can now assemble a subset of ARC instructions. r319609.
Clang commits
-
clang-format gained options to control sorting of include blocks, allowing groups to be sorted individually, merged and sorted, and merged and resplit. r319024.
-
A number of math libcalls/builtins are now converted to equivalent LLVM intrinsics. r319593.
-
clangd gained a fuzzy match scorer. r319557.
Other project commits
-
LLD gained support for range extension thunks on AArch64. r319307.
-
LLD has reduced the size of the .gnu.hash section. r319503.
-
LLDB remote debugging documentation has been updated. r319213.
Review corner
The LLVM Weekly review corner serves to highlight patches that are stuck waiting awaiting review, or work from first-time contributors. See here for more information and how to submit you work for inclusion. Of course the hope is that highlighting these patches will enable LLVM Weekly readers will step up and help to get them merged. I'll be reporting back each week on any activity generated on these patches, as well as sharing a new batch. If you want your patch included you must submit it via the linked form.
After a quiet period, we've had some new patch submissions this week. Three were submitted, though D38778 (support for the PowerPC Signal Processing Engine) has actually had reviews since being submitted. Thanks Nemanja Ivanovic!
-
"Allows pretty printing of declarations through the libclang (C) API. This is useful for e.g. tooltips in an IDE - hover a function call and get the corresponding declaration as tooltip." D39903, patch by Nikolai Kosjar.
-
"This patch extends clang's -verify option to support prefixes similar to FileCheck's --check-prefixes. While -verify plus preprocessor directives could already accomplish the same goal, source is often easier to read/maintain without preprocessor directives or duplicate passages of code (see updated clang tests in patch)." D39694, patch by Joel E. Denny.