[llvm-dev] LLVM Weekly - #179, Jun 5th 2017

Alex Bradbury via llvm-dev llvm-dev at lists.llvm.org
Mon Jun 5 13:10:02 PDT 2017

LLVM Weekly - #179, Jun 5th 2017

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

Welcome to the one hundred and seventy-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](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

John Regehr has blogged about [pointer overflow checking in

Krister Walfridsson has an [overview of interprocedural optimisations
available in

The next Paris LLVM social [will be held on June 14th
featuring three guest speakers. Please register if you would like to attend.

## On the mailing lists

* Dimitri Racordon [asked about structure handling in
LLVM](http://lists.llvm.org/pipermail/llvm-dev/2017-May/113442.html). Sean
Silva followed up with
responses, which answer this question and much more.

* Matt Dziubinski has followed up to last week's message about optimising
assemblers with a [huge list of references and related

* Kristof Beyls [proposes making armv7a and armv8a default to
He further shows that enabling scheduling for an in-order core is also
beneficial. There seems to be universal agreement.

* Alina Sbirlea has written an RFC on [replacing the AliasSetTracker with
MemorySSA in Loop Invariant Code

* Graham Hunter has shared an [updated RFC on supporting Scalable Vector
architectures in LLVM

* Jake Ehrlich [proposes the implementation of an llvm-objcopy

* Kristof Beyls has the
numbers](http://lists.llvm.org/pipermail/llvm-dev/2017-June/113588.html) for
GlobalISel at O0 on AArch64.

## LLVM commits

* The PowerPC backend will perform an inline expansion of memcmp, using the
new `expandMemCmp` function in TargetTransformInfo.

* The first Nios2 patch has landed.

* Documentation on the "Vectorization Plan" model has been added.

* Each backend can implement TargetMachine::isMachineVerifierClean to indicate
if machine verifier checks are expected to pass. This will allow the machine
verifier to be enabled by default with `EXPENSIVE_CHECKS`.

* The ThinLTO pipeline has been ported to the new pass manager.

* A Cortex-A57 scheduling model has been added for AArch32.

## Clang commits

* The Undefined Behaviour Sanitizer (UBSan) can now check for overflow on
pointer arithmetic. [r304459](http://reviews.llvm.org/rL304459).

* libclang now exposes the ability to "suspend" a translation unit. This helps
to reduce memory usage, at the cost of requiring a re-parse if more
information is needed from it. [r304212](http://reviews.llvm.org/rL304212).

## Other project commits

* The SBStructuredData class gained an API to access data types directly.

* Polly's ability to collect performance statistics has been improved, and
performance counters can now work on a per-SCoP (static control part) basis.

* The libcxxabi build system has been refactored to remove the dependence on
LLVM's CMake modules. [r304374](http://reviews.llvm.org/rL304374).

More information about the llvm-dev mailing list