Alex Bradbury via llvm-dev
2020-Feb-24 20:38 UTC
[llvm-dev] LLVM Weekly - #321, Feb 24th 2020
LLVM Weekly - #321, Feb 24th 2020 ================================ If you prefer, you can read a HTML version of this email at <http://llvmweekly.org/issue/321>. Welcome to the three hundred and twenty-first 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](https://www.linkedin.com/in/alex-bradbury/). 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 The Diversity and Inclusion in Compilers and Tools workshop [has been announced](http://lists.llvm.org/pipermail/llvm-dev/2020-February/139351.html). It will take place on April 5th at the same venue as EuroLLVM'20. The next Toronto LLVM meetup [will take place on February 27th](http://lists.llvm.org/pipermail/llvm-dev/2020-February/139413.html). It features a talk "Khronos SYCL and oneAPI: Heterogeneous Programming with Modern C++ and Machine Learning" by Michael Wong. ## On the mailing lists * MLIR contributors have started a biweekly newsletter covering recent developments. The [first issue](https://llvm.discourse.group/t/mlir-news-1st-edition-2-21-2020/544) was shared on the LLVM Discourse group. * ORC JIT Weekly #6 [is out](https://lists.llvm.org/pipermail/llvm-dev/2020-February/139434.html). The new static initializer system has landed, and JITLink has acquired a new optimization. * Fernando Magno Quintao Pereira wrote to [announce the release of the AnghaBench of compilable programs](http://lists.llvm.org/pipermail/llvm-dev/2020-February/139422.html). This includes one million C files mined from open source repositories, using type inference to replace missing dependencies. Its construction is described in the [linked technical report](http://lac.dcc.ufmg.br/pubs/TechReports/LaC_TechReport012020.pdf). * Louis Dionne raised the prospect of [allowing PRs on GitHub for some subprojects](http://lists.llvm.org/pipermail/llvm-dev/2020-February/139381.html). Multiple respondents felt that transitioning the LLVM community all at once and avoiding fragmentation is important. * Brian Gesiak reports that [LLVM's passes for C++20 coroutines now work with the new pass manager](http://lists.llvm.org/pipermail/llvm-dev/2020-February/139320.html). * Ties Stuij kicked off a discussion about [the disruption caused by refactoring](http://lists.llvm.org/pipermail/llvm-dev/2020-February/139207.html) for downstream projects, and specifically raised questions about whether it could be structured in a more downstream-friendly way (e.g. batching). This generated lots of comments. * Stephen Tozer posted an RFC on [allowing debug intrinsics to reference multiple SSA values](http://lists.llvm.org/pipermail/llvm-dev/2020-February/139376.html). * Hans Wennborg sent out a [reminder to help write release notes for 10.0.0](http://lists.llvm.org/pipermail/llvm-dev/2020-February/139407.html). * Richard Barton shared a [plan for landing flang in the monorepo](http://lists.llvm.org/pipermail/llvm-dev/2020-February/139378.html), which reflects feedback from the previous discussions and emphasises the need to better align flang to LLVM project norms. * Fangrui Song intends to modify the integrated assembler to emit an error when section type/flags/entsize is changed, and sent a [heads-up note about this](http://lists.llvm.org/pipermail/llvm-dev/2020-February/139390.html). * Johannes Doerfert is [seeking to clarify that noalias affects only modified objects](http://lists.llvm.org/pipermail/llvm-dev/2020-February/139396.html). * Vedant Kumar is seeking feedback on [enabling debug entry value production by default](http://lists.llvm.org/pipermail/llvm-dev/2020-February/139013.html), initially on the ARM, AArch64, and X86 targets. ## LLVM commits * Initial support was added for Arm's Custom Datapath Extension (CDE), which allows custom vendor-defined CPU instructions on Arm v8-M. [dd4d093](https://reviews.llvm.org/rGdd4d0937620). * Support for simplifying the data dependence graph was committed. [0a2626d](https://reviews.llvm.org/rG0a2626d0cdc). * A proposal for AMDGPU-specific DWARF extensions was added. [f5678d4](https://reviews.llvm.org/rGf5678d4a6a6). * Work to port LLVM's coroutines passes to the new pass manager has started to land. [e9849d5](https://reviews.llvm.org/rGe9849d5195e), [7125d66](https://reviews.llvm.org/rG7125d66f996), [00fec80](https://reviews.llvm.org/rG00fec8004ac). * Mips GlobalISel can now legalize non-power-of-2 and unaligned load and store. [5e32e79](https://reviews.llvm.org/rG5e32e7981b3). * Documentation was added for the operand bundles of an llvm.assume. [170ae68](https://reviews.llvm.org/rG170ae68fef0). ## Clang commits * A `-std=c++20` flag was added to replace the `-std=c++2a` flag. [24ad121](https://reviews.llvm.org/rG24ad1215824). * Clang can now build and run the test suite of large coroutines projects when using the new pass manager. [048239e](https://reviews.llvm.org/rG048239e46e4). ## Other project commits * Initial signal support on Linux was added to libc. [5d2baa9](https://reviews.llvm.org/rG5d2baa956ac). * The MLIR integer type now has a signedness semantics bit, allowing different dialects to make their own choice as to whether signedness is a property of the type or if it's up to operations to decide how to interpret the bits in that type. [35b6852](https://reviews.llvm.org/rG35b685270b4). * The compiler-rt logb/logbl tests were fixed on platforms like RISC-V by considering all NaNs equivalent. [689f1e8](https://reviews.llvm.org/rG689f1e85ba6). * libc gained an initial framework for fuzzing functions. [a4f45ee](https://reviews.llvm.org/rGa4f45ee73a9). * LLD gained a new `--shuffle-sections=seed` flag to shuffle sections. The motivation is to introduce randomisation in benchmarks. [d48d339](https://reviews.llvm.org/rGd48d3391569). * LLDB regained some basic dwp (DWARF package) file support. [67f63f3](https://reviews.llvm.org/rG67f63f3f7c2). * mlir-vulkan-runner was added. This command line utility will execute an MLIR file by translating to SPIR-V and LLVM IR. [896ee36](https://reviews.llvm.org/rG896ee361a64). * The MLIR tutorial gained a new section detailing the custom assembly format. [0050e8f](https://reviews.llvm.org/rG0050e8f0cf5).