yum-mirror/glslang

git clone https://git.yummers.dev/yum-mirror/glslang

ChowAdd support for SPV_KHR_constant_data and SPV_KHR_abort08f27157

main
993 B62 linesraw
1#version 450
2
3#extension GL_EXT_abort : require
4
5layout(local_size_x = 1) in;
6
7layout(set = 0, binding = 0) buffer Output {
8    uint value;
9} outputBuffer;
10
11
12uint abortOne()
13{
14    outputBuffer.value = 1;
15    abortEXT("abortOne:%d", outputBuffer.value);
16    return outputBuffer.value;
17}
18
19void abortTwo()
20{
21    outputBuffer.value = 2;
22    if (gl_GlobalInvocationID.x == 1)
23    {
24        abortEXT("abortTwo");
25        outputBuffer.value = 3;
26    }
27    return;
28}
29
30void abortThree()
31{
32    abortEXT();
33    outputBuffer.value = 4;
34    return;
35}
36
37void abortFour()
38{
39    for (int i=0; i < 3; i++)
40        abortEXT("Iteration exceeded limit: in invocation %i %u", i, gl_GlobalInvocationID.x);
41    return;
42}
43
44void abortFive()
45{
46    abortEXT("", outputBuffer.value);
47    return;
48}
49
50void main() {
51    outputBuffer.value = 0;
52
53    abortEXT();
54
55    abortOne();
56    abortTwo();
57    abortThree();
58    abortFour();
59    abortFive();
60
61    abortEXT();
62}