Dear Maintainer,
SPIRV-Tools 2026.3~rc1 does not fully handle the renamed
OpCooperativeMatrixReduceEXT instruction.
This became apparent when building SPIRV-Tools against a newer upstream
version of SPIR-V Headers. The newer headers define opcode 5366 as:
OpCooperativeMatrixReduceEXT = 5366
with OpCooperativeMatrixReduceNV retained as an alias.
By contrast, the Debian-installed spirv-headers package
(1.6.1+1.4.357.0-1) still exposes the opcode primarily under the
OpCooperativeMatrixReduceNV name.
Parts of SPIRV-Tools 2026.3~rc1 still refer to opcode 5366 using the
obsolete OpCooperativeMatrixReduceNV name. This becomes a problem when
using the newer upstream SPIR-V Headers.
The issue is tracked upstream as SPIRV-Tools issue #6850:
https://github.com/KhronosGroup/SPIRV-Tools/issues/6850
I have attached a patch which updates the affected SPIRV-Tools code
from OpCooperativeMatrixReduceNV to OpCooperativeMatrixReduceEXT and
updates the corresponding validator regression tests.
The patch updates:
source/operand.cpp
source/opt/ir_context.cpp
source/val/validate_arithmetics.cpp
source/val/validate_function.cpp
test/val/val_arithmetics_test.cpp
The patch is not architecture-specific.
Regards,
Jeroen Diederen