HLSL: phase 3a: Add sub-vec4 rwtexture formats (qualifier.layoutFormat)

This PR sets the TQualifier layoutFormat according to the HLSL image type.
For instance:

  RWTexture1D <float2> g_tTex1df2;

becomes ElfRg32f.  Similar on Buffers, e.g, Buffer<float4> mybuffer;

The return type for image and buffer loads is now taken from the storage format.
Also, the qualifier for the return type is now (properly) a temp, not a global.
This commit is contained in:
steve-lunarg 2016-10-10 15:24:57 -06:00
parent f042e407a9
commit 4f2da27aec
22 changed files with 6033 additions and 192 deletions

View File

@ -5,7 +5,7 @@ gl_FragCoord origin is upper left
0:28 Function Definition: main( (temp structure{temp 4-component vector of float Color, temp float Depth})
0:28 Function Parameters:
0:? Sequence
0:32 textureFetch (global 4-component vector of float)
0:32 textureFetch (temp 4-component vector of float)
0:32 'g_tTex2dmsf4' (uniform texture2DMS)
0:32 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:32 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
@ -13,7 +13,7 @@ gl_FragCoord origin is upper left
0:32 1 (const uint)
0:32 Constant:
0:32 3 (const int)
0:33 textureFetch (global 4-component vector of int)
0:33 textureFetch (temp 4-component vector of int)
0:33 'g_tTex2dmsi4' (uniform itexture2DMS)
0:33 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:33 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
@ -21,7 +21,7 @@ gl_FragCoord origin is upper left
0:33 1 (const uint)
0:33 Constant:
0:33 3 (const int)
0:34 textureFetch (global 4-component vector of uint)
0:34 textureFetch (temp 4-component vector of uint)
0:34 'g_tTex2dmsu4' (uniform utexture2DMS)
0:34 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:34 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
@ -29,7 +29,7 @@ gl_FragCoord origin is upper left
0:34 1 (const uint)
0:34 Constant:
0:34 3 (const int)
0:37 textureFetchOffset (global 4-component vector of float)
0:37 textureFetchOffset (temp 4-component vector of float)
0:37 'g_tTex2dmsf4' (uniform texture2DMS)
0:37 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:37 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
@ -41,7 +41,7 @@ gl_FragCoord origin is upper left
0:37 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:37 Constant:
0:37 5 (const uint)
0:38 textureFetchOffset (global 4-component vector of int)
0:38 textureFetchOffset (temp 4-component vector of int)
0:38 'g_tTex2dmsi4' (uniform itexture2DMS)
0:38 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:38 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
@ -53,7 +53,7 @@ gl_FragCoord origin is upper left
0:38 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:38 Constant:
0:38 5 (const uint)
0:39 textureFetchOffset (global 4-component vector of uint)
0:39 textureFetchOffset (temp 4-component vector of uint)
0:39 'g_tTex2dmsu4' (uniform utexture2DMS)
0:39 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:39 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
@ -65,7 +65,7 @@ gl_FragCoord origin is upper left
0:39 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:39 Constant:
0:39 5 (const uint)
0:42 textureFetch (global 4-component vector of float)
0:42 textureFetch (temp 4-component vector of float)
0:42 'g_tTex2dmsf4a' (uniform texture2DMSArray)
0:42 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:42 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
@ -73,7 +73,7 @@ gl_FragCoord origin is upper left
0:42 2 (const uint)
0:42 Constant:
0:42 3 (const int)
0:43 textureFetch (global 4-component vector of int)
0:43 textureFetch (temp 4-component vector of int)
0:43 'g_tTex2dmsi4a' (uniform itexture2DMSArray)
0:43 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:43 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
@ -81,7 +81,7 @@ gl_FragCoord origin is upper left
0:43 2 (const uint)
0:43 Constant:
0:43 3 (const int)
0:44 textureFetch (global 4-component vector of uint)
0:44 textureFetch (temp 4-component vector of uint)
0:44 'g_tTex2dmsu4a' (uniform utexture2DMSArray)
0:44 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:44 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
@ -89,7 +89,7 @@ gl_FragCoord origin is upper left
0:44 2 (const uint)
0:44 Constant:
0:44 3 (const int)
0:47 textureFetchOffset (global 4-component vector of float)
0:47 textureFetchOffset (temp 4-component vector of float)
0:47 'g_tTex2dmsf4a' (uniform texture2DMSArray)
0:47 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:47 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
@ -101,7 +101,7 @@ gl_FragCoord origin is upper left
0:47 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:47 Constant:
0:47 5 (const uint)
0:48 textureFetchOffset (global 4-component vector of int)
0:48 textureFetchOffset (temp 4-component vector of int)
0:48 'g_tTex2dmsi4a' (uniform itexture2DMSArray)
0:48 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:48 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
@ -113,7 +113,7 @@ gl_FragCoord origin is upper left
0:48 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:48 Constant:
0:48 5 (const uint)
0:49 textureFetchOffset (global 4-component vector of uint)
0:49 textureFetchOffset (temp 4-component vector of uint)
0:49 'g_tTex2dmsu4a' (uniform utexture2DMSArray)
0:49 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:49 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
@ -179,7 +179,7 @@ gl_FragCoord origin is upper left
0:28 Function Definition: main( (temp structure{temp 4-component vector of float Color, temp float Depth})
0:28 Function Parameters:
0:? Sequence
0:32 textureFetch (global 4-component vector of float)
0:32 textureFetch (temp 4-component vector of float)
0:32 'g_tTex2dmsf4' (uniform texture2DMS)
0:32 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:32 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
@ -187,7 +187,7 @@ gl_FragCoord origin is upper left
0:32 1 (const uint)
0:32 Constant:
0:32 3 (const int)
0:33 textureFetch (global 4-component vector of int)
0:33 textureFetch (temp 4-component vector of int)
0:33 'g_tTex2dmsi4' (uniform itexture2DMS)
0:33 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:33 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
@ -195,7 +195,7 @@ gl_FragCoord origin is upper left
0:33 1 (const uint)
0:33 Constant:
0:33 3 (const int)
0:34 textureFetch (global 4-component vector of uint)
0:34 textureFetch (temp 4-component vector of uint)
0:34 'g_tTex2dmsu4' (uniform utexture2DMS)
0:34 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:34 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
@ -203,7 +203,7 @@ gl_FragCoord origin is upper left
0:34 1 (const uint)
0:34 Constant:
0:34 3 (const int)
0:37 textureFetchOffset (global 4-component vector of float)
0:37 textureFetchOffset (temp 4-component vector of float)
0:37 'g_tTex2dmsf4' (uniform texture2DMS)
0:37 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:37 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
@ -215,7 +215,7 @@ gl_FragCoord origin is upper left
0:37 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:37 Constant:
0:37 5 (const uint)
0:38 textureFetchOffset (global 4-component vector of int)
0:38 textureFetchOffset (temp 4-component vector of int)
0:38 'g_tTex2dmsi4' (uniform itexture2DMS)
0:38 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:38 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
@ -227,7 +227,7 @@ gl_FragCoord origin is upper left
0:38 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:38 Constant:
0:38 5 (const uint)
0:39 textureFetchOffset (global 4-component vector of uint)
0:39 textureFetchOffset (temp 4-component vector of uint)
0:39 'g_tTex2dmsu4' (uniform utexture2DMS)
0:39 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:39 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
@ -239,7 +239,7 @@ gl_FragCoord origin is upper left
0:39 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:39 Constant:
0:39 5 (const uint)
0:42 textureFetch (global 4-component vector of float)
0:42 textureFetch (temp 4-component vector of float)
0:42 'g_tTex2dmsf4a' (uniform texture2DMSArray)
0:42 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:42 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
@ -247,7 +247,7 @@ gl_FragCoord origin is upper left
0:42 2 (const uint)
0:42 Constant:
0:42 3 (const int)
0:43 textureFetch (global 4-component vector of int)
0:43 textureFetch (temp 4-component vector of int)
0:43 'g_tTex2dmsi4a' (uniform itexture2DMSArray)
0:43 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:43 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
@ -255,7 +255,7 @@ gl_FragCoord origin is upper left
0:43 2 (const uint)
0:43 Constant:
0:43 3 (const int)
0:44 textureFetch (global 4-component vector of uint)
0:44 textureFetch (temp 4-component vector of uint)
0:44 'g_tTex2dmsu4a' (uniform utexture2DMSArray)
0:44 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:44 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
@ -263,7 +263,7 @@ gl_FragCoord origin is upper left
0:44 2 (const uint)
0:44 Constant:
0:44 3 (const int)
0:47 textureFetchOffset (global 4-component vector of float)
0:47 textureFetchOffset (temp 4-component vector of float)
0:47 'g_tTex2dmsf4a' (uniform texture2DMSArray)
0:47 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:47 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
@ -275,7 +275,7 @@ gl_FragCoord origin is upper left
0:47 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:47 Constant:
0:47 5 (const uint)
0:48 textureFetchOffset (global 4-component vector of int)
0:48 textureFetchOffset (temp 4-component vector of int)
0:48 'g_tTex2dmsi4a' (uniform itexture2DMSArray)
0:48 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:48 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
@ -287,7 +287,7 @@ gl_FragCoord origin is upper left
0:48 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:48 Constant:
0:48 5 (const uint)
0:49 textureFetchOffset (global 4-component vector of uint)
0:49 textureFetchOffset (temp 4-component vector of uint)
0:49 'g_tTex2dmsu4a' (uniform utexture2DMSArray)
0:49 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:49 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})

View File

