[LLVMdev] LLVM Weekly - #62, Mar 9th 2015

Alex Bradbury asb at asbradbury.org
Mon Mar 9 03:32:19 PDT 2015


LLVM Weekly - #62, Mar 9th 2015
===============================

If you prefer, you can read a HTML version of this email at
<http://llvmweekly.org/issue/62>.

Welcome to the sixth-second 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](http://asbradbury.org). Subscribe to future issues at
<http://llvmweekly.org> and pass it on to anyone else you think may be
interested. Please send any tips or feedback to <asb at asbradbury.org>, or
@llvmweekly or @asbradbury on Twitter.


## News and articles from around the web

LLVM is taking part in [Google Summer of
Code](https://developers.google.com/open-source/soc/) as a mentoring
organisation. Students can earn a $5500 stipend by working on open source
projects over the summer. See
[here](https://www.google-melange.com/gsoc/org/list/public/google/gsoc2015?tag=llvm)
for the list of mentoring organisations advertising LLVM-related projects.
Please do help spread the word, applications open on Monday the 16th of March.
I am biased, but I'd like to draw particular attention to the wide variety of
[lowRISC GSoC ideas](http://www.lowrisc.org/docs/gsoc-2015-ideas/), including
a project to use tagged memory to provide protection against control-flow
hijacking.

Ravi, a programming language based on Lua 5.3 has been
[announced](http://article.gmane.org/gmane.comp.compilers.llvm.devel/83199).
It features JIT compilation using LLVM, though in the current [development
version](https://github.com/dibyendumajumdar/ravi) only a fraction of the Lua
bytecodes are JIT-compiled.


## On the mailing lists

* Douglas Gregor has posted an RFC on [adding nullability
qualifiers](http://article.gmane.org/gmane.comp.compilers.clang.devel/41568).
The mailing list post justifies the reason for adding new qualifiers despite
the fact `__attribute__((nonnull))` exists.

* Jonas Paulsson queries the [current status of spilling support in the PBQP
register
allocator](http://article.gmane.org/gmane.comp.compilers.llvm.devel/83077). As
Arnaud confirms, there's still [work to be
done](http://article.gmane.org/gmane.comp.compilers.llvm.devel/83079) to
improve things.

* Chris Bieneman has posted an [update on the CMake build system's ability to
replace
autoconf](http://article.gmane.org/gmane.comp.compilers.llvm.devel/83067).

* Tom Stellard has shared his proposed [release schedule for 3.5.2 and
3.6.1](http://article.gmane.org/gmane.comp.compilers.llvm.devel/83016). This
would see 3.5.2 released on the 25th of March and 3.6.1 on the 13th of May.


## LLVM commits

* An initial implementation of a loop interchange pass has landed. This will
interchange loops to provide a more cache-friendly memory access.
[r231458](http://reviews.llvm.org/rL231458).

* A high-level support library for the new pass manager has been added.
[r231556](http://reviews.llvm.org/rL231556).

* The LLVM performance tips document has seen some new additions.
[r230995](http://reviews.llvm.org/rL230995),
[r231352](http://reviews.llvm.org/rL231352).

* DenseMapIterators will now fail fast when compiled in debug mode.
[r231035](http://reviews.llvm.org/rL231125).

* LowerBitSets will now use byte arrays rather than bit sets to represent
in-memory bit sets, which can be looked up with only a few instructions.
[r231043](http://reviews.llvm.org/rL231043).

* Another large portion of the DebugInfo changes has landed.
[r231082](http://reviews.llvm.org/rL231082).

* A new optimisation for AddressSanitizer has been added that reduces the
amount of instrumentation needed, eliminating it when accessing stack
variables that can be proven to be inbounds.
[r231241](http://reviews.llvm.org/rL231241).

* llvm.frameallocate has been replaced with llvm.frameescape.
[r231386](http://reviews.llvm.org/rL231386).


## Clang commits

* When the `-pedantic` flag is given, clang will warn when a format string
uses `%p` with non-`void*` args. [r231211](http://reviews.llvm.org/rL231211).

* Work on MS ABI support continues. Throwing a C++ exception under the MS ABI
is now supported. [r231328](http://reviews.llvm.org/rL231328).


## Other project commits

* The lld resolver has had a significant performance optimisation. The commit
message indicates linking chrome.dll now takes 30 seconds down from 70
seconds. [r231434](http://reviews.llvm.org/rL231434).

* The static binary size of lldb-server has been reduced due to a reduction in
the number of initialised components.
[r230963](http://reviews.llvm.org/rL230963).



More information about the llvm-dev mailing list