Add test to make sure WaveMatrix is not allowed in shader model 6.7 and 6.8 (#6178)

Related to #6133 and #6163.
This commit is contained in:
Helena Kotas 2024-01-22 14:55:43 -08:00 коммит произвёл GitHub
Родитель 5ed628dc7d
Коммит 013f55c2cd
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: B5690EEEBB952194
1 изменённых файлов: 25 добавлений и 0 удалений

Просмотреть файл

@ -0,0 +1,25 @@
// RUN: %dxc -E main -T cs_6_7 %s | FileCheck %s
// RUN: %dxc -E main -T cs_6_8 %s | FileCheck %s
// CHECK-NOT: define void @main()
// CHECK: error: validation errors
// CHECK: Function: main: error: Opcode WaveMatrix_Annotate not valid in shader model cs_6_{{[7-8]}}
// CHECK: Function: main: error: Opcode WaveMatrix_Annotate not valid in shader model cs_6_{{[7-8]}}.
RWByteAddressBuffer rwbuf;
[NumThreads(64,1,1)]
void main(uint3 gtid : SV_GroupThreadID, uint gidx : SV_GroupIndex)
{
WaveMatrixLeft<float, 16, 16> left;
WaveMatrixRight<float, 16, 16> right;
// CHECK: WaveMatrix67.hlsl:21:18: error: Opcode WaveMatrix_Depth not valid in shader model cs_6_{{[7-8]}}.
// CHECK: WaveMatrix67.hlsl:22:18: error: Opcode WaveMatrix_Depth not valid in shader model cs_6_{{[7-8]}}.
rwbuf.Store(0, left.MatrixDepth());
rwbuf.Store(4, right.MatrixDepth());
}
// CHECK: Validation failed.