LLVM Weekly - #190, Aug 21st 2017
Welcome to the one hundred and ninetieth 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
LLVM on Windows now supports PDB debug info.
Leslie Zhai has announced that DragonEgg has been updated to work with GCC 8.x and LLVM 6.x. DragonEgg allows LLVM to be used as a GCC backend. The main motivation for doing this would be for languages where GCC has support but there is no LLVM frontend.
The next Cambridge LLVM Social will take place this Wednesday (Aug 23rd) at 7.30pm.
Noam Lewis has released a collection of Clang plugins, aimed at enabling safer C programming.
On the mailing lists
-
Ivan A. Kosarev has proposed a new approach for improving type-based alias analysis. This resulted in a huge discussion thread, which I apologise I don't have time to summarise. If a thread participant or lurker is able to write and post a summary, that would be a very useful contribution for the wider LLVM community.
-
I have shared an update on my RISC-V LLVM backend work, along with a brief roadmap and suggestions on how to contribute. When targeting RV32I at O0, 1315/1352 tests compile and run. See the mailing list post for full details. I would greatly appreciate reviews for the outstanding patches. Thank you to everyone who has contributed so far.
-
Graham Yiu has shared an RFC on improving the partial inliner by outlining cold blocks. The responses discuss this proposal in relation to the existing in-tree machine-level outliner and the proposed IR-level outliner.
-
Daniel Neilson has posted an RFC on integrating element atomic memory intrinsics into the MemIntrinsic class hierarchy.
-
Alex Denisov asked for advice on debugging instruction selection and received two helpful answers.
-
Puyan Lotfi has proposed a new tool, mir-canon, for canonicalizing MIR. It has yet to receive feedback, so if this interests you then do drop by and say so.
-
Hans Wennborg has sent out a reminder that the 5.0.0 release notes are still incomplete. If you added something in the past six months, ensure it is mentioned.
LLVM commits
-
The PostDominatorTree learnt about infinite loops. r310940.
-
RISCVInstPrinter has been added, allowing the MC assembler to be tested. r310917.
-
A new target property was added, allowing interprocedural register allocation to be enabled by default for that target. r310876.
-
A new strictfp attribute has been introduced. r310885.
-
Dominators now support batch updates. r311015.
-
Post-RA scheduling has been improved. r311072.
-
The CodingStandards and ProgrammersManual documents now give more guidance on when to use
report_fatal_error
. r311146, r311147.
Clang commits
-
The clang-diff tool gained HTML side-by-side diff output. r311241.
-
clang-tidy added a number of close-on-exec checks for Android. r310858, and more.