[llvm-dev] LLVM Weekly - #185, Jul 17th 2017

Alex Bradbury via llvm-dev llvm-dev at lists.llvm.org
Mon Jul 17 11:18:32 PDT 2017

LLVM Weekly - #185, Jul 17th 2017

If you prefer, you can read a HTML version of this email at

Welcome to the one hundred and eighty-fifth 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

Codeplay and Google have
clspv, a compiler from a subset of OpenCL to Vulkan compute shaders.

A C++ standards meeting has just taken place in Toronto. Herb Sutter already
has a [trip
online. Michael Wong earlier [shared some pre-meeting

## On the mailing lists

* Sanjay Patel kicked off a [discussion on adding further optimisations to
This led to an interesting debate on how to handle these sorts of
optimisations in LLVM, and whether LLVM can be doing something more principled
and scalable.

* Dylan McKay shared an [RFC on supporting Harvard
In this case, the motivation is for the in-tree AVR backend. A number of
maintainers of out-of-tree backends for Harvard architectures dropped by with
some useful input.

* George Karpenkov has [updated the
list](http://lists.llvm.org/pipermail/llvm-dev/2017-July/115299.html) on
efforts to move libFuzzer to compiler-rt. As later replies point out, sorting
out the licensing change is one barrier that remains to be sorted.

* Takumi Nakamura shares numbers on [build-time improvements for building with

* LLVM 5.0.0 [will branch on Wednesday 19th

## LLVM commits

* The Sandy Bridge scheduling information has been completedly replaced with a
more accurate model. [r307529](http://reviews.llvm.org/rL307529).

* The X86 backend now has a CMOV conversion patch which will convert a CMOV to
a branch if it is deemed likely to be profitable.

* Memory usage of llvm-profdata on large profiles has been reduced
substantially. [r307516](http://reviews.llvm.org/rL307516),

* The representation of synchronization scopes has been enhanced. The
syncscope annotation is now used rather than 'singlethread'.

* Element-atomic memmove and memset intrinsics have been introduced.

* The loop interchange pass gained optimization remarks.

## Clang commits

* The @available attribute has been documented.

* The Clang C++ status page has been updated with items from the Toronto WG21
meeting. [r308099](http://reviews.llvm.org/rL308099).

* The `-std=c++2a` command-line option has been added to enable potential
C++2a features. [r308118](http://reviews.llvm.org/rL308118).

* bugprone-undefined-memory-manipulation and bugprone-suspicious-memset-usage
checks have been added. The former warns on memset/memmove/memcpy on objects
that aren't trivially copyable while the latter warns on common erroneous
memset arguments. [r308020](http://reviews.llvm.org/rL308020),

## Other project commits

* The PRNG for the scudo memory allocator has been rewritten.

* The libc++ status page has been updated after the Toronto C++ meeting.

More information about the llvm-dev mailing list