From cfbe10886ab00d5b6d716e5a8970473d35a24b2a Mon Sep 17 00:00:00 2001 From: Michal Paszkowski Date: Mon, 20 Jan 2025 18:38:37 +0100 Subject: [PATCH] [SPIR-V] Add SPIRV to LLVM_ALL_TARGETS This commit promotes the SPIR-V backend from experimental to official status. As a result, SPIR-V will be built by default, simplifying integration and increasing accessibility for downstream projects. Discussion and RFC on Discourse: https://discourse.llvm.org/t/rfc-promoting-spir-v-to-an-official-target/83614 --- .github/workflows/spirv-tests.yml | 2 +- llvm/CMakeLists.txt | 2 +- llvm/Maintainers.md | 7 +++++-- llvm/docs/ReleaseNotes.md | 6 ++++++ 4 files changed, 13 insertions(+), 4 deletions(-) diff --git a/.github/workflows/spirv-tests.yml b/.github/workflows/spirv-tests.yml index 34c77a398c150..ea466dc6c52e5 100644 --- a/.github/workflows/spirv-tests.yml +++ b/.github/workflows/spirv-tests.yml @@ -25,5 +25,5 @@ jobs: with: build_target: check-llvm-codegen-spirv projects: - extra_cmake_args: '-DLLVM_TARGETS_TO_BUILD="" -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD="SPIRV" -DLLVM_INCLUDE_SPIRV_TOOLS_TESTS=ON' + extra_cmake_args: '-DLLVM_TARGETS_TO_BUILD="SPIRV" -DLLVM_INCLUDE_SPIRV_TOOLS_TESTS=ON' os_list: '["ubuntu-22.04"]' diff --git a/llvm/CMakeLists.txt b/llvm/CMakeLists.txt index f14065ab03799..ad12100fdb5b8 100644 --- a/llvm/CMakeLists.txt +++ b/llvm/CMakeLists.txt @@ -486,6 +486,7 @@ set(LLVM_ALL_TARGETS PowerPC RISCV Sparc + SPIRV SystemZ VE WebAssembly @@ -498,7 +499,6 @@ set(LLVM_ALL_EXPERIMENTAL_TARGETS CSKY DirectX M68k - SPIRV Xtensa ) diff --git a/llvm/Maintainers.md b/llvm/Maintainers.md index 74dcc5abf5645..2e995dc27dcd0 100644 --- a/llvm/Maintainers.md +++ b/llvm/Maintainers.md @@ -284,8 +284,11 @@ koachan@protonmail.com (email), [koachan](https://github.com/koachan) (GitHub) #### SPIRV backend -Ilia Diachkov \ -ilia.diachkov@gmail.com (email), [iliya-diyachkov](https://github.com/iliya-diyachkov) (GitHub) +Vyacheslav Levytskyy \ +vyacheslav.levytskyy@intel.com, vyacheslav.levytskyy@gmail.com (email), [VyacheslavLevytskyy](https://github.com/VyacheslavLevytskyy) (GitHub) + +Nathan Gauër \ +brioche@google.com (email), [Keenuts](https://github.com/Keenuts) (GitHub) #### SystemZ backend diff --git a/llvm/docs/ReleaseNotes.md b/llvm/docs/ReleaseNotes.md index 8f88b824f965a..48f962d212e86 100644 --- a/llvm/docs/ReleaseNotes.md +++ b/llvm/docs/ReleaseNotes.md @@ -47,6 +47,12 @@ for adding a new subsection. --> same semantics. The normalizer makes it easier to spot semantic differences when diffing two modules which have undergone different passes. +* The SPIR-V backend is now an official LLVM target, providing OpenCL and SYCL + conformance and establishing a foundation for broader applicability to other + APIs, including Vulkan, GLSL, and HLSL. This backend aims to offer a unified + approach for diverse compute and graphics workloads, providing a robust + alternative to the Khronos SPIR-V LLVM Translator. + * ...