[llvm-dev] LLVM Weekly - #241, August 13th 2018

Alex Bradbury via llvm-dev llvm-dev at lists.llvm.org
Mon Aug 13 09:33:10 PDT 2018


LLVM Weekly - #241, August 13th 2018
====================================

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

Welcome to the two hundred and forty-first 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](https://www.linkedin.com/in/alex-bradbury/). 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

The Julia programming language has reached [version
1.0](https://julialang.org/blog/2018/08/one-point-zero). Congratulations to
all contributors.

The NetBSD blog provides an
[introduction to
µUBSan](https://blog.netbsd.org/tnf/entry/introduction_to_%C2%B5ubsan_a_clean),
a clean-room reimplementation of the Undefined Behavior Sanitizer runtime

Saar Raz
[reports](https://old.reddit.com/r/cpp/comments/958sj9/clang_concepts_is_now_featurecomplete/)
that his out-of-tree implementation of C++ concepts proposal in Clang is now
feature complete.

Bekket McClane has written a
[tutorial](https://medium.com/@mshockwave/writing-llvm-pass-in-2018-part-i-531c700e85eb)
on writing a simple 'hello world' LLVM pass using the new pass manager.


## On the mailing lists

* Chijun Sima has written an end-of-GSoC report on [implementing a single
updater class for
dominators](http://lists.llvm.org/pipermail/llvm-dev/2018-August/125229.html)
as well as a [summary of work to preserve the DominatorTree along the
pipeline](http://lists.llvm.org/pipermail/llvm-dev/2018-August/125185.html).

* Charles Davis started a discussion about an x86-64 compilation mode that has
an address space for 32-bit pointers to allow interoperability. Unfortunately
discussion is split between
[llvm-dev](http://lists.llvm.org/pipermail/llvm-dev/2018-August/125119.html)
and
[cfe-dev](http://lists.llvm.org/pipermail/cfe-dev/2018-August/058770.html).

* Sterling Augustine shared an RFC on [switching to compiler-rt by default for
x86-Linux](http://lists.llvm.org/pipermail/llvm-dev/2018-August/125109.html).
The RFC hasn't generated much discussion yet.

* Stephen Kelly
[reports](http://lists.llvm.org/pipermail/cfe-dev/2018-August/058853.html)
that the getStartLoc, getLocStart, and getLocEnd APIs are deprecated and will
be removed in 4 weeks time. getBeginLoc and getEndLoc should be used instead.

* Kenneth Casson Leighton started a
[discussion](http://lists.llvm.org/pipermail/llvm-dev/2018-August/125095.html)
about supporting his proposed 'SimpleV' RISC-V vectorisation extension. This
segwayed into concerns about supporting non-standard extensions with
overlapping encodings, which Alex Bradbury [responded
to](http://lists.llvm.org/pipermail/llvm-dev/2018-August/125161.html).

* Anast Gramm shares and RFC on [adding a DebugLoc parameter to Instruction's
Create
functions](http://lists.llvm.org/pipermail/llvm-dev/2018-August/125132.html).


## LLVM commits

* The WebAssembly backend has a new stack-only instruction mode for its MC
layer, which is used by default. [r339474](https://reviews.llvm.org/rL339474).

* LLVM's Sphinx configuration now supports documentation written in Markdown.
[r338977](https://reviews.llvm.org/rL338977).

* The GuardWidening pass learned to widen guards with conditions of frequently
taken dominated branches. [r338988](https://reviews.llvm.org/rL338988).

* PhysRegSize was removed from MCRegisterClass.
[r339350](https://reviews.llvm.org/rL339350).

* The MCStatement tablegen class was introduced, which can currently support
simple swith and return statements.
[r339352](https://reviews.llvm.org/rL339352).

* The coding standards and developer policy around whitespace was clarified.
[r339455](https://reviews.llvm.org/rL339455).


## Clang commits

* Clang gained a new fixed point abstract type, similar to APInt in LLVM.
[r339028](https://reviews.llvm.org/rL339028).

* The getBeginLoc and getEndLoc APIs replace getLocStart, getStartLoc, and
getLocEnd.
[r339372](https://reviews.llvm.org/rL339372),
[r339374](https://reviews.llvm.org/rL339374),
[r339385](https://reviews.llvm.org/rL339385),
[r339386](https://reviews.llvm.org/rL339386).

* The GNUstep Objective-C ABI v2 now supports Windows.
[r339428](https://reviews.llvm.org/rL339428).


## Other project commits

* LLD gained initial RISC-V support.
[r339364](https://reviews.llvm.org/rL339364).

* A range of image processing kernels were added to the set of benchmarks in
the LLVM test suite. [r339006](https://reviews.llvm.org/rL339006),
[r339010](https://reviews.llvm.org/rL339010),
[r339055](https://reviews.llvm.org/rL339055),
[r339115](https://reviews.llvm.org/rL339115).


More information about the llvm-dev mailing list