@ -5,7 +5,7 @@ gl_FragCoord origin is upper left
0:48 Function Definition: main( (temp structure{temp 4-component vector of float Color, temp float Depth})
0:48 Function Parameters:
0:? Sequence
0:52 textureFetch (global 4-component vector of float)
0:52 textureFetch (temp 4-component vector of float)
0:52 'g_tTex1df4a' (uniform texture1DArray)
0:52 vector swizzle (temp 2-component vector of int)
0:52 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
@ -24,7 +24,7 @@ gl_FragCoord origin is upper left
0:52 2 (const uint)
0:52 Constant:
0:52 2 (const int)
0:53 textureFetch (global 4-component vector of int)
0:53 textureFetch (temp 4-component vector of int)
0:53 'g_tTex1di4a' (uniform itexture1DArray)
0:53 vector swizzle (temp 2-component vector of int)
0:53 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
@ -43,7 +43,7 @@ gl_FragCoord origin is upper left
0:53 2 (const uint)
0:53 Constant:
0:53 2 (const int)
0:54 textureFetch (global 4-component vector of uint)
0:54 textureFetch (temp 4-component vector of uint)
0:54 'g_tTex1du4a' (uniform utexture1DArray)
0:54 vector swizzle (temp 2-component vector of int)
0:54 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
@ -62,7 +62,7 @@ gl_FragCoord origin is upper left
0:54 2 (const uint)
0:54 Constant:
0:54 2 (const int)
0:57 textureFetch (global 4-component vector of float)
0:57 textureFetch (temp 4-component vector of float)
0:57 'g_tTex2df4a' (uniform texture2DArray)
0:57 vector swizzle (temp 3-component vector of int)
0:57 c4: direct index for structure (layout(offset=32 ) uniform 4-component vector of int)
@ -83,7 +83,7 @@ gl_FragCoord origin is upper left
0:57 3 (const uint)
0:57 Constant:
0:57 3 (const int)
0:58 textureFetch (global 4-component vector of int)
0:58 textureFetch (temp 4-component vector of int)
0:58 'g_tTex2di4a' (uniform itexture2DArray)
0:58 vector swizzle (temp 3-component vector of int)
0:58 c4: direct index for structure (layout(offset=32 ) uniform 4-component vector of int)
@ -104,7 +104,7 @@ gl_FragCoord origin is upper left
0:58 3 (const uint)
0:58 Constant:
0:58 3 (const int)
0:59 textureFetch (global 4-component vector of uint)
0:59 textureFetch (temp 4-component vector of uint)
0:59 'g_tTex2du4a' (uniform utexture2DArray)
0:59 vector swizzle (temp 3-component vector of int)
0:59 c4: direct index for structure (layout(offset=32 ) uniform 4-component vector of int)
@ -194,7 +194,7 @@ gl_FragCoord origin is upper left
0:48 Function Definition: main( (temp structure{temp 4-component vector of float Color, temp float Depth})
0:48 Function Parameters:
0:? Sequence
0:52 textureFetch (global 4-component vector of float)
0:52 textureFetch (temp 4-component vector of float)
0:52 'g_tTex1df4a' (uniform texture1DArray)
0:52 vector swizzle (temp 2-component vector of int)
0:52 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
@ -213,7 +213,7 @@ gl_FragCoord origin is upper left
0:52 2 (const uint)
0:52 Constant:
0:52 2 (const int)
0:53 textureFetch (global 4-component vector of int)
0:53 textureFetch (temp 4-component vector of int)
0:53 'g_tTex1di4a' (uniform itexture1DArray)
0:53 vector swizzle (temp 2-component vector of int)
0:53 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
@ -232,7 +232,7 @@ gl_FragCoord origin is upper left
0:53 2 (const uint)
0:53 Constant:
0:53 2 (const int)
0:54 textureFetch (global 4-component vector of uint)
0:54 textureFetch (temp 4-component vector of uint)
0:54 'g_tTex1du4a' (uniform utexture1DArray)
0:54 vector swizzle (temp 2-component vector of int)
0:54 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
@ -251,7 +251,7 @@ gl_FragCoord origin is upper left
0:54 2 (const uint)
0:54 Constant:
0:54 2 (const int)
0:57 textureFetch (global 4-component vector of float)
0:57 textureFetch (temp 4-component vector of float)
0:57 'g_tTex2df4a' (uniform texture2DArray)
0:57 vector swizzle (temp 3-component vector of int)
0:57 c4: direct index for structure (layout(offset=32 ) uniform 4-component vector of int)
@ -272,7 +272,7 @@ gl_FragCoord origin is upper left
0:57 3 (const uint)
0:57 Constant:
0:57 3 (const int)
0:58 textureFetch (global 4-component vector of int)
0:58 textureFetch (temp 4-component vector of int)
0:58 'g_tTex2di4a' (uniform itexture2DArray)
0:58 vector swizzle (temp 3-component vector of int)
0:58 c4: direct index for structure (layout(offset=32 ) uniform 4-component vector of int)
@ -293,7 +293,7 @@ gl_FragCoord origin is upper left
0:58 3 (const uint)
0:58 Constant:
0:58 3 (const int)
0:59 textureFetch (global 4-component vector of uint)
0:59 textureFetch (temp 4-component vector of uint)
0:59 'g_tTex2du4a' (uniform utexture2DArray)
0:59 vector swizzle (temp 3-component vector of int)
0:59 c4: direct index for structure (layout(offset=32 ) uniform 4-component vector of int)

View File

@ -5,7 +5,7 @@ gl_FragCoord origin is upper left
0:48 Function Definition: main( (temp structure{temp 4-component vector of float Color, temp float Depth})
0:48 Function Parameters:
0:? Sequence
0:52 textureFetch (global 4-component vector of float)
0:52 textureFetch (temp 4-component vector of float)
0:52 'g_tTex1df4' (layout(binding=0 ) uniform texture1D)
0:52 vector swizzle (temp int)
0:52 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
@ -22,7 +22,7 @@ gl_FragCoord origin is upper left
0:52 1 (const uint)
0:52 Constant:
0:52 1 (const int)
0:53 textureFetch (global 4-component vector of int)
0:53 textureFetch (temp 4-component vector of int)
0:53 'g_tTex1di4' (uniform itexture1D)
0:53 vector swizzle (temp int)
0:53 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
@ -39,7 +39,7 @@ gl_FragCoord origin is upper left
0:53 1 (const uint)
0:53 Constant:
0:53 1 (const int)
0:54 textureFetch (global 4-component vector of uint)
0:54 textureFetch (temp 4-component vector of uint)
0:54 'g_tTex1du4' (uniform utexture1D)
0:54 vector swizzle (temp int)
0:54 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
@ -56,7 +56,7 @@ gl_FragCoord origin is upper left
0:54 1 (const uint)
0:54 Constant:
0:54 1 (const int)
0:57 textureFetch (global 4-component vector of float)
0:57 textureFetch (temp 4-component vector of float)
0:57 'g_tTex2df4' (uniform texture2D)
0:57 vector swizzle (temp 2-component vector of int)
0:57 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
@ -75,7 +75,7 @@ gl_FragCoord origin is upper left
0:57 2 (const uint)
0:57 Constant:
0:57 2 (const int)
0:58 textureFetch (global 4-component vector of int)
0:58 textureFetch (temp 4-component vector of int)
0:58 'g_tTex2di4' (uniform itexture2D)
0:58 vector swizzle (temp 2-component vector of int)
0:58 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
@ -94,7 +94,7 @@ gl_FragCoord origin is upper left
0:58 2 (const uint)
0:58 Constant:
0:58 2 (const int)
0:59 textureFetch (global 4-component vector of uint)
0:59 textureFetch (temp 4-component vector of uint)
0:59 'g_tTex2du4' (uniform utexture2D)
0:59 vector swizzle (temp 2-component vector of int)
0:59 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
@ -113,7 +113,7 @@ gl_FragCoord origin is upper left
0:59 2 (const uint)
0:59 Constant:
0:59 2 (const int)
0:62 textureFetch (global 4-component vector of float)
0:62 textureFetch (temp 4-component vector of float)
0:62 'g_tTex3df4' (uniform texture3D)
0:62 vector swizzle (temp 3-component vector of int)
0:62 c4: direct index for structure (layout(offset=32 ) uniform 4-component vector of int)
@ -134,7 +134,7 @@ gl_FragCoord origin is upper left
0:62 3 (const uint)
0:62 Constant:
0:62 3 (const int)
0:63 textureFetch (global 4-component vector of int)
0:63 textureFetch (temp 4-component vector of int)
0:63 'g_tTex3di4' (uniform itexture3D)
0:63 vector swizzle (temp 3-component vector of int)
0:63 c4: direct index for structure (layout(offset=32 ) uniform 4-component vector of int)
@ -155,7 +155,7 @@ gl_FragCoord origin is upper left
0:63 3 (const uint)
0:63 Constant:
0:63 3 (const int)
0:64 textureFetch (global 4-component vector of uint)
0:64 textureFetch (temp 4-component vector of uint)
0:64 'g_tTex3du4' (uniform utexture3D)
0:64 vector swizzle (temp 3-component vector of int)
0:64 c4: direct index for structure (layout(offset=32 ) uniform 4-component vector of int)
@ -245,7 +245,7 @@ gl_FragCoord origin is upper left
0:48 Function Definition: main( (temp structure{temp 4-component vector of float Color, temp float Depth})
0:48 Function Parameters:
0:? Sequence
0:52 textureFetch (global 4-component vector of float)
0:52 textureFetch (temp 4-component vector of float)
0:52 'g_tTex1df4' (layout(binding=0 ) uniform texture1D)
0:52 vector swizzle (temp int)
0:52 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
@ -262,7 +262,7 @@ gl_FragCoord origin is upper left
0:52 1 (const uint)
0:52 Constant:
0:52 1 (const int)
0:53 textureFetch (global 4-component vector of int)
0:53 textureFetch (temp 4-component vector of int)
0:53 'g_tTex1di4' (uniform itexture1D)
0:53 vector swizzle (temp int)
0:53 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
@ -279,7 +279,7 @@ gl_FragCoord origin is upper left
0:53 1 (const uint)
0:53 Constant:
0:53 1 (const int)
0:54 textureFetch (global 4-component vector of uint)
0:54 textureFetch (temp 4-component vector of uint)
0:54 'g_tTex1du4' (uniform utexture1D)
0:54 vector swizzle (temp int)
0:54 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
@ -296,7 +296,7 @@ gl_FragCoord origin is upper left
0:54 1 (const uint)
0:54 Constant:
0:54 1 (const int)
0:57 textureFetch (global 4-component vector of float)
0:57 textureFetch (temp 4-component vector of float)
0:57 'g_tTex2df4' (uniform texture2D)
0:57 vector swizzle (temp 2-component vector of int)
0:57 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
@ -315,7 +315,7 @@ gl_FragCoord origin is upper left
0:57 2 (const uint)
0:57 Constant:
0:57 2 (const int)
0:58 textureFetch (global 4-component vector of int)
0:58 textureFetch (temp 4-component vector of int)
0:58 'g_tTex2di4' (uniform itexture2D)
0:58 vector swizzle (temp 2-component vector of int)
0:58 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
@ -334,7 +334,7 @@ gl_FragCoord origin is upper left
0:58 2 (const uint)
0:58 Constant:
0:58 2 (const int)
0:59 textureFetch (global 4-component vector of uint)
0:59 textureFetch (temp 4-component vector of uint)
0:59 'g_tTex2du4' (uniform utexture2D)
0:59 vector swizzle (temp 2-component vector of int)
0:59 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
@ -353,7 +353,7 @@ gl_FragCoord origin is upper left
0:59 2 (const uint)
0:59 Constant:
0:59 2 (const int)
0:62 textureFetch (global 4-component vector of float)
0:62 textureFetch (temp 4-component vector of float)
0:62 'g_tTex3df4' (uniform texture3D)
0:62 vector swizzle (temp 3-component vector of int)
0:62 c4: direct index for structure (layout(offset=32 ) uniform 4-component vector of int)
@ -374,7 +374,7 @@ gl_FragCoord origin is upper left
0:62 3 (const uint)
0:62 Constant:
0:62 3 (const int)
0:63 textureFetch (global 4-component vector of int)
0:63 textureFetch (temp 4-component vector of int)
0:63 'g_tTex3di4' (uniform itexture3D)
0:63 vector swizzle (temp 3-component vector of int)
0:63 c4: direct index for structure (layout(offset=32 ) uniform 4-component vector of int)
@ -395,7 +395,7 @@ gl_FragCoord origin is upper left
0:63 3 (const uint)
0:63 Constant:
0:63 3 (const int)
0:64 textureFetch (global 4-component vector of uint)
0:64 textureFetch (temp 4-component vector of uint)
0:64 'g_tTex3du4' (uniform utexture3D)
0:64 vector swizzle (temp 3-component vector of int)
0:64 c4: direct index for structure (layout(offset=32 ) uniform 4-component vector of int)

View File

@ -4,7 +4,7 @@ Shader version: 450
0:47 Function Definition: main( (temp structure{temp 4-component vector of float Pos})
0:47 Function Parameters:
0:? Sequence
0:51 textureFetch (global 4-component vector of float)
0:51 textureFetch (temp 4-component vector of float)
0:51 'g_tTex1df4' (layout(binding=0 ) uniform texture1D)
0:51 vector swizzle (temp int)
0:51 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
@ -21,7 +21,7 @@ Shader version: 450
0:51 1 (const uint)
0:51 Constant:
0:51 1 (const int)
0:52 textureFetch (global 4-component vector of int)
0:52 textureFetch (temp 4-component vector of int)
0:52 'g_tTex1di4' (uniform itexture1D)
0:52 vector swizzle (temp int)
0:52 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
@ -38,7 +38,7 @@ Shader version: 450
0:52 1 (const uint)
0:52 Constant:
0:52 1 (const int)
0:53 textureFetch (global 4-component vector of uint)
0:53 textureFetch (temp 4-component vector of uint)
0:53 'g_tTex1du4' (uniform utexture1D)
0:53 vector swizzle (temp int)
0:53 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
@ -55,7 +55,7 @@ Shader version: 450
0:53 1 (const uint)
0:53 Constant:
0:53 1 (const int)
0:56 textureFetch (global 4-component vector of float)
0:56 textureFetch (temp 4-component vector of float)
0:56 'g_tTex2df4' (uniform texture2D)
0:56 vector swizzle (temp 2-component vector of int)
0:56 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
@ -74,7 +74,7 @@ Shader version: 450
0:56 2 (const uint)
0:56 Constant:
0:56 2 (const int)
0:57 textureFetch (global 4-component vector of int)
0:57 textureFetch (temp 4-component vector of int)
0:57 'g_tTex2di4' (uniform itexture2D)
0:57 vector swizzle (temp 2-component vector of int)
0:57 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
@ -93,7 +93,7 @@ Shader version: 450
0:57 2 (const uint)
0:57 Constant:
0:57 2 (const int)
0:58 textureFetch (global 4-component vector of uint)
0:58 textureFetch (temp 4-component vector of uint)
0:58 'g_tTex2du4' (uniform utexture2D)
0:58 vector swizzle (temp 2-component vector of int)
0:58 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
@ -112,7 +112,7 @@ Shader version: 450
0:58 2 (const uint)
0:58 Constant:
0:58 2 (const int)
0:61 textureFetch (global 4-component vector of float)
0:61 textureFetch (temp 4-component vector of float)
0:61 'g_tTex3df4' (uniform texture3D)
0:61 vector swizzle (temp 3-component vector of int)
0:61 c4: direct index for structure (layout(offset=32 ) uniform 4-component vector of int)
@ -133,7 +133,7 @@ Shader version: 450
0:61 3 (const uint)
0:61 Constant:
0:61 3 (const int)
0:62 textureFetch (global 4-component vector of int)
0:62 textureFetch (temp 4-component vector of int)
0:62 'g_tTex3di4' (uniform itexture3D)
0:62 vector swizzle (temp 3-component vector of int)
0:62 c4: direct index for structure (layout(offset=32 ) uniform 4-component vector of int)
@ -154,7 +154,7 @@ Shader version: 450
0:62 3 (const uint)
0:62 Constant:
0:62 3 (const int)
0:63 textureFetch (global 4-component vector of uint)
0:63 textureFetch (temp 4-component vector of uint)
0:63 'g_tTex3du4' (uniform utexture3D)
0:63 vector swizzle (temp 3-component vector of int)
0:63 c4: direct index for structure (layout(offset=32 ) uniform 4-component vector of int)
@ -229,7 +229,7 @@ Shader version: 450
0:47 Function Definition: main( (temp structure{temp 4-component vector of float Pos})
0:47 Function Parameters:
0:? Sequence
0:51 textureFetch (global 4-component vector of float)
0:51 textureFetch (temp 4-component vector of float)
0:51 'g_tTex1df4' (layout(binding=0 ) uniform texture1D)
0:51 vector swizzle (temp int)
0:51 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
@ -246,7 +246,7 @@ Shader version: 450
0:51 1 (const uint)
0:51 Constant:
0:51 1 (const int)
0:52 textureFetch (global 4-component vector of int)
0:52 textureFetch (temp 4-component vector of int)
0:52 'g_tTex1di4' (uniform itexture1D)
0:52 vector swizzle (temp int)
0:52 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
@ -263,7 +263,7 @@ Shader version: 450
0:52 1 (const uint)
0:52 Constant:
0:52 1 (const int)
0:53 textureFetch (global 4-component vector of uint)
0:53 textureFetch (temp 4-component vector of uint)
0:53 'g_tTex1du4' (uniform utexture1D)
0:53 vector swizzle (temp int)
0:53 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
@ -280,7 +280,7 @@ Shader version: 450
0:53 1 (const uint)
0:53 Constant:
0:53 1 (const int)
0:56 textureFetch (global 4-component vector of float)
0:56 textureFetch (temp 4-component vector of float)
0:56 'g_tTex2df4' (uniform texture2D)
0:56 vector swizzle (temp 2-component vector of int)
0:56 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
@ -299,7 +299,7 @@ Shader version: 450
0:56 2 (const uint)
0:56 Constant:
0:56 2 (const int)
0:57 textureFetch (global 4-component vector of int)
0:57 textureFetch (temp 4-component vector of int)
0:57 'g_tTex2di4' (uniform itexture2D)
0:57 vector swizzle (temp 2-component vector of int)
0:57 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
@ -318,7 +318,7 @@ Shader version: 450
0:57 2 (const uint)
0:57 Constant:
0:57 2 (const int)
0:58 textureFetch (global 4-component vector of uint)
0:58 textureFetch (temp 4-component vector of uint)
0:58 'g_tTex2du4' (uniform utexture2D)
0:58 vector swizzle (temp 2-component vector of int)
0:58 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
@ -337,7 +337,7 @@ Shader version: 450
0:58 2 (const uint)
0:58 Constant:
0:58 2 (const int)
0:61 textureFetch (global 4-component vector of float)
0:61 textureFetch (temp 4-component vector of float)
0:61 'g_tTex3df4' (uniform texture3D)
0:61 vector swizzle (temp 3-component vector of int)
0:61 c4: direct index for structure (layout(offset=32 ) uniform 4-component vector of int)
@ -358,7 +358,7 @@ Shader version: 450
0:61 3 (const uint)
0:61 Constant:
0:61 3 (const int)
0:62 textureFetch (global 4-component vector of int)
0:62 textureFetch (temp 4-component vector of int)
0:62 'g_tTex3di4' (uniform itexture3D)
0:62 vector swizzle (temp 3-component vector of int)
0:62 c4: direct index for structure (layout(offset=32 ) uniform 4-component vector of int)
@ -379,7 +379,7 @@ Shader version: 450
0:62 3 (const uint)
0:62 Constant:
0:62 3 (const int)
0:63 textureFetch (global 4-component vector of uint)
0:63 textureFetch (temp 4-component vector of uint)
0:63 'g_tTex3du4' (uniform utexture3D)
0:63 vector swizzle (temp 3-component vector of int)
0:63 c4: direct index for structure (layout(offset=32 ) uniform 4-component vector of int)

View File

@ -8,8 +8,8 @@ gl_FragCoord origin is upper left
0:28 Sequence
0:28 move second child to first child (temp 4-component vector of float)
0:28 'r00' (temp 4-component vector of float)
0:28 textureFetch (global 4-component vector of float)
0:28 'g_tTexbf4' (uniform samplerBuffer)
0:28 textureFetch (temp 4-component vector of float)
0:28 'g_tTexbf4' (layout(rgba32f ) uniform samplerBuffer)
0:28 c1: direct index for structure (layout(offset=0 ) uniform int)
0:28 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:28 Constant:
@ -17,8 +17,8 @@ gl_FragCoord origin is upper left
0:29 Sequence
0:29 move second child to first child (temp 4-component vector of int)
0:29 'r01' (temp 4-component vector of int)
0:29 textureFetch (global 4-component vector of int)
0:29 'g_tTexbi4' (uniform isamplerBuffer)
0:29 textureFetch (temp 4-component vector of int)
0:29 'g_tTexbi4' (layout(rgba32i ) uniform isamplerBuffer)
0:29 c1: direct index for structure (layout(offset=0 ) uniform int)
0:29 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:29 Constant:
@ -26,8 +26,8 @@ gl_FragCoord origin is upper left
0:30 Sequence
0:30 move second child to first child (temp 4-component vector of uint)
0:30 'r02' (temp 4-component vector of uint)
0:30 textureFetch (global 4-component vector of uint)
0:30 'g_tTexbu4' (uniform usamplerBuffer)
0:30 textureFetch (temp 4-component vector of uint)
0:30 'g_tTexbu4' (layout(rgba32ui ) uniform usamplerBuffer)
0:30 c1: direct index for structure (layout(offset=0 ) uniform int)
0:30 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:30 Constant:
@ -65,10 +65,10 @@ gl_FragCoord origin is upper left
0:37 1 (const int)
0:37 Branch: Return
0:? Linker Objects
0:? 'g_tTexbf4_test' (layout(binding=0 ) uniform samplerBuffer)
0:? 'g_tTexbf4' (uniform samplerBuffer)
0:? 'g_tTexbi4' (uniform isamplerBuffer)
0:? 'g_tTexbu4' (uniform usamplerBuffer)
0:? 'g_tTexbf4_test' (layout(binding=0 rgba32f ) uniform samplerBuffer)
0:? 'g_tTexbf4' (layout(rgba32f ) uniform samplerBuffer)
0:? 'g_tTexbi4' (layout(rgba32i ) uniform isamplerBuffer)
0:? 'g_tTexbu4' (layout(rgba32ui ) uniform usamplerBuffer)
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
0:? 'Depth' (out float FragDepth)
0:? 'anon@0' (uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
@ -86,8 +86,8 @@ gl_FragCoord origin is upper left
0:28 Sequence
0:28 move second child to first child (temp 4-component vector of float)
0:28 'r00' (temp 4-component vector of float)
0:28 textureFetch (global 4-component vector of float)
0:28 'g_tTexbf4' (uniform samplerBuffer)
0:28 textureFetch (temp 4-component vector of float)
0:28 'g_tTexbf4' (layout(rgba32f ) uniform samplerBuffer)
0:28 c1: direct index for structure (layout(offset=0 ) uniform int)
0:28 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:28 Constant:
@ -95,8 +95,8 @@ gl_FragCoord origin is upper left
0:29 Sequence
0:29 move second child to first child (temp 4-component vector of int)
0:29 'r01' (temp 4-component vector of int)
0:29 textureFetch (global 4-component vector of int)
0:29 'g_tTexbi4' (uniform isamplerBuffer)
0:29 textureFetch (temp 4-component vector of int)
0:29 'g_tTexbi4' (layout(rgba32i ) uniform isamplerBuffer)
0:29 c1: direct index for structure (layout(offset=0 ) uniform int)
0:29 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:29 Constant:
@ -104,8 +104,8 @@ gl_FragCoord origin is upper left
0:30 Sequence
0:30 move second child to first child (temp 4-component vector of uint)
0:30 'r02' (temp 4-component vector of uint)
0:30 textureFetch (global 4-component vector of uint)
0:30 'g_tTexbu4' (uniform usamplerBuffer)
0:30 textureFetch (temp 4-component vector of uint)
0:30 'g_tTexbu4' (layout(rgba32ui ) uniform usamplerBuffer)
0:30 c1: direct index for structure (layout(offset=0 ) uniform int)
0:30 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:30 Constant:
@ -143,10 +143,10 @@ gl_FragCoord origin is upper left
0:37 1 (const int)
0:37 Branch: Return
0:? Linker Objects
0:? 'g_tTexbf4_test' (layout(binding=0 ) uniform samplerBuffer)
0:? 'g_tTexbf4' (uniform samplerBuffer)
0:? 'g_tTexbi4' (uniform isamplerBuffer)
0:? 'g_tTexbu4' (uniform usamplerBuffer)
0:? 'g_tTexbf4_test' (layout(binding=0 rgba32f ) uniform samplerBuffer)
0:? 'g_tTexbf4' (layout(rgba32f ) uniform samplerBuffer)
0:? 'g_tTexbi4' (layout(rgba32i ) uniform isamplerBuffer)
0:? 'g_tTexbu4' (layout(rgba32ui ) uniform usamplerBuffer)
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
0:? 'Depth' (out float FragDepth)
0:? 'anon@0' (uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
@ -207,7 +207,7 @@ gl_FragCoord origin is upper left
6: TypeFloat 32
7: TypeVector 6(float) 4
8: TypePointer Function 7(fvec4)
10: TypeImage 6(float) Buffer sampled format:Unknown
10: TypeImage 6(float) Buffer sampled format:Rgba32f
11: TypeSampledImage 10
12: TypePointer UniformConstant 11
13(g_tTexbf4): 12(ptr) Variable UniformConstant
@ -221,14 +221,14 @@ gl_FragCoord origin is upper left
22: 15(int) Constant 0
23: TypePointer Uniform 15(int)
28: TypePointer Function 18(ivec4)
30: TypeImage 15(int) Buffer sampled format:Unknown
30: TypeImage 15(int) Buffer sampled format:Rgba32i
31: TypeSampledImage 30
32: TypePointer UniformConstant 31
33(g_tTexbi4): 32(ptr) Variable UniformConstant
39: TypeInt 32 0
40: TypeVector 39(int) 4
41: TypePointer Function 40(ivec4)
43: TypeImage 39(int) Buffer sampled format:Unknown
43: TypeImage 39(int) Buffer sampled format:Rgba32ui
44: TypeSampledImage 43
45: TypePointer UniformConstant 44
46(g_tTexbu4): 45(ptr) Variable UniformConstant

View File

@ -0,0 +1,280 @@
hlsl.load.buffer.float.dx10.frag
Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:24 Function Definition: main( (temp structure{temp 4-component vector of float Color, temp float Depth})
0:24 Function Parameters:
0:? Sequence
0:28 Sequence
0:28 move second child to first child (temp float)
0:28 'r00' (temp float)
0:28 textureFetch (temp float)
0:28 'g_tTexbfs' (layout(r32f ) uniform samplerBuffer)
0:28 c1: direct index for structure (layout(offset=0 ) uniform int)
0:28 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:28 Constant:
0:28 0 (const uint)
0:29 Sequence
0:29 move second child to first child (temp int)
0:29 'r01' (temp int)
0:29 textureFetch (temp int)
0:29 'g_tTexbis' (layout(r32i ) uniform isamplerBuffer)
0:29 c1: direct index for structure (layout(offset=0 ) uniform int)
0:29 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:29 Constant:
0:29 0 (const uint)
0:30 Sequence
0:30 move second child to first child (temp uint)
0:30 'r02' (temp uint)
0:30 textureFetch (temp uint)
0:30 'g_tTexbus' (layout(r32ui ) uniform usamplerBuffer)
0:30 c1: direct index for structure (layout(offset=0 ) uniform int)
0:30 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:30 Constant:
0:30 0 (const uint)
0:34 move second child to first child (temp 4-component vector of float)
0:34 Color: direct index for structure (temp 4-component vector of float)
0:34 'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:34 Constant:
0:34 0 (const int)
0:34 Constant:
0:34 1.000000
0:34 1.000000
0:34 1.000000
0:34 1.000000
0:35 move second child to first child (temp float)
0:35 Depth: direct index for structure (temp float)
0:35 'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:35 Constant:
0:35 1 (const int)
0:35 Constant:
0:35 1.000000
0:37 Sequence
0:37 Sequence
0:37 move second child to first child (temp 4-component vector of float)
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
0:37 Color: direct index for structure (temp 4-component vector of float)
0:37 'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:37 Constant:
0:37 0 (const int)
0:37 move second child to first child (temp float)
0:? 'Depth' (out float FragDepth)
0:37 Depth: direct index for structure (temp float)
0:37 'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:37 Constant:
0:37 1 (const int)
0:37 Branch: Return
0:? Linker Objects
0:? 'g_tTexbfs_test' (layout(binding=0 r32f ) uniform samplerBuffer)
0:? 'g_tTexbfs' (layout(r32f ) uniform samplerBuffer)
0:? 'g_tTexbis' (layout(r32i ) uniform isamplerBuffer)
0:? 'g_tTexbus' (layout(r32ui ) uniform usamplerBuffer)
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
0:? 'Depth' (out float FragDepth)
0:? 'anon@0' (uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
Linked fragment stage:
Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:24 Function Definition: main( (temp structure{temp 4-component vector of float Color, temp float Depth})
0:24 Function Parameters:
0:? Sequence
0:28 Sequence
0:28 move second child to first child (temp float)
0:28 'r00' (temp float)
0:28 textureFetch (temp float)
0:28 'g_tTexbfs' (layout(r32f ) uniform samplerBuffer)
0:28 c1: direct index for structure (layout(offset=0 ) uniform int)
0:28 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:28 Constant:
0:28 0 (const uint)
0:29 Sequence
0:29 move second child to first child (temp int)
0:29 'r01' (temp int)
0:29 textureFetch (temp int)
0:29 'g_tTexbis' (layout(r32i ) uniform isamplerBuffer)
0:29 c1: direct index for structure (layout(offset=0 ) uniform int)
0:29 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:29 Constant:
0:29 0 (const uint)
0:30 Sequence
0:30 move second child to first child (temp uint)
0:30 'r02' (temp uint)
0:30 textureFetch (temp uint)
0:30 'g_tTexbus' (layout(r32ui ) uniform usamplerBuffer)
0:30 c1: direct index for structure (layout(offset=0 ) uniform int)
0:30 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:30 Constant:
0:30 0 (const uint)
0:34 move second child to first child (temp 4-component vector of float)
0:34 Color: direct index for structure (temp 4-component vector of float)
0:34 'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:34 Constant:
0:34 0 (const int)
0:34 Constant:
0:34 1.000000
0:34 1.000000
0:34 1.000000
0:34 1.000000
0:35 move second child to first child (temp float)
0:35 Depth: direct index for structure (temp float)
0:35 'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:35 Constant:
0:35 1 (const int)
0:35 Constant:
0:35 1.000000
0:37 Sequence
0:37 Sequence
0:37 move second child to first child (temp 4-component vector of float)
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
0:37 Color: direct index for structure (temp 4-component vector of float)
0:37 'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:37 Constant:
0:37 0 (const int)
0:37 move second child to first child (temp float)
0:? 'Depth' (out float FragDepth)
0:37 Depth: direct index for structure (temp float)
0:37 'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:37 Constant:
0:37 1 (const int)
0:37 Branch: Return
0:? Linker Objects
0:? 'g_tTexbfs_test' (layout(binding=0 r32f ) uniform samplerBuffer)
0:? 'g_tTexbfs' (layout(r32f ) uniform samplerBuffer)
0:? 'g_tTexbis' (layout(r32i ) uniform isamplerBuffer)
0:? 'g_tTexbus' (layout(r32ui ) uniform usamplerBuffer)
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
0:? 'Depth' (out float FragDepth)
0:? 'anon@0' (uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
// Module Version 10000
// Generated by (magic number): 80001
// Id's are bound by 70
Capability Shader
Capability SampledBuffer
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main" 61 65
ExecutionMode 4 OriginUpperLeft
Name 4 "main"
Name 8 "r00"
Name 12 "g_tTexbfs"
Name 18 "$Global"
MemberName 18($Global) 0 "c1"
MemberName 18($Global) 1 "c2"
MemberName 18($Global) 2 "c3"
MemberName 18($Global) 3 "c4"
MemberName 18($Global) 4 "o1"
MemberName 18($Global) 5 "o2"
MemberName 18($Global) 6 "o3"
MemberName 18($Global) 7 "o4"
Name 20 ""
Name 28 "r01"
Name 32 "g_tTexbis"
Name 40 "r02"
Name 44 "g_tTexbus"
Name 51 "PS_OUTPUT"
MemberName 51(PS_OUTPUT) 0 "Color"
MemberName 51(PS_OUTPUT) 1 "Depth"
Name 53 "psout"
Name 61 "Color"
Name 65 "Depth"
Name 69 "g_tTexbfs_test"
Decorate 12(g_tTexbfs) DescriptorSet 0
MemberDecorate 18($Global) 0 Offset 0
MemberDecorate 18($Global) 1 Offset 8
MemberDecorate 18($Global) 2 Offset 16
MemberDecorate 18($Global) 3 Offset 32
MemberDecorate 18($Global) 4 Offset 48
MemberDecorate 18($Global) 5 Offset 56
MemberDecorate 18($Global) 6 Offset 64
MemberDecorate 18($Global) 7 Offset 80
Decorate 18($Global) Block
Decorate 20 DescriptorSet 0
Decorate 32(g_tTexbis) DescriptorSet 0
Decorate 44(g_tTexbus) DescriptorSet 0
Decorate 61(Color) Location 0
Decorate 65(Depth) BuiltIn FragDepth
Decorate 69(g_tTexbfs_test) DescriptorSet 0
Decorate 69(g_tTexbfs_test) Binding 0
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
7: TypePointer Function 6(float)
9: TypeImage 6(float) Buffer sampled format:R32f
10: TypeSampledImage 9
11: TypePointer UniformConstant 10
12(g_tTexbfs): 11(ptr) Variable UniformConstant
14: TypeInt 32 1
15: TypeVector 14(int) 2
16: TypeVector 14(int) 3
17: TypeVector 14(int) 4
18($Global): TypeStruct 14(int) 15(ivec2) 16(ivec3) 17(ivec4) 14(int) 15(ivec2) 16(ivec3) 17(ivec4)
19: TypePointer Uniform 18($Global)
20: 19(ptr) Variable Uniform
21: 14(int) Constant 0
22: TypePointer Uniform 14(int)
27: TypePointer Function 14(int)
29: TypeImage 14(int) Buffer sampled format:R32i
30: TypeSampledImage 29
31: TypePointer UniformConstant 30
32(g_tTexbis): 31(ptr) Variable UniformConstant
38: TypeInt 32 0
39: TypePointer Function 38(int)
41: TypeImage 38(int) Buffer sampled format:R32ui
42: TypeSampledImage 41
43: TypePointer UniformConstant 42
44(g_tTexbus): 43(ptr) Variable UniformConstant
50: TypeVector 6(float) 4
51(PS_OUTPUT): TypeStruct 50(fvec4) 6(float)
52: TypePointer Function 51(PS_OUTPUT)
54: 6(float) Constant 1065353216
55: 50(fvec4) ConstantComposite 54 54 54 54
56: TypePointer Function 50(fvec4)
58: 14(int) Constant 1
60: TypePointer Output 50(fvec4)
61(Color): 60(ptr) Variable Output
64: TypePointer Output 6(float)
65(Depth): 64(ptr) Variable Output
69(g_tTexbfs_test): 11(ptr) Variable UniformConstant
4(main): 2 Function None 3
5: Label
8(r00): 7(ptr) Variable Function
28(r01): 27(ptr) Variable Function
40(r02): 39(ptr) Variable Function
53(psout): 52(ptr) Variable Function
13: 10 Load 12(g_tTexbfs)
23: 22(ptr) AccessChain 20 21
24: 14(int) Load 23
25: 9 Image 13
26: 6(float) ImageFetch 25 24
Store 8(r00) 26
33: 30 Load 32(g_tTexbis)
34: 22(ptr) AccessChain 20 21
35: 14(int) Load 34
36: 29 Image 33
37: 14(int) ImageFetch 36 35
Store 28(r01) 37
45: 42 Load 44(g_tTexbus)
46: 22(ptr) AccessChain 20 21
47: 14(int) Load 46
48: 41 Image 45
49: 38(int) ImageFetch 48 47
Store 40(r02) 49
57: 56(ptr) AccessChain 53(psout) 21
Store 57 55
59: 7(ptr) AccessChain 53(psout) 58
Store 59 54
62: 56(ptr) AccessChain 53(psout) 21
63: 50(fvec4) Load 62
Store 61(Color) 63
66: 7(ptr) AccessChain 53(psout) 58
67: 6(float) Load 66
Store 65(Depth) 67
Return
FunctionEnd

View File

@ -5,7 +5,7 @@ gl_FragCoord origin is upper left
0:48 Function Definition: main( (temp structure{temp 4-component vector of float Color, temp float Depth})
0:48 Function Parameters:
0:? Sequence
0:52 textureFetchOffset (global 4-component vector of float)
0:52 textureFetchOffset (temp 4-component vector of float)
0:52 'g_tTex1df4' (layout(binding=0 ) uniform texture1D)
0:52 vector swizzle (temp int)
0:52 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
@ -26,7 +26,7 @@ gl_FragCoord origin is upper left
0:52 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:52 Constant:
0:52 4 (const uint)
0:53 textureFetchOffset (global 4-component vector of int)
0:53 textureFetchOffset (temp 4-component vector of int)
0:53 'g_tTex1di4' (uniform itexture1D)
0:53 vector swizzle (temp int)
0:53 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
@ -47,7 +47,7 @@ gl_FragCoord origin is upper left
0:53 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:53 Constant:
0:53 4 (const uint)
0:54 textureFetchOffset (global 4-component vector of uint)
0:54 textureFetchOffset (temp 4-component vector of uint)
0:54 'g_tTex1du4' (uniform utexture1D)
0:54 vector swizzle (temp int)
0:54 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
@ -68,7 +68,7 @@ gl_FragCoord origin is upper left
0:54 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:54 Constant:
0:54 4 (const uint)
0:57 textureFetchOffset (global 4-component vector of float)
0:57 textureFetchOffset (temp 4-component vector of float)
0:57 'g_tTex2df4' (uniform texture2D)
0:57 vector swizzle (temp 2-component vector of int)
0:57 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
@ -91,7 +91,7 @@ gl_FragCoord origin is upper left
0:57 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:57 Constant:
0:57 5 (const uint)
0:58 textureFetchOffset (global 4-component vector of int)
0:58 textureFetchOffset (temp 4-component vector of int)
0:58 'g_tTex2di4' (uniform itexture2D)
0:58 vector swizzle (temp 2-component vector of int)
0:58 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
@ -114,7 +114,7 @@ gl_FragCoord origin is upper left
0:58 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:58 Constant:
0:58 5 (const uint)
0:59 textureFetchOffset (global 4-component vector of uint)
0:59 textureFetchOffset (temp 4-component vector of uint)
0:59 'g_tTex2du4' (uniform utexture2D)
0:59 vector swizzle (temp 2-component vector of int)
0:59 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
@ -137,7 +137,7 @@ gl_FragCoord origin is upper left
0:59 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:59 Constant:
0:59 5 (const uint)
0:62 textureFetchOffset (global 4-component vector of float)
0:62 textureFetchOffset (temp 4-component vector of float)
0:62 'g_tTex3df4' (uniform texture3D)
0:62 vector swizzle (temp 3-component vector of int)
0:62 c4: direct index for structure (layout(offset=32 ) uniform 4-component vector of int)
@ -162,7 +162,7 @@ gl_FragCoord origin is upper left
0:62 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:62 Constant:
0:62 6 (const uint)
0:63 textureFetchOffset (global 4-component vector of int)
0:63 textureFetchOffset (temp 4-component vector of int)
0:63 'g_tTex3di4' (uniform itexture3D)
0:63 vector swizzle (temp 3-component vector of int)
0:63 c4: direct index for structure (layout(offset=32 ) uniform 4-component vector of int)
@ -187,7 +187,7 @@ gl_FragCoord origin is upper left
0:63 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:63 Constant:
0:63 6 (const uint)
0:64 textureFetchOffset (global 4-component vector of uint)
0:64 textureFetchOffset (temp 4-component vector of uint)
0:64 'g_tTex3du4' (uniform utexture3D)
0:64 vector swizzle (temp 3-component vector of int)
0:64 c4: direct index for structure (layout(offset=32 ) uniform 4-component vector of int)
@ -281,7 +281,7 @@ gl_FragCoord origin is upper left
0:48 Function Definition: main( (temp structure{temp 4-component vector of float Color, temp float Depth})
0:48 Function Parameters:
0:? Sequence
0:52 textureFetchOffset (global 4-component vector of float)
0:52 textureFetchOffset (temp 4-component vector of float)
0:52 'g_tTex1df4' (layout(binding=0 ) uniform texture1D)
0:52 vector swizzle (temp int)
0:52 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
@ -302,7 +302,7 @@ gl_FragCoord origin is upper left
0:52 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:52 Constant:
0:52 4 (const uint)
0:53 textureFetchOffset (global 4-component vector of int)
0:53 textureFetchOffset (temp 4-component vector of int)
0:53 'g_tTex1di4' (uniform itexture1D)
0:53 vector swizzle (temp int)
0:53 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
@ -323,7 +323,7 @@ gl_FragCoord origin is upper left
0:53 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:53 Constant:
0:53 4 (const uint)
0:54 textureFetchOffset (global 4-component vector of uint)
0:54 textureFetchOffset (temp 4-component vector of uint)
0:54 'g_tTex1du4' (uniform utexture1D)
0:54 vector swizzle (temp int)
0:54 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
@ -344,7 +344,7 @@ gl_FragCoord origin is upper left
0:54 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:54 Constant:
0:54 4 (const uint)
0:57 textureFetchOffset (global 4-component vector of float)
0:57 textureFetchOffset (temp 4-component vector of float)
0:57 'g_tTex2df4' (uniform texture2D)
0:57 vector swizzle (temp 2-component vector of int)
0:57 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
@ -367,7 +367,7 @@ gl_FragCoord origin is upper left
0:57 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:57 Constant:
0:57 5 (const uint)
0:58 textureFetchOffset (global 4-component vector of int)
0:58 textureFetchOffset (temp 4-component vector of int)
0:58 'g_tTex2di4' (uniform itexture2D)
0:58 vector swizzle (temp 2-component vector of int)
0:58 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
@ -390,7 +390,7 @@ gl_FragCoord origin is upper left
0:58 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:58 Constant:
0:58 5 (const uint)
0:59 textureFetchOffset (global 4-component vector of uint)
0:59 textureFetchOffset (temp 4-component vector of uint)
0:59 'g_tTex2du4' (uniform utexture2D)
0:59 vector swizzle (temp 2-component vector of int)
0:59 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
@ -413,7 +413,7 @@ gl_FragCoord origin is upper left
0:59 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:59 Constant:
0:59 5 (const uint)
0:62 textureFetchOffset (global 4-component vector of float)
0:62 textureFetchOffset (temp 4-component vector of float)
0:62 'g_tTex3df4' (uniform texture3D)
0:62 vector swizzle (temp 3-component vector of int)
0:62 c4: direct index for structure (layout(offset=32 ) uniform 4-component vector of int)
@ -438,7 +438,7 @@ gl_FragCoord origin is upper left
0:62 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:62 Constant:
0:62 6 (const uint)
0:63 textureFetchOffset (global 4-component vector of int)
0:63 textureFetchOffset (temp 4-component vector of int)
0:63 'g_tTex3di4' (uniform itexture3D)
0:63 vector swizzle (temp 3-component vector of int)
0:63 c4: direct index for structure (layout(offset=32 ) uniform 4-component vector of int)
@ -463,7 +463,7 @@ gl_FragCoord origin is upper left
0:63 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:63 Constant:
0:63 6 (const uint)
0:64 textureFetchOffset (global 4-component vector of uint)
0:64 textureFetchOffset (temp 4-component vector of uint)
0:64 'g_tTex3du4' (uniform utexture3D)
0:64 vector swizzle (temp 3-component vector of int)
0:64 c4: direct index for structure (layout(offset=32 ) uniform 4-component vector of int)

View File

@ -5,7 +5,7 @@ gl_FragCoord origin is upper left
0:48 Function Definition: main( (temp structure{temp 4-component vector of float Color, temp float Depth})
0:48 Function Parameters:
0:? Sequence
0:52 textureFetchOffset (global 4-component vector of float)
0:52 textureFetchOffset (temp 4-component vector of float)
0:52 'g_tTex1df4a' (uniform texture1DArray)
0:52 vector swizzle (temp 2-component vector of int)
0:52 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
@ -28,7 +28,7 @@ gl_FragCoord origin is upper left
0:52 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:52 Constant:
0:52 4 (const uint)
0:53 textureFetchOffset (global 4-component vector of int)
0:53 textureFetchOffset (temp 4-component vector of int)
0:53 'g_tTex1di4a' (uniform itexture1DArray)
0:53 vector swizzle (temp 2-component vector of int)
0:53 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
@ -51,7 +51,7 @@ gl_FragCoord origin is upper left
0:53 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:53 Constant:
0:53 4 (const uint)
0:54 textureFetchOffset (global 4-component vector of uint)
0:54 textureFetchOffset (temp 4-component vector of uint)
0:54 'g_tTex1du4a' (uniform utexture1DArray)
0:54 vector swizzle (temp 2-component vector of int)
0:54 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
@ -74,7 +74,7 @@ gl_FragCoord origin is upper left
0:54 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:54 Constant:
0:54 4 (const uint)
0:57 textureFetchOffset (global 4-component vector of float)
0:57 textureFetchOffset (temp 4-component vector of float)
0:57 'g_tTex2df4a' (uniform texture2DArray)
0:57 vector swizzle (temp 3-component vector of int)
0:57 c4: direct index for structure (layout(offset=32 ) uniform 4-component vector of int)
@ -99,7 +99,7 @@ gl_FragCoord origin is upper left
0:57 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:57 Constant:
0:57 5 (const uint)
0:58 textureFetchOffset (global 4-component vector of int)
0:58 textureFetchOffset (temp 4-component vector of int)
0:58 'g_tTex2di4a' (uniform itexture2DArray)
0:58 vector swizzle (temp 3-component vector of int)
0:58 c4: direct index for structure (layout(offset=32 ) uniform 4-component vector of int)
@ -124,7 +124,7 @@ gl_FragCoord origin is upper left
0:58 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:58 Constant:
0:58 5 (const uint)
0:59 textureFetchOffset (global 4-component vector of uint)
0:59 textureFetchOffset (temp 4-component vector of uint)
0:59 'g_tTex2du4a' (uniform utexture2DArray)
0:59 vector swizzle (temp 3-component vector of int)
0:59 c4: direct index for structure (layout(offset=32 ) uniform 4-component vector of int)
@ -218,7 +218,7 @@ gl_FragCoord origin is upper left
0:48 Function Definition: main( (temp structure{temp 4-component vector of float Color, temp float Depth})
0:48 Function Parameters:
0:? Sequence
0:52 textureFetchOffset (global 4-component vector of float)
0:52 textureFetchOffset (temp 4-component vector of float)
0:52 'g_tTex1df4a' (uniform texture1DArray)
0:52 vector swizzle (temp 2-component vector of int)
0:52 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
@ -241,7 +241,7 @@ gl_FragCoord origin is upper left
0:52 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:52 Constant:
0:52 4 (const uint)
0:53 textureFetchOffset (global 4-component vector of int)
0:53 textureFetchOffset (temp 4-component vector of int)
0:53 'g_tTex1di4a' (uniform itexture1DArray)
0:53 vector swizzle (temp 2-component vector of int)
0:53 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
@ -264,7 +264,7 @@ gl_FragCoord origin is upper left
0:53 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:53 Constant:
0:53 4 (const uint)
0:54 textureFetchOffset (global 4-component vector of uint)
0:54 textureFetchOffset (temp 4-component vector of uint)
0:54 'g_tTex1du4a' (uniform utexture1DArray)
0:54 vector swizzle (temp 2-component vector of int)
0:54 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
@ -287,7 +287,7 @@ gl_FragCoord origin is upper left
0:54 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:54 Constant:
0:54 4 (const uint)
0:57 textureFetchOffset (global 4-component vector of float)
0:57 textureFetchOffset (temp 4-component vector of float)
0:57 'g_tTex2df4a' (uniform texture2DArray)
0:57 vector swizzle (temp 3-component vector of int)
0:57 c4: direct index for structure (layout(offset=32 ) uniform 4-component vector of int)
@ -312,7 +312,7 @@ gl_FragCoord origin is upper left
0:57 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:57 Constant:
0:57 5 (const uint)
0:58 textureFetchOffset (global 4-component vector of int)
0:58 textureFetchOffset (temp 4-component vector of int)
0:58 'g_tTex2di4a' (uniform itexture2DArray)
0:58 vector swizzle (temp 3-component vector of int)
0:58 c4: direct index for structure (layout(offset=32 ) uniform 4-component vector of int)
@ -337,7 +337,7 @@ gl_FragCoord origin is upper left
0:58 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:58 Constant:
0:58 5 (const uint)
0:59 textureFetchOffset (global 4-component vector of uint)
0:59 textureFetchOffset (temp 4-component vector of uint)
0:59 'g_tTex2du4a' (uniform utexture2DArray)
0:59 vector swizzle (temp 3-component vector of int)
0:59 c4: direct index for structure (layout(offset=32 ) uniform 4-component vector of int)

View File

@ -5,19 +5,19 @@ gl_FragCoord origin is upper left
0:22 Function Definition: main( (temp structure{temp 4-component vector of float Color})
0:22 Function Parameters:
0:? Sequence
0:25 imageLoad (global 4-component vector of float)
0:25 imageLoad (temp 4-component vector of float)
0:25 'g_tBuffF' (layout(rgba32f ) uniform imageBuffer)
0:25 c1: direct index for structure (layout(offset=0 ) uniform int)
0:25 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:25 Constant:
0:25 0 (const uint)
0:26 imageLoad (global 4-component vector of uint)
0:26 imageLoad (temp 4-component vector of uint)
0:26 'g_tBuffU' (layout(rgba32ui ) uniform uimageBuffer)
0:26 c1: direct index for structure (layout(offset=0 ) uniform int)
0:26 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:26 Constant:
0:26 0 (const uint)
0:27 imageLoad (global 4-component vector of int)
0:27 imageLoad (temp 4-component vector of int)
0:27 'g_tBuffI' (layout(rgba32i ) uniform iimageBuffer)
0:27 c1: direct index for structure (layout(offset=0 ) uniform int)
0:27 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
@ -59,19 +59,19 @@ gl_FragCoord origin is upper left
0:22 Function Definition: main( (temp structure{temp 4-component vector of float Color})
0:22 Function Parameters:
0:? Sequence
0:25 imageLoad (global 4-component vector of float)
0:25 imageLoad (temp 4-component vector of float)
0:25 'g_tBuffF' (layout(rgba32f ) uniform imageBuffer)
0:25 c1: direct index for structure (layout(offset=0 ) uniform int)
0:25 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:25 Constant:
0:25 0 (const uint)
0:26 imageLoad (global 4-component vector of uint)
0:26 imageLoad (temp 4-component vector of uint)
0:26 'g_tBuffU' (layout(rgba32ui ) uniform uimageBuffer)
0:26 c1: direct index for structure (layout(offset=0 ) uniform int)
0:26 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:26 Constant:
0:26 0 (const uint)
0:27 imageLoad (global 4-component vector of int)
0:27 imageLoad (temp 4-component vector of int)
0:27 'g_tBuffI' (layout(rgba32i ) uniform iimageBuffer)
0:27 c1: direct index for structure (layout(offset=0 ) uniform int)
0:27 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})

View File

@ -5,37 +5,37 @@ gl_FragCoord origin is upper left
0:40 Function Definition: main( (temp structure{temp 4-component vector of float Color, temp float Depth})
0:40 Function Parameters:
0:? Sequence
0:44 imageLoad (global 4-component vector of float)
0:44 imageLoad (temp 4-component vector of float)
0:44 'g_tTex1df4a' (layout(rgba32f ) uniform image1DArray)
0:44 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:44 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:44 Constant:
0:44 1 (const uint)
0:45 imageLoad (global 4-component vector of int)
0:45 imageLoad (temp 4-component vector of int)
0:45 'g_tTex1di4a' (layout(rgba32i ) uniform iimage1DArray)
0:45 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:45 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:45 Constant:
0:45 1 (const uint)
0:46 imageLoad (global 4-component vector of uint)
0:46 imageLoad (temp 4-component vector of uint)
0:46 'g_tTex1du4a' (layout(rgba32ui ) uniform uimage1DArray)
0:46 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:46 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:46 Constant:
0:46 1 (const uint)
0:49 imageLoad (global 4-component vector of float)
0:49 imageLoad (temp 4-component vector of float)
0:49 'g_tTex2df4a' (layout(rgba32f ) uniform image2DArray)
0:49 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:49 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:49 Constant:
0:49 2 (const uint)
0:50 imageLoad (global 4-component vector of int)
0:50 imageLoad (temp 4-component vector of int)
0:50 'g_tTex2di4a' (layout(rgba32i ) uniform iimage2DArray)
0:50 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:50 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:50 Constant:
0:50 2 (const uint)
0:51 imageLoad (global 4-component vector of uint)
0:51 imageLoad (temp 4-component vector of uint)
0:51 'g_tTex2du4a' (layout(rgba32ui ) uniform uimage2DArray)
0:51 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:51 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
@ -104,37 +104,37 @@ gl_FragCoord origin is upper left
0:40 Function Definition: main( (temp structure{temp 4-component vector of float Color, temp float Depth})
0:40 Function Parameters:
0:? Sequence
0:44 imageLoad (global 4-component vector of float)
0:44 imageLoad (temp 4-component vector of float)
0:44 'g_tTex1df4a' (layout(rgba32f ) uniform image1DArray)
0:44 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:44 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:44 Constant:
0:44 1 (const uint)
0:45 imageLoad (global 4-component vector of int)
0:45 imageLoad (temp 4-component vector of int)
0:45 'g_tTex1di4a' (layout(rgba32i ) uniform iimage1DArray)
0:45 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:45 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:45 Constant:
0:45 1 (const uint)
0:46 imageLoad (global 4-component vector of uint)
0:46 imageLoad (temp 4-component vector of uint)
0:46 'g_tTex1du4a' (layout(rgba32ui ) uniform uimage1DArray)
0:46 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:46 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:46 Constant:
0:46 1 (const uint)
0:49 imageLoad (global 4-component vector of float)
0:49 imageLoad (temp 4-component vector of float)
0:49 'g_tTex2df4a' (layout(rgba32f ) uniform image2DArray)
0:49 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:49 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:49 Constant:
0:49 2 (const uint)
0:50 imageLoad (global 4-component vector of int)
0:50 imageLoad (temp 4-component vector of int)
0:50 'g_tTex2di4a' (layout(rgba32i ) uniform iimage2DArray)
0:50 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:50 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:50 Constant:
0:50 2 (const uint)
0:51 imageLoad (global 4-component vector of uint)
0:51 imageLoad (temp 4-component vector of uint)
0:51 'g_tTex2du4a' (layout(rgba32ui ) uniform uimage2DArray)
0:51 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:51 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})

View File

@ -5,55 +5,55 @@ gl_FragCoord origin is upper left
0:40 Function Definition: main( (temp structure{temp 4-component vector of float Color, temp float Depth})
0:40 Function Parameters:
0:? Sequence
0:44 imageLoad (global 4-component vector of float)
0:44 imageLoad (temp 4-component vector of float)
0:44 'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:44 c1: direct index for structure (layout(offset=0 ) uniform int)
0:44 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:44 Constant:
0:44 0 (const uint)
0:45 imageLoad (global 4-component vector of int)
0:45 imageLoad (temp 4-component vector of int)
0:45 'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:45 c1: direct index for structure (layout(offset=0 ) uniform int)
0:45 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:45 Constant:
0:45 0 (const uint)
0:46 imageLoad (global 4-component vector of uint)
0:46 imageLoad (temp 4-component vector of uint)
0:46 'g_tTex1du4' (layout(rgba32ui ) uniform uimage1D)
0:46 c1: direct index for structure (layout(offset=0 ) uniform int)
0:46 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:46 Constant:
0:46 0 (const uint)
0:49 imageLoad (global 4-component vector of float)
0:49 imageLoad (temp 4-component vector of float)
0:49 'g_tTex2df4' (layout(rgba32f ) uniform image2D)
0:49 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:49 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:49 Constant:
0:49 1 (const uint)
0:50 imageLoad (global 4-component vector of int)
0:50 imageLoad (temp 4-component vector of int)
0:50 'g_tTex2di4' (layout(rgba32i ) uniform iimage2D)
0:50 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:50 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:50 Constant:
0:50 1 (const uint)
0:51 imageLoad (global 4-component vector of uint)
0:51 imageLoad (temp 4-component vector of uint)
0:51 'g_tTex2du4' (layout(rgba32ui ) uniform uimage2D)
0:51 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:51 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:51 Constant:
0:51 1 (const uint)
0:54 imageLoad (global 4-component vector of float)
0:54 imageLoad (temp 4-component vector of float)
0:54 'g_tTex3df4' (layout(rgba32f ) uniform image3D)
0:54 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:54 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:54 Constant:
0:54 2 (const uint)
0:55 imageLoad (global 4-component vector of int)
0:55 imageLoad (temp 4-component vector of int)
0:55 'g_tTex3di4' (layout(rgba32i ) uniform iimage3D)
0:55 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:55 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:55 Constant:
0:55 2 (const uint)
0:56 imageLoad (global 4-component vector of uint)
0:56 imageLoad (temp 4-component vector of uint)
0:56 'g_tTex3du4' (layout(rgba32ui ) uniform uimage3D)
0:56 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:56 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
@ -122,55 +122,55 @@ gl_FragCoord origin is upper left
0:40 Function Definition: main( (temp structure{temp 4-component vector of float Color, temp float Depth})
0:40 Function Parameters:
0:? Sequence
0:44 imageLoad (global 4-component vector of float)
0:44 imageLoad (temp 4-component vector of float)
0:44 'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:44 c1: direct index for structure (layout(offset=0 ) uniform int)
0:44 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:44 Constant:
0:44 0 (const uint)
0:45 imageLoad (global 4-component vector of int)
0:45 imageLoad (temp 4-component vector of int)
0:45 'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:45 c1: direct index for structure (layout(offset=0 ) uniform int)
0:45 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:45 Constant:
0:45 0 (const uint)
0:46 imageLoad (global 4-component vector of uint)
0:46 imageLoad (temp 4-component vector of uint)
0:46 'g_tTex1du4' (layout(rgba32ui ) uniform uimage1D)
0:46 c1: direct index for structure (layout(offset=0 ) uniform int)
0:46 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:46 Constant:
0:46 0 (const uint)
0:49 imageLoad (global 4-component vector of float)
0:49 imageLoad (temp 4-component vector of float)
0:49 'g_tTex2df4' (layout(rgba32f ) uniform image2D)
0:49 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:49 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:49 Constant:
0:49 1 (const uint)
0:50 imageLoad (global 4-component vector of int)
0:50 imageLoad (temp 4-component vector of int)
0:50 'g_tTex2di4' (layout(rgba32i ) uniform iimage2D)
0:50 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:50 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:50 Constant:
0:50 1 (const uint)
0:51 imageLoad (global 4-component vector of uint)
0:51 imageLoad (temp 4-component vector of uint)
0:51 'g_tTex2du4' (layout(rgba32ui ) uniform uimage2D)
0:51 c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:51 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:51 Constant:
0:51 1 (const uint)
0:54 imageLoad (global 4-component vector of float)
0:54 imageLoad (temp 4-component vector of float)
0:54 'g_tTex3df4' (layout(rgba32f ) uniform image3D)
0:54 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:54 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:54 Constant:
0:54 2 (const uint)
0:55 imageLoad (global 4-component vector of int)
0:55 imageLoad (temp 4-component vector of int)
0:55 'g_tTex3di4' (layout(rgba32i ) uniform iimage3D)
0:55 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:55 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
0:55 Constant:
0:55 2 (const uint)
0:56 imageLoad (global 4-component vector of uint)
0:56 imageLoad (temp 4-component vector of uint)
0:56 'g_tTex3du4' (layout(rgba32ui ) uniform uimage3D)
0:56 c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:56 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})

View File

@ -6,8 +6,8 @@ Shader version: 450
0:4 'Index' (in uint)
0:? Sequence
0:5 Branch: Return with expression
0:5 textureFetch (global 4-component vector of float)
0:5 'Position' (uniform samplerBuffer)
0:5 textureFetch (temp 4-component vector of float)
0:5 'Position' (layout(rgba32f ) uniform samplerBuffer)
0:5 Convert uint to int (temp int)
0:5 'Index' (in uint)
0:9 Function Definition: RealEntrypoint(u1; (temp 4-component vector of float Position)
@ -21,7 +21,7 @@ Shader version: 450
0:10 'Index' (in uint VertexIndex)
0:10 Branch: Return
0:? Linker Objects
0:? 'Position' (uniform samplerBuffer)
0:? 'Position' (layout(rgba32f ) uniform samplerBuffer)
0:? '@entryPointOutput' (out 4-component vector of float Position)
0:? 'Index' (in uint VertexIndex)
@ -36,8 +36,8 @@ Shader version: 450
0:4 'Index' (in uint)
0:? Sequence
0:5 Branch: Return with expression
0:5 textureFetch (global 4-component vector of float)
0:5 'Position' (uniform samplerBuffer)
0:5 textureFetch (temp 4-component vector of float)
0:5 'Position' (layout(rgba32f ) uniform samplerBuffer)
0:5 Convert uint to int (temp int)
0:5 'Index' (in uint)
0:9 Function Definition: RealEntrypoint(u1; (temp 4-component vector of float Position)
@ -51,7 +51,7 @@ Shader version: 450
0:10 'Index' (in uint VertexIndex)
0:10 Branch: Return
0:? Linker Objects
0:? 'Position' (uniform samplerBuffer)
0:? 'Position' (layout(rgba32f ) uniform samplerBuffer)
0:? '@entryPointOutput' (out 4-component vector of float Position)
0:? 'Index' (in uint VertexIndex)
@ -81,7 +81,7 @@ Shader version: 450
8: TypeFloat 32
9: TypeVector 8(float) 4
10: TypeFunction 9(fvec4) 7(ptr)
14: TypeImage 8(float) Buffer sampled format:Unknown
14: TypeImage 8(float) Buffer sampled format:Rgba32f
15: TypeSampledImage 14
16: TypePointer UniformConstant 15
17(Position): 16(ptr) Variable UniformConstant

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,38 @@
uniform Buffer <float> g_tTexbfs_test : register(t0);
Buffer <float> g_tTexbfs;
Buffer <int> g_tTexbis;
Buffer <uint> g_tTexbus;
struct PS_OUTPUT
{
float4 Color : SV_Target0;
float Depth : SV_Depth;
};
uniform int c1;
uniform int2 c2;
uniform int3 c3;
uniform int4 c4;
uniform int o1;
uniform int2 o2;
uniform int3 o3;
uniform int4 o4;
PS_OUTPUT main()
{
PS_OUTPUT psout;
// Buffer
float r00 = g_tTexbfs.Load(c1);
int r01 = g_tTexbis.Load(c1);
uint r02 = g_tTexbus.Load(c1);
// TODO: other types that can be put in sampler buffers, like float2x2, and float3.
psout.Color = 1.0;
psout.Depth = 1.0;
return psout;
}

View File

@ -0,0 +1,140 @@
SamplerState g_sSamp : register(s0);
RWTexture1D <float> g_tTex1df1;
RWTexture1D <int> g_tTex1di1;
RWTexture1D <uint> g_tTex1du1;
RWTexture2D <float> g_tTex2df1;
RWTexture2D <int> g_tTex2di1;
RWTexture2D <uint> g_tTex2du1;
RWTexture3D <float> g_tTex3df1;
RWTexture3D <int> g_tTex3di1;
RWTexture3D <uint> g_tTex3du1;
RWTexture1DArray <float> g_tTex1df1a;
RWTexture1DArray <int> g_tTex1di1a;
RWTexture1DArray <uint> g_tTex1du1a;
RWTexture2DArray <float> g_tTex2df1a;
RWTexture2DArray <int> g_tTex2di1a;
RWTexture2DArray <uint> g_tTex2du1a;
struct PS_OUTPUT
{
float4 Color : SV_Target0;
};
uniform int c1;
uniform int2 c2;
uniform int3 c3;
uniform int4 c4;
uniform int o1;
uniform int2 o2;
uniform int3 o3;
uniform int4 o4;
uniform float uf1;
uniform int ui1;
uniform uint uu1;
int Fn1(in int x) { return x; }
uint Fn1(in uint x) { return x; }
float Fn1(in float x) { return x; }
void Fn2(out int x) { x = int(0); }
void Fn2(out uint x) { x = uint(0); }
void Fn2(out float x) { x = float(0); }
float SomeValue() { return c1; }
PS_OUTPUT main()
{
PS_OUTPUT psout;
// 1D
g_tTex1df1[c1];
float r00 = g_tTex1df1[c1];
int r01 = g_tTex1di1[c1];
uint r02 = g_tTex1du1[c1];
// 2D
float r10 = g_tTex2df1[c2];
int r11 = g_tTex2di1[c2];
uint r12 = g_tTex2du1[c2];
// 3D
float r20 = g_tTex3df1[c3];
int r21 = g_tTex3di1[c3];
uint r22 = g_tTex3du1[c3];
float lf1 = uf1;
// Test as L-values
// 1D
g_tTex1df1[c1] = SomeValue(); // complex R-value
g_tTex1df1[c1] = lf1;
g_tTex1di1[c1] = int(2);
g_tTex1du1[c1] = uint(3);
// Test some operator= things, which need to do both a load and a store.
float val1 = (g_tTex1df1[c1] *= 2.0);
g_tTex1df1[c1] -= 3.0;
g_tTex1df1[c1] += 4.0;
g_tTex1di1[c1] /= 2;
g_tTex1di1[c1] %= 2;
g_tTex1di1[c1] &= 0xffff;
g_tTex1di1[c1] |= 0xf0f0;
g_tTex1di1[c1] <<= 2;
g_tTex1di1[c1] >>= 2;
// 2D
g_tTex2df1[c2] = SomeValue(); // complex L-value
g_tTex2df1[c2] = lf1;
g_tTex2di1[c2] = int(5);
g_tTex2du1[c2] = uint(6);
// 3D
g_tTex3df1[c3] = SomeValue(); // complex L-value
g_tTex3df1[c3] = lf1;
g_tTex3di1[c3] = int(8);
g_tTex3du1[c3] = uint(9);
// Test function calling
Fn1(g_tTex1df1[c1]); // in
Fn1(g_tTex1di1[c1]); // in
Fn1(g_tTex1du1[c1]); // in
Fn2(g_tTex1df1[c1]); // out
Fn2(g_tTex1di1[c1]); // out
Fn2(g_tTex1du1[c1]); // out
// Test increment operators
// pre-ops
++g_tTex1df1[c1];
++g_tTex1di1[c1];
++g_tTex1du1[c1];
--g_tTex1df1[c1];
--g_tTex1di1[c1];
--g_tTex1du1[c1];
// post-ops
g_tTex1df1[c1]++;
g_tTex1du1[c1]--;
g_tTex1di1[c1]++;
g_tTex1df1[c1]--;
g_tTex1di1[c1]++;
g_tTex1du1[c1]--;
// read and write
g_tTex1df1[1] = g_tTex2df1[int2(2, 3)];
psout.Color = 1.0;
return psout;
}

View File

@ -0,0 +1,140 @@
SamplerState g_sSamp : register(s0);
RWTexture1D <float2> g_tTex1df2;
RWTexture1D <int2> g_tTex1di2;
RWTexture1D <uint2> g_tTex1du2;
RWTexture2D <float2> g_tTex2df2;
RWTexture2D <int2> g_tTex2di2;
RWTexture2D <uint2> g_tTex2du2;
RWTexture3D <float2> g_tTex3df2;
RWTexture3D <int2> g_tTex3di2;
RWTexture3D <uint2> g_tTex3du2;
RWTexture1DArray <float2> g_tTex1df2a;
RWTexture1DArray <int2> g_tTex1di2a;
RWTexture1DArray <uint2> g_tTex1du2a;
RWTexture2DArray <float2> g_tTex2df2a;
RWTexture2DArray <int2> g_tTex2di2a;
RWTexture2DArray <uint2> g_tTex2du2a;
struct PS_OUTPUT
{
float4 Color : SV_Target0;
};
uniform int c1;
uniform int2 c2;
uniform int3 c3;
uniform int4 c4;
uniform int o1;
uniform int2 o2;
uniform int3 o3;
uniform int4 o4;
uniform float2 uf2;
uniform int2 ui2;
uniform uint2 uu2;
int2 Fn1(in int2 x) { return x; }
uint2 Fn1(in uint2 x) { return x; }
float2 Fn1(in float2 x) { return x; }
void Fn2(out int2 x) { x = int2(0,0); }
void Fn2(out uint2 x) { x = uint2(0,0); }
void Fn2(out float2 x) { x = float2(0,0); }
float2 SomeValue() { return c2; }
PS_OUTPUT main()
{
PS_OUTPUT psout;
// 1D
g_tTex1df2[c1];
float2 r00 = g_tTex1df2[c1];
int2 r01 = g_tTex1di2[c1];
uint2 r02 = g_tTex1du2[c1];
// 2D
float2 r10 = g_tTex2df2[c2];
int2 r11 = g_tTex2di2[c2];
uint2 r12 = g_tTex2du2[c2];
// 3D
float2 r20 = g_tTex3df2[c3];
int2 r21 = g_tTex3di2[c3];
uint2 r22 = g_tTex3du2[c3];
float2 lf2 = uf2;
// Test as L-values
// 1D
g_tTex1df2[c1] = SomeValue(); // complex R-value
g_tTex1df2[c1] = lf2;
g_tTex1di2[c1] = int2(2,2);
g_tTex1du2[c1] = uint2(3,2);
// Test some operator= things, which need to do both a load and a store.
float2 val1 = (g_tTex1df2[c1] *= 2.0);
g_tTex1df2[c1] -= 3.0;
g_tTex1df2[c1] += 4.0;
g_tTex1di2[c1] /= 2;
g_tTex1di2[c1] %= 2;
g_tTex1di2[c1] &= 0xffff;
g_tTex1di2[c1] |= 0xf0f0;
g_tTex1di2[c1] <<= 2;
g_tTex1di2[c1] >>= 2;
// 2D
g_tTex2df2[c2] = SomeValue(); // complex L-value
g_tTex2df2[c2] = lf2;
g_tTex2di2[c2] = int2(5,2);
g_tTex2du2[c2] = uint2(6,2);
// 3D
g_tTex3df2[c3] = SomeValue(); // complex L-value
g_tTex3df2[c3] = lf2;
g_tTex3di2[c3] = int2(8,6);
g_tTex3du2[c3] = uint2(9,2);
// Test function calling
Fn1(g_tTex1df2[c1]); // in
Fn1(g_tTex1di2[c1]); // in
Fn1(g_tTex1du2[c1]); // in
Fn2(g_tTex1df2[c1]); // out
Fn2(g_tTex1di2[c1]); // out
Fn2(g_tTex1du2[c1]); // out
// Test increment operators
// pre-ops
++g_tTex1df2[c1];
++g_tTex1di2[c1];
++g_tTex1du2[c1];
--g_tTex1df2[c1];
--g_tTex1di2[c1];
--g_tTex1du2[c1];
// post-ops
g_tTex1df2[c1]++;
g_tTex1du2[c1]--;
g_tTex1di2[c1]++;
g_tTex1df2[c1]--;
g_tTex1di2[c1]++;
g_tTex1du2[c1]--;
// read and write
g_tTex1df2[1] = g_tTex2df2[int2(2,3)];
psout.Color = 1.0;
return psout;
}

View File

@ -823,6 +823,53 @@ public:
default: return "none";
}
}
static int getLayoutComponentCount(TLayoutFormat f)
{
switch (f) {
case ElfRgba32f: return 4;
case ElfRgba16f: return 4;
case ElfRg32f: return 2;
case ElfRg16f: return 2;
case ElfR11fG11fB10f: return 3;
case ElfR32f: return 1;
case ElfR16f: return 1;
case ElfRgba16: return 4;
case ElfRgb10A2: return 4;
case ElfRgba8: return 4;
case ElfRg16: return 2;
case ElfRg8: return 2;
case ElfR16: return 1;
case ElfR8: return 1;
case ElfRgba16Snorm: return 4;
case ElfRgba8Snorm: return 4;
case ElfRg16Snorm: return 2;
case ElfRg8Snorm: return 2;
case ElfR16Snorm: return 1;
case ElfR8Snorm: return 1;
case ElfRgba32i: return 4;
case ElfRgba16i: return 4;
case ElfRgba8i: return 4;
case ElfRg32i: return 2;
case ElfRg16i: return 2;
case ElfRg8i: return 2;
case ElfR32i: return 1;
case ElfR16i: return 1;
case ElfR8i: return 1;
case ElfRgba32ui: return 4;
case ElfRgba16ui: return 4;
case ElfRgba8ui: return 4;
case ElfRg32ui: return 2;
case ElfRg16ui: return 2;
case ElfRgb10a2ui: return 4;
case ElfRg8ui: return 2;
case ElfR32ui: return 1;
case ElfR16ui: return 1;
case ElfR8ui: return 1;
default: return 4;
}
}
static const char* getLayoutDepthString(TLayoutDepth d)
{
switch (d) {

View File

@ -134,6 +134,7 @@ INSTANTIATE_TEST_CASE_P(
{"hlsl.load.basic.dx10.frag", "main"},
{"hlsl.load.basic.dx10.vert", "main"},
{"hlsl.load.buffer.dx10.frag", "main"},
{"hlsl.load.buffer.float.dx10.frag", "main"},
{"hlsl.load.rwbuffer.dx10.frag", "main"},
{"hlsl.load.rwtexture.dx10.frag", "main"},
{"hlsl.load.rwtexture.array.dx10.frag", "main"},
@ -148,6 +149,8 @@ INSTANTIATE_TEST_CASE_P(
{"hlsl.precise.frag", "main"},
{"hlsl.promotions.frag", "main"},
{"hlsl.rw.bracket.frag", "main"},
{"hlsl.rw.scalar.bracket.frag", "main"},
{"hlsl.rw.vec2.bracket.frag", "main"},
{"hlsl.sample.array.dx10.frag", "main"},
{"hlsl.sample.basic.dx10.frag", "main"},
{"hlsl.sample.offset.dx10.frag", "main"},

View File

@ -907,11 +907,11 @@ bool HlslGrammar::acceptTextureType(TType& type)
return false;
}
if (txType.getVectorSize() != 1 && txType.getVectorSize() != 4) {
// TODO: handle vec2/3 types
expected("vector size not yet supported in texture type");
return false;
}
// if (txType.getVectorSize() != 1 && txType.getVectorSize() != 4 && !image) {
// // TODO: handle vec2/3 types
// expected("vector size not yet supported in texture type");
// return false;
// }
if (ms && acceptTokenClass(EHTokComma)) {
// read sample count for multisample types, if given
@ -937,24 +937,14 @@ bool HlslGrammar::acceptTextureType(TType& type)
}
TArraySizes* arraySizes = nullptr;
const bool shadow = !image && (txType.isScalar() || (txType.isVector() && txType.getVectorSize() == 1));
const bool shadow = false; // declared on the sampler
TSampler sampler;
TLayoutFormat format = ElfNone;
// RWBuffer and RWTexture (images) require a TLayoutFormat. We handle only a limit set.
if (image) {
if (txType.getVectorSize() != 4)
expected("4 component image");
switch (txType.getBasicType()) {
case EbtFloat: format = ElfRgba32f; break;
case EbtInt: format = ElfRgba32i; break;
case EbtUint: format = ElfRgba32ui; break;
default:
expected("unknown basic type in image format");
}
}
// Buffer, RWBuffer and RWTexture (images) require a TLayoutFormat. We handle only a limit set.
if (image || dim == EsdBuffer)
format = parseContext.getLayoutFromTxType(token.loc, txType);
// Non-image Buffers are combined
if (dim == EsdBuffer && !image) {

View File

@ -147,6 +147,28 @@ bool HlslParseContext::shouldConvertLValue(const TIntermNode* node) const
return false;
}
//
// Return a TLayoutFormat corresponding to the given texture type.
//
TLayoutFormat HlslParseContext::getLayoutFromTxType(const TSourceLoc& loc, const TType& txType)
{
const int components = txType.getVectorSize();
const auto select = [&](TLayoutFormat v1, TLayoutFormat v2, TLayoutFormat v4) {
return components == 1 ? v1 :
components == 2 ? v2 : v4;
};
switch (txType.getBasicType()) {
case EbtFloat: return select(ElfR32f, ElfRg32f, ElfRgba32f);
case EbtInt: return select(ElfR32i, ElfRg32i, ElfRgba32i);
case EbtUint: return select(ElfR32ui, ElfRg32ui, ElfRgba32ui);
default:
error(loc, "unknown basic type in image format", "", "");
return ElfNone;
}
}
//
// Both test and if necessary, spit out an error, to see if the node is really
// an l-value that can be operated on this way.
@ -265,10 +287,14 @@ TIntermTyped* HlslParseContext::handleLvalue(const TSourceLoc& loc, const char*
TIntermTyped* coord = lhsAsAggregate->getSequence()[1]->getAsTyped();
const TLayoutFormat fmt = object->getType().getQualifier().layoutFormat;
// We only handle 4 component formats at the moment.
assert(fmt == ElfRgba32f || fmt == ElfRgba32i || fmt == ElfRgba32ui);
const TType objDerefType(object->getType().getSampler().type, EvqTemporary, 4);
// We only handle this subset of the possible formats.
assert(fmt == ElfRgba32f || fmt == ElfRgba32i || fmt == ElfRgba32ui ||
fmt == ElfRg32f || fmt == ElfRg32i || fmt == ElfRg32ui ||
fmt == ElfR32f || fmt == ElfR32i || fmt == ElfR32ui);
const TType objDerefType(object->getType().getSampler().type, EvqTemporary,
TQualifier::getLayoutComponentCount(fmt));
if (nodeAsBinary) {
TIntermTyped* rhs = nodeAsBinary->getRight();
@ -578,7 +604,7 @@ TIntermTyped* HlslParseContext::handleBracketOperator(const TSourceLoc& loc, TIn
if (base->getType().getBasicType() == EbtSampler && !base->isArray()) {
const TSampler& sampler = base->getType().getSampler();
if (sampler.isImage() || sampler.isTexture()) {
const int vecSize = 4; // TODO: handle arbitrary sizes (get from qualifier)
const int vecSize = TQualifier::getLayoutComponentCount(base->getType().getQualifier().layoutFormat);
TIntermAggregate* load = new TIntermAggregate(sampler.isImage() ? EOpImageLoad : EOpTextureFetch);
load->setType(TType(sampler.type, EvqTemporary, vecSize));
@ -1781,7 +1807,9 @@ void HlslParseContext::decomposeSampleMethods(const TSourceLoc& loc, TIntermType
txfetch->getSequence().push_back(argOffset);
}
txfetch->setType(node->getType());
int vecSize = TQualifier::getLayoutComponentCount(argTex->getType().getQualifier().layoutFormat);
txfetch->setType(TType(node->getType().getBasicType(), EvqTemporary, vecSize));
txfetch->setLoc(loc);
node = txfetch;

View File

@ -156,6 +156,8 @@ public:
TIntermTyped* handleLvalue(const TSourceLoc&, const char* op, TIntermTyped* node);
bool lValueErrorCheck(const TSourceLoc&, const char* op, TIntermTyped*) override;
TLayoutFormat getLayoutFromTxType(const TSourceLoc&, const TType&);
protected:
void inheritGlobalDefaults(TQualifier& dst) const;
TVariable* makeInternalVariable(const char* name, const TType&) const;