[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
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
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
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
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
* 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
questions such as supporting C language extensions from the Renesas RL78
* 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
* The semantics of branch on undef were clarified in the language reference
* 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