blob: 7445194383540bc07b225f9bbb649870f3efbf9b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
// direct-spirv-control-flow.slang
//TEST(compute, vulkan):COMPARE_COMPUTE_EX:-vk -compute
// Test direct SPIRV emit on control fl.
//TEST_INPUT:set resultBuffer = out ubuffer(data=[0 0 0 0], stride=4)
RWStructuredBuffer<uint> resultBuffer;
uint test(uint p)
{
int result = 0;
if (p == 0)
{
result = 5;
}
else
{
result = 6;
}
return result;
}
[numthreads(4,1,1)]
void computeMain(uint3 dispatchThreadID : SV_DispatchThreadID)
{
uint threadId = dispatchThreadID.x;
uint result = test(threadId);
resultBuffer[threadId] = result;
}
|