Hi, it appears that the recently added MatrixMultiplyAccumulate patch breaks build of spirv-tools. With the patch applied, the build fails with undefined symbols. When I remove the "OpSubgroupMatrixMultiplyAccumulateINTEL" and "MatrixMultiplyAccumulateOperands" from /usr/include/spirv/unified1/spirv.core.gramma.json - the quickest hack I could think of - the problem goes away and spirv-tools build correctly.
Please include the build.log (and emerge --info).
Created attachment 920453 [details] build.log It might be the same thing, but here's my build.log. The package does not compile because of an undeclared symbol.
Created attachment 920454 [details] emerge --info Here's my emerge --info. The "fix" mentioned in Comment #1 causes the package to build.
Same here. /var/tmp/portage/dev-util/spirv-tools-1.4.304.0/work/SPIRV-Tools-vulkan-sdk-1.4.304.0_build-abi_x86_32.x86/core.insts-unified1.inc311: error: use of undeclared identifier 'SPV_OPERAND_TYPE_OPTIONAL_MATRIX_MULTIPLY_ACCUMULATE_OPERANDS'; did you mean 'SPV_OPERAND_TYPE_OPTIONAL_RAW_ACCESS_CHAIN_OPERANDS'? /var/tmp/portage/dev-util/spirv-tools-1.4.304.0/work/SPIRV-Tools-vulkan-sdk-1.4.304.0_build-abi_x86_32.x86/operand.kinds-unified1.inc4: error: use of undeclared identifier 'SPV_OPERAND_TYPE_MATRIX_MULTIPLY_ACCUMULATE_OPERANDS'
Same here. /var/tmp/portage/dev-util/spirv-tools-1.4.304.0/work/SPIRV-Tools-vulkan-sdk-1.4.304.0_build-abi_x86_64.amd64/core.insts-unified1.inc:904:311: error: ‘SPV_OPERAND_TYPE_OPTIONAL_MATRIX_MULTIPLY_ACCUMULATE_OPERANDS’ was not declared in this scope; did you mean ‘SPV_OPERAND_TYPE_OPTIONAL_RAW_ACCE SS_CHAIN_OPERANDS’? /var/tmp/portage/dev-util/spirv-tools-1.4.304.0/work/SPIRV-Tools-vulkan-sdk-1.4.304.0_build-abi_x86_64.amd64/operand.kinds-unified1.inc:1691:4: error: ‘SPV_OPERAND_TYPE_MATRIX_MULTIPLY_ACCUMULATE_OPERANDS’ was not declared in this scope
Looks like duplicate of https://bugs.gentoo.org/951123
*** This bug has been marked as a duplicate of bug 951123 ***
*** Bug 951123 has been marked as a duplicate of this bug. ***
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f495ff1bc8f3e33db6290c1eb0f4a07643469385 commit f495ff1bc8f3e33db6290c1eb0f4a07643469385 Author: Sam James <sam@gentoo.org> AuthorDate: 2025-03-10 22:42:14 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2025-03-10 22:42:14 +0000 dev-util/spirv-headers: restore 1.4.304.0 ... as -r1 breaks reverse dependencies. Bug: https://bugs.gentoo.org/950986 Bug: https://bugs.gentoo.org/951062 Bug: https://bugs.gentoo.org/951120 Bug: https://bugs.gentoo.org/951123 Signed-off-by: Sam James <sam@gentoo.org> .../spirv-headers/spirv-headers-1.4.304.0.ebuild | 30 ++++++++++++++++++++++ 1 file changed, 30 insertions(+)
*** Bug 951148 has been marked as a duplicate of this bug. ***
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7c735015262ab79a06f2fea6df8be85c66d1806d commit 7c735015262ab79a06f2fea6df8be85c66d1806d Author: Sam James <sam@gentoo.org> AuthorDate: 2025-03-11 02:41:50 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2025-03-11 02:41:50 +0000 dev-util/spirv-headers: destabilize 1.4.304.0-r1 I think this is a lesser-evil than keeping it stable. Bug: https://bugs.gentoo.org/950986 Bug: https://bugs.gentoo.org/951062 Bug: https://bugs.gentoo.org/951120 Bug: https://bugs.gentoo.org/951123 Signed-off-by: Sam James <sam@gentoo.org> dev-util/spirv-headers/spirv-headers-1.4.304.0-r1.ebuild | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
I'm not sure if this is related to this bug or possibly bug 951120, but yesterday I had to revert to the 1.3.296.0 versions of dev-util/spirv-headers and dev-util/spirv-tools due to this failure with the abi_x86_32 enabled: [38/373] /usr/bin/x86_64-pc-linux-gnu-g++ -m32 -mfpmath=sse -DSPIRV_COLOR_TERMINAL -DSPIRV_TIMER_ENABLED -DSPIRV_Tools_EXPORTS -I/var/tmp/portage/dev-util/spirv-tools-1.4.304.0/work/SPIRV-Tools-vulkan-sdk-1.4.304.0 -I/var/tmp/portage/dev-util/spirv-tools-1.4.304.0/work/SPIRV-Tools-vulkan-sdk-1.4.304.0/include -I/var/tmp/portage/dev-util/spirv-tools-1.4.304.0/work/SPIRV-Tools-vulkan-sdk-1.4.304.0_build-abi_x86_32.x86 -march=native -O2 -pipe -DNDEBUG -std=c++17 -fPIC -fno-rtti -Wall -Wextra -Wnon-virtual-dtor -Wno-missing-field-initializers -Wno-long-long -Wshadow -Wundef -Wconversion -Wno-sign-conversion -fno-exceptions -MD -MT source/CMakeFiles/SPIRV-Tools.dir/disassemble.cpp.o -MF source/CMakeFiles/SPIRV-Tools.dir/disassemble.cpp.o.d -o source/CMakeFiles/SPIRV-Tools.dir/disassemble.cpp.o -c /var/tmp/portage/dev-util/spirv-tools-1.4.304.0/work/SPIRV-Tools-vulkan-sdk-1.4.304.0/source/disassemble.cpp ninja: build stopped: subcommand failed. * ERROR: dev-util/spirv-tools-1.4.304.0::gentoo failed (compile phase): * ninja -v -j9 -l0 failed * * Call stack: * ebuild.sh, line 136: Called src_compile * environment, line 3184: Called cmake-multilib_src_compile * environment, line 1090: Called multilib-minimal_src_compile * environment, line 2117: Called multilib_foreach_abi 'multilib-minimal_abi_src_compile' * environment, line 2384: Called multibuild_foreach_variant '_multilib_multibuild_wrapper' 'multilib-minimal_abi_src_compile' * environment, line 2077: Called _multibuild_run '_multilib_multibuild_wrapper' 'multilib-minimal_abi_src_compile' * environment, line 2075: Called _multilib_multibuild_wrapper 'multilib-minimal_abi_src_compile' * environment, line 402: Called multilib-minimal_abi_src_compile * environment, line 2111: Called multilib_src_compile * environment, line 2604: Called cmake_src_compile * environment, line 1208: Called cmake_build * environment, line 1175: Called eninja * environment, line 1503: Called die * The specific snippet of code: * "$@" || die -n "${*} failed" Tom
*** Bug 951167 has been marked as a duplicate of this bug. ***
I didn't foresee that this fairly innocuous change would produce that fallout. Local tests looked good. My bad. @matt: Are you aware, when vulkan-sdk-1.4.309 is supposed to release? I couldn't find any information on this, but mentioned in the commits.
(In reply to Conrad Kostecki from comment #14) > @matt: Are you aware, when vulkan-sdk-1.4.309 is supposed to release? I > couldn't find any information on this, but mentioned in the commits. Looking at SPIRV-Headers' tags (https://github.com/KhronosGroup/SPIRV-Headers/tags), they seem to make a new vulkan-sdk- tag every 3 months. Unfortunately this doesn't indicate *when* the actual release happens for the whole SDK :(
Today in my update of two x86 32 bit systems I encountered the same failure as I posted above (which was an amd64 system with abi_x86_32 enabled). So clearly something specific to 32 bit here.
*** Bug 951229 has been marked as a duplicate of this bug. ***
spirv-tools-1.4.304 also fails to build with spirv-headers-1.4.304.0-r1 on 64-bit only amd64 system (nomultilib, no IA32 emulation in the kernel -- no 32-bit).
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5a3913781e2dc9798a128bb7452d943eb1407275 commit 5a3913781e2dc9798a128bb7452d943eb1407275 Author: Sam James <sam@gentoo.org> AuthorDate: 2025-03-13 12:16:02 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2025-03-13 12:16:02 +0000 profiles: mask =dev-util/spirv-headers-1.4.304.0-r1 A fix doesn't seem forthcoming immediately, so let's not leave it broken. While this may then break spirv-llvm-translator, that's a lesser evil here, I think. Closes: https://bugs.gentoo.org/951062 Closes: https://bugs.gentoo.org/951120 Signed-off-by: Sam James <sam@gentoo.org> profiles/package.mask | 4 ++++ 1 file changed, 4 insertions(+)
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1443f6a51972d80525864cb000547ac4e37ac7fd commit 1443f6a51972d80525864cb000547ac4e37ac7fd Author: Sam James <sam@gentoo.org> AuthorDate: 2025-03-13 12:43:29 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2025-03-13 12:43:53 +0000 profiles: mask some spirv-llvm-translator too Bug: https://bugs.gentoo.org/951062 Bug: https://bugs.gentoo.org/951120 Signed-off-by: Sam James <sam@gentoo.org> profiles/package.mask | 5 +++++ 1 file changed, 5 insertions(+)
(In reply to Matt Turner from comment #15) > (In reply to Conrad Kostecki from comment #14) > > @matt: Are you aware, when vulkan-sdk-1.4.309 is supposed to release? I > > couldn't find any information on this, but mentioned in the commits. > > Looking at SPIRV-Headers' tags > (https://github.com/KhronosGroup/SPIRV-Headers/tags), they seem to make a > new vulkan-sdk- tag every 3 months. > > Unfortunately this doesn't indicate *when* the actual release happens for > the whole SDK :( Good news. The two commits you wanted are in vulkan-sdk-1.4.309.0 which has now been released.