[llvm-dev] LLVM Weekly - #225, Apr 23rd 2018

Alex Bradbury via llvm-dev llvm-dev at lists.llvm.org
Mon Apr 23 12:18:55 PDT 2018


LLVM Weekly - #225, Apr 23rd 2018
=================================

If you prefer, you can read a HTML version of this email at
<http://llvmweekly.org/issue/225>.

Welcome to the two hundred and twenty-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.

For those of you attending the Barcelona RISC-V Workshop May 7th-10th, be sure
to come along to [my short tutorial session on RISC-V
LLVM](https://riscv.org/2018/04/risc-v-workshop-in-barcelona-agenda/).


## News and articles from around the web

As usual, EuroLLVM was a huge success. The LLVM community is again indebted to
the organisers and presenters for their efforts. Talks were recorded, and I
will of course update you when they are available.

The LLVM Foundation Board have put together a status and overview page of the
[LLVM Relicensing effort](http://llvm.org/foundation/relicensing/). This
includes a list of next steps and schedule estimate.


## On the mailing lists

* Manoj Gupta kicked off an RFC discussion on [implementing
-fno-delete-null-pointer-checks in
Clang](http://lists.llvm.org/pipermail/llvm-dev/2018-April/122632.html). This
flag is used wen building the Linux kernel. This flag has the semantics
"Assume that programs cannot safely
dereference null pointers, and that no code or data element resides at address
zero". The proposal has triggered quite a lot of discussion so far.

* Jessica Paquette
[proposes](http://lists.llvm.org/pipermail/llvm-dev/2018-April/122705.html)
turning the MachineOutliner on by default in AArch64 under `-Oz`. As Jessica
explains, the hope is that the same outlining algorithm and interface can be
used for the proposed IR-level outlining pass. On CTMark, outlining is giving
an extra 4.4% geomean text size reduction for the cost of a geomean 1.1%
compile-time overhead.

* Alex L
[announces](http://lists.llvm.org/pipermail/cfe-dev/2018-April/057668.html)
that Apple have decided to switch focus from the libclang-based tooling
infrastructure in order to join forces on Clangd development. They intend to
contribute towards making Clangd faster, more capable, and more efficient.

* Pavel Labath
[suggests](http://lists.llvm.org/pipermail/lldb-dev/2018-April/013550.html)
making use of LLD in LLDB tests in order to make them host independent.

* John Brawn has shared an RFC on [making GVN (Global Value Numbering) able to
visit the same block more than
once](http://lists.llvm.org/pipermail/llvm-dev/2018-April/122628.html). Daniel
Berlin
[suggests](http://lists.llvm.org/pipermail/llvm-dev/2018-April/122656.html)
that GVN might not be the right place for the transformation John is trying to
achieve, but recognises there aren't particularly good alternative options
currently.


## LLVM commits

* A new `update_mca_test_checks.py` script has been added, to aid regenerating
llvm-mca tests. [r330246](http://reviews.llvm.org/rL330246).

* MC layer support for AArch64 SVE continues to develop.
[r330108](http://reviews.llvm.org/rL330108),
[r330116](http://reviews.llvm.org/rL330116), and more.

* The X86 backend gained support for new X86 'WaitPKG' instructions: umonitor,
umwait, and tpause. [r330462](http://reviews.llvm.org/rL330462).


## Clang commits

* The `-falign-functions` flag is now supported.
[r330378](http://reviews.llvm.org/rL330378).

* The ARM Clang driver will now add target features explicitly rather than
rewriting the triple. [r330169](http://reviews.llvm.org/rL330169).


## Other project commits

* LLD now supports profile-guided section layout using the Call-Chain
Clustering heuristic. [r330234](http://reviews.llvm.org/rL330234).

* libcxxabi now uses `__libcpp_atomic_*` function calls rather than
`__sync_*`. [r330162](http://reviews.llvm.org/rL330162).

* The LLDB test suite is now run using Lit.
[r330275](http://reviews.llvm.org/rL330275).


More information about the llvm-dev mailing list