7
7
// results compare for array BufC and BufD.
8
8
9
9
[[vk::binding(0)]]
10
- RWBuffer <int> A[2] : register(u0);
10
+ RWStructuredBuffer <int> A[2] : register(u0);
11
11
12
12
[[vk::binding(1)]]
13
13
RWStructuredBuffer<int> B[4] : register(u4);
14
14
15
15
[[vk::binding(2)]]
16
- RWBuffer <int> C[2] : register(u8);
16
+ RWStructuredBuffer <int> C[2] : register(u8);
17
17
18
18
[[vk::binding(3)]]
19
- RWBuffer <float> D[2] : register(u10);
19
+ RWStructuredBuffer <float> D[2] : register(u10);
20
20
21
21
[numthreads(4,2,1)]
22
22
void main(uint GI : SV_GroupIndex) {
@@ -27,7 +27,7 @@ void main(uint GI : SV_GroupIndex) {
27
27
C[i][GI] = A[i][GI] * 2;
28
28
}
29
29
for (int i = 0; i < 2; i++) {
30
- D[i][GI] = (float)A[i][GI] / 3.14159f ;
30
+ D[i][GI] = (float)A[i][GI] / 1.5f ;
31
31
}
32
32
}
33
33
@@ -50,6 +50,15 @@ Buffers:
50
50
ArraySize: 4
51
51
ZeroInitSize: 32
52
52
53
+ - Name: ExpectedBufB
54
+ Format: Int32
55
+ ArraySize: 4
56
+ Data:
57
+ - [ 0, 1, 2, 3, 4, 5, 6, 7 ]
58
+ - [ 0, 2, 4, 6, 8, 10, 12, 14 ]
59
+ - [ 0, 3, 6, 9, 12, 15, 18, 21 ]
60
+ - [ 0, 4, 8, 12, 16, 20, 24, 28 ]
61
+
53
62
- Name: BufC
54
63
Format: Int32
55
64
ArraySize: 2
@@ -58,7 +67,7 @@ Buffers:
58
67
- Name: ExpectedBufC
59
68
Format: Int32
60
69
ArraySize: 2
61
- Data:
70
+ Data:
62
71
- [ 0, 2, 4, 6, 8, 10, 12, 14 ]
63
72
- [ 2, 4, 6, 8, 10, 12, 14, 16 ]
64
73
@@ -71,24 +80,31 @@ Buffers:
71
80
Format: Float32
72
81
ArraySize: 2
73
82
Data:
74
- - [ 0, 0.32, 0.64, 0.94, 1.27, 1.59, 1.91, 2.23 ]
75
- - [ 0.32, 0.64, 0.95, 1.27, 1.59, 1.91, 2.23, 2.54 ]
83
+ - [ 0x0.0000000000000p+0, 0x1.5555560000000p-1, 0x1.5555560000000p+0, 0x1.0000000000000p+1, 0x1.5555560000000p+1, 0x1.aaaaac0000000p+1, 0x1.0000000000000p+2, 0x1.2aaaac0000000p+2 ]
84
+ # [ 0, 0.666667, 1.33333, 2, 2.66667, 3.33333, 4, 4.66667 ]
85
+ - [ 0x1.5555560000000p-1, 0x1.5555560000000p+0, 0x1.0000000000000p+1, 0x1.5555560000000p+1, 0x1.aaaaac0000000p+1, 0x1.0000000000000p+2, 0x1.2aaaac0000000p+2, 0x1.5555560000000p+2 ]
86
+ # [ 0.666667, 1.33333, 2, 2.66667, 3.33333, 4, 4.66667, 5.33333 ]
76
87
Results:
88
+ - Result: BufB
89
+ Rule: BufferExact
90
+ Actual: BufB
91
+ Expected: ExpectedBufB
92
+
77
93
- Result: BufC
78
94
Rule: BufferExact
79
95
Actual: BufC
80
96
Expected: ExpectedBufC
81
97
82
98
- Result: BufD
83
- Rule: BufferFloatEpsilon
84
- Epsilon: 0.05
99
+ Rule: BufferFloatULP
100
+ ULPT: 5
85
101
Actual: BufD
86
102
Expected: ExpectedBufD
87
103
88
104
DescriptorSets:
89
105
- Resources:
90
106
- Name: BufA
91
- Kind: RWBuffer
107
+ Kind: RWStructuredBuffer
92
108
DirectXBinding:
93
109
Register: 0
94
110
Space: 0
@@ -102,14 +118,14 @@ DescriptorSets:
102
118
VulkanBinding:
103
119
Binding: 1
104
120
- Name: BufC
105
- Kind: RWBuffer
121
+ Kind: RWStructuredBuffer
106
122
DirectXBinding:
107
123
Register: 8
108
124
Space: 0
109
125
VulkanBinding:
110
126
Binding: 2
111
127
- Name: BufD
112
- Kind: RWBuffer
128
+ Kind: RWStructuredBuffer
113
129
DirectXBinding:
114
130
Register: 10
115
131
Space: 0
@@ -126,10 +142,10 @@ DescriptorSets:
126
142
# XFAIL: Clang-Vulkan && !VK_KHR_shader_float_controls2
127
143
128
144
# RUN: split-file %s %t
129
- # RUN: %if !Vulkan %{ %dxc_target -T cs_6_0 -Fo %t.o %t/source.hlsl %}
130
- # RUN: %if Vulkan %{ %dxc_target -T cs_6_0 -fspv-target-env=vulkan1.3 -Fo %t.o %t/source.hlsl %}
145
+ # RUN: %dxc_target -T cs_6_0 -Fo %t.o %t/source.hlsl
131
146
# RUN: %offloader %t/pipeline.yaml %t.o | FileCheck %s
132
147
148
+ // These checks added to verify YAML printing of arrays.
133
149
// CHECK: Name: BufB
134
150
// CHECK: Format: Int32
135
151
// CHECK: ArraySize: 4
@@ -143,6 +159,5 @@ DescriptorSets:
143
159
// CHECK: Format: Float32
144
160
// CHECK: ArraySize: 2
145
161
// CHECK: Data:
146
- // CHECK: - [ 0, 0.31831, 0.63662, 0.95493, 1.27324, 1.59155, 1.90986, 2.22817 ]
147
- // CHECK: - [ 0.31831, 0.63662, 0.95493, 1.27324, 1.59155, 1.90986, 2.22817,
148
- // CHECK: 2.54648 ]
162
+ // CHECK: - [ 0, 0.666667, 1.33333, 2, 2.66667, 3.33333, 4, 4.66667 ]
163
+ // CHECK: - [ 0.666667, 1.33333, 2, 2.66667, 3.33333, 4, 4.66667, 5.33333 ]
0 commit comments