yum-mirror/slang

Making it easier to work with shaders

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

DarrelFW321Add GLSL array length syntax support (#6665)7f72256bc

master
1.1 KiB34 linesraw
1//TEST(compute):COMPARE_COMPUTE_EX(filecheck-buffer=BUF):-vk -compute -shaderobj  -allow-glsl
2//TEST(compute):COMPARE_COMPUTE_EX(filecheck-buffer=BUF):-slang -compute -shaderobj -render-feature hardware-device -allow-glsl
3//TEST(compute):COMPARE_COMPUTE_EX(filecheck-buffer=BUF):-metal -compute -shaderobj -allow-glsl
4//TEST(compute):COMPARE_COMPUTE_EX(filecheck-buffer=BUF):-cpu -compute -shaderobj -allow-glsl
5//TEST(compute):COMPARE_COMPUTE_EX(filecheck-buffer=BUF):-wgpu -compute -shaderobj -allow-glsl
6//TEST(compute):COMPARE_COMPUTE_EX(filecheck-buffer=BUF):-cuda -compute -g0 -allow-glsl
7
8//TEST_INPUT:ubuffer(data=[0 0 0 0 0], stride=4):out,name outputBuffer
9RWStructuredBuffer<int> outputBuffer;
10
11//
12// Tests GLSL array.length() syntax.
13//
14
15[shader("compute")]
16[numthreads(1, 1, 1)]
17void computeMain()
18{
19    int myArray[4] = {4, 3, 2, 1};
20    outputBuffer[0] = myArray[0];
21    outputBuffer[1] = myArray[1];
22    outputBuffer[2] = myArray[2];
23    outputBuffer[3] = myArray[3];
24    outputBuffer[4] = myArray.length();
25
26    // BUF: 4
27    // BUF-NEXT: 3
28    // BUF-NEXT: 2
29    // BUF-NEXT: 1
30    // BUF-NEXT: 4
31}
32
33
34