LLVM Weekly - #159, Jan 16th 2017
Welcome to the one hundred and fifty-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
Erik Corry has written up the details of an exciting experiment to compile Dart code using LLVM.
John Regehr has written up a great explanation of how LLVM is tested.
In the context of recent news, Alex Rosenberg has reiterated Apple's commitment to LLVM, Clang, and open source.
Alessandro Di Federico has written "yet another" Python binding for LLVM, llvmcpy.
Registration is now open for EuroLLVM 2017. This will be held March 27-28 in Saarbrücken (Germany). The deadline to submit a talk, workshop or BoF proposal is January 27th.
On the mailing lists
-
Hal Finkel and Xinmin Tian have created an extensive proposal for adding IR-level region annotations. It is intended to be used to represent directives for parallelization, vectorization. The proposal spawned lots of discussion. Vikram Adve is concerned the parallel IR extensions may not be sufficiently language-neutral.
-
Mehdi Amini has helpfully summarised the current status of the LLVM git transition.
-
Quentin Colombet has proposed that GlobalISel be built by default. GlobalISel of course isn't used by default, so the main impact would be a slightly higher LLVM build time and larger binary size. Renato Golin raised some concerns.
-
Paul Robinson started a discussion about repurposing the 'optnone' attribute so it explicitly matches the behaviour of -O0.
-
Hans Wennborg reports that the 4.0.0 release has now branched. This means the releases process has started and a first release candidate should be available shortly.
-
Francois Fayard is curious about what options have been investigated for LLVM's DenseMap hash function. He followed up with some benchmarks from experimenting with different hash functions.
-
Shiva Chen has proposed a new LLVM backend for the AndesTech NDS32 V3 ISA.
LLVM commits
-
The processing of
@llvm.assume
intrinsics has been made more efficient. r291671. -
The llvm-xray tool now supports trace file conversion and function call accounting (generating basic statistics based on logs). r291529, r291749.
-
The 'googlemock' component of Google Test has been imported into the LLVM source tree. r291606.
-
The loop invariant code motion pass learnt to emit optimisation remarks. r291646, r291648, r291649.
-
The loop pass manager has seen a major redesign. r291651, r291662.
-
Functionality for accessing XRay trace logs is now exposed in
include/llvm/XRay/Trace.h
. r291651.
Clang commits
-
The
diagnose_if
attribute is now supported. This can be used to have clang emit a particular warning or error for function invocations that meet the given conditions. r291418. -
Clang will now track the source location of exception specifications. r291771.
-
Support was added for warning about unused C++ lambda captures. r291905.