summaryrefslogtreecommitdiffstats
path: root/tests/cross-compile/non-uniform-indexing.slang
blob: dc53d5922ff246773cb36c1eada274a4e24a7fd7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
//TEST:SIMPLE(filecheck=CHECK):-target spirv-assembly -entry main -stage fragment -verify-debug-serial-ir
//TEST:SIMPLE(filecheck=CHECK):-target spirv-assembly -entry main -stage fragment -verify-debug-serial-ir -DGLSL -allow-glsl

// Confirm that `NonUniformResourceIndex` translates to SPIR-V as expected

// CHECK: NonUniform

Texture2D t[10];
SamplerState s;

float4 main(
    float3 uv : UV)
    : SV_Target
{
#if defined(GLSL)
    return t[nonuniformEXT(int(uv.z))].Sample(s, uv.xy);
#else
    return t[NonUniformResourceIndex(int(uv.z))].Sample(s, uv.xy);
#endif
}