[llvm-dev] LLVM Weekly - #234, June 25th 2018

Alex Bradbury via llvm-dev llvm-dev at lists.llvm.org
Mon Jun 25 02:55:32 PDT 2018

LLVM Weekly - #234, June 25th 2018

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

Welcome to the two hundred and thirty-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](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 next LLVM Sydney Users and Developers Meetup has been
for this Thursday 28th June. It will feature a deep-dive into LLVM IR and the
C++ API.

The [video recording](https://www.youtube.com/watch?v=8U0eKnZmNwM) of the 12th
LLVM Social Berlin is now available. Stefan Gränitz talks about ThinLTO and
Incremental JIT Compilation.

## On the mailing lists

* Alan Davis is [seeking
feedback](http://lists.llvm.org/pipermail/llvm-dev/2018-June/124154.html) on
his proposed method of modeling pre/post increment/decrement addressing modes.
No responses yet, but I'm sure there are others who are interested.

* Vedant Kumar kicked off an RFC on [removing debug locations from
This generated a reasonable amount of discussion, which Vedant was kind enough

* Piotr Padlewski
[reports](http://lists.llvm.org/pipermail/llvm-dev/2018-June/124153.html) that
he's got a pair of devirtualisation patches up for review and is seeking help
in getting them approved. These show an 80% performance boost in one
microbenchmark, 0.7% on 7zip.

* Duncan P. N. Exon Smith started an RFC thread on [whether SmallVectors
should be

## LLVM commits

* TableGen support for SearchableTables was rewritten to rely on more generic
primitives (GenericEnum, GenericTable, SearchIndex) which allow generating
custom enums and tables with lookup functions.

* The loop unswitching pass learned to perform partial unswitching.

* It is now possible to have tied operands of different classes in aliases.

* The WebAssembly tablegen definitions now describe two parallel instruction
sets: register-based and stack-based.

* The assembler directives added to support CodeView emission have been
documented. [r335058](https://reviews.llvm.org/rL335058).

* The new Instruction::getNextNonDebugInstruction() and
skipDebugInfo(BasicBlock::iterator) helpers can be used to help skip debug
instuctions. [r335083](https://reviews.llvm.org/rL335083).

* foreach TableGen multiclasses can now depend on template arguments.

## Clang commits

* A new protobuf-based fuzzer was added, supporting the generation of LLVM IR.

* The Clang Static Analyzer gained the ability to report uninitialized fields
after object construction. [r334935](https://reviews.llvm.org/rL334935).

* A python tool for dumping and constructor header maps was checked in.

## Other project commits

* UndefinedBehaviourSanitizer now supports reporting diagnostics to a monitor
proces. [r335371](https://reviews.llvm.org/rL335371).

* liboffload was removed from LLVM's openmp repository.

More information about the llvm-dev mailing list