summaryrefslogtreecommitdiffstats
path: root/tests/spirv/spirv-debug-break.slang
blob: 67b3e975b0b815f446e7df3260f0aa87293b2b5f (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
// spirv-instruction.slang
// TEST:SIMPLE(filecheck=CHECK):-target glsl -entry computeMain -stage compute

[[vk::spirv_instruction(1, "NonSemantic.DebugBreak")]]
void _spvDebugBreak(int v);

[ForceInline] 
void _debugBreak() { _spvDebugBreak(1); }

// CHECK:spirv_instruction(id = 1, set = "NonSemantic.DebugBreak")
// CHECK:void _spvDebugBreak_0(int _0);
// CHECK:void main()
// CHECK:_spvDebugBreak_0(1);

//TEST_INPUT:set resultBuffer = out ubuffer(data=[0 0 0 0], stride=4)
RWStructuredBuffer<uint> resultBuffer;

[numthreads(4,1,1)]
void computeMain(uint3 dispatchThreadID : SV_DispatchThreadID)
{
    uint threadId = dispatchThreadID.x;
    
    _debugBreak();
    
    resultBuffer[threadId] = threadId + threadId;
}