[llvm-dev] LLVM Weekly - #156, Dec 26th 2016
Alex Bradbury via llvm-dev
llvm-dev at lists.llvm.org
Mon Dec 26 07:21:54 PST 2016
LLVM Weekly - #156, Dec 26th 2016
=================================
If you prefer, you can read a HTML version of this email at
<http://llvmweekly.org/issue/156>.
Welcome to the one hundred and fifty-sixth 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](http://asbradbury.org). 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 bug-fix LLVM 3.9.1
[release](http://lists.llvm.org/pipermail/llvm-announce/2016-December/000072.html)
has taken place.
GCC 6.3 [has been released](https://gcc.gnu.org/ml/gcc/2016-12/msg00132.html).
This is a bug-fix release from the GCC 6 branch.
[RamFuzz](https://github.com/dekimir/RamFuzz) is a Clang-based tool for
fuzzing method parameters. Logging and replay (with mutation) is supported.
## On the mailing lists
* Piotr Padlewski kicked off a discussion on [canonicalising getelementptr
with
zero-offset](http://lists.llvm.org/pipermail/llvm-dev/2016-December/108454.html).
Chandler Carruth [made a
case](http://lists.llvm.org/pipermail/llvm-dev/2016-December/108479.html) for
canonicalising towards gep 0,0 rather than a bitcast.
* George Burgess IV shared an RFC on [allowing @llvm.objectsize to be more
conservative with
null](http://lists.llvm.org/pipermail/llvm-dev/2016-December/108416.html).
* Paul Robinson [queried a case where the compiler appeared to be
zero-initialising a struct
twice](http://lists.llvm.org/pipermail/cfe-dev/2016-December/051942.html).
Richard Smith helpfully
[clarified](http://lists.llvm.org/pipermail/cfe-dev/2016-December/051943.html)
what is going on.
## LLVM commits
* The initial version of the 'NewGVN' global value numbering algorithm
implementation has landed. [r290346](http://reviews.llvm.org/rL290346).
* GlobalISel implementation work continues, with the addition of a basic
tablegen backend. [r290284](http://reviews.llvm.org/rL290284).
* A POWER9 processor model was added for scheduling.
[r290102](http://reviews.llvm.org/rL290102).
* ARM and PPC support has been added to the `update_llc_test_checks.py`
script. [r290144](http://reviews.llvm.org/rL290144),
[r290370](http://reviews.llvm.org/rL290370).
* The GlobPattern class has been imported into LLVM from LLD.
[r290212](http://reviews.llvm.org/rL290212).
* Codegen for the x86 vectorcall calling convention has landed.
[r290240](http://reviews.llvm.org/rL290240).
## Clang commits
* It is now possible to use the (still experimental) new pass manager with
Clang. [r290450](http://reviews.llvm.org/rL290450).
* The `alloc_size` attribute has been introduced. This allows the number of
bytes that will be returned by malloc/realloc/calloc or similar functions to
be inferred. [r290297](http://reviews.llvm.org/rL290297).
* `-disable-llvm-optzns` is now an alias for `-disable-llvm-passes`.
[r290392](http://reviews.llvm.org/rL290392).
## Other project commits
* LLD learned the `--retain-symbols-file` option.
[r290122](http://reviews.llvm.org/rL290122).
* polly will now align newly-created arrays to the first-level cache line
boundary. [r290253](http://reviews.llvm.org/rL290253).
More information about the llvm-dev
mailing list