From 62ade29db864854baa8f7db3b50844e19771fee1 Mon Sep 17 00:00:00 2001 From: CentOS Sources Date: Sat, 18 Feb 2023 00:51:17 +0000 Subject: [PATCH] Auto sync2gitlab import of spirv-tools-2023.1-2.el8.src.rpm --- .gitignore | 1 + 0001-opt-fix-spirv-ABI-on-Linux-again.patch | 52 +++++++++++++++++++++ sources | 2 +- spirv-tools.spec | 12 ++++- 4 files changed, 64 insertions(+), 3 deletions(-) create mode 100644 0001-opt-fix-spirv-ABI-on-Linux-again.patch diff --git a/.gitignore b/.gitignore index 2139ddc..cbb34b2 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ /spirv-tools-1fbed83c8aab8517d821fcb4164c08567951938f.tar.gz /SPIRV-Tools-sdk-1.3.216.0.tar.gz /SPIRV-Tools-sdk-1.3.224.0.tar.gz +/SPIRV-Tools-sdk-1.3.239.0.tar.gz diff --git a/0001-opt-fix-spirv-ABI-on-Linux-again.patch b/0001-opt-fix-spirv-ABI-on-Linux-again.patch new file mode 100644 index 0000000..055b7be --- /dev/null +++ b/0001-opt-fix-spirv-ABI-on-Linux-again.patch @@ -0,0 +1,52 @@ +From 743578474de0736850286c2c6d2b796a923b1a7c Mon Sep 17 00:00:00 2001 +From: Dave Airlie +Date: Wed, 15 Feb 2023 16:50:24 +1000 +Subject: [PATCH] opt: fix spirv ABI on Linux again. + +Breaking the ABI for this API isn't worth it when the fix is so simple. +--- + include/spirv-tools/optimizer.hpp | 6 ++++-- + source/opt/optimizer.cpp | 10 ++++++++++ + 2 files changed, 14 insertions(+), 2 deletions(-) + +diff --git a/include/spirv-tools/optimizer.hpp b/include/spirv-tools/optimizer.hpp +index aa6a614e..8bdd4e82 100644 +--- a/include/spirv-tools/optimizer.hpp ++++ b/include/spirv-tools/optimizer.hpp +@@ -525,8 +525,10 @@ Optimizer::PassToken CreateDeadInsertElimPass(); + // If |remove_outputs| is true, allow outputs to be removed from the interface. + // This is only safe if the caller knows that there is no corresponding input + // variable in the following shader. It is false by default. +-Optimizer::PassToken CreateAggressiveDCEPass(bool preserve_interface = false, +- bool remove_outputs = false); ++Optimizer::PassToken CreateAggressiveDCEPass(); ++Optimizer::PassToken CreateAggressiveDCEPass(bool preserve_interface); ++Optimizer::PassToken CreateAggressiveDCEPass(bool preserve_interface, ++ bool remove_outputs); + + // Creates a remove-unused-interface-variables pass. + // Removes variables referenced on the |OpEntryPoint| instruction that are not +diff --git a/source/opt/optimizer.cpp b/source/opt/optimizer.cpp +index cbc4b82f..46a92dd9 100644 +--- a/source/opt/optimizer.cpp ++++ b/source/opt/optimizer.cpp +@@ -785,6 +785,16 @@ Optimizer::PassToken CreateLocalMultiStoreElimPass() { + MakeUnique()); + } + ++Optimizer::PassToken CreateAggressiveDCEPass() { ++ return MakeUnique( ++ MakeUnique(false, false)); ++} ++ ++Optimizer::PassToken CreateAggressiveDCEPass(bool preserve_interface) { ++ return MakeUnique( ++ MakeUnique(preserve_interface, false)); ++} ++ + Optimizer::PassToken CreateAggressiveDCEPass(bool preserve_interface, + bool remove_outputs) { + return MakeUnique( +-- +2.39.1 + diff --git a/sources b/sources index 25824b7..35e3915 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (SPIRV-Tools-sdk-1.3.224.0.tar.gz) = 1265db4c15d4d6c6fcb201bc958386e9c910386a82ff595b5d5f84dc03f6ab7f70f67fd59a90ffa92533b02d809305334c06228b869151cbcfdee529e90e7bbc +SHA512 (SPIRV-Tools-sdk-1.3.239.0.tar.gz) = 1e930397c40fd65eb04c80a27c1fb2b3546aca2ce0fec6b40e8e09fbdb93b48f00281fabf10b8ba54c0186139640794b517b54a2e87b81842d5ea067afedc528 diff --git a/spirv-tools.spec b/spirv-tools.spec index 55e7f6a..1b1b10b 100644 --- a/spirv-tools.spec +++ b/spirv-tools.spec @@ -1,7 +1,7 @@ -%global sdkver 1.3.224.0 +%global sdkver 1.3.239.0 Name: spirv-tools -Version: 2022.2 +Version: 2023.1 Release: 2%{?dist} Summary: API and commands for processing SPIR-V modules @@ -9,6 +9,8 @@ License: ASL 2.0 URL: https://github.com/KhronosGroup/SPIRV-Tools Source0: %url/archive/sdk-%{sdkver}.tar.gz#/SPIRV-Tools-sdk-%{sdkver}.tar.gz +Patch0: 0001-opt-fix-spirv-ABI-on-Linux-again.patch + BuildRequires: cmake BuildRequires: gcc-c++ BuildRequires: ninja-build @@ -88,6 +90,12 @@ popd %{_libdir}/pkgconfig/SPIRV-Tools.pc %changelog +* Wed Feb 15 2023 Dave Airlie - 2023.1-2 +- fix spirv-tools ABI break + +* Mon Feb 13 2023 Dave Airlie - 2023.1-1 +- Update to 1.3.239.0 SDK version + * Wed Aug 24 2022 Dave Airlie - 2022.2-2 - Update to 1.3.224.0 SDK version