LLVM Weekly - #293, August 12th 2019
Welcome to the two hundred and ninety-third 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
The deadline for submissions to the 2019 LLVM Dev Meeting is today, Monday 12th August. Applications for student travel grants close on August 16th.
Serge Guelton has authored a blog post on Clang optimisation options.
On the mailing lists
-
Michael Paszkowski describes the llvm-canon, developed after seeing Puyan Lotfi's talk on mir-canon. Michal is looking for feedback from the community on the design and implementation of the tool, and has posted it to Phabricator.
-
Richard Trieu has been working on new clang warnings and improvements to default warnings and would like further comments and review.
-
Medhi Amini summarises some key elements of the EuroLLVM round table discussion on the use of the Bazel build system for LLVM.
-
Sjoerd Meijer is looking for thoughts on whether setting a transformation option should also imply the transformation (and proposes that it should, and this should be done consistently).
-
Happy Mahto and a group of other IIT Hyderabad students started an RFC thread on adding new vectorization pragms to LLVM. Hal Finkel responded with some feedback.
LLVM commits
-
llvm-readelf learned a new
--stack-sizes
option. r367942. -
Initial SVE calling convention support was committed. r367859.
-
update_test_checks.py
can now be run in an--update-only
mode where it will skip any tests that weren't automatically generated. This functionality has also been made available to otherupdate_*_checks.py
scripts. r367900, r368174. -
The new Loop Cache Analysis pass can be used to estimate the number of cache lines required by a loop nest.r368439.
-
As part of the effort to redesign bugpoint, a new delta IR reduction tool was committed (llvm-reduce). r368358.
-
x86-experimental-vector-widening-legalization is now enabled by default, which changes the default legalization behaviour for 16/32/64-bit vectors with i8/i16/i32/i64 scalar types from promotion to widening. r367901.
-
A new KnownBits analysis pass was added for GlobalISel. r368065.
-
A new llvm.licm.disable metadata was reduced to indicate loop-invariant code motion shouldn't be performed on the indicated loop. r368296.
-
ABI register names can now be used in assembly constraints for the RISC-V target, meaning frontends no longer need to convert to architectural register names. r368303.
Clang commits
-
SVE built-in types have been introduced, which are intended to become sizeless types. r368413.
-
A new
-stdlib++-isystem
command line option was introduced, allowing explicit control over the C++ standard library search paths. r367982. -
ASTImporter now has documentation. r368009.
-
clang-scan-deps gained a new fast scanning mode, where preprocessing is done on file that are minimised using the dependency directives source minimiser. r368086.