LLVM Weekly - #160, Jan 23rd 2017
Welcome to the one hundred and sixtieth 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. Subscribe to future issues at https://llvmweekly.org and pass it on to anyone else you think may be interested. Please send any tips or feedback to [email protected], or @llvmweekly or @asbradbury on Twitter.
News and articles from around the web
LLVM 4.0.0-rc1 has now been tagged.
Details are now available for EuroLLVM2017 student travel grants.
The Polly project has gained a new ARM64 buildbot, sponsored by the Qualcomm Innovation Center. This blog post goes into some extra detail about Polly's continuous integration setup.
The next Cambridge LLVM social will take place on Wednesday, Jan 25th.
The next Berlin LLVM social will take place on the 26th of January.
On the mailing lists
-
Quentin Colombet has shared a status update on global instruction selection. The plan remains to enable it by default for
-O0
on AArch64 by the end of the year. -
Vassil Vasilev is looking for help in revitalising the list of open LLVM projects.
-
There have been further discussion on the proposal for IR-level region annotations. I can't summarise it all here, but the input from the Tapir and PIR team and Vikram Adve's response is worth reading.
-
John Regehr, as secretary of the LLVM Foundation, has written to confirm Chris Lattner will remain on the LLVM Foundation Board of Directors. The question was raised due to the fact Chris has recently announced a move from Apple to Tesla.
-
The discussion about enabling GlobalISel by default has continued, with Quentin Colombet giving a helpful summary of the key points.
-
Dmitry Golovin reports on his attempts to link the Linux kernel with LLD. A working kernel isn't produced, but with the listed changes the build process does at least complete.
-
Piotr Padlewski has proposed an RFC on improving how vtable loads are decorated in order to handle devirtualisation better.
-
Mikhail Zolotukhin has shared a new analysis of recent compile time regressions in LLVM.
-
Discussion on the git transition continues, with Chris Lattner advocating the monorepo approach.
LLVM commits
-
A new
-debug-info-for-profiling
option was added. This will cause a larger amount of debug info to be generated which will be used in profile-guided optimisations. r292457. -
Partial unrolling now has its own threshold. r292293.
-
Literals generated AArch64 targets are now constructed started from their little end, in order to meet the recommendation of the Cortex A57 software optimisation guide. r292422.
-
The LiveRegUnits class has been factored out of RegisterScavenging. r292542.
-
Support for profile-guided optimisation in the new inliner has been improved. r292666.
-
LoopSink has been ported to the new pass manager. r292589.
Clang commits
-
Support for constexpr evaluation of string builtins was documented. r292558.
-
Sadly, Clang's Python bindings don't currently work in Python 3. They will now explicitly check the Python version an raise an error if it's not '2'. r292247.
-
Support for OpenMP 'target parallel' on the host and the NVPTX device was added. r292419, r292428.