Update CHANGES for release 11.12.0
[platform/upstream/glslang.git] / Test / baseResults / hlsl.load.2dms.dx10.frag.out
index 0048d9a..09086cb 100644 (file)
 hlsl.load.2dms.dx10.frag
-Shader version: 450
+Shader version: 500
 gl_FragCoord origin is upper left
+using depth_any
 0:? Sequence
-0:28  Function Definition: main( (temp structure{temp 4-component vector of float Color, temp float Depth})
+0:23  Function Definition: getOffset( ( temp 2-component vector of int)
+0:23    Function Parameters: 
+0:?     Sequence
+0:24      Branch: Return with expression
+0:24        Constant:
+0:24          1 (const int)
+0:24          1 (const int)
+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        '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})
+0:32      textureFetch ( temp 4-component vector of float)
+0:32        'g_tTex2dmsf4' ( uniform texture2DMS)
+0:32        c2: direct index for structure ( uniform 2-component vector of int)
+0:32          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4})
 0:32          Constant:
 0:32            1 (const uint)
 0:32        Constant:
 0:32          3 (const int)
-0:33      textureFetch (global 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})
+0:33      textureFetch ( temp 4-component vector of int)
+0:33        'g_tTex2dmsi4' ( uniform itexture2DMS)
+0:33        c2: direct index for structure ( uniform 2-component vector of int)
+0:33          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4})
 0:33          Constant:
 0:33            1 (const uint)
 0:33        Constant:
 0:33          3 (const int)
-0:34      textureFetch (global 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})
+0:34      textureFetch ( temp 4-component vector of uint)
+0:34        'g_tTex2dmsu4' ( uniform utexture2DMS)
+0:34        c2: direct index for structure ( uniform 2-component vector of int)
+0:34          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4})
 0:34          Constant:
 0:34            1 (const uint)
 0:34        Constant:
 0:34          3 (const int)
-0:37      textureFetchOffset (global 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})
+0:37      textureFetchOffset ( temp 4-component vector of float)
+0:37        'g_tTex2dmsf4' ( uniform texture2DMS)
+0:37        c2: direct index for structure ( uniform 2-component vector of int)
+0:37          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4})
 0:37          Constant:
 0:37            1 (const uint)
 0:37        Constant:
 0:37          3 (const int)
-0:37        o2: direct index for structure (layout(offset=56 ) 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})
-0:37          Constant:
-0:37            5 (const uint)
-0:38      textureFetchOffset (global 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})
+0:37        Function Call: getOffset( ( temp 2-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 ( uniform 2-component vector of int)
+0:38          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4})
 0:38          Constant:
 0:38            1 (const uint)
 0:38        Constant:
 0:38          3 (const int)
-0:38        o2: direct index for structure (layout(offset=56 ) 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})
-0:38          Constant:
-0:38            5 (const uint)
-0:39      textureFetchOffset (global 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})
+0:38        Function Call: getOffset( ( temp 2-component vector of int)
+0:39      textureFetchOffset ( temp 4-component vector of uint)
+0:39        'g_tTex2dmsu4' ( uniform utexture2DMS)
+0:39        c2: direct index for structure ( uniform 2-component vector of int)
+0:39          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4})
 0:39          Constant:
 0:39            1 (const uint)
 0:39        Constant:
 0:39          3 (const int)
-0:39        o2: direct index for structure (layout(offset=56 ) 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})
-0:39          Constant:
-0:39            5 (const uint)
-0:42      textureFetch (global 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})
+0:39        Function Call: getOffset( ( temp 2-component vector of int)
+0:42      textureFetch ( temp 4-component vector of float)
+0:42        'g_tTex2dmsf4a' ( uniform texture2DMSArray)
+0:42        c3: direct index for structure ( uniform 3-component vector of int)
+0:42          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4})
 0:42          Constant:
 0:42            2 (const uint)
 0:42        Constant:
 0:42          3 (const int)
-0:43      textureFetch (global 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})
+0:43      textureFetch ( temp 4-component vector of int)
+0:43        'g_tTex2dmsi4a' ( uniform itexture2DMSArray)
+0:43        c3: direct index for structure ( uniform 3-component vector of int)
+0:43          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4})
 0:43          Constant:
 0:43            2 (const uint)
 0:43        Constant:
 0:43          3 (const int)
-0:44      textureFetch (global 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})
+0:44      textureFetch ( temp 4-component vector of uint)
+0:44        'g_tTex2dmsu4a' ( uniform utexture2DMSArray)
+0:44        c3: direct index for structure ( uniform 3-component vector of int)
+0:44          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4})
 0:44          Constant:
 0:44            2 (const uint)
 0:44        Constant:
 0:44          3 (const int)
-0:47      textureFetchOffset (global 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})
+0:47      textureFetchOffset ( temp 4-component vector of float)
+0:47        'g_tTex2dmsf4a' ( uniform texture2DMSArray)
+0:47        c3: direct index for structure ( uniform 3-component vector of int)
+0:47          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4})
 0:47          Constant:
 0:47            2 (const uint)
 0:47        Constant:
 0:47          3 (const int)
