[llvm-dev] LLVM Weekly - #327, Apr 6th 2020

Alex Bradbury via llvm-dev llvm-dev at lists.llvm.org
Mon Apr 6 12:04:23 PDT 2020

LLVM Weekly - #327, Apr 6th 2020

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

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

Bruce Dawson wrote a detailed blog post [analysing Chromium build

Version 1.5 of pocl (Portable Computing Language) [has been
released](http://lists.llvm.org/pipermail/llvm-dev/2020-April/140605.html). Is
adds support for Clang/LLVM 10.0, a kernel profiling feature, and various
fixes and performance improvements.

A new version of JLang, a Java-to-LLVM ahead-of-time compiler [has been
released](http://lists.llvm.org/pipermail/llvm-dev/2020-March/140521.html). It
supports all Java 7 language features except for some reflection support.

## On the mailing lists

* The fourth MLIR (bi)weekly newsletter [is now
offering the usual mix of development highlights.

* Ten Tzen shared an RFC on [completing support for windows structured
handling](http://lists.llvm.org/pipermail/llvm-dev/2020-March/140541.html) by
implementing support for catching hardware exceptions and local unwind. Reid
Kleckner [suggested separating consideration of the two

* ORC JIT Weekly #10 [is
covering interpose fixes and universal binary support.

* Jon Roelofs shared ideas on [improving
highlighting areas where current FileCheck usage may silently hide failures.

* Gauthier proposed [removing the use of the waymarking algorithm from
Use](http://lists.llvm.org/pipermail/llvm-dev/2020-April/140542.html). This
increases peak memory usage slightly but also slightly improves compile time.
Responses so far are in favour as long as nobody has strong arguments for
retaining it.

* Sander De Smalen highlighted that [biweekly LLVM SVE/SVE2 sync up calls are
taking place every other

* Sebastian Perta has been writing an LLVM backend for the Renesas RL78 MCU
and is [seeking
feedback](http://lists.llvm.org/pipermail/llvm-dev/2020-April/140546.html) on
questions such as supporting C language extensions from the Renesas RL78
commercial compiler.

* River Riddle has [written a Chrome extensions to monitor the status of code
reviews on LLVM

## LLVM commits

* Two passes were added to mitigate Load Value Injection (LVI) on X86. The
first replaces each indirect call/jump with a direct call to a thunk, while
the second replaces RET instructions with a new instruction sequence.

* Loop Closed SSA Form was explained as part of LLVM's loop terminology
documentation. [229cda9](https://reviews.llvm.org/rG229cda968cb).

* The semantics of branch on undef were clarified in the language reference
doc. [05f0e59](https://reviews.llvm.org/rG05f0e598ab2).

* The UnifyLoopExits pass was added, and an option was added to the AMDGPU
backend to use it. [3cbbded](https://reviews.llvm.org/rG3cbbded68c2).

* Support was added for emitting and parsing ELF attribute sections for
RISC-V. This extracted common parsing logic from the existing Arm ELF
attribution section support.

* The style for error and warning messages was documented.

* The waymarking algorithm (allowing backtracing an arrays head from a pointer
into it) was implemented as a utility in LLVM's ADT library.

* llvm-dwarfdump gained a new `--show-sections-sizes` option which will print
the number of bytes within the debug sections.

* It's now possible for lit.site.cfg to contain relative paths, which provides
greater support for building on one machine and running the test on another.

## Clang commits

* clangd now enables a set of clang-tidy checks by default.

* Initial support was added for OpenMP 5.0 iterator expressions.

## Other project commits

* The new LLD Mach-O backend has started to land.

* The Dexter-based debuginfo regression suite now supports Windows.

* The MLIR subproject added a tablegen backend for defining Pass information.

* LLVM's libc gained a strlen implementation.

* An alternative Lit test format was added for libcxx tests with the goal of
making it easier to run the tests on an embedded device or build with a
specific SDK. [80a2ddf](https://reviews.llvm.org/rG80a2ddf65cc).

* MLIR now has an example of a minimal out-of-tree dialect implementation.

More information about the llvm-dev mailing list