yum-mirror/slang
Making it easier to work with shaders
git clone https://git.yummers.dev/yum-mirror/slang
feb1569d9
master
1//DIAGNOSTIC_TEST:SIMPLE(filecheck=CHECK): -target metal -stage compute -entry cmain -DTEST=0 -DBUFFER_TYPE=StructuredBuffer 2//DIAGNOSTIC_TEST:SIMPLE(filecheck=CHECK): -target metal -stage compute -entry cmain -DTEST=0 -DBUFFER_TYPE=RWStructuredBuffer 3//DIAGNOSTIC_TEST:SIMPLE(filecheck=CHECK): -target metal -stage compute -entry cmain -DTEST=0 -DBUFFER_TYPE=AppendStructuredBuffer 4//DIAGNOSTIC_TEST:SIMPLE(filecheck=CHECK): -target metal -stage compute -entry cmain -DTEST=0 -DBUFFER_TYPE=ConsumeStructuredBuffer 5//DIAGNOSTIC_TEST:SIMPLE(filecheck=CHECK): -target metal -stage compute -entry cmain -DTEST=0 -DBUFFER_TYPE=RasterizerOrderedStructuredBuffer 6//DIAGNOSTIC_TEST:SIMPLE(filecheck=CHECK): -target metal -stage compute -entry cmain -DTEST=1 -DBUFFER_TYPE=ByteAddressBuffer 7//DIAGNOSTIC_TEST:SIMPLE(filecheck=CHECK): -target metal -stage compute -entry cmain -DTEST=1 -DBUFFER_TYPE=RWByteAddressBuffer 8//DIAGNOSTIC_TEST:SIMPLE(filecheck=CHECK): -target metal -stage compute -entry cmain -DTEST=1 -DBUFFER_TYPE=RasterizerOrderedByteAddressBuffer 9 10//TEST_INPUT:ubuffer(data=[0 0], stride=4):out,name outputBuffer 11RWStructuredBuffer<uint> outputBuffer; 12 13//TEST_INPUT:ubuffer(data=[7 2 9 53], stride=4):name buffer 14#if TEST == 0 15BUFFER_TYPE<int> buffer; 16#elif TEST==1 17BUFFER_TYPE buffer; 18#endif 19 20//CHECK: error 36107: 21//CHECK: buffer.GetDimensions 22 23[shader("compute")] 24[numthreads(1, 1, 1)] 25void cmain(uint3 dispatchThreadID : SV_DispatchThreadID) 26{ 27 uint count = 0, stride = 0; 28#if TEST == 0 29 buffer.GetDimensions(count, stride); 30#elif TEST == 1 31 buffer.GetDimensions(count); 32#endif 33 outputBuffer[0] = count; 34 outputBuffer[1] = stride; 35}