44; RUN: opt -S --dxil-translate-metadata %t/max.ll | FileCheck %t/max.ll
55; RUN: opt -S --dxil-translate-metadata %t/pref.ll | FileCheck %t/pref.ll
66
7+ ; RUN: llc --filetype=obj %t/only.ll -o - | obj2yaml | FileCheck %t/only.ll --check-prefix=OBJ
8+ ; RUN: llc --filetype=obj %t/min.ll -o - | obj2yaml | FileCheck %t/min.ll --check-prefix=OBJ
9+ ; RUN: llc --filetype=obj %t/max.ll -o - | obj2yaml | FileCheck %t/max.ll --check-prefix=OBJ
10+ ; RUN: llc --filetype=obj %t/pref.ll -o - | obj2yaml | FileCheck %t/pref.ll --check-prefix=OBJ
11+
712; Test that wave size/range metadata is correctly generated with the correct tag
813
914;--- only.ll
1318; CHECK: ![[#PROPS]] = !{{{.*}}i32 11, ![[#WAVE_SIZE:]]{{.*}}}
1419; CHECK: ![[#WAVE_SIZE]] = !{i32 16}
1520
21+ ; OBJ: - Name: PSV0
22+ ; OBJ: PSVInfo:
23+ ; OBJ: MinimumWaveLaneCount: 16
24+ ; OBJ: MaximumWaveLaneCount: 16
25+
1626target triple = "dxil-unknown-shadermodel6.6-compute"
1727
1828define void @main () #0 {
@@ -29,6 +39,11 @@ attributes #0 = { "hlsl.wavesize"="16,0,0" "hlsl.numthreads"="1,1,1" "hlsl.shade
2939; CHECK: ![[#PROPS]] = !{{{.*}}i32 23, ![[#WAVE_SIZE:]]{{.*}}}
3040; CHECK: ![[#WAVE_SIZE]] = !{i32 16, i32 0, i32 0}
3141
42+ ; OBJ: - Name: PSV0
43+ ; OBJ: PSVInfo:
44+ ; OBJ: MinimumWaveLaneCount: 16
45+ ; OBJ: MaximumWaveLaneCount: 16
46+
3247target triple = "dxil-unknown-shadermodel6.8-compute"
3348
3449define void @main () #0 {
@@ -45,6 +60,11 @@ attributes #0 = { "hlsl.wavesize"="16,0,0" "hlsl.numthreads"="1,1,1" "hlsl.shade
4560; CHECK: ![[#PROPS]] = !{{{.*}}i32 23, ![[#WAVE_SIZE:]]{{.*}}}
4661; CHECK: ![[#WAVE_SIZE]] = !{i32 16, i32 32, i32 0}
4762
63+ ; OBJ: - Name: PSV0
64+ ; OBJ: PSVInfo:
65+ ; OBJ: MinimumWaveLaneCount: 16
66+ ; OBJ: MaximumWaveLaneCount: 32
67+
4868target triple = "dxil-unknown-shadermodel6.8-compute"
4969
5070define void @main () #0 {
@@ -61,6 +81,11 @@ attributes #0 = { "hlsl.wavesize"="16,32,0" "hlsl.numthreads"="1,1,1" "hlsl.shad
6181; CHECK: ![[#PROPS]] = !{{{.*}}i32 23, ![[#WAVE_SIZE:]]{{.*}}}
6282; CHECK: ![[#WAVE_SIZE]] = !{i32 16, i32 64, i32 32}
6383
84+ ; OBJ: - Name: PSV0
85+ ; OBJ: PSVInfo:
86+ ; OBJ: MinimumWaveLaneCount: 16
87+ ; OBJ: MaximumWaveLaneCount: 64
88+
6489target triple = "dxil-unknown-shadermodel6.8-compute"
6590
6691define void @main () #0 {
0 commit comments