LLVM Weekly - #148, Oct 31st 2016
Welcome to the one hundred and forty-eighth 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 asb@asbradbury.org, or @llvmweekly or @asbradbury on Twitter.
I've been at the Google Summer of Code Mentor Summit this weekend, and am staying in the Bay Area for the LLVM Developers' Meeting on Thursday and Friday. I look forward to meeting many of you there.
News and articles from around the web
The agenda for the LLVM in HPC Workshop is now available.
Tom Stellard has shared the proposed released schedule for LLVM/Clang 3.9.1.
On the mailing lists
-
More threads have been posted in preparation for Birds of a Feather discussions at this week's LLVM Dev Meeting. These include debug info for optimised code, enhancing LLVM's floating point exception and rounding support, and raising the next generation of LLVM developers.
-
Matthias Braun started a thread on understanding and cleaning up machine instruction bundles.
-
Peter Smith has given a handy status update for LLD on ARM.
-
Peter Collingbourne has kicked off a number of RFC threads. PointerType should derive from Type rather than SequentialType, moving block info block state, APIs for bitcode files containing multiple modules, removing the DataStreamer and MemoryObject interfaces, and finally a more detailed design for ThinLTO and vcall CFI.
-
Dehao Chen has started an RFC on retaining profile accuracy in the face of code duplication.
-
A question about the purpose of LLVM IR evolved in to a discussion about a potential future GSoC project to provide an API to make it easier to handle ABI details in LLVM IR.
-
Nicolai Hähnle shared an RFC on convergent and 'co-convergent' functions. He describes how extra IR attributes would allow profitable transformations for an SPMD/SIMT backend.
LLVM commits
-
Various methods in TargetLoweringObjectFile now take a GlobalObject rather than a GlobalValue. Those of you maintaining out-of-tree backends will want to make a matching change when updating. r285006.
-
The LLVM Programmer's Manual gained much more documentation on the
Error
class. r285122. -
Support has been added for AArch64 ILP32 relocations. r284973.
-
The llvm-cov tool gained support for loading coverage from multiple objects. r285088.
-
Support was added for a
-strip-nonlinetable-debuginfo
option. This strips all debug info metadata that isn't directly needed for line tables. r285094. -
The llvm-xray tool has been started, initially supporting
llvm-xray extract
which turns the XRay instrumentation map from an object file into YAML. r285165. -
The AVR machine code emitter was added along with AVRISelDAGToDAG. r285269, r285270.
Clang commits
-
Documentation was added describing the components of a complete toolchain including Clang. r285341.
-
A StdLibraryFunctionsChecker was added, but rather than producing reports to the end-user this checker aims to improve the performance of analysis by helping to reduce time spent on paths that can be determined to be infeasible with standard library functions modelled. r284960.
-
__builtin_os_log_format
was added. r285019.