[llvm-dev] LLVM Weekly - #251, October 22nd 2018

Alex Bradbury via llvm-dev llvm-dev at lists.llvm.org
Mon Oct 22 13:38:13 PDT 2018


LLVM Weekly - #251, October 22nd 2018
=====================================

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

Welcome to the two hundred and fifty-first 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

Last week was yet another hugely successful LLVM Dev Meeting. Many thanks to
the organisers, sponsors, speakers, and attendees. Talks were recorded as
usual and will appear on the
[LLVM Foundation Youtube
channel](https://www.youtube.com/channel/UCv2_41bSAa5Y_8BacJUZfjQ)
in due course. If you're interested in my LLVM backend tutorial and associated
coding lab, check out the
[slides](speakerdeck.com/asb/llvm-backend-development-by-example-risc-v) and
[coding lab instructions](https://www.lowrisc.org/llvm/devmtg18/).

Adobe have released [hyde](https://github.com/adobe/hyde), a C++ documentation
tool using Clang's libTooling. It is built to support documentation being
specified out-of-line rather than inline within source as code comments.


## On the mailing lists

* Chandler Carruth provided an [update on the effort to relicense
LLVM](http://lists.llvm.org/pipermail/llvm-dev/2018-October/126991.html).
There is a form and relicensing agreement that all contributors should fill
out for themselves, and a version of the relicensing agreement that all
LLVM-contributing companies should sign as well. Read the email for a detailed
run-down of the plan going forwards.

* Tom Stellard shared an update on the [SVN to Git(Hub)
migration](http://lists.llvm.org/pipermail/llvm-dev/2018-October/127055.html).
"Official monorepo repository will be published on Tuesday, Oct 23, 2018.
After this date, you should modify your workflows to use the monorepo ASAP.
Current workflows will be supported for at most 1 more year."

* The "LLVMPar working group" have authored a detailed RFC on [extensions to
allow parallel compilers to be built on top of LLVM
IR](http://lists.llvm.org/pipermail/llvm-dev/2018-October/126971.html). The
extension of LLVM IR relies on operand bundles, the token type, and three new
intrinsic functions. The RFC describes how these can be used to support Tapir,
HPVM, and OpenMP. Jeffrey Sandoval gave
[feedback](http://lists.llvm.org/pipermail/llvm-dev/2018-October/127026.html)
based on his experience with the Cray compiler.

* Ana Pazos shared an RFC on [Machine Code Protobuf-based
fuzzers](http://lists.llvm.org/pipermail/llvm-dev/2018-October/126959.html).
This approach was implemented over the summer with Jocelyn Wei (on an
internship) for RISC-V and has successfully found bugs and compatibility
issues.

* Alex L shares an RFC on a [prototype of
clang-scan-deps](http://lists.llvm.org/pipermail/cfe-dev/2018-October/059831.html),
a faster dependency scanning tool.

* Maksim Panchenko
[shares](http://lists.llvm.org/pipermail/llvm-dev/2018-October/126985.html) a
write-up of using the BOLT post-link optimiser to speed up Clang by up to 15%.
Sriraman Tallam
[responds](http://lists.llvm.org/pipermail/llvm-dev/2018-October/127033.html)
with some detailed thoughts from the compiler optimisation team at Google on
how a post-link optimisation tool assisted by the linker might provide greater
scalability.

* Yevgeny Rouban would like [thread-specific cl::opt
values](http://lists.llvm.org/pipermail/llvm-dev/2018-October/127039.html) and
wrote an RFC on this matter.

* Zachary Turner wrote up a [summary of the LLVM/Clang to C++14/17
BoF](http://lists.llvm.org/pipermail/llvm-dev/2018-October/127045.html). The
BoF attendees suggested a target of March 2019 to move to C++14/17 and nobody
has yet presented a strong argument for only moving to C++14.

* Sam McCall is seeking feedback on [pursuing a more independent identity for
clangd on
GitHub](http://lists.llvm.org/pipermail/llvm-dev/2018-October/127068.html).
e.g. using GitHub issues rather than LLVM's bugzilla and using GitHub pages
for docs.


# LLVM commits

* A new divergence analysis for unstructured reducible control-flow graphs was
committed.
[r344374](https://reviews.llvm.org/rL344734).

* getTerminator now returns a generic `Instruction`. This is part of the
effort to remove `TerminatorInst`.
[r344504](https://reviews.llvm.org/rL344504).

* `passes=` will now produce meaningful error messages.
[r344685](https://reviews.llvm.org/rL344685).

* The old ORC 'layers' are now prefixed with `Legacy`.
[r344572](https://reviews.llvm.org/rL344572).

* A new signed saturation addition intrinsic was added.
[r344629](https://reviews.llvm.org/rL344629).


## Clang commits

* The Clang static analyzer list of open projects was updated.
[r344663](https://reviews.llvm.org/rL344663).

* The Clang driver will now exit with a special return code for SIGPIPE.
[r344536](https://reviews.llvm.org/rL344536).

* clangd gained new unit tests. [r344650](https://reviews.llvm.org/rL344650),
[r344653](https://reviews.llvm.org/rL344653), and more.


## Other project commits

* libcxx gained initial calendar support for C++20.
[r344627](https://reviews.llvm.org/rL344627).

* The demangler's parsing functions are now overridable.
[r344607](https://reviews.llvm.org/rL344607).


More information about the llvm-dev mailing list