-0:47        o2: direct index for structure (layout(offset=56 ) uniform 2-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})
-0:47          Constant:
-0:47            5 (const uint)
-0:48      textureFetchOffset (global 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})
+0:47        Function Call: getOffset( ( temp 2-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 ( uniform 3-component vector of int)
+0:48          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4})
 0:48          Constant:
 0:48            2 (const uint)
 0:48        Constant:
 0:48          3 (const int)
-0:48        o2: direct index for structure (layout(offset=56 ) uniform 2-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})
-0:48          Constant:
-0:48            5 (const uint)
-0:49      textureFetchOffset (global 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})
+0:48        Function Call: getOffset( ( temp 2-component vector of int)
+0:49      textureFetchOffset ( temp 4-component vector of uint)
+0:49        'g_tTex2dmsu4a' ( uniform utexture2DMSArray)
+0:49        c3: direct index for structure ( uniform 3-component vector of int)
+0:49          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4})
 0:49          Constant:
 0:49            2 (const uint)
 0:49        Constant:
 0:49          3 (const int)
-0:49        o2: direct index for structure (layout(offset=56 ) 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            5 (const uint)
-0:51      move second child to first child (temp 4-component vector of float)
-0:51        Color: direct index for structure (temp 4-component vector of float)
-0:51          'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
+0:49        Function Call: getOffset( ( temp 2-component vector of int)
+0:51      move second child to first child ( temp 4-component vector of float)
+0:51        Color: direct index for structure ( temp 4-component vector of float)
+0:51          'psout' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
 0:51          Constant:
 0:51            0 (const int)
 0:51        Constant:
@@ -135,173 +125,169 @@ gl_FragCoord origin is upper left
 0:51          1.000000
 0:51          1.000000
 0:51          1.000000
-0:52      move second child to first child (temp float)
-0:52        Depth: direct index for structure (temp float)
-0:52          'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
+0:52      move second child to first child ( temp float)
+0:52        Depth: direct index for structure ( temp float)
+0:52          'psout' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
 0:52          Constant:
 0:52            1 (const int)
 0:52        Constant:
 0:52          1.000000
-0:?       Sequence
-0:?         Sequence
-0:54          move second child to first child (temp 4-component vector of float)
-0:?             'Color' (layout(location=0 ) out 4-component vector of float)
-0:54            Color: direct index for structure (temp 4-component vector of float)
-0:54              'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
-0:54              Constant:
-0:54                0 (const int)
-0:54          move second child to first child (temp float)
-0:?             'Depth' (out float FragDepth)
-0:54            Depth: direct index for structure (temp float)
-0:54              'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
-0:54              Constant:
-0:54                1 (const int)
-0:54        Branch: Return
+0:54      Branch: Return with expression
+0:54        'psout' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
+0:28  Function Definition: main( ( temp void)
+0:28    Function Parameters: 
+0:?     Sequence
+0:28      Sequence
+0:28        move second child to first child ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
+0:28          'flattenTemp' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
+0:28          Function Call: @main( ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
+0:28        move second child to first child ( temp 4-component vector of float)
+0:?           '@entryPointOutput.Color' (layout( location=0) out 4-component vector of float)
+0:28          Color: direct index for structure ( temp 4-component vector of float)
+0:28            'flattenTemp' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
+0:28            Constant:
+0:28              0 (const int)
+0:28        move second child to first child ( temp float)
+0:?           '@entryPointOutput.Depth' ( out float FragDepth)
+0:28          Depth: direct index for structure ( temp float)
+0:28            'flattenTemp' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
+0:28            Constant:
+0:28              1 (const int)
 0:?   Linker Objects
-0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
-0:?     'g_tTex2dmsf4' (uniform texture2DMS)
-0:?     'g_tTex2dmsi4' (uniform itexture2DMS)
-0:?     'g_tTex2dmsu4' (uniform utexture2DMS)
-0:?     'g_tTex2dmsf4a' (uniform texture2DMSArray)
-0:?     'g_tTex2dmsi4a' (uniform itexture2DMSArray)
-0:?     'g_tTex2dmsu4a' (uniform utexture2DMSArray)
-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})
+0:?     'g_sSamp' (layout( binding=0) uniform sampler)
+0:?     'g_tTex2dmsf4' ( uniform texture2DMS)
+0:?     'g_tTex2dmsi4' ( uniform itexture2DMS)
+0:?     'g_tTex2dmsu4' ( uniform utexture2DMS)
+0:?     'g_tTex2dmsf4a' ( uniform texture2DMSArray)
+0:?     'g_tTex2dmsi4a' ( uniform itexture2DMSArray)
+0:?     'g_tTex2dmsu4a' ( uniform utexture2DMSArray)
+0:?     'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4})
+0:?     '@entryPointOutput.Depth' ( out float FragDepth)
+0:?     '@entryPointOutput.Color' (layout( location=0) out 4-component vector of float)
 
 
 Linked fragment stage:
 
 
-Shader version: 450
+Shader version: 500
 gl_FragCoord origin is upper left
+using depth_any
 0:? Sequence
-0:28  Function Definition: main( (temp structure{temp 4-component vector of float Color, temp float Depth})
+0:23  Function Definition: getOffset( ( temp 2-component vector of int)
+0:23    Function Parameters: 
+0:?     Sequence
+0:24      Branch: Return with expression
+0:24        Constant:
+0:24          1 (const int)
+0:24          1 (const int)
+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        '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})
+0:32      textureFetch ( temp 4-component vector of float)
+0:32        'g_tTex2dmsf4' ( uniform texture2DMS)
+0:32        c2: direct index for structure ( uniform 2-component vector of int)
+0:32          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4})
 0:32          Constant:
 0:32            1 (const uint)
 0:32        Constant:
 0:32          3 (const int)
-0:33      textureFetch (global 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})
+0:33      textureFetch ( temp 4-component vector of int)
+0:33        'g_tTex2dmsi4' ( uniform itexture2DMS)
+0:33        c2: direct index for structure ( uniform 2-component vector of int)
+0:33          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4})
 0:33          Constant:
 0:33            1 (const uint)
 0:33        Constant:
 0:33          3 (const int)
