[llvm-dev] LLVM Weekly - #329, Apr 20th 2020

Alex Bradbury via llvm-dev llvm-dev at lists.llvm.org
Mon Apr 20 11:58:31 PDT 2020


LLVM Weekly - #329, Apr 20th 2020
=================================

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

Welcome to the three hundred and twenty-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](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 2020 US LLVM Developers' Meeting has [been
announced](http://lists.llvm.org/pipermail/llvm-dev/2020-April/140998.html)
for September 28-29 in San Jose. "Given the current situation regarding
COVID-19, we feel it is best to be totally transparent with our planning
process. We are closely monitoring the news regarding restrictions on travel
and large gatherings and also following the World Health Organization's
advice. It takes about 9-12 months of planning for our developers’ meetings
and given we do not know the situation in September, we are moving forward
with the hope that it will be safe to host our event."

Nick Desaulniers has written up ["Off by
Two"](https://nickdesaulniers.github.io/blog/2020/04/06/off-by-two/), a
programming 'war story' about investigating a bug when building the Linux
kernel with Clang.

Emmanuel Roche has written up a four-part blog series on building a JIT C++
compiler with LLVM on Windows 10:
[part 1](http://wiki.nervtech.org/doku.php?id=blog:2020:0410_dynamic_cpp_compilation),
[part 2](http://wiki.nervtech.org/doku.php?id=blog:2020:0414_jit_cpp_compiler),
[part 3](http://wiki.nervtech.org/doku.php?id=blog:2020:0416_jit_compiler_part3_fixing_crash),
[part 4](http://wiki.nervtech.org/doku.php?id=blog:2020:0418_jit_compiler_part4_crt_dependency).

Version 3.0.0 of Microsoft's implementation of the C++ Core Guidelines Support
Library (GSL) [has been
released](https://devblogs.microsoft.com/cppblog/gsl-3-0-0-release/).


## On the mailing lists

* Simon Moll provided [a status update on
LLVM-VP](http://lists.llvm.org/pipermail/llvm-dev/2020-April/141012.html), the
effort to bring vector predication to LLVM.

* ORC JIT Weekly #11 just missed last week's issue, [catch
up](http://lists.llvm.org/pipermail/llvm-dev/2020-April/140917.html), on its
coverage of C API improvements. ORC JIT Weekly #12 [is
out](http://lists.llvm.org/pipermail/llvm-dev/2020-April/141080.html) and
includes a sketch of a planned API for removable code in OrcV2.

* The fifth MLIR (bi)weekly newsletter [is
out](http://lists.llvm.org/pipermail/llvm-dev/2020-April/141080.html).

* Fangrui Song [asks if support for the 'NaCl' OS target can be removed from
LLVM](http://lists.llvm.org/pipermail/llvm-dev/2020-April/141071.html). If
you're using this support, do speak up.

* Scott Linder shared a [a proposal for backwards
compatible extensions to DWARF for heterogeneous
debugging](http://lists.llvm.org/pipermail/llvm-dev/2020-April/141055.html).

* Kelvin Li started a thread to [discuss how to express Fortran alias
information in LLVM
IR](http://lists.llvm.org/pipermail/llvm-dev/2020-April/140945.html).

* Neil Henning reports that [LLVM 10 is around 7-8% slower than LLVM
9](http://lists.llvm.org/pipermail/llvm-dev/2020-April/140938.html) for the
same inputs.


## LLVM commits

* Waymarking is no longer used to find the User from a Use instance. This
slightly improves compile time performance for a small cost in peak memory
use. [ff9379f](https://reviews.llvm.org/rGff9379f4b2d).

* A lost debug locations verifier was added for GlobalISel.
[d9085f6](https://reviews.llvm.org/rGd9085f65db0).

* All additional STLExtras helpers from MLIR have now been moved into LLVM.
[8cbe371](https://reviews.llvm.org/rG8cbe371c28a),
[204c3b55](https://reviews.llvm.org/rG204c3b55162),
[2f21a57](https://reviews.llvm.org/rG2f21a579665).

* When passing `--show-suites` to lit it will now print availability
substitutions as well as available features.
[dd3feec](https://reviews.llvm.org/rGdd3feecd730).

* An `llvm::is_sorted` wrapper was introduced.
[1647ff6](https://reviews.llvm.org/rG1647ff6e275).

* A new fix-irreducible pass was introduced, which will convert an irreducible
strongly connected component to a natural loop.
[8c11bc0](https://reviews.llvm.org/rG8c11bc0cd06).


## Clang commits

* Arbitrary (non-power-of-two) width integers are now supported with the
`_ExtInt(N)` language extension.
[61ba148](https://reviews.llvm.org/rG61ba1481e20).

* Builtins were added for contiguous loads/stores with SVE.
[17a68c6](https://reviews.llvm.org/rG17a68c61a95).

* Clang now supports AST files larger than 512M.
[a7afb21](https://reviews.llvm.org/rGa7afb211dc4).


## Other project commits

* LLVM's libc gained fwrite and write implementations.
[99aea57](https://reviews.llvm.org/rG99aea579284),
[5793c84](https://reviews.llvm.org/rG5793c84925f).

* MSan was enabled for SystemZ.
[921009e](https://reviews.llvm.org/rG921009e6679).

* The scudo secure memory allocator gained support for diagnosing memory
errors when memory tagging is enabled.
[21d5001](https://reviews.llvm.org/rG21d50019ca8).

* LLDB's active and passive reproducer replay and test suite structure was
documented. [c5a3991](https://reviews.llvm.org/rGc5a39918958),
[3a6b60f](https://reviews.llvm.org/rG3a6b60fa623).


More information about the llvm-dev mailing list