<div dir="ltr">Hi folks,<br><br>The 20th issue of LLVM GPU News, a bi-weekly newsletter on all the GPU things under the LLVM umbrella, is out: <<a href="https://llvm-gpu-news.github.io/2021/09/24/issue-20.html" target="_blank">https://llvm-gpu-news.github.io/2021/09/24/issue-20.html</a>>.<br><br>I also paste the content below, in case you prefer to read in your email client.<br><br>-Jakub<br><br>======================================================================<br><br># LLVM GPU News #20, Sep 24 2021<br>Authors: Jakub Kuderski<br><div><br></div><div>Welcome to LLVM GPU News, a bi-weekly newsletter on all the GPU things under the LLVM umbrella.<br>This issue covers the period from September 10 to September 23 2021.<br><br>We welcome your feedback and suggestions. Let us know if we missed anything interesting, or want us to bring attention to your (sub)project, revisions under review, or proposals. Please see the bottom of the page for details on how to submit suggestions and contribute.<br><br><br>## Industry News and Conferences<br>*  Talks from the X.Org Developer Conference 2021 [are available on YouTube](<a href="https://www.youtube.com/playlist?list=PLe6I3NKr-I4LwrhsAG1XVPW0EFL8ZJ_6W">https://www.youtube.com/playlist?list=PLe6I3NKr-I4LwrhsAG1XVPW0EFL8ZJ_6W</a>).<br><br><br>##  LLVM and Clang<br><br>### Discussions<br><br>*  [Alexey Bader became the code owner for SYCL](<a href="https://lists.llvm.org/pipermail/llvm-dev/2021-September/152737.html">https://lists.llvm.org/pipermail/llvm-dev/2021-September/152737.html</a>), a [single-source C++ programming environment for various accelerators](<a href="https://www.khronos.org/sycl/">https://www.khronos.org/sycl/</a>).<br>*  Caleb Zulawski maintains a cross-compile toolchain and asked about [changing compilers/sysroots to simplify building multiple runtimes with `LLVM_RUNTIME_TARGETS`](<a href="https://lists.llvm.org/pipermail/llvm-dev/2021-September/152880.html">https://lists.llvm.org/pipermail/llvm-dev/2021-September/152880.html</a>). There are no replies at the time of writing.<br><br>### Commits<br><br>*  `RegAllocGreedy` now accounts for reserved registers, which may be unavailable, in its heuristics. The change dramatically reduces the number of spills in an AMDGPU test and has little effect on CPU targets. [D108578](<a href="https://reviews.llvm.org/D108578">https://reviews.llvm.org/D108578</a>)<br><br><br>## MLIR<br><br>### Discussions<br><br>*  Weiwei asked about [encoding SPIR-V global variable locations in SPIR-V to LLVM conversion](<a href="https://llvm.discourse.group/t/spirvtollvm-set-an-attribute-or-encode-location-in-llvm-mlir-global/4307">https://llvm.discourse.group/t/spirvtollvm-set-an-attribute-or-encode-location-in-llvm-mlir-global/4307</a>). Lei Zhang pointed out that [this is related to the unfinished support for the graphics flavor of SPIR-V](<a href="https://llvm.discourse.group/t/spirvtollvm-set-an-attribute-or-encode-location-in-llvm-mlir-global/4307/4">https://llvm.discourse.group/t/spirvtollvm-set-an-attribute-or-encode-location-in-llvm-mlir-global/4307/4</a>). Weiwei created a [draft patch](<a href="https://reviews.llvm.org/D110207">https://reviews.llvm.org/D110207</a>) that propagates the `location` attribute from `spv.GlobalVariable` to `llvm.mlir.global`.<br><br>### Commits<br><br><br>## OpenMP (Target Offloading)<br><br>### Discussions<br><br>### Commits<br><br>*  OpenMP 5.0 [metadirectives](<a href="https://www.openmp.org/spec-html/5.0/openmpsu28.html">https://www.openmp.org/spec-html/5.0/openmpsu28.html</a>) are now supported. [D91944](<a href="https://reviews.llvm.org/D91944">https://reviews.llvm.org/D91944</a>)<br><br><br>## External Compilers<br><br>### LLPC<br><br>*  LLPC learned to [cache compiled shader stages that contain global constants](<a href="https://github.com/GPUOpen-Drivers/llpc/pull/1283">https://github.com/GPUOpen-Drivers/llpc/pull/1283</a>). This brought a major increase in stage cache hits in internal tests.<br><br>### Mesa<br><br>*  16-bit floating point types (FP16) are [now supported in OpenGL/OpenCL/Vulkan llvmpipe-based drivers](<a href="https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11816">https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11816</a>).<br><br></div></div>