-0:34      textureFetch (global 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})
+0:34      textureFetch ( temp 4-component vector of uint)
+0:34        'g_tTex2dmsu4' ( uniform utexture2DMS)
+0:34        c2: direct index for structure ( uniform 2-component vector of int)
+0:34          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4})
 0:34          Constant:
 0:34            1 (const uint)
 0:34        Constant:
 0:34          3 (const int)
-0:37      textureFetchOffset (global 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})
+0:37      textureFetchOffset ( temp 4-component vector of float)
+0:37        'g_tTex2dmsf4' ( uniform texture2DMS)
+0:37        c2: direct index for structure ( uniform 2-component vector of int)
+0:37          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4})
 0:37          Constant:
 0:37            1 (const uint)
 0:37        Constant:
 0:37          3 (const int)
-0:37        o2: direct index for structure (layout(offset=56 ) 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})
-0:37          Constant:
-0:37            5 (const uint)
-0:38      textureFetchOffset (global 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})
+0:37        Function Call: getOffset( ( temp 2-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 ( uniform 2-component vector of int)
+0:38          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4})
 0:38          Constant:
 0:38            1 (const uint)
 0:38        Constant:
 0:38          3 (const int)
-0:38        o2: direct index for structure (layout(offset=56 ) 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})
-0:38          Constant:
-0:38            5 (const uint)
-0:39      textureFetchOffset (global 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})
+0:38        Function Call: getOffset( ( temp 2-component vector of int)
+0:39      textureFetchOffset ( temp 4-component vector of uint)
+0:39        'g_tTex2dmsu4' ( uniform utexture2DMS)
+0:39        c2: direct index for structure ( uniform 2-component vector of int)
+0:39          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4})
 0:39          Constant:
 0:39            1 (const uint)
 0:39        Constant:
 0:39          3 (const int)
-0:39        o2: direct index for structure (layout(offset=56 ) 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})
-0:39          Constant:
-0:39            5 (const uint)
-0:42      textureFetch (global 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})
+0:39        Function Call: getOffset( ( temp 2-component vector of int)
+0:42      textureFetch ( temp 4-component vector of float)
+0:42        'g_tTex2dmsf4a' ( uniform texture2DMSArray)
+0:42        c3: direct index for structure ( uniform 3-component vector of int)
+0:42          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4})
 0:42          Constant:
 0:42            2 (const uint)
 0:42        Constant:
 0:42          3 (const int)
-0:43      textureFetch (global 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})
+0:43      textureFetch ( temp 4-component vector of int)
+0:43        'g_tTex2dmsi4a' ( uniform itexture2DMSArray)
+0:43        c3: direct index for structure ( uniform 3-component vector of int)
+0:43          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4})
 0:43          Constant:
 0:43            2 (const uint)
 0:43        Constant:
 0:43          3 (const int)
-0:44      textureFetch (global 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})
+0:44      textureFetch ( temp 4-component vector of uint)
+0:44        'g_tTex2dmsu4a' ( uniform utexture2DMSArray)
+0:44        c3: direct index for structure ( uniform 3-component vector of int)
+0:44          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4})
 0:44          Constant:
 0:44            2 (const uint)
 0:44        Constant:
 0:44          3 (const int)
-0:47      textureFetchOffset (global 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})
+0:47      textureFetchOffset ( temp 4-component vector of float)
+0:47        'g_tTex2dmsf4a' ( uniform texture2DMSArray)
+0:47        c3: direct index for structure ( uniform 3-component vector of int)
+0:47          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4})
 0:47          Constant:
 0:47            2 (const uint)
 0:47        Constant:
 0:47          3 (const int)
-0:47        o2: direct index for structure (layout(offset=56 ) uniform 2-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})
-0:47          Constant:
-0:47            5 (const uint)
-0:48      textureFetchOffset (global 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})
+0:47        Function Call: getOffset( ( temp 2-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 ( uniform 3-component vector of int)
+0:48          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4})
 0:48          Constant:
 0:48            2 (const uint)
 0:48        Constant:
 0:48          3 (const int)
-0:48        o2: direct index for structure (layout(offset=56 ) uniform 2-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})
-0:48          Constant:
-0:48            5 (const uint)
-0:49      textureFetchOffset (global 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})
+0:48        Function Call: getOffset( ( temp 2-component vector of int)
+0:49      textureFetchOffset ( temp 4-component vector of uint)
+0:49        'g_tTex2dmsu4a' ( uniform utexture2DMSArray)
+0:49        c3: direct index for structure ( uniform 3-component vector of int)
+0:49          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4})
 0:49          Constant:
 0:49            2 (const uint)
 0:49        Constant:
 0:49          3 (const int)
-0:49        o2: direct index for structure (layout(offset=56 ) 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            5 (const uint)
-0:51      move second child to first child (temp 4-component vector of float)
-0:51        Color: direct index for structure (temp 4-component vector of float)
-0:51          'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
+0:49        Function Call: getOffset( ( temp 2-component vector of int)
+0:51      move second child to first child ( temp 4-component vector of float)
+0:51        Color: direct index for structure ( temp 4-component vector of float)
+0:51          'psout' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
 0:51          Constant:
 0:51            0 (const int)
 0:51        Constant:
@@ -309,218 +295,235 @@ gl_FragCoord origin is upper left
 0:51          1.000000
 0:51          1.000000
 0:51          1.000000
-0:52      move second child to first child (temp float)
-0:52        Depth: direct index for structure (temp float)
-0:52          'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
+0:52      move second child to first child ( temp float)
+0:52        Depth: direct index for structure ( temp float)
+0:52          'psout' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
 0:52          Constant:
 0:52            1 (const int)
 0:52        Constant:
 0:52          1.000000
-0:?       Sequence
-0:?         Sequence
-0:54          move second child to first child (temp 4-component vector of float)
-0:?             'Color' (layout(location=0 ) out 4-component vector of float)
-0:54            Color: direct index for structure (temp 4-component vector of float)
-0:54              'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
-0:54              Constant:
-0:54                0 (const int)
-0:54          move second child to first child (temp float)
-0:?             'Depth' (out float FragDepth)
-0:54            Depth: direct index for structure (temp float)
-0:54              'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
-0:54              Constant:
-0:54                1 (const int)
-0:54        Branch: Return
+0:54      Branch: Return with expression
+0:54        'psout' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
+0:28  Function Definition: main( ( temp void)
+0:28    Function Parameters: 
+0:?     Sequence
+0:28      Sequence
+0:28        move second child to first child ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
+0:28          'flattenTemp' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
+0:28          Function Call: @main( ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
+0:28        move second child to first child ( temp 4-component vector of float)
+0:?           '@entryPointOutput.Color' (layout( location=0) out 4-component vector of float)
+0:28          Color: direct index for structure ( temp 4-component vector of float)
+0:28            'flattenTemp' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
+0:28            Constant:
+0:28              0 (const int)
+0:28        move second child to first child ( temp float)
+0:?           '@entryPointOutput.Depth' ( out float FragDepth)
+0:28          Depth: direct index for structure ( temp float)
+0:28            'flattenTemp' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
+0:28            Constant:
+0:28              1 (const int)
 0:?   Linker Objects
-0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
-0:?     'g_tTex2dmsf4' (uniform texture2DMS)
-0:?     'g_tTex2dmsi4' (uniform itexture2DMS)
-0:?     'g_tTex2dmsu4' (uniform utexture2DMS)
-0:?     'g_tTex2dmsf4a' (uniform texture2DMSArray)
-0:?     'g_tTex2dmsi4a' (uniform itexture2DMSArray)
-0:?     'g_tTex2dmsu4a' (uniform utexture2DMSArray)
-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})
+0:?     'g_sSamp' (layout( binding=0) uniform sampler)
+0:?     'g_tTex2dmsf4' ( uniform texture2DMS)
+0:?     'g_tTex2dmsi4' ( uniform itexture2DMS)
+0:?     'g_tTex2dmsu4' ( uniform utexture2DMS)
+0:?     'g_tTex2dmsf4a' ( uniform texture2DMSArray)
+0:?     'g_tTex2dmsi4a' ( uniform itexture2DMSArray)
+0:?     'g_tTex2dmsu4a' ( uniform utexture2DMSArray)
+0:?     'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4})
+0:?     '@entryPointOutput.Depth' ( out float FragDepth)
+0:?     '@entryPointOutput.Color' (layout( location=0) out 4-component vector of float)
 
 // Module Version 10000
-// Generated by (magic number): 80001
-// Id's are bound by 123
+// Generated by (magic number): 8000b
+// Id's are bound by 129
 
                               Capability Shader
                               Capability ImageGatherExtended
-                              Capability ImageMSArray
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 112 116
+                              EntryPoint Fragment 4  "main" 119 123
                               ExecutionMode 4 OriginUpperLeft
+                              ExecutionMode 4 DepthReplacing
+                              Source HLSL 500
                               Name 4  "main"
-                              Name 9  "g_tTex2dmsf4"
-                              Name 15  "$Global"
-                              MemberName 15($Global) 0  "c1"
-                              MemberName 15($Global) 1  "c2"
-                              MemberName 15($Global) 2  "c3"
-                              MemberName 15($Global) 3  "c4"
-                              MemberName 15($Global) 4  "o1"
-                              MemberName 15($Global) 5  "o2"
-                              MemberName 15($Global) 6  "o3"
-                              MemberName 15($Global) 7  "o4"
-                              Name 17  ""
-                              Name 27  "g_tTex2dmsi4"
-                              Name 35  "g_tTex2dmsu4"
-                              Name 62  "g_tTex2dmsf4a"
-                              Name 71  "g_tTex2dmsi4a"
-                              Name 78  "g_tTex2dmsu4a"
-                              Name 101  "PS_OUTPUT"
-                              MemberName 101(PS_OUTPUT) 0  "Color"
-                              MemberName 101(PS_OUTPUT) 1  "Depth"
-                              Name 103  "psout"
-                              Name 112  "Color"
-                              Name 116  "Depth"
-                              Name 122  "g_sSamp"
-                              Decorate 9(g_tTex2dmsf4) DescriptorSet 0
-                              MemberDecorate 15($Global) 0 Offset 0
-                              MemberDecorate 15($Global) 1 Offset 8
-                              MemberDecorate 15($Global) 2 Offset 16
-                              MemberDecorate 15($Global) 3 Offset 32
-                              MemberDecorate 15($Global) 4 Offset 48
-                              MemberDecorate 15($Global) 5 Offset 56
-                              MemberDecorate 15($Global) 6 Offset 64
-                              MemberDecorate 15($Global) 7 Offset 80
-                              Decorate 15($Global) Block
-                              Decorate 17 DescriptorSet 0
-                              Decorate 27(g_tTex2dmsi4) DescriptorSet 0
-                              Decorate 35(g_tTex2dmsu4) DescriptorSet 0
-                              Decorate 62(g_tTex2dmsf4a) DescriptorSet 0
-                              Decorate 71(g_tTex2dmsi4a) DescriptorSet 0
-                              Decorate 78(g_tTex2dmsu4a) DescriptorSet 0
-                              Decorate 112(Color) Location 0
-                              Decorate 116(Depth) BuiltIn FragDepth
-                              Decorate 122(g_sSamp) DescriptorSet 0
-                              Decorate 122(g_sSamp) Binding 0
+                              Name 9  "getOffset("
+                              Name 13  "PS_OUTPUT"
+                              MemberName 13(PS_OUTPUT) 0  "Color"
+                              MemberName 13(PS_OUTPUT) 1  "Depth"
+                              Name 15  "@main("
+                              Name 23  "g_tTex2dmsf4"
+                              Name 27  "$Global"
+                              MemberName 27($Global) 0  "c1"
+                              MemberName 27($Global) 1  "c2"
+                              MemberName 27($Global) 2  "c3"
+                              MemberName 27($Global) 3  "c4"
+                              Name 29  ""
+                              Name 37  "g_tTex2dmsi4"
+                              Name 45  "g_tTex2dmsu4"
+                              Name 68  "g_tTex2dmsf4a"
+                              Name 77  "g_tTex2dmsi4a"
+                              Name 84  "g_tTex2dmsu4a"
+                              Name 105  "psout"
+                              Name 116  "flattenTemp"
+                              Name 119  "@entryPointOutput.Color"
+                              Name 123  "@entryPointOutput.Depth"
+                              Name 128  "g_sSamp"
+                              Decorate 23(g_tTex2dmsf4) DescriptorSet 0
+                              Decorate 23(g_tTex2dmsf4) Binding 1
+                              MemberDecorate 27($Global) 0 Offset 0
+                              MemberDecorate 27($Global) 1 Offset 8
+                              MemberDecorate 27($Global) 2 Offset 16
+                              MemberDecorate 27($Global) 3 Offset 32
+                              Decorate 27($Global) Block
+                              Decorate 29 DescriptorSet 0
+                              Decorate 29 Binding 7
+                              Decorate 37(g_tTex2dmsi4) DescriptorSet 0
+                              Decorate 37(g_tTex2dmsi4) Binding 2
+                              Decorate 45(g_tTex2dmsu4) DescriptorSet 0
+                              Decorate 45(g_tTex2dmsu4) Binding 3
+                              Decorate 68(g_tTex2dmsf4a) DescriptorSet 0
+                              Decorate 68(g_tTex2dmsf4a) Binding 4
+                              Decorate 77(g_tTex2dmsi4a) DescriptorSet 0
+                              Decorate 77(g_tTex2dmsi4a) Binding 5
+                              Decorate 84(g_tTex2dmsu4a) DescriptorSet 0
+                              Decorate 84(g_tTex2dmsu4a) Binding 6
+                              Decorate 119(@entryPointOutput.Color) Location 0
+                              Decorate 123(@entryPointOutput.Depth) BuiltIn FragDepth
+                              Decorate 128(g_sSamp) DescriptorSet 0
+                              Decorate 128(g_sSamp) Binding 0
                2:             TypeVoid
                3:             TypeFunction 2
-               6:             TypeFloat 32
-               7:             TypeImage 6(float) 2D multi-sampled sampled format:Unknown
-               8:             TypePointer UniformConstant 7
- 9(g_tTex2dmsf4):      8(ptr) Variable UniformConstant
-              11:             TypeInt 32 1
-              12:             TypeVector 11(int) 2
-              13:             TypeVector 11(int) 3
-              14:             TypeVector 11(int) 4
-     15($Global):             TypeStruct 11(int) 12(ivec2) 13(ivec3) 14(ivec4) 11(int) 12(ivec2) 13(ivec3) 14(ivec4)
-              16:             TypePointer Uniform 15($Global)
-              17:     16(ptr) Variable Uniform
-              18:     11(int) Constant 1
-              19:             TypePointer Uniform 12(ivec2)
-              22:     11(int) Constant 3
-              23:             TypeVector 6(float) 4
-              25:             TypeImage 11(int) 2D multi-sampled sampled format:Unknown
-              26:             TypePointer UniformConstant 25
-27(g_tTex2dmsi4):     26(ptr) Variable UniformConstant
-              32:             TypeInt 32 0
-              33:             TypeImage 32(int) 2D multi-sampled sampled format:Unknown
-              34:             TypePointer UniformConstant 33
-35(g_tTex2dmsu4):     34(ptr) Variable UniformConstant
-              39:             TypeVector 32(int) 4
-              44:     11(int) Constant 5
-              60:             TypeImage 6(float) 2D array multi-sampled sampled format:Unknown
-              61:             TypePointer UniformConstant 60
-62(g_tTex2dmsf4a):     61(ptr) Variable UniformConstant
-              64:     11(int) Constant 2
-              65:             TypePointer Uniform 13(ivec3)
-              69:             TypeImage 11(int) 2D array multi-sampled sampled format:Unknown
-              70:             TypePointer UniformConstant 69
-71(g_tTex2dmsi4a):     70(ptr) Variable UniformConstant
-              76:             TypeImage 32(int) 2D array multi-sampled sampled format:Unknown
-              77:             TypePointer UniformConstant 76
-78(g_tTex2dmsu4a):     77(ptr) Variable UniformConstant
-  101(PS_OUTPUT):             TypeStruct 23(fvec4) 6(float)
-             102:             TypePointer Function 101(PS_OUTPUT)
-             104:     11(int) Constant 0
-             105:    6(float) Constant 1065353216
-             106:   23(fvec4) ConstantComposite 105 105 105 105
-             107:             TypePointer Function 23(fvec4)
-             109:             TypePointer Function 6(float)
-             111:             TypePointer Output 23(fvec4)
-      112(Color):    111(ptr) Variable Output
-             115:             TypePointer Output 6(float)
-      116(Depth):    115(ptr) Variable Output
-             120:             TypeSampler
-             121:             TypePointer UniformConstant 120
-    122(g_sSamp):    121(ptr) Variable UniformConstant
+               6:             TypeInt 32 1
+               7:             TypeVector 6(int) 2
+               8:             TypeFunction 7(ivec2)
+              11:             TypeFloat 32
+              12:             TypeVector 11(float) 4
+   13(PS_OUTPUT):             TypeStruct 12(fvec4) 11(float)
+              14:             TypeFunction 13(PS_OUTPUT)
+              17:      6(int) Constant 1
+              18:    7(ivec2) ConstantComposite 17 17
+              21:             TypeImage 11(float) 2D multi-sampled sampled format:Unknown
+              22:             TypePointer UniformConstant 21
+23(g_tTex2dmsf4):     22(ptr) Variable UniformConstant
+              25:             TypeVector 6(int) 3
+              26:             TypeVector 6(int) 4
+     27($Global):             TypeStruct 6(int) 7(ivec2) 25(ivec3) 26(ivec4)
+              28:             TypePointer Uniform 27($Global)
+              29:     28(ptr) Variable Uniform
+              30:             TypePointer Uniform 7(ivec2)
+              33:      6(int) Constant 3
+              35:             TypeImage 6(int) 2D multi-sampled sampled format:Unknown
+              36:             TypePointer UniformConstant 35
+37(g_tTex2dmsi4):     36(ptr) Variable UniformConstant
+              42:             TypeInt 32 0
+              43:             TypeImage 42(int) 2D multi-sampled sampled format:Unknown
+              44:             TypePointer UniformConstant 43
+45(g_tTex2dmsu4):     44(ptr) Variable UniformConstant
+              49:             TypeVector 42(int) 4
+              66:             TypeImage 11(float) 2D array multi-sampled sampled format:Unknown
+              67:             TypePointer UniformConstant 66
+68(g_tTex2dmsf4a):     67(ptr) Variable UniformConstant
+              70:      6(int) Constant 2
+              71:             TypePointer Uniform 25(ivec3)
+              75:             TypeImage 6(int) 2D array multi-sampled sampled format:Unknown
+              76:             TypePointer UniformConstant 75
+77(g_tTex2dmsi4a):     76(ptr) Variable UniformConstant
+              82:             TypeImage 42(int) 2D array multi-sampled sampled format:Unknown
+              83:             TypePointer UniformConstant 82
+84(g_tTex2dmsu4a):     83(ptr) Variable UniformConstant
+             104:             TypePointer Function 13(PS_OUTPUT)
+             106:      6(int) Constant 0
+             107:   11(float) Constant 1065353216
+             108:   12(fvec4) ConstantComposite 107 107 107 107
+             109:             TypePointer Function 12(fvec4)
+             111:             TypePointer Function 11(float)
+             118:             TypePointer Output 12(fvec4)
+119(@entryPointOutput.Color):    118(ptr) Variable Output
+             122:             TypePointer Output 11(float)
+123(@entryPointOutput.Depth):    122(ptr) Variable Output
+             126:             TypeSampler
+             127:             TypePointer UniformConstant 126
+    128(g_sSamp):    127(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
-      103(psout):    102(ptr) Variable Function
-              10:           7 Load 9(g_tTex2dmsf4)
-              20:     19(ptr) AccessChain 17 18
-              21:   12(ivec2) Load 20
-              24:   23(fvec4) ImageFetch 10 21 Sample 22
-              28:          25 Load 27(g_tTex2dmsi4)
-              29:     19(ptr) AccessChain 17 18
-              30:   12(ivec2) Load 29
-              31:   14(ivec4) ImageFetch 28 30 Sample 22
-              36:          33 Load 35(g_tTex2dmsu4)
-              37:     19(ptr) AccessChain 17 18
-              38:   12(ivec2) Load 37
-              40:   39(ivec4) ImageFetch 36 38 Sample 22
-              41:           7 Load 9(g_tTex2dmsf4)
-              42:     19(ptr) AccessChain 17 18
-              43:   12(ivec2) Load 42
-              45:     19(ptr) AccessChain 17 44
-              46:   12(ivec2) Load 45
-              47:   23(fvec4) ImageFetch 41 43 Offset Sample 46 22
-              48:          25 Load 27(g_tTex2dmsi4)
-              49:     19(ptr) AccessChain 17 18
-              50:   12(ivec2) Load 49
-              51:     19(ptr) AccessChain 17 44
-              52:   12(ivec2) Load 51
-              53:   14(ivec4) ImageFetch 48 50 Offset Sample 52 22
-              54:          33 Load 35(g_tTex2dmsu4)
-              55:     19(ptr) AccessChain 17 18
-              56:   12(ivec2) Load 55
-              57:     19(ptr) AccessChain 17 44
-              58:   12(ivec2) Load 57
-              59:   39(ivec4) ImageFetch 54 56 Offset Sample 58 22
-              63:          60 Load 62(g_tTex2dmsf4a)
-              66:     65(ptr) AccessChain 17 64
-              67:   13(ivec3) Load 66
-              68:   23(fvec4) ImageFetch 63 67 Sample 22
-              72:          69 Load 71(g_tTex2dmsi4a)
-              73:     65(ptr) AccessChain 17 64
-              74:   13(ivec3) Load 73
-              75:   14(ivec4) ImageFetch 72 74 Sample 22
-              79:          76 Load 78(g_tTex2dmsu4a)
-              80:     65(ptr) AccessChain 17 64
-              81:   13(ivec3) Load 80
-              82:   39(ivec4) ImageFetch 79 81 Sample 22
-              83:          60 Load 62(g_tTex2dmsf4a)
-              84:     65(ptr) AccessChain 17 64
-              85:   13(ivec3) Load 84
-              86:     19(ptr) AccessChain 17 44
-              87:   12(ivec2) Load 86
-              88:   23(fvec4) ImageFetch 83 85 Offset Sample 87 22
-              89:          69 Load 71(g_tTex2dmsi4a)
-              90:     65(ptr) AccessChain 17 64
-              91:   13(ivec3) Load 90
-              92:     19(ptr) AccessChain 17 44
-              93:   12(ivec2) Load 92
-              94:   14(ivec4) ImageFetch 89 91 Offset Sample 93 22
-              95:          76 Load 78(g_tTex2dmsu4a)
-              96:     65(ptr) AccessChain 17 64
-              97:   13(ivec3) Load 96
-              98:     19(ptr) AccessChain 17 44
-              99:   12(ivec2) Load 98
-             100:   39(ivec4) ImageFetch 95 97 Offset Sample 99 22
-             108:    107(ptr) AccessChain 103(psout) 104
-                              Store 108 106
-             110:    109(ptr) AccessChain 103(psout) 18
-                              Store 110 105
-             113:    107(ptr) AccessChain 103(psout) 104
-             114:   23(fvec4) Load 113
-                              Store 112(Color) 114
-             117:    109(ptr) AccessChain 103(psout) 18
-             118:    6(float) Load 117
-                              Store 116(Depth) 118
+116(flattenTemp):    104(ptr) Variable Function
+             117:13(PS_OUTPUT) FunctionCall 15(@main()
+                              Store 116(flattenTemp) 117
+             120:    109(ptr) AccessChain 116(flattenTemp) 106
+             121:   12(fvec4) Load 120
+                              Store 119(@entryPointOutput.Color) 121
+             124:    111(ptr) AccessChain 116(flattenTemp) 17
+             125:   11(float) Load 124
+                              Store 123(@entryPointOutput.Depth) 125
                               Return
                               FunctionEnd
+   9(getOffset():    7(ivec2) Function None 8
+              10:             Label
+                              ReturnValue 18
+                              FunctionEnd
+      15(@main():13(PS_OUTPUT) Function None 14
+              16:             Label
+      105(psout):    104(ptr) Variable Function
+              24:          21 Load 23(g_tTex2dmsf4)
+              31:     30(ptr) AccessChain 29 17
+              32:    7(ivec2) Load 31
+              34:   12(fvec4) ImageFetch 24 32 Sample 33
+              38:          35 Load 37(g_tTex2dmsi4)
+              39:     30(ptr) AccessChain 29 17
+              40:    7(ivec2) Load 39
+              41:   26(ivec4) ImageFetch 38 40 Sample 33
+              46:          43 Load 45(g_tTex2dmsu4)
+              47:     30(ptr) AccessChain 29 17
+              48:    7(ivec2) Load 47
+              50:   49(ivec4) ImageFetch 46 48 Sample 33
+              51:          21 Load 23(g_tTex2dmsf4)
+              52:     30(ptr) AccessChain 29 17
+              53:    7(ivec2) Load 52
+              54:    7(ivec2) FunctionCall 9(getOffset()
+              55:   12(fvec4) ImageFetch 51 53 Offset Sample 54 33
+              56:          35 Load 37(g_tTex2dmsi4)
+              57:     30(ptr) AccessChain 29 17
+              58:    7(ivec2) Load 57
+              59:    7(ivec2) FunctionCall 9(getOffset()
+              60:   26(ivec4) ImageFetch 56 58 Offset Sample 59 33
+              61:          43 Load 45(g_tTex2dmsu4)
+              62:     30(ptr) AccessChain 29 17
+              63:    7(ivec2) Load 62
+              64:    7(ivec2) FunctionCall 9(getOffset()
+              65:   49(ivec4) ImageFetch 61 63 Offset Sample 64 33
+              69:          66 Load 68(g_tTex2dmsf4a)
+              72:     71(ptr) AccessChain 29 70
+              73:   25(ivec3) Load 72
+              74:   12(fvec4) ImageFetch 69 73 Sample 33
+              78:          75 Load 77(g_tTex2dmsi4a)
+              79:     71(ptr) AccessChain 29 70
+              80:   25(ivec3) Load 79
+              81:   26(ivec4) ImageFetch 78 80 Sample 33
+              85:          82 Load 84(g_tTex2dmsu4a)
+              86:     71(ptr) AccessChain 29 70
+              87:   25(ivec3) Load 86
+              88:   49(ivec4) ImageFetch 85 87 Sample 33
+              89:          66 Load 68(g_tTex2dmsf4a)
+              90:     71(ptr) AccessChain 29 70
+              91:   25(ivec3) Load 90
+              92:    7(ivec2) FunctionCall 9(getOffset()
+              93:   12(fvec4) ImageFetch 89 91 Offset Sample 92 33
+              94:          75 Load 77(g_tTex2dmsi4a)
+              95:     71(ptr) AccessChain 29 70
+              96:   25(ivec3) Load 95
+              97:    7(ivec2) FunctionCall 9(getOffset()
+              98:   26(ivec4) ImageFetch 94 96 Offset Sample 97 33
+              99:          82 Load 84(g_tTex2dmsu4a)
+             100:     71(ptr) AccessChain 29 70
+             101:   25(ivec3) Load 100
+             102:    7(ivec2) FunctionCall 9(getOffset()
+             103:   49(ivec4) ImageFetch 99 101 Offset Sample 102 33
+             110:    109(ptr) AccessChain 105(psout) 106
+                              Store 110 108
+             112:    111(ptr) AccessChain 105(psout) 17
+                              Store 112 107
+             113:13(PS_OUTPUT) Load 105(psout)
+                              ReturnValue 113
+                              FunctionEnd