Alex Bradbury via llvm-dev
2015-Aug-10 12:34 UTC
[llvm-dev] LLVM Weekly - #84, Aug 10th 2015
LLVM Weekly - #84, Aug 10th 2015 =============================== If you prefer, you can read a HTML version of this email at <http://llvmweekly.org/issue/84>. Welcome to the eighty-fourth 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 Adrian Sampson has written a fantastic [introduction to LLVM](http://adriansampson.net/blog/llvm.html). It's titled LLVM for Grad Students, but it should be useful for anybody looking to use LLVM or just wanting to understand it better. Brandon Holt has written up a short and helpful post giving [hints and tips on debugging LLVM](http://homes.cs.washington.edu/~bholt/posts/llvm-debugging.html). The move of the mailing lists from UIUC on to lists.llvm.org is now complete. All public LLVM-related mailing lists [are shown here](http://lists.llvm.org/cgi-bin/mailman/listinfo). List addresses have now changed to listname at lists.llvm.org. There's been some exciting activity in the world of GCC. Support for the draft C++ Concepts TS [has been committed](https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=56c12fd4ba064759724236ad896232603b8797ed). A draft of the technical specification is [available here](http://www.open-std.org/Jtc1/sc22/wg21/docs/papers/2015/n4377.pdf). Additionally, Nick Clifton has posted a useful summary of [GNU toolchain developments for July/August](https://gcc.gnu.org/ml/gcc/2015-08/msg00013.html). ## On the mailing lists * Rong Xu has shared an [RFC for late instrumentation in LLVM](http://lists.llvm.org/pipermail/llvm-dev/2015-August/089044.html). The RFC describes (and quantifies) the performance cost of inserting instrumentation for profile-guided optimisation in the frontend and proposes approaches for adding instrumentation in the middle-end instead. * Jingyue Wu kicked off a discussion about [modifying the BasicAA alias analysis to understand whether there is aliasing between different address spaces](http://lists.llvm.org/pipermail/llvm-dev/2015-August/089023.html). * Teresa Johnson has posted RFCs for the [ThinLTO file API and data structures](http://lists.llvm.org/pipermail/llvm-dev/2015-August/088920.html) and the [ThinLTO file format](http://lists.llvm.org/pipermail/llvm-dev/2015-August/088916.html). * Chandler Carruth is looking to enable the GlobalModsRef in the default pass pipeline. He's found it performance neutral in his tests so far, but would [appreciate more people to try and benchmark it](http://lists.llvm.org/pipermail/llvm-dev/2015-August/088988.html). * Asking for advice on how to get started with LLVM is very common. Few take as much time on detailing their background, motivations, and proposed plan as [Arno Bastenhof in a recent message](http://lists.llvm.org/pipermail/llvm-dev/2015-August/088915.html). Probably because of this, his request has attracted some very high quality replies. ## LLVM commits * A handy new LLVM Support header was introduced. The TrailingObjects template class abstracts away `reinterpret_cast`, pointer arithmetic, and size calculation needed for the case where a class has some other objects appended to the end of it. [r244164](http://reviews.llvm.org/rL244164). * Initial documentation for the Machine IR serialization format has been written. [r244292](http://reviews.llvm.org/rL244292). * Uniquable DICompilerUnits have been disallowed. Old bitcode will be automatically upgraded and the sed script in the commit message should be useful for updating out-of-tree testcases. [r243885](http://reviews.llvm.org/rL243885). * All of the TargetTransformInfo cost APIs now use int rather than unsigned. [r244080](http://reviews.llvm.org/rL244080). ## Clang commits * A new checker for code-level localizability issues on OSX/iOS was born. It will warn about the use of non-localized NSStrings passed to UI methods and about failing to include a comment in NSLocalizedString macros. [r244389](http://reviews.llvm.org/rL244389). * New AST matchers have been introduced for constructors that are default, copy, or move. [r244036](http://reviews.llvm.org/rL2440236). ## Other project commits * The old COFF linker in LLD has been removed in favour of the new, faster, and simpler implementation. [r244226](http://reviews.llvm.org/rL244226). * ThreadSanitizer is now enabled for AArch64. [r244055](http://reviews.llvm.org/rL244055).