[llvm-dev] LLVM Weekly - #183, Jul 3rd 2017

Alex Bradbury via llvm-dev llvm-dev at lists.llvm.org
Mon Jul 3 09:15:11 PDT 2017

LLVM Weekly - #183, Jul 3rd 2017

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

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

Crystal 0.23.0 [has been
released](https://github.com/crystal-lang/crystal/releases/tag/0.23.0), and is
built with LLVM 3.8. Due to one notable bugfix,
`Class.class.is_a?(Class.class.class.class.class)` now returns the correct

## On the mailing lists

* Sam Clegg is [seeking feedback on his initial WebAssembly support for

* Brian Gesiak [suggests the addition of a 'beginner' keyword to
Bugzilla](http://lists.llvm.org/pipermail/llvm-dev/2017-June/114845.html). The
intent is to make it easy for newcomers who want to contribute to LLVM to get
started. The keyword has now been added, so please do start using it when

* Chandler Carruth has started a thread asking for [feedback on design choices
with call graph changes in the new pass

* Roger Ferrer Ibanez kicked off a [discussion about the precise semantics of

* Vedant Kumar has shared an RFC on [storing PGO and coverage name data
outside of object
files](http://lists.llvm.org/pipermail/llvm-dev/2017-June/114855.html). Sean
Silva makes the
[point](http://lists.llvm.org/pipermail/llvm-dev/2017-June/114864.html) that
users already tolerate large file size overheads for debug info, and if the
overhead for PGO is less than that perhaps it needn't be a high priority to
optimise further.

* Jakub Kuderski
[proposes](http://lists.llvm.org/pipermail/llvm-dev/2017-June/114645.html) the
addition of a simple DSL for building CFGs for use in testing. After some
further discussion, Jakub is [sticking with a library-based
approach](http://lists.llvm.org/pipermail/llvm-dev/2017-June/114734.html) for

* Zachary Turner has
[proposed](http://lists.llvm.org/pipermail/llvm-dev/2017-June/114696.html) a
new FileEdit utility to replace the use of sed in LLVM tests.

## LLVM commits

* The BBVectorize pass has been removed, as it has been unused for several
years. The SLP vectorizer shoul be used instead.

* Dockerfiles have been added to build clang and LLVM from source. These are
described in more detail in the checked in documentation.

* The scheduling models for Intel Haswell and Sandy Bridge microarchitectures
have been updated and expanded. [r306414](http://reviews.llvm.org/rL306414).

* The scheduling model for the Cavium ThunderX2 T99 has been expanded.

* llvm-nm gained support for symbol demangling.

* The opt-{viewer,diff,stats} scripts now have progress indicators.

## Clang commits

* `-fdiagnostics-hotness-threshold` was added, which prevents diagnostics that
fail to meet a minimum hotness threshold from being output.

* clang-format's header include sorting has been tweaked to properly apply the
preferred sort style used in the LLVM codebase.

* clang-rename has been moved out of the clang-tools-extra repository and in
to the main clang repo. [r306840](http://reviews.llvm.org/rL306840).

## Other project commits

* LLDB now supports Intel Processor Trace on Linux.

* LLD gained basic 64-bit SPARC support.

* LLDB gained support for the DWARFv4 `debug_frame` section format.

More information about the llvm-dev mailing list