yum-mirror/slang

Making it easier to work with shaders

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

sricker-nvidiaFix broken -emit-spirv-via-glsl test option (#7091)b39ec87cc

master
1.2 KiB29 linesraw
1//TEST(compute):COMPARE_COMPUTE_EX(filecheck-buffer=CHK):-slang -compute -cpu
2//TEST(compute):COMPARE_COMPUTE_EX(filecheck-buffer=CHK):-slang -compute -dx11
3//TEST(compute):COMPARE_COMPUTE_EX(filecheck-buffer=CHK):-slang -compute -dx12
4//TEST(compute):COMPARE_COMPUTE_EX(filecheck-buffer=CHK):-slang -vk -compute
5//TEST(compute):COMPARE_COMPUTE_EX(filecheck-buffer=CHK):-slang -cuda -compute
6//TEST(compute):COMPARE_COMPUTE_EX(filecheck-buffer=CHK):-slang -mtl -compute
7//TEST(compute):COMPARE_COMPUTE_EX(filecheck-buffer=CHK):-slang -wgpu -compute
8//TEST(compute):COMPARE_COMPUTE_EX(filecheck-buffer=CHK):-slang -vk -compute -emit-spirv-via-glsl
9
10//CHK:1
11
12//TEST_INPUT:ubuffer(data=[0], stride=4):out,name=outputBuffer
13RWStructuredBuffer<int> outputBuffer;
14
15[numthreads(1, 1, 1)]
16void computeMain(uint3 dispatchThreadID : SV_DispatchThreadID)
17{
18    uint r1 = countbits(0b1);
19    uint2 r2 = countbits(uint2(0b0, 0b1));
20    uint3 r3 = countbits(uint3(0b0, 0b1, 0b11));
21    uint4 r4 = countbits(uint4(0b0, 0b1, 0b11, 0b111));
22
23    outputBuffer[0] = true
24        && (r1 == 1)
25        && (r2.x == 0 && r2.y == 1)
26        && (r3.x == 0 && r3.y == 1 && r3.z == 2)
27        && (r4.x == 0 && r4.y == 1 && r4.z == 2 && r4.w == 3)
28        ;
29}