yum-mirror/slang
Making it easier to work with shaders
git clone https://git.yummers.dev/yum-mirror/slang
09a9d6733
master
1//TEST:COMPARE_COMPUTE(filecheck-buffer=CHECK): -vk -emit-spirv-directly 2//DISABLED_TEST: COMPARE_COMPUTE(filecheck-buffer=CHECK): -wgpu 3//DISABLED_TEST: COMPARE_COMPUTE(filecheck-buffer=CHECK): -d3d11 4//DISABLED_TEST: COMPARE_COMPUTE(filecheck-buffer=CHECK): -d3d12 5//DISABLED_TEST: COMPARE_COMPUTE(filecheck-buffer=CHECK): -metal 6 7struct Obj 8{ 9 int val; 10 11 [mutating] 12 void addOne() { val++; } 13 14 int getValPlusOne() { return val + 1; } 15} 16 17//TEST_INPUT: set pObj = ubuffer(data=[2 0 0 0], stride=4); 18uniform Obj* pObj; 19 20//TEST_INPUT: set outputBuffer = out ubuffer(data=[0 0 0 0],stride=4); 21uniform RWStructuredBuffer<uint> outputBuffer; 22 23[numthreads(1,1,1)] 24void computeMain() 25{ 26 pObj->addOne(); 27 // CHECK: 4 28 outputBuffer[0] = pObj->getValPlusOne(); 29}