[llvm-dev] LLVM Weekly - #387, May 31st 2021
Alex Bradbury via llvm-dev
llvm-dev at lists.llvm.org
Mon May 31 08:35:40 PDT 2021
LLVM Weekly - #387, May 31st 2021
=================================
If you prefer, you can read a HTML version of this email at
<http://llvmweekly.org/issue/387>.
Welcome to the three hundred and eighty-seventh 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
Neil Henning blogged about [porting the Burst .NET compiler to use the new
pass manager](https://www.duskborn.com/posts/llvm-new-pass-manager/).
Patrick P. Frey has [written
about](https://www.codeproject.com/Articles/5301384/Writing-Compiler-Front-Ends-for-LLVM-with-Lua-usin)
[Mewa](http://www.mewa.cc/), a tool that uses Lua to help you prototype
compiler front-ends of statically typed languages using LLVM as the backend.
Phacility, the organisation that maintains and supports Phabricator is
[winding down
operations](https://admin.phacility.com/phame/post/view/11/phacility_is_winding_down_operations/).
## On the mailing lists
* Kirill Bobyrev
[announced](https://lists.llvm.org/pipermail/llvm-dev/2021-May/150759.html)
the availability of clangd-index.llvm.org, a centralised symbol index for
the LLVM project.
* More students participating in GSoC through LLVM have shared details of
their projects (see
[here](https://summerofcode.withgoogle.com/organizations/5767011616948224/?sp-page=3#5185044001325056)
for the full list).
* [Soham Dixit - Distributed lit
testing](https://lists.llvm.org/pipermail/llvm-dev/2021-May/150801.html)
* [Krishna Kariya - Fixing fundamental issues in LLVM
IR](https://lists.llvm.org/pipermail/llvm-dev/2021-May/150780.html)
* [George Mitenkov - Fixing fundemental issues in LLVM
IR](https://lists.llvm.org/pipermail/llvm-dev/2021-May/150737.html)
* Tom Stellard announced that [12.0.1-rc1 has been
tagged](https://lists.llvm.org/pipermail/llvm-dev/2021-May/150757.html).
* Nemanja Ivanovic posted an RFC on [adding a CMake macro to allow renaming
the clang
executable](https://lists.llvm.org/pipermail/cfe-dev/2021-May/068185.html).
* Nico Weber [proposed adding a top-level .mailmap
file](https://lists.llvm.org/pipermail/llvm-dev/2021-May/150741.html). This
has now progressed to a [patch review](https://reviews.llvm.org/D103360).
## LLVM commits
* The RISC-V backend gained a new cross-basic-block aware VSETVLI insertion
pass, which takes into account VL/VTYPE information from predecessors.
[b510e4c](https://reviews.llvm.org/rGb510e4cf1b96),
[1b47a3d](https://reviews.llvm.org/rG1b47a3de48d2),
[527cd01](https://reviews.llvm.org/rG527cd013144d),
[0fa5aac](https://reviews.llvm.org/rG0fa5aac292b8).
* Printing stack sizes with llvm-readobj now takes linear rather than
quadratic time, meaning `llvm-readobj --stack-size` on a clang binary built
with `-fstack-size-section` takes 0.25 seconds rather than 7 minutes.
[6505c63](https://reviews.llvm.org/rG6505c630407c).
* llvm.experimental.gc.get.pointer.{base,offset} intrinsics were introduced.
[4d26f41](https://reviews.llvm.org/rG4d26f41f76c4).
* Analysis remarks were added for memset/memcpy/memmove lengths.
[095e91c](https://reviews.llvm.org/rG095e91c9737b).
* In order to avoid excessively long compile times, a dbg.value may now
reference a maximum of 16 values.
[a0bd610](https://reviews.llvm.org/rGa0bd6105d806).
* llvm-mc gained an objdump-style `-M` option, meaning `-M no-aliases` can be
used instead of e.g. `-riscv-no-aliases`.
[73a1179](https://reviews.llvm.org/rG73a117953599),
[5852582](https://reviews.llvm.org/rG5852582532b3).
* LLVM IR support was added for WebAssembly local variables.
[00ecf18](https://reviews.llvm.org/rG00ecf18979e3).
REVERTED
* Mandatory tail calls for tailcc and swifttailcc are now supported in the Arm
backend. [d88f96d](https://reviews.llvm.org/rGd88f96dff3f1).
## Clang commits
* As a Clang-specific extension, bitfields can be used in OpenCL.
[237c692](https://reviews.llvm.org/rG237c6924bd46).
* Support was added for `#elifdef` and `#elifndef`.
[8edd346](https://reviews.llvm.org/rG8edd3464afbf).
* `__builtin_sycl_unique_stable_name` was implemented. It takes a type and
produces a unique string literal that should be stable across compilations
of the translation unit. [eba69b5](https://reviews.llvm.org/rGeba69b59d1a3).
## Other project commits
* The DExTer debugging experience tester gained a DexDeclareFile command,
allowing dexter commands to be written in a separate test file, avoiding
mixing those commands with test source.
[c2c2be4](https://reviews.llvm.org/rGc2c2be44ed64).
* Initial documentation was added for the Fortran LLVM Test Suite.
[5f8810d](https://reviews.llvm.org/rG5f8810d7b463).
* `std::ranges::{prev,next}` implementations were added to libcxx.
[857fa7b](https://reviews.llvm.org/rG857fa7b7b187),
[0dc7fd1](https://reviews.llvm.org/rG0dc7fd1bc167).
* Parallel ghash type merging was enabled by default in the COFF linker.
[109aac9](https://reviews.llvm.org/rG109aac92128c).
More information about the llvm-dev
mailing list