[llvm-dev] LLVM Weekly - #164, Feb 20th 2017
Alex Bradbury via llvm-dev
llvm-dev at lists.llvm.org
Mon Feb 20 11:21:19 PST 2017
LLVM Weekly - #164, Feb 20th 2017
=================================
If you prefer, you can read a HTML version of this email at
<http://llvmweekly.org/issue/164>.
Welcome to the one hundred and sixty-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](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
Sources and binaries for LLVM 4.0.0-rc2 are [now
available](http://lists.llvm.org/pipermail/llvm-dev/2017-February/110167.html).
Get testing!
The next LLVM social in Berlin [will be held on February
23rd](http://lists.llvm.org/pipermail/llvm-dev/2017-February/110298.html).
The next LLVM social in Belgium [will be held on the 6th of
March](http://lists.llvm.org/pipermail/llvm-dev/2017-February/110276.html).
The NetBSD Foundation has a new blog post summarising
[recent changes to LLDB for NetBSD
support](http://blog.netbsd.org/tnf/entry/the_first_patch_bulk_upstreamed).
Manu Sánchez has blogged about [writing AST matchers for
libclang](http://manu343726.github.io/2017/02/11/writing-ast-matchers-for-libclang.html).
Version 5 of the DWARF debugging standard [has been
released](http://dwarfstd.org/DWARF5PressRelease.php).
## On the mailing lists
* Would you be interested in an LLVM social [in
Sweden](http://lists.llvm.org/pipermail/llvm-dev/2017-February/110284.html) or
[in
Italy](http://lists.llvm.org/pipermail/llvm-dev/2017-February/110277.html)? If
so, speak up!
* Quentin Colombet has [clarified the plan for moving forwards with
GlobalISel](http://lists.llvm.org/pipermail/llvm-dev/2017-February/110095.html).
* Ayalk Zaks and Gil Rapaport are [seeking
feedback](http://lists.llvm.org/pipermail/llvm-dev/2017-February/110159.html)
on 'VPlan', a model for vectorisation that hopes to capture all vectorisation
decisions. A PDF detailing VPlan is [available
here](https://reviews.llvm.org/D28975#655369).
* Zachary Turner has written up on RFC on [adding a new stream abstraction to
LLVM](http://lists.llvm.org/pipermail/llvm-dev/2017-February/110342.html). The
proposed ThinStream gives a read-only API that encourages zero-copy access,
while WritableThinStream allows writing. There are also variants that allow
reading and writing of semantic data rather than raw bytes.
* Mehdi Amini [kicked off
discussion](http://lists.llvm.org/pipermail/llvm-dev/2017-February/110274.html)
on what sort of criteria LLVM should use to rank proposed student projects.
* Steven Perron has written an RFC on [representing unions in
TBAA](http://lists.llvm.org/pipermail/llvm-dev/2017-February/110082.html).
* Witold Waligora has proposed [JumpMaps, a variant/generalisation of
JumpTables](http://lists.llvm.org/pipermail/llvm-dev/2017-February/110088.html).
* Martell Malone has proposed a [new dlltool replacement for
LLVM](http://lists.llvm.org/pipermail/llvm-dev/2017-February/110097.html), and
is looking for feedback.
* Alex Bradbury has written an [RFC about setting FrameSetup/FrameDestroy
MachineInstr
flags](http://lists.llvm.org/pipermail/llvm-dev/2017-February/110281.html)
when spilling or restoring callee-saved registers. We'd really welcome further
feedback from debuginfo experts.
## LLVM commits
* Support for "debug counters" was added. This is a tool to help narrow down
miscompilation to a particular transformation from the command-line.
[r295595](http://reviews.llvm.org/rL295595).
* The default threshold for full loop unrolling has been increased for the O3
optimisation level, meaning more loops will be unrolled.
[r295538](http://reviews.llvm.org/rL295538).
* Documentation on LLVM's type-based alias analysis metadata has seen a
sizable update. [r294999](http://reviews.llvm.org/rL294999).
* Tablegen DAGGenISelDAG gained a new feature to aid debugging instruction
selection. [r295081](http://reviews.llvm.org/rL295081).
* MachineBlockPlacement learnt to better layout trellis-shaped CFGs.
[r295223](http://reviews.llvm.org/rL295223).
* Support for the Cavium ThunderX ARM64 processors (including a scheduler) was
added. [r295475](http://reviews.llvm.org/rL295474).
## Clang commits
* The number of UBSan-inserted null checks on C++ object pointers has been
significantly reduced. [r295391](http://reviews.llvm.org/rL295391).
* Clang's code completion now recognises the previously missing C++11
keywords. [r295001](http://reviews.llvm.org/rL295001).
* C++1z class template argument deduction is now considered 'done'.
[r295011](http://reviews.llvm.org/rL295011).
* The new readability-misleading-indentation checker will warn if indentation
around unbraced if/else statements may be misleading (and likely indicate
programmer error). [r295041](http://reviews.llvm.org/rL295041).
## Other project commits
* XRay is now supported on the MIPS targets.
[r295166](http://reviews.llvm.org/rL295166).
* The LLDB Utility library is now standalone, without dependencies on other
parts of LLDB. [r295368](http://reviews.llvm.org/rL295368).
More information about the llvm-dev
mailing list