[llvm-dev] LLVM Weekly - #265, January 28th 2019
Alex Bradbury via llvm-dev
llvm-dev at lists.llvm.org
Mon Jan 28 11:25:18 PST 2019
LLVM Weekly - #265, January 28th 2019
=====================================
If you prefer, you can read a HTML version of this email at
<http://llvmweekly.org/issue/265>.
Welcome to the two hundred and sixty-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](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
Papers have been
[published](http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2019/) for the
next C++ standards meeting.
# On the mailing lists
* Vedant Kumar [shares an
update](http://lists.llvm.org/pipermail/llvm-dev/2019-January/129606.html) on
the status of the hot/cold splitting pass, including some early performance
results.
* Johannes Rudolf Doerfert has written an RFC on [late OpenMP GPU code
'SPMD-zation'](http://lists.llvm.org/pipermail/llvm-dev/2019-January/129423.html).
This involves a new middle-end LLVM IR pass that tries to convert guarded mode
code to SPMD mode. After some discussions on-list and IRC, Johannes [clarified
the idea
further](http://lists.llvm.org/pipermail/llvm-dev/2019-January/129458.html).
* Alexey Bader
[reports](http://lists.llvm.org/pipermail/cfe-dev/2019-January/061055.html)
that Intel's SYCL compiler and runtime sources are [now on
GitHub](https://github.com/intel/llvm/tree/sycl) and they intend to start
sending patches for review in the coming weeks.
* Craig Topper [provides an
update](http://lists.llvm.org/pipermail/llvm-dev/2019-January/129459.html) on
the status of asm-goto support in Clang/LLVM.
* David Chisnall has [identified a MemorySSA related
regression](http://lists.llvm.org/pipermail/llvm-dev/2019-January/129640.html)
and is looking for help in tracking it down further.
* Yvan Roux has posted an RFC on [adding Machine Outliner support for
ARM](http://lists.llvm.org/pipermail/llvm-dev/2019-January/129415.html).
## LLVM commits
* The agreed toolchain update policy is now documented in the LLVM Developer
Policy. [r351765](http://reviews.llvm.org/rL351675).
* atomicrmw now supports fadd and fsub.
[r351850](http://reviews.llvm.org/rL351870),
[r351851](http://reviews.llvm.org/rL351851).
* ADT headers no longer use `__attribute__((always_inline)`. Instead, people
are recommended to compile a Release build in order to get better performance
executing the unit tests. [r351891](http://reviews.llvm.org/rL351891).
* MS SEH extensions `__try/__except/__finally` are now supported for AArch64
COFF. [r351370](http://reviews.llvm.org/rL351370).
* ScalarEvolution now computes expression sizes estimates.
[r351725](http://reviews.llvm.org/rL351725).
* The LangRef description of volatiles has been clarified.
[r351772](http://reviews.llvm.org/rL351772).
* HWASan memory access checks are now emitted using small outlined functions
on AArch64, meaning there is much less code size bloat but slightly higher
performance overhead. [r351920](http://reviews.llvm.org/rL351920).
* HotColdSplit is now run earlier in the pipeline, resulting in substantial
code size benefits. See the commit message for full details.
[r352080](http://reviews.llvm.org/rL352080).
* i32 variable shifts and sdiv/udiv/urem are now custom-legalised to
target-specific nodes. This results in a more reliable selection of the
relevant `*W` instruction (e.g. SLLW, DIVUW etc).
[r352169](http://reviews.llvm.org/rL352169),
[r352171](http://reviews.llvm.org/rL352171).
* A new TableGen language feature `!cond` was added, providing an alternative
to nested `!f`. [r351285](http://reviews.llvm.org/rL351285).
* HotColdSplit gained a new cost model to control splitting behaviour.
[r352228](http://reviews.llvm.org/rL352228).
## Clang commits
* clangd gained an IncludeFixer which can suggest include insertion fixes when
e.g. there is a member access into an incomplete type.
[r352361](http://reviews.llvm.org/rL352361).
* `_Float16` is now disabled by default for targets other than ARM and SPIR.
[r352221](http://reviews.llvm.org/rL352221).
* clang-analyzer checkers now declare their dependencies.
[r352287](http://reviews.llvm.org/rL352287).
## Other project commits
* LLD performance for Identical Code Folding was improved.
[r351899](https://reviews.llvm.org/rL351899).
* The LLDB build system was updated to use the host llvm-tblgen binary when
cross-compiling. [r352235](https://reviews.llvm.org/rL352235).
More information about the llvm-dev
mailing list