LLVM Weekly - #220, Mar 19th 2018
Welcome to the two hundred and twentieth 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.
News and articles from around the web
The LLVM Project Blog has a new entry about DragonFFI, which uses LLVM and Clang to provide a high quality foreign function interface library for Python.
Tickets are still available for the Women in Compilers and Tools reception, to be held the night before the 2018 EuroLLVM Developers' Meeting (Sunday April 15th).
Bryce Lelbach has written a trip report from the 2018 Jacksonville ISO C++ Commitee meeting.
On the mailing lists
-
Dimitry Andric has collected data on the size of Clang executables and the time taken to compile Clang since October 2015. Since then, total executable size grew by 43% and build time increased by 60%.
-
Guillaume Chatelet and Clement Courbet have posted an RFC on llvm-exegesis, a tool to automatically determine instruction scheduling properties (such as latency and the number of micro-ops). Feedback has been very positive so far, and Clement explained hat work is underway to integrate exegesis with the recently contributed llvm-mca.
-
Tanya Lattner is looking for more Birds of a Feather session proposals for EuroLLVM.
-
Anastasia Stulova is seeking suggestions for hacking sessions at EuroLLVM this year, and also shares some initial ideas.
-
Tom Stellard has proposed the release chedule for 5.0.2 and 6.0.1. The 5.0.2 release will contain only Spectre-related fixes. 6.0.1 will have its first release candidate on April 15th, and aim for a final version on June 8th.
-
Peter Smith has posted an RFC on avoiding giving a default CPU to the LTO plugin. As was determined later in the thread, the issue is slightly wider in scope than just LTO.
-
Dangeti Tharun Kumar is seeking feedback on a proposal to add an LLVM front end for the P4 language (used for packet forwarding).
-
Artem Dergachev has offered an update on efforts to improve handling of C++ temporary object construction and destruction in the Clang static analyzer.
-
Sylvestre Ledru proposes reanming LLVM libraries and binaries to exclude the .0 suffix. e.g. clang-7 rather than clang-7.0.
-
James Henderson is proposing to update the version of googletest imported into the LLVM tree to a non-release tagged version. This is because the last tagged release occurred in August 2016, there have been desirable changes since then, and there is no clear timeline on a new upstream release.
-
Scott Linder has posted an RFC on adding a MessagePack reader/write to LLVM.
LLVM commits
-
lit has been extended to support reporting multiple 'micro-test' results, to enable it to be used for collecting microbenchmark results. r327422.
-
The handling of dangling debug info in the SelectionDAG has been improved. r327303.
-
The LoopInstSimplify pass has been removed due to the fact that it is not used in-tree and has no tests. r327329.
-
dsymutil will now perform
analyzeContextInfo
andCloneDIEs
in parallel, leading to performance improvements of up to ~30%. r327399. -
!dag
has been added to Tablegen, enabling programmatic construction of DAG nodes. r327492. -
FastISel will now sink the materialisation of local values to their first use. r327581.
-
llvm-dsymutil has been renamed to dsymutil. r327790.
Clang commits
-
The Clang C++ status page has been updated. r327769.
-
clang-tidy gained a Zircon module (Zircon forms the core of Fuchsia OS). It includes checks specific to the Zircon kernel. r327590.