yum-mirror/slang
Making it easier to work with shaders
git clone https://git.yummers.dev/yum-mirror/slang
b39ec87cc
master
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}