HLSL: Flatten whole-struct assigns and returns when targeting flattened I/O structs.
authorJohn Kessenich <cepheus@frii.com>
Fri, 16 Sep 2016 09:05:12 +0000 (03:05 -0600)
committerJohn Kessenich <cepheus@frii.com>
Fri, 16 Sep 2016 09:20:03 +0000 (03:20 -0600)
67 files changed:
Test/baseResults/hlsl.calculatelod.dx10.frag.out
Test/baseResults/hlsl.calculatelodunclamped.dx10.frag.out
Test/baseResults/hlsl.constructexpr.frag.out
Test/baseResults/hlsl.entry-out.frag.out
Test/baseResults/hlsl.gather.array.dx10.frag.out
Test/baseResults/hlsl.gather.basic.dx10.frag.out
Test/baseResults/hlsl.gather.basic.dx10.vert.out
Test/baseResults/hlsl.gather.offset.dx10.frag.out
Test/baseResults/hlsl.gather.offsetarray.dx10.frag.out
Test/baseResults/hlsl.gatherRGBA.array.dx10.frag.out
Test/baseResults/hlsl.gatherRGBA.basic.dx10.frag.out
Test/baseResults/hlsl.gatherRGBA.offset.dx10.frag.out
Test/baseResults/hlsl.gatherRGBA.offsetarray.dx10.frag.out
Test/baseResults/hlsl.getdimensions.dx10.frag.out
Test/baseResults/hlsl.getdimensions.dx10.vert.out
Test/baseResults/hlsl.getsampleposition.dx10.frag.out
Test/baseResults/hlsl.init2.frag.out
Test/baseResults/hlsl.inoutquals.frag.out
Test/baseResults/hlsl.intrinsics.frag.out
Test/baseResults/hlsl.load.2dms.dx10.frag.out
Test/baseResults/hlsl.load.array.dx10.frag.out
Test/baseResults/hlsl.load.basic.dx10.frag.out
Test/baseResults/hlsl.load.basic.dx10.vert.out
Test/baseResults/hlsl.load.buffer.dx10.frag.out
Test/baseResults/hlsl.load.offset.dx10.frag.out
Test/baseResults/hlsl.load.offsetarray.dx10.frag.out
Test/baseResults/hlsl.matrixindex.frag.out
Test/baseResults/hlsl.numericsuffixes.frag.out
Test/baseResults/hlsl.pp.line.frag.out
Test/baseResults/hlsl.precise.frag.out
Test/baseResults/hlsl.promotions.frag.out
Test/baseResults/hlsl.sample.array.dx10.frag.out
Test/baseResults/hlsl.sample.basic.dx10.frag.out
Test/baseResults/hlsl.sample.offset.dx10.frag.out
Test/baseResults/hlsl.sample.offsetarray.dx10.frag.out
Test/baseResults/hlsl.samplebias.array.dx10.frag.out
Test/baseResults/hlsl.samplebias.basic.dx10.frag.out
Test/baseResults/hlsl.samplebias.offset.dx10.frag.out
Test/baseResults/hlsl.samplebias.offsetarray.dx10.frag.out
Test/baseResults/hlsl.samplecmp.array.dx10.frag.out
Test/baseResults/hlsl.samplecmp.basic.dx10.frag.out
Test/baseResults/hlsl.samplecmp.offset.dx10.frag.out
Test/baseResults/hlsl.samplecmp.offsetarray.dx10.frag.out
Test/baseResults/hlsl.samplecmplevelzero.array.dx10.frag.out
Test/baseResults/hlsl.samplecmplevelzero.basic.dx10.frag.out
Test/baseResults/hlsl.samplecmplevelzero.offset.dx10.frag.out
Test/baseResults/hlsl.samplecmplevelzero.offsetarray.dx10.frag.out
Test/baseResults/hlsl.samplegrad.array.dx10.frag.out
Test/baseResults/hlsl.samplegrad.basic.dx10.frag.out
Test/baseResults/hlsl.samplegrad.basic.dx10.vert.out
Test/baseResults/hlsl.samplegrad.offset.dx10.frag.out
Test/baseResults/hlsl.samplegrad.offsetarray.dx10.frag.out
Test/baseResults/hlsl.samplelevel.array.dx10.frag.out
Test/baseResults/hlsl.samplelevel.basic.dx10.frag.out
Test/baseResults/hlsl.samplelevel.basic.dx10.vert.out
Test/baseResults/hlsl.samplelevel.offset.dx10.frag.out
Test/baseResults/hlsl.samplelevel.offsetarray.dx10.frag.out
Test/baseResults/hlsl.semicolons.frag.out
Test/baseResults/hlsl.stringtoken.frag.out
Test/baseResults/remap.hlsl.sample.basic.everything.frag.out
Test/baseResults/remap.hlsl.sample.basic.none.frag.out
Test/baseResults/remap.hlsl.sample.basic.strip.frag.out
Test/hlsl.entry-out.frag
glslang/Include/revision.h
hlsl/hlslGrammar.cpp
hlsl/hlslParseHelper.cpp
hlsl/hlslParseHelper.h

index cf251a6..5174eee 100644 (file)
@@ -139,10 +139,20 @@ gl_FragCoord origin is upper left
 0:41            1 (const int)
 0:41        Constant:
 0:41          1.000000
-0:43      Sequence
-0:43        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:43          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:43          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:43            Color: direct index for structure (temp 4-component vector of float)
+0:43              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:43              Constant:
+0:43                0 (const int)
+0:43          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:43            Depth: direct index for structure (temp float FragDepth)
+0:43              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:43              Constant:
+0:43                1 (const int)
 0:43        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -303,10 +313,20 @@ gl_FragCoord origin is upper left
 0:41            1 (const int)
 0:41        Constant:
 0:41          1.000000
-0:43      Sequence
-0:43        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:43          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:43          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:43            Color: direct index for structure (temp 4-component vector of float)
+0:43              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:43              Constant:
+0:43                0 (const int)
+0:43          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:43            Depth: direct index for structure (temp float FragDepth)
+0:43              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:43              Constant:
+0:43                1 (const int)
 0:43        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -325,7 +345,7 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 149
+// Id's are bound by 150
 
                               Capability Shader
                               Capability Sampled1D
@@ -333,7 +353,7 @@ gl_FragCoord origin is upper left
                               Capability ImageQuery
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 141 146 148
+                              EntryPoint Fragment 4  "main" 141 145
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 8  "txval10"
@@ -359,10 +379,9 @@ gl_FragCoord origin is upper left
                               MemberName 131(PS_OUTPUT) 0  "Color"
                               MemberName 131(PS_OUTPUT) 1  "Depth"
                               Name 133  "psout"
-                              Name 141  "@entryPointOutput"
-                              Name 144  "g_tTex1df4"
-                              Name 146  "Color"
-                              Name 148  "Depth"
+                              Name 141  "Color"
+                              Name 145  "Depth"
+                              Name 149  "g_tTex1df4"
                               Decorate 11(g_tTex1df4a) DescriptorSet 0
                               Decorate 11(g_tTex1df4a) Binding 1
                               Decorate 15(g_sSamp) DescriptorSet 0
@@ -376,10 +395,10 @@ gl_FragCoord origin is upper left
                               Decorate 106(g_tTexcdi4a) DescriptorSet 0
                               Decorate 118(g_tTexcdu4a) DescriptorSet 0
                               MemberDecorate 131(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 144(g_tTex1df4) DescriptorSet 0
-                              Decorate 144(g_tTex1df4) Binding 0
-                              Decorate 146(Color) Location 0
-                              Decorate 148(Depth) BuiltIn FragDepth
+                              Decorate 141(Color) Location 0
+                              Decorate 145(Depth) BuiltIn FragDepth
+                              Decorate 149(g_tTex1df4) DescriptorSet 0
+                              Decorate 149(g_tTex1df4) Binding 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -450,13 +469,11 @@ gl_FragCoord origin is upper left
              135:  130(fvec4) ConstantComposite 134 134 134 134
              136:             TypePointer Function 130(fvec4)
              138:     23(int) Constant 1
-             140:             TypePointer Output 131(PS_OUTPUT)
-141(@entryPointOutput):    140(ptr) Variable Output
- 144(g_tTex1df4):     10(ptr) Variable UniformConstant
-             145:             TypePointer Output 130(fvec4)
-      146(Color):    145(ptr) Variable Output
-             147:             TypePointer Output 6(float)
-      148(Depth):    147(ptr) Variable Output
+             140:             TypePointer Output 130(fvec4)
+      141(Color):    140(ptr) Variable Output
+             144:             TypePointer Output 6(float)
+      145(Depth):    144(ptr) Variable Output
+ 149(g_tTex1df4):     10(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
       8(txval10):      7(ptr) Variable Function
@@ -536,7 +553,11 @@ gl_FragCoord origin is upper left
                               Store 137 135
              139:      7(ptr) AccessChain 133(psout) 138
                               Store 139 134
-             142:131(PS_OUTPUT) Load 133(psout)
-                              Store 141(@entryPointOutput) 142
+             142:    136(ptr) AccessChain 133(psout) 24
+             143:  130(fvec4) Load 142
+                              Store 141(Color) 143
+             146:      7(ptr) AccessChain 133(psout) 138
+             147:    6(float) Load 146
+                              Store 145(Depth) 147
                               Return
                               FunctionEnd
index 3faac3c..88b7f70 100644 (file)
@@ -151,10 +151,20 @@ ERROR: node is still EOpNull!
 0:41            1 (const int)
 0:41        Constant:
 0:41          1.000000
-0:43      Sequence
-0:43        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:43          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:43          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:43            Color: direct index for structure (temp 4-component vector of float)
+0:43              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:43              Constant:
+0:43                0 (const int)
+0:43          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:43            Depth: direct index for structure (temp float FragDepth)
+0:43              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:43              Constant:
+0:43                1 (const int)
 0:43        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -315,10 +325,20 @@ ERROR: node is still EOpNull!
 0:41            1 (const int)
 0:41        Constant:
 0:41          1.000000
-0:43      Sequence
-0:43        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:43          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:43          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:43            Color: direct index for structure (temp 4-component vector of float)
+0:43              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:43              Constant:
+0:43                0 (const int)
+0:43          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:43            Depth: direct index for structure (temp float FragDepth)
+0:43              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:43              Constant:
+0:43                1 (const int)
 0:43        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
index a8ff93c..956e1bb 100644 (file)
@@ -34,10 +34,14 @@ gl_FragCoord origin is upper left
 0:15          1.000000
 0:15          1.000000
 0:15          1.000000
-0:16      Sequence
-0:16        move second child to first child (temp structure{temp 4-component vector of float color})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float color})
-0:16          'ps_output' (temp structure{temp 4-component vector of float color})
+0:?       Sequence
+0:?         Sequence
+0:16          move second child to first child (temp 4-component vector of float)
+0:?             'color' (layout(location=0 ) out 4-component vector of float)
+0:16            color: direct index for structure (temp 4-component vector of float)
+0:16              'ps_output' (temp structure{temp 4-component vector of float color})
+0:16              Constant:
+0:16                0 (const int)
 0:16        Branch: Return
 0:?   Linker Objects
 0:?     'color' (layout(location=0 ) out 4-component vector of float)
@@ -81,30 +85,33 @@ gl_FragCoord origin is upper left
 0:15          1.000000
 0:15          1.000000
 0:15          1.000000
-0:16      Sequence
-0:16        move second child to first child (temp structure{temp 4-component vector of float color})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float color})
-0:16          'ps_output' (temp structure{temp 4-component vector of float color})
+0:?       Sequence
+0:?         Sequence
+0:16          move second child to first child (temp 4-component vector of float)
+0:?             'color' (layout(location=0 ) out 4-component vector of float)
+0:16            color: direct index for structure (temp 4-component vector of float)
+0:16              'ps_output' (temp structure{temp 4-component vector of float color})
+0:16              Constant:
+0:16                0 (const int)
 0:16        Branch: Return
 0:?   Linker Objects
 0:?     'color' (layout(location=0 ) out 4-component vector of float)
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 36
+// Id's are bound by 35
 
                               Capability Shader
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 31 35
+                              EntryPoint Fragment 4  "main" 31
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 22  "PS_OUTPUT"
                               MemberName 22(PS_OUTPUT) 0  "color"
                               Name 24  "ps_output"
-                              Name 31  "@entryPointOutput"
-                              Name 35  "color"
-                              Decorate 35(color) Location 0
+                              Name 31  "color"
+                              Decorate 31(color) Location 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeInt 32 1
@@ -129,16 +136,15 @@ gl_FragCoord origin is upper left
               26:   13(float) Constant 1065353216
               27:   21(fvec4) ConstantComposite 26 26 26 26
               28:             TypePointer Function 21(fvec4)
-              30:             TypePointer Output 22(PS_OUTPUT)
-31(@entryPointOutput):     30(ptr) Variable Output
-              34:             TypePointer Output 21(fvec4)
-       35(color):     34(ptr) Variable Output
+              30:             TypePointer Output 21(fvec4)
+       31(color):     30(ptr) Variable Output
          4(main):           2 Function None 3
                5:             Label
    24(ps_output):     23(ptr) Variable Function
               29:     28(ptr) AccessChain 24(ps_output) 25
                               Store 29 27
-              32:22(PS_OUTPUT) Load 24(ps_output)
-                              Store 31(@entryPointOutput) 32
+              32:     28(ptr) AccessChain 24(ps_output) 25
+              33:   21(fvec4) Load 32
+                              Store 31(color) 33
                               Return
                               FunctionEnd
index efd82f7..81926dd 100755 (executable)
@@ -2,11 +2,12 @@ hlsl.entry-out.frag
 Shader version: 450
 gl_FragCoord origin is upper left
 0:? Sequence
-0:7  Function Definition: PixelShaderFunction(vf4;vf4;struct-OutParam-vf2-vi21; (global 4-component vector of float)
+0:7  Function Definition: PixelShaderFunction(vf4;vf4;struct-OutParam-vf2-vi21;struct-OutParam-vf2-vi21; (global 4-component vector of float)
 0:7    Function Parameters: 
 0:7      'input' (layout(location=0 ) in 4-component vector of float)
 0:7      'out1' (layout(location=1 ) out 4-component vector of float)
 0:7      'out2' (out structure{temp 2-component vector of float v, temp 2-component vector of int i})
+0:7      'out3' (out structure{temp 2-component vector of float v, temp 2-component vector of int i})
 0:?     Sequence
 0:8      move second child to first child (temp 4-component vector of float)
 0:8        'out1' (layout(location=1 ) out 4-component vector of float)
@@ -21,17 +22,48 @@ gl_FragCoord origin is upper left
 0:10        Constant:
 0:10          3 (const int)
 0:10          3 (const int)
-0:11      Sequence
-0:11        move second child to first child (temp 4-component vector of float)
+0:12      move second child to first child (temp 2-component vector of float)
+0:12        v: direct index for structure (temp 2-component vector of float)
+0:12          'local' (temp structure{temp 2-component vector of float v, temp 2-component vector of int i})
+0:12          Constant:
+0:12            0 (const int)
+0:12        Constant:
+0:12          12.000000
+0:12          12.000000
+0:13      move second child to first child (temp 2-component vector of int)
+0:13        i: direct index for structure (temp 2-component vector of int)
+0:13          'local' (temp structure{temp 2-component vector of float v, temp 2-component vector of int i})
+0:13          Constant:
+0:13            1 (const int)
+0:13        Constant:
+0:13          13 (const int)
+0:13          13 (const int)
+0:?       Sequence
+0:14        move second child to first child (temp 2-component vector of float)
+0:?           'v' (layout(location=4 ) out 2-component vector of float)
+0:14          v: direct index for structure (temp 2-component vector of float)
+0:14            'local' (temp structure{temp 2-component vector of float v, temp 2-component vector of int i})
+0:14            Constant:
+0:14              0 (const int)
+0:14        move second child to first child (temp 2-component vector of int)
+0:?           'i' (layout(location=5 ) out 2-component vector of int)
+0:14          i: direct index for structure (temp 2-component vector of int)
+0:14            'local' (temp structure{temp 2-component vector of float v, temp 2-component vector of int i})
+0:14            Constant:
+0:14              1 (const int)
+0:16      Sequence
+0:16        move second child to first child (temp 4-component vector of float)
 0:?           '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
-0:11          'out1' (layout(location=1 ) out 4-component vector of float)
-0:11        Branch: Return
+0:16          'out1' (layout(location=1 ) out 4-component vector of float)
+0:16        Branch: Return
 0:?   Linker Objects
 0:?     '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
 0:?     'input' (layout(location=0 ) in 4-component vector of float)
 0:?     'out1' (layout(location=1 ) out 4-component vector of float)
 0:?     'v' (layout(location=2 ) out 2-component vector of float)
 0:?     'i' (layout(location=3 ) out 2-component vector of int)
+0:?     'v' (layout(location=4 ) out 2-component vector of float)
+0:?     'i' (layout(location=5 ) out 2-component vector of int)
 
 
 Linked fragment stage:
@@ -40,11 +72,12 @@ Linked fragment stage:
 Shader version: 450
 gl_FragCoord origin is upper left
 0:? Sequence
-0:7  Function Definition: PixelShaderFunction(vf4;vf4;struct-OutParam-vf2-vi21; (global 4-component vector of float)
+0:7  Function Definition: PixelShaderFunction(vf4;vf4;struct-OutParam-vf2-vi21;struct-OutParam-vf2-vi21; (global 4-component vector of float)
 0:7    Function Parameters: 
 0:7      'input' (layout(location=0 ) in 4-component vector of float)
 0:7      'out1' (layout(location=1 ) out 4-component vector of float)
 0:7      'out2' (out structure{temp 2-component vector of float v, temp 2-component vector of int i})
+0:7      'out3' (out structure{temp 2-component vector of float v, temp 2-component vector of int i})
 0:?     Sequence
 0:8      move second child to first child (temp 4-component vector of float)
 0:8        'out1' (layout(location=1 ) out 4-component vector of float)
@@ -59,38 +92,77 @@ gl_FragCoord origin is upper left
 0:10        Constant:
 0:10          3 (const int)
 0:10          3 (const int)
-0:11      Sequence
-0:11        move second child to first child (temp 4-component vector of float)
+0:12      move second child to first child (temp 2-component vector of float)
+0:12        v: direct index for structure (temp 2-component vector of float)
+0:12          'local' (temp structure{temp 2-component vector of float v, temp 2-component vector of int i})
+0:12          Constant:
+0:12            0 (const int)
+0:12        Constant:
+0:12          12.000000
+0:12          12.000000
+0:13      move second child to first child (temp 2-component vector of int)
+0:13        i: direct index for structure (temp 2-component vector of int)
+0:13          'local' (temp structure{temp 2-component vector of float v, temp 2-component vector of int i})
+0:13          Constant:
+0:13            1 (const int)
+0:13        Constant:
+0:13          13 (const int)
+0:13          13 (const int)
+0:?       Sequence
+0:14        move second child to first child (temp 2-component vector of float)
+0:?           'v' (layout(location=4 ) out 2-component vector of float)
+0:14          v: direct index for structure (temp 2-component vector of float)
+0:14            'local' (temp structure{temp 2-component vector of float v, temp 2-component vector of int i})
+0:14            Constant:
+0:14              0 (const int)
+0:14        move second child to first child (temp 2-component vector of int)
+0:?           'i' (layout(location=5 ) out 2-component vector of int)
+0:14          i: direct index for structure (temp 2-component vector of int)
+0:14            'local' (temp structure{temp 2-component vector of float v, temp 2-component vector of int i})
+0:14            Constant:
+0:14              1 (const int)
+0:16      Sequence
+0:16        move second child to first child (temp 4-component vector of float)
 0:?           '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
-0:11          'out1' (layout(location=1 ) out 4-component vector of float)
-0:11        Branch: Return
+0:16          'out1' (layout(location=1 ) out 4-component vector of float)
+0:16        Branch: Return
 0:?   Linker Objects
 0:?     '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
 0:?     'input' (layout(location=0 ) in 4-component vector of float)
 0:?     'out1' (layout(location=1 ) out 4-component vector of float)
 0:?     'v' (layout(location=2 ) out 2-component vector of float)
 0:?     'i' (layout(location=3 ) out 2-component vector of int)
+0:?     'v' (layout(location=4 ) out 2-component vector of float)
+0:?     'i' (layout(location=5 ) out 2-component vector of int)
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 27
+// Id's are bound by 46
 
                               Capability Shader
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "PixelShaderFunction" 9 11 15 21 24
+                              EntryPoint Fragment 4  "PixelShaderFunction" 9 11 15 21 37 40 43
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "PixelShaderFunction"
                               Name 9  "out1"
                               Name 11  "input"
                               Name 15  "v"
                               Name 21  "i"
-                              Name 24  "@entryPointOutput"
+                              Name 24  "OutParam"
+                              MemberName 24(OutParam) 0  "v"
+                              MemberName 24(OutParam) 1  "i"
+                              Name 26  "local"
+                              Name 37  "v"
+                              Name 40  "i"
+                              Name 43  "@entryPointOutput"
                               Decorate 9(out1) Location 1
                               Decorate 11(input) Location 0
                               Decorate 15(v) Location 2
                               Decorate 21(i) Location 3
-                              Decorate 24(@entryPointOutput) Location 0
+                              Decorate 37(v) Location 4
+                              Decorate 40(i) Location 5
+                              Decorate 43(@entryPointOutput) Location 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -110,14 +182,37 @@ gl_FragCoord origin is upper left
            21(i):     20(ptr) Variable Output
               22:     18(int) Constant 3
               23:   19(ivec2) ConstantComposite 22 22
-24(@entryPointOutput):      8(ptr) Variable Output
+    24(OutParam):             TypeStruct 13(fvec2) 19(ivec2)
+              25:             TypePointer Function 24(OutParam)
+              27:     18(int) Constant 0
+              28:    6(float) Constant 1094713344
+              29:   13(fvec2) ConstantComposite 28 28
+              30:             TypePointer Function 13(fvec2)
+              32:     18(int) Constant 1
+              33:     18(int) Constant 13
+              34:   19(ivec2) ConstantComposite 33 33
+              35:             TypePointer Function 19(ivec2)
+           37(v):     14(ptr) Variable Output
+           40(i):     20(ptr) Variable Output
+43(@entryPointOutput):      8(ptr) Variable Output
 4(PixelShaderFunction):           2 Function None 3
                5:             Label
+       26(local):     25(ptr) Variable Function
               12:    7(fvec4) Load 11(input)
                               Store 9(out1) 12
                               Store 15(v) 17
                               Store 21(i) 23
-              25:    7(fvec4) Load 9(out1)
-                              Store 24(@entryPointOutput) 25
+              31:     30(ptr) AccessChain 26(local) 27
+                              Store 31 29
+              36:     35(ptr) AccessChain 26(local) 32
+                              Store 36 34
+              38:     30(ptr) AccessChain 26(local) 27
+              39:   13(fvec2) Load 38
+                              Store 37(v) 39
+              41:     35(ptr) AccessChain 26(local) 32
+              42:   19(ivec2) Load 41
+                              Store 40(i) 42
+              44:    7(fvec4) Load 9(out1)
+                              Store 43(@entryPointOutput) 44
                               Return
                               FunctionEnd
index e224ce8..1c4c2f1 100644 (file)
@@ -91,10 +91,20 @@ gl_FragCoord origin is upper left
 0:40            1 (const int)
 0:40        Constant:
 0:40          1.000000
-0:42      Sequence
-0:42        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:42          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:42          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:42            Color: direct index for structure (temp 4-component vector of float)
+0:42              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:42              Constant:
+0:42                0 (const int)
+0:42          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:42            Depth: direct index for structure (temp float FragDepth)
+0:42              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:42              Constant:
+0:42                1 (const int)
 0:42        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -207,10 +217,20 @@ gl_FragCoord origin is upper left
 0:40            1 (const int)
 0:40        Constant:
 0:40          1.000000
-0:42      Sequence
-0:42        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:42          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:42          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:42            Color: direct index for structure (temp 4-component vector of float)
+0:42              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:42              Constant:
+0:42                0 (const int)
+0:42          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:42            Depth: direct index for structure (temp float FragDepth)
+0:42              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:42              Constant:
+0:42                1 (const int)
 0:42        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -229,14 +249,14 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 116
+// Id's are bound by 117
 
                               Capability Shader
                               Capability Sampled1D
                               Capability SampledCubeArray
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 99 113 115
+                              EntryPoint Fragment 4  "main" 99 103
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 9  "txval20"
@@ -256,13 +276,12 @@ gl_FragCoord origin is upper left
                               MemberName 90(PS_OUTPUT) 0  "Color"
                               MemberName 90(PS_OUTPUT) 1  "Depth"
                               Name 92  "psout"
-                              Name 99  "@entryPointOutput"
-                              Name 104  "g_tTex1df4a"
-                              Name 105  "g_tTex1df4"
-                              Name 108  "g_tTex1di4a"
-                              Name 111  "g_tTex1du4a"
-                              Name 113  "Color"
-                              Name 115  "Depth"
+                              Name 99  "Color"
+                              Name 103  "Depth"
+                              Name 109  "g_tTex1df4a"
+                              Name 110  "g_tTex1df4"
+                              Name 113  "g_tTex1di4a"
+                              Name 116  "g_tTex1du4a"
                               Decorate 12(g_tTex2df4a) DescriptorSet 0
                               Decorate 16(g_sSamp) DescriptorSet 0
                               Decorate 16(g_sSamp) Binding 0
@@ -272,14 +291,14 @@ gl_FragCoord origin is upper left
                               Decorate 70(g_tTexcdi4a) DescriptorSet 0
                               Decorate 80(g_tTexcdu4a) DescriptorSet 0
                               MemberDecorate 90(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 104(g_tTex1df4a) DescriptorSet 0
-                              Decorate 104(g_tTex1df4a) Binding 1
-                              Decorate 105(g_tTex1df4) DescriptorSet 0
-                              Decorate 105(g_tTex1df4) Binding 0
-                              Decorate 108(g_tTex1di4a) DescriptorSet 0
-                              Decorate 111(g_tTex1du4a) DescriptorSet 0
-                              Decorate 113(Color) Location 0
-                              Decorate 115(Depth) BuiltIn FragDepth
+                              Decorate 99(Color) Location 0
+                              Decorate 103(Depth) BuiltIn FragDepth
+                              Decorate 109(g_tTex1df4a) DescriptorSet 0
+                              Decorate 109(g_tTex1df4a) Binding 1
+                              Decorate 110(g_tTex1df4) DescriptorSet 0
+                              Decorate 110(g_tTex1df4) Binding 0
+                              Decorate 113(g_tTex1di4a) DescriptorSet 0
+                              Decorate 116(g_tTex1du4a) DescriptorSet 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -341,22 +360,20 @@ gl_FragCoord origin is upper left
               93:    7(fvec4) ConstantComposite 87 87 87 87
               95:     25(int) Constant 1
               96:             TypePointer Function 6(float)
-              98:             TypePointer Output 90(PS_OUTPUT)
-99(@entryPointOutput):     98(ptr) Variable Output
-             102:             TypeImage 6(float) 1D array sampled format:Unknown
-             103:             TypePointer UniformConstant 102
-104(g_tTex1df4a):    103(ptr) Variable UniformConstant
- 105(g_tTex1df4):    103(ptr) Variable UniformConstant
-             106:             TypeImage 25(int) 1D array sampled format:Unknown
-             107:             TypePointer UniformConstant 106
-108(g_tTex1di4a):    107(ptr) Variable UniformConstant
-             109:             TypeImage 42(int) 1D array sampled format:Unknown
-             110:             TypePointer UniformConstant 109
-111(g_tTex1du4a):    110(ptr) Variable UniformConstant
-             112:             TypePointer Output 7(fvec4)
-      113(Color):    112(ptr) Variable Output
-             114:             TypePointer Output 6(float)
-      115(Depth):    114(ptr) Variable Output
+              98:             TypePointer Output 7(fvec4)
+       99(Color):     98(ptr) Variable Output
+             102:             TypePointer Output 6(float)
+      103(Depth):    102(ptr) Variable Output
+             107:             TypeImage 6(float) 1D array sampled format:Unknown
+             108:             TypePointer UniformConstant 107
+109(g_tTex1df4a):    108(ptr) Variable UniformConstant
+ 110(g_tTex1df4):    108(ptr) Variable UniformConstant
+             111:             TypeImage 25(int) 1D array sampled format:Unknown
+             112:             TypePointer UniformConstant 111
+113(g_tTex1di4a):    112(ptr) Variable UniformConstant
+             114:             TypeImage 42(int) 1D array sampled format:Unknown
+             115:             TypePointer UniformConstant 114
+116(g_tTex1du4a):    115(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
       9(txval20):      8(ptr) Variable Function
@@ -400,7 +417,11 @@ gl_FragCoord origin is upper left
                               Store 94 93
               97:     96(ptr) AccessChain 92(psout) 95
                               Store 97 87
-             100:90(PS_OUTPUT) Load 92(psout)
-                              Store 99(@entryPointOutput) 100
+             100:      8(ptr) AccessChain 92(psout) 26
+             101:    7(fvec4) Load 100
+                              Store 99(Color) 101
+             104:     96(ptr) AccessChain 92(psout) 95
+             105:    6(float) Load 104
+                              Store 103(Depth) 105
                               Return
                               FunctionEnd
index 1703e47..340529d 100644 (file)
@@ -85,10 +85,20 @@ gl_FragCoord origin is upper left
 0:45            1 (const int)
 0:45        Constant:
 0:45          1.000000
-0:47      Sequence
-0:47        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:47          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:47          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:47            Color: direct index for structure (temp 4-component vector of float)
+0:47              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:47              Constant:
+0:47                0 (const int)
+0:47          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:47            Depth: direct index for structure (temp float FragDepth)
+0:47              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:47              Constant:
+0:47                1 (const int)
 0:47        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -199,10 +209,20 @@ gl_FragCoord origin is upper left
 0:45            1 (const int)
 0:45        Constant:
 0:45          1.000000
-0:47      Sequence
-0:47        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:47          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:47          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:47            Color: direct index for structure (temp 4-component vector of float)
+0:47              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:47              Constant:
+0:47                0 (const int)
+0:47          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:47            Depth: direct index for structure (temp float FragDepth)
+0:47              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:47              Constant:
+0:47                1 (const int)
 0:47        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -225,13 +245,13 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 127
+// Id's are bound by 128
 
                               Capability Shader
                               Capability Sampled1D
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 100 124 126
+                              EntryPoint Fragment 4  "main" 100 104
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 9  "txval20"
@@ -251,17 +271,16 @@ gl_FragCoord origin is upper left
                               MemberName 90(PS_OUTPUT) 0  "Color"
                               MemberName 90(PS_OUTPUT) 1  "Depth"
                               Name 92  "psout"
-                              Name 100  "@entryPointOutput"
-                              Name 103  "g_sSamp2d"
-                              Name 106  "g_tTex1df4a"
-                              Name 107  "g_tTex1df4"
-                              Name 110  "g_tTex1di4"
-                              Name 113  "g_tTex1du4"
-                              Name 116  "g_tTex3df4"
-                              Name 119  "g_tTex3di4"
-                              Name 122  "g_tTex3du4"
-                              Name 124  "Color"
-                              Name 126  "Depth"
+                              Name 100  "Color"
+                              Name 104  "Depth"
+                              Name 108  "g_sSamp2d"
+                              Name 111  "g_tTex1df4a"
+                              Name 112  "g_tTex1df4"
+                              Name 115  "g_tTex1di4"
+                              Name 118  "g_tTex1du4"
+                              Name 121  "g_tTex3df4"
+                              Name 124  "g_tTex3di4"
+                              Name 127  "g_tTex3du4"
                               Decorate 12(g_tTex2df4) DescriptorSet 0
                               Decorate 16(g_sSamp) DescriptorSet 0
                               Decorate 16(g_sSamp) Binding 0
@@ -271,18 +290,18 @@ gl_FragCoord origin is upper left
                               Decorate 70(g_tTexcdi4) DescriptorSet 0
                               Decorate 80(g_tTexcdu4) DescriptorSet 0
                               MemberDecorate 90(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 103(g_sSamp2d) DescriptorSet 0
-                              Decorate 106(g_tTex1df4a) DescriptorSet 0
-                              Decorate 106(g_tTex1df4a) Binding 1
-                              Decorate 107(g_tTex1df4) DescriptorSet 0
-                              Decorate 107(g_tTex1df4) Binding 0
-                              Decorate 110(g_tTex1di4) DescriptorSet 0
-                              Decorate 113(g_tTex1du4) DescriptorSet 0
-                              Decorate 116(g_tTex3df4) DescriptorSet 0
-                              Decorate 119(g_tTex3di4) DescriptorSet 0
-                              Decorate 122(g_tTex3du4) DescriptorSet 0
-                              Decorate 124(Color) Location 0
-                              Decorate 126(Depth) BuiltIn FragDepth
+                              Decorate 100(Color) Location 0
+                              Decorate 104(Depth) BuiltIn FragDepth
+                              Decorate 108(g_sSamp2d) DescriptorSet 0
+                              Decorate 111(g_tTex1df4a) DescriptorSet 0
+                              Decorate 111(g_tTex1df4a) Binding 1
+                              Decorate 112(g_tTex1df4) DescriptorSet 0
+                              Decorate 112(g_tTex1df4) Binding 0
+                              Decorate 115(g_tTex1di4) DescriptorSet 0
+                              Decorate 118(g_tTex1du4) DescriptorSet 0
+                              Decorate 121(g_tTex3df4) DescriptorSet 0
+                              Decorate 124(g_tTex3di4) DescriptorSet 0
+                              Decorate 127(g_tTex3du4) DescriptorSet 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -345,32 +364,30 @@ gl_FragCoord origin is upper left
               94:    7(fvec4) ConstantComposite 93 93 93 93
               96:     24(int) Constant 1
               97:             TypePointer Function 6(float)
-              99:             TypePointer Output 90(PS_OUTPUT)
-100(@entryPointOutput):     99(ptr) Variable Output
-  103(g_sSamp2d):     15(ptr) Variable UniformConstant
-             104:             TypeImage 6(float) 1D sampled format:Unknown
-             105:             TypePointer UniformConstant 104
-106(g_tTex1df4a):    105(ptr) Variable UniformConstant
- 107(g_tTex1df4):    105(ptr) Variable UniformConstant
-             108:             TypeImage 24(int) 1D sampled format:Unknown
-             109:             TypePointer UniformConstant 108
- 110(g_tTex1di4):    109(ptr) Variable UniformConstant
-             111:             TypeImage 41(int) 1D sampled format:Unknown
-             112:             TypePointer UniformConstant 111
- 113(g_tTex1du4):    112(ptr) Variable UniformConstant
-             114:             TypeImage 6(float) 3D sampled format:Unknown
-             115:             TypePointer UniformConstant 114
- 116(g_tTex3df4):    115(ptr) Variable UniformConstant
-             117:             TypeImage 24(int) 3D sampled format:Unknown
-             118:             TypePointer UniformConstant 117
- 119(g_tTex3di4):    118(ptr) Variable UniformConstant
-             120:             TypeImage 41(int) 3D sampled format:Unknown
-             121:             TypePointer UniformConstant 120
- 122(g_tTex3du4):    121(ptr) Variable UniformConstant
-             123:             TypePointer Output 7(fvec4)
-      124(Color):    123(ptr) Variable Output
-             125:             TypePointer Output 6(float)
-      126(Depth):    125(ptr) Variable Output
+              99:             TypePointer Output 7(fvec4)
+      100(Color):     99(ptr) Variable Output
+             103:             TypePointer Output 6(float)
+      104(Depth):    103(ptr) Variable Output
+  108(g_sSamp2d):     15(ptr) Variable UniformConstant
+             109:             TypeImage 6(float) 1D sampled format:Unknown
+             110:             TypePointer UniformConstant 109
+111(g_tTex1df4a):    110(ptr) Variable UniformConstant
+ 112(g_tTex1df4):    110(ptr) Variable UniformConstant
+             113:             TypeImage 24(int) 1D sampled format:Unknown
+             114:             TypePointer UniformConstant 113
+ 115(g_tTex1di4):    114(ptr) Variable UniformConstant
+             116:             TypeImage 41(int) 1D sampled format:Unknown
+             117:             TypePointer UniformConstant 116
+ 118(g_tTex1du4):    117(ptr) Variable UniformConstant
+             119:             TypeImage 6(float) 3D sampled format:Unknown
+             120:             TypePointer UniformConstant 119
+ 121(g_tTex3df4):    120(ptr) Variable UniformConstant
+             122:             TypeImage 24(int) 3D sampled format:Unknown
+             123:             TypePointer UniformConstant 122
+ 124(g_tTex3di4):    123(ptr) Variable UniformConstant
+             125:             TypeImage 41(int) 3D sampled format:Unknown
+             126:             TypePointer UniformConstant 125
+ 127(g_tTex3du4):    126(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
       9(txval20):      8(ptr) Variable Function
@@ -414,7 +431,11 @@ gl_FragCoord origin is upper left
                               Store 95 94
               98:     97(ptr) AccessChain 92(psout) 96
                               Store 98 93
-             101:90(PS_OUTPUT) Load 92(psout)
-                              Store 100(@entryPointOutput) 101
+             101:      8(ptr) AccessChain 92(psout) 25
+             102:    7(fvec4) Load 101
+                              Store 100(Color) 102
+             105:     97(ptr) AccessChain 92(psout) 96
+             106:    6(float) Load 105
+                              Store 104(Depth) 106
                               Return
                               FunctionEnd
index 449ef5b..74e2648 100644 (file)
@@ -77,10 +77,14 @@ Shader version: 450
 0:?           0.000000
 0:?           0.000000
 0:?           0.000000
-0:45      Sequence
-0:45        move second child to first child (temp structure{temp 4-component vector of float Position Pos})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Position Pos})
-0:45          'vsout' (temp structure{temp 4-component vector of float Position Pos})
+0:?       Sequence
+0:?         Sequence
+0:45          move second child to first child (temp 4-component vector of float)
+0:?             'Pos' (out 4-component vector of float Position)
+0:45            Pos: direct index for structure (temp 4-component vector of float Position)
+0:45              'vsout' (temp structure{temp 4-component vector of float Position Pos})
+0:45              Constant:
+0:45                0 (const int)
 0:45        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -182,10 +186,14 @@ Shader version: 450
 0:?           0.000000
 0:?           0.000000
 0:?           0.000000
-0:45      Sequence
-0:45        move second child to first child (temp structure{temp 4-component vector of float Position Pos})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Position Pos})
-0:45          'vsout' (temp structure{temp 4-component vector of float Position Pos})
+0:?       Sequence
+0:?         Sequence
+0:45          move second child to first child (temp 4-component vector of float)
+0:?             'Pos' (out 4-component vector of float Position)
+0:45            Pos: direct index for structure (temp 4-component vector of float Position)
+0:45              'vsout' (temp structure{temp 4-component vector of float Position Pos})
+0:45              Constant:
+0:45                0 (const int)
 0:45        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -207,13 +215,13 @@ Shader version: 450
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 122
+// Id's are bound by 121
 
                               Capability Shader
                               Capability Sampled1D
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Vertex 4  "main" 97 121
+                              EntryPoint Vertex 4  "main" 97
                               Name 4  "main"
                               Name 9  "txval20"
                               Name 12  "g_tTex2df4"
@@ -231,16 +239,15 @@ Shader version: 450
                               Name 90  "VS_OUTPUT"
                               MemberName 90(VS_OUTPUT) 0  "Pos"
                               Name 92  "vsout"
-                              Name 97  "@entryPointOutput"
-                              Name 100  "g_sSamp2d"
-                              Name 103  "g_tTex1df4a"
-                              Name 104  "g_tTex1df4"
-                              Name 107  "g_tTex1di4"
-                              Name 110  "g_tTex1du4"
-                              Name 113  "g_tTex3df4"
-                              Name 116  "g_tTex3di4"
-                              Name 119  "g_tTex3du4"
-                              Name 121  "Pos"
+                              Name 97  "Pos"
+                              Name 101  "g_sSamp2d"
+                              Name 104  "g_tTex1df4a"
+                              Name 105  "g_tTex1df4"
+                              Name 108  "g_tTex1di4"
+                              Name 111  "g_tTex1du4"
+                              Name 114  "g_tTex3df4"
+                              Name 117  "g_tTex3di4"
+                              Name 120  "g_tTex3du4"
                               Decorate 12(g_tTex2df4) DescriptorSet 0
                               Decorate 16(g_sSamp) DescriptorSet 0
                               Decorate 16(g_sSamp) Binding 0
@@ -250,17 +257,17 @@ Shader version: 450
                               Decorate 70(g_tTexcdi4) DescriptorSet 0
                               Decorate 80(g_tTexcdu4) DescriptorSet 0
                               MemberDecorate 90(VS_OUTPUT) 0 BuiltIn Position
-                              Decorate 100(g_sSamp2d) DescriptorSet 0
-                              Decorate 103(g_tTex1df4a) DescriptorSet 0
-                              Decorate 103(g_tTex1df4a) Binding 1
-                              Decorate 104(g_tTex1df4) DescriptorSet 0
-                              Decorate 104(g_tTex1df4) Binding 0
-                              Decorate 107(g_tTex1di4) DescriptorSet 0
-                              Decorate 110(g_tTex1du4) DescriptorSet 0
-                              Decorate 113(g_tTex3df4) DescriptorSet 0
-                              Decorate 116(g_tTex3di4) DescriptorSet 0
-                              Decorate 119(g_tTex3du4) DescriptorSet 0
-                              Decorate 121(Pos) BuiltIn Position
+                              Decorate 97(Pos) BuiltIn Position
+                              Decorate 101(g_sSamp2d) DescriptorSet 0
+                              Decorate 104(g_tTex1df4a) DescriptorSet 0
+                              Decorate 104(g_tTex1df4a) Binding 1
+                              Decorate 105(g_tTex1df4) DescriptorSet 0
+                              Decorate 105(g_tTex1df4) Binding 0
+                              Decorate 108(g_tTex1di4) DescriptorSet 0
+                              Decorate 111(g_tTex1du4) DescriptorSet 0
+                              Decorate 114(g_tTex3df4) DescriptorSet 0
+                              Decorate 117(g_tTex3di4) DescriptorSet 0
+                              Decorate 120(g_tTex3du4) DescriptorSet 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -321,30 +328,28 @@ Shader version: 450
               91:             TypePointer Function 90(VS_OUTPUT)
               93:    6(float) Constant 0
               94:    7(fvec4) ConstantComposite 93 93 93 93
-              96:             TypePointer Output 90(VS_OUTPUT)
-97(@entryPointOutput):     96(ptr) Variable Output
-  100(g_sSamp2d):     15(ptr) Variable UniformConstant
-             101:             TypeImage 6(float) 1D sampled format:Unknown
-             102:             TypePointer UniformConstant 101
-103(g_tTex1df4a):    102(ptr) Variable UniformConstant
- 104(g_tTex1df4):    102(ptr) Variable UniformConstant
-             105:             TypeImage 24(int) 1D sampled format:Unknown
-             106:             TypePointer UniformConstant 105
- 107(g_tTex1di4):    106(ptr) Variable UniformConstant
-             108:             TypeImage 41(int) 1D sampled format:Unknown
-             109:             TypePointer UniformConstant 108
- 110(g_tTex1du4):    109(ptr) Variable UniformConstant
-             111:             TypeImage 6(float) 3D sampled format:Unknown
-             112:             TypePointer UniformConstant 111
- 113(g_tTex3df4):    112(ptr) Variable UniformConstant
-             114:             TypeImage 24(int) 3D sampled format:Unknown
-             115:             TypePointer UniformConstant 114
- 116(g_tTex3di4):    115(ptr) Variable UniformConstant
-             117:             TypeImage 41(int) 3D sampled format:Unknown
-             118:             TypePointer UniformConstant 117
- 119(g_tTex3du4):    118(ptr) Variable UniformConstant
-             120:             TypePointer Output 7(fvec4)
-        121(Pos):    120(ptr) Variable Output
+              96:             TypePointer Output 7(fvec4)
+         97(Pos):     96(ptr) Variable Output
+  101(g_sSamp2d):     15(ptr) Variable UniformConstant
+             102:             TypeImage 6(float) 1D sampled format:Unknown
+             103:             TypePointer UniformConstant 102
+104(g_tTex1df4a):    103(ptr) Variable UniformConstant
+ 105(g_tTex1df4):    103(ptr) Variable UniformConstant
+             106:             TypeImage 24(int) 1D sampled format:Unknown
+             107:             TypePointer UniformConstant 106
+ 108(g_tTex1di4):    107(ptr) Variable UniformConstant
+             109:             TypeImage 41(int) 1D sampled format:Unknown
+             110:             TypePointer UniformConstant 109
+ 111(g_tTex1du4):    110(ptr) Variable UniformConstant
+             112:             TypeImage 6(float) 3D sampled format:Unknown
+             113:             TypePointer UniformConstant 112
+ 114(g_tTex3df4):    113(ptr) Variable UniformConstant
+             115:             TypeImage 24(int) 3D sampled format:Unknown
+             116:             TypePointer UniformConstant 115
+ 117(g_tTex3di4):    116(ptr) Variable UniformConstant
+             118:             TypeImage 41(int) 3D sampled format:Unknown
+             119:             TypePointer UniformConstant 118
+ 120(g_tTex3du4):    119(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
       9(txval20):      8(ptr) Variable Function
@@ -386,7 +391,8 @@ Shader version: 450
                               Store 77(txval42) 89
               95:      8(ptr) AccessChain 92(vsout) 25
                               Store 95 94
-              98:90(VS_OUTPUT) Load 92(vsout)
-                              Store 97(@entryPointOutput) 98
+              98:      8(ptr) AccessChain 92(vsout) 25
+              99:    7(fvec4) Load 98
+                              Store 97(Pos) 99
                               Return
                               FunctionEnd
index 61d42c9..5ac30a1 100644 (file)
@@ -61,10 +61,20 @@ gl_FragCoord origin is upper left
 0:41            1 (const int)
 0:41        Constant:
 0:41          1.000000
-0:43      Sequence
-0:43        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:43          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:43          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:43            Color: direct index for structure (temp 4-component vector of float)
+0:43              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:43              Constant:
+0:43                0 (const int)
+0:43          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:43            Depth: direct index for structure (temp float FragDepth)
+0:43              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:43              Constant:
+0:43                1 (const int)
 0:43        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -150,10 +160,20 @@ gl_FragCoord origin is upper left
 0:41            1 (const int)
 0:41        Constant:
 0:41          1.000000
-0:43      Sequence
-0:43        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:43          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:43          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:43            Color: direct index for structure (temp 4-component vector of float)
+0:43              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:43              Constant:
+0:43                0 (const int)
+0:43          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:43            Depth: direct index for structure (temp float FragDepth)
+0:43              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:43              Constant:
+0:43                1 (const int)
 0:43        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -175,13 +195,13 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 106
+// Id's are bound by 107
 
                               Capability Shader
                               Capability Sampled1D
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 71 103 105
+                              EntryPoint Fragment 4  "main" 71 75
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 9  "txval20"
@@ -195,39 +215,38 @@ gl_FragCoord origin is upper left
                               MemberName 62(PS_OUTPUT) 0  "Color"
                               MemberName 62(PS_OUTPUT) 1  "Depth"
                               Name 64  "psout"
-                              Name 71  "@entryPointOutput"
-                              Name 76  "g_tTex1df4a"
-                              Name 77  "g_tTex1df4"
-                              Name 80  "g_tTex1di4"
-                              Name 83  "g_tTex1du4"
-                              Name 86  "g_tTex3df4"
-                              Name 89  "g_tTex3di4"
-                              Name 92  "g_tTex3du4"
-                              Name 95  "g_tTexcdf4"
-                              Name 98  "g_tTexcdi4"
-                              Name 101  "g_tTexcdu4"
-                              Name 103  "Color"
-                              Name 105  "Depth"
+                              Name 71  "Color"
+                              Name 75  "Depth"
+                              Name 81  "g_tTex1df4a"
+                              Name 82  "g_tTex1df4"
+                              Name 85  "g_tTex1di4"
+                              Name 88  "g_tTex1du4"
+                              Name 91  "g_tTex3df4"
+                              Name 94  "g_tTex3di4"
+                              Name 97  "g_tTex3du4"
+                              Name 100  "g_tTexcdf4"
+                              Name 103  "g_tTexcdi4"
+                              Name 106  "g_tTexcdu4"
                               Decorate 12(g_tTex2df4) DescriptorSet 0
                               Decorate 16(g_sSamp) DescriptorSet 0
                               Decorate 16(g_sSamp) Binding 0
                               Decorate 35(g_tTex2di4) DescriptorSet 0
                               Decorate 51(g_tTex2du4) DescriptorSet 0
                               MemberDecorate 62(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 76(g_tTex1df4a) DescriptorSet 0
-                              Decorate 76(g_tTex1df4a) Binding 1
-                              Decorate 77(g_tTex1df4) DescriptorSet 0
-                              Decorate 77(g_tTex1df4) Binding 0
-                              Decorate 80(g_tTex1di4) DescriptorSet 0
-                              Decorate 83(g_tTex1du4) DescriptorSet 0
-                              Decorate 86(g_tTex3df4) DescriptorSet 0
-                              Decorate 89(g_tTex3di4) DescriptorSet 0
-                              Decorate 92(g_tTex3du4) DescriptorSet 0
-                              Decorate 95(g_tTexcdf4) DescriptorSet 0
-                              Decorate 98(g_tTexcdi4) DescriptorSet 0
-                              Decorate 101(g_tTexcdu4) DescriptorSet 0
-                              Decorate 103(Color) Location 0
-                              Decorate 105(Depth) BuiltIn FragDepth
+                              Decorate 71(Color) Location 0
+                              Decorate 75(Depth) BuiltIn FragDepth
+                              Decorate 81(g_tTex1df4a) DescriptorSet 0
+                              Decorate 81(g_tTex1df4a) Binding 1
+                              Decorate 82(g_tTex1df4) DescriptorSet 0
+                              Decorate 82(g_tTex1df4) Binding 0
+                              Decorate 85(g_tTex1di4) DescriptorSet 0
+                              Decorate 88(g_tTex1du4) DescriptorSet 0
+                              Decorate 91(g_tTex3df4) DescriptorSet 0
+                              Decorate 94(g_tTex3di4) DescriptorSet 0
+                              Decorate 97(g_tTex3du4) DescriptorSet 0
+                              Decorate 100(g_tTexcdf4) DescriptorSet 0
+                              Decorate 103(g_tTexcdi4) DescriptorSet 0
+                              Decorate 106(g_tTexcdu4) DescriptorSet 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -276,40 +295,38 @@ gl_FragCoord origin is upper left
               65:    6(float) Constant 1065353216
               66:    7(fvec4) ConstantComposite 65 65 65 65
               68:             TypePointer Function 6(float)
-              70:             TypePointer Output 62(PS_OUTPUT)
-71(@entryPointOutput):     70(ptr) Variable Output
-              74:             TypeImage 6(float) 1D sampled format:Unknown
-              75:             TypePointer UniformConstant 74
- 76(g_tTex1df4a):     75(ptr) Variable UniformConstant
-  77(g_tTex1df4):     75(ptr) Variable UniformConstant
-              78:             TypeImage 24(int) 1D sampled format:Unknown
-              79:             TypePointer UniformConstant 78
-  80(g_tTex1di4):     79(ptr) Variable UniformConstant
-              81:             TypeImage 45(int) 1D sampled format:Unknown
-              82:             TypePointer UniformConstant 81
-  83(g_tTex1du4):     82(ptr) Variable UniformConstant
-              84:             TypeImage 6(float) 3D sampled format:Unknown
-              85:             TypePointer UniformConstant 84
-  86(g_tTex3df4):     85(ptr) Variable UniformConstant
-              87:             TypeImage 24(int) 3D sampled format:Unknown
-              88:             TypePointer UniformConstant 87
-  89(g_tTex3di4):     88(ptr) Variable UniformConstant
-              90:             TypeImage 45(int) 3D sampled format:Unknown
-              91:             TypePointer UniformConstant 90
-  92(g_tTex3du4):     91(ptr) Variable UniformConstant
-              93:             TypeImage 6(float) Cube sampled format:Unknown
-              94:             TypePointer UniformConstant 93
-  95(g_tTexcdf4):     94(ptr) Variable UniformConstant
-              96:             TypeImage 24(int) Cube sampled format:Unknown
-              97:             TypePointer UniformConstant 96
-  98(g_tTexcdi4):     97(ptr) Variable UniformConstant
-              99:             TypeImage 45(int) Cube sampled format:Unknown
-             100:             TypePointer UniformConstant 99
- 101(g_tTexcdu4):    100(ptr) Variable UniformConstant
-             102:             TypePointer Output 7(fvec4)
-      103(Color):    102(ptr) Variable Output
-             104:             TypePointer Output 6(float)
-      105(Depth):    104(ptr) Variable Output
+              70:             TypePointer Output 7(fvec4)
+       71(Color):     70(ptr) Variable Output
+              74:             TypePointer Output 6(float)
+       75(Depth):     74(ptr) Variable Output
+              79:             TypeImage 6(float) 1D sampled format:Unknown
+              80:             TypePointer UniformConstant 79
+ 81(g_tTex1df4a):     80(ptr) Variable UniformConstant
+  82(g_tTex1df4):     80(ptr) Variable UniformConstant
+              83:             TypeImage 24(int) 1D sampled format:Unknown
+              84:             TypePointer UniformConstant 83
+  85(g_tTex1di4):     84(ptr) Variable UniformConstant
+              86:             TypeImage 45(int) 1D sampled format:Unknown
+              87:             TypePointer UniformConstant 86
+  88(g_tTex1du4):     87(ptr) Variable UniformConstant
+              89:             TypeImage 6(float) 3D sampled format:Unknown
+              90:             TypePointer UniformConstant 89
+  91(g_tTex3df4):     90(ptr) Variable UniformConstant
+              92:             TypeImage 24(int) 3D sampled format:Unknown
+              93:             TypePointer UniformConstant 92
+  94(g_tTex3di4):     93(ptr) Variable UniformConstant
+              95:             TypeImage 45(int) 3D sampled format:Unknown
+              96:             TypePointer UniformConstant 95
+  97(g_tTex3du4):     96(ptr) Variable UniformConstant
+              98:             TypeImage 6(float) Cube sampled format:Unknown
+              99:             TypePointer UniformConstant 98
+ 100(g_tTexcdf4):     99(ptr) Variable UniformConstant
+             101:             TypeImage 24(int) Cube sampled format:Unknown
+             102:             TypePointer UniformConstant 101
+ 103(g_tTexcdi4):    102(ptr) Variable UniformConstant
+             104:             TypeImage 45(int) Cube sampled format:Unknown
+             105:             TypePointer UniformConstant 104
+ 106(g_tTexcdu4):    105(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
       9(txval20):      8(ptr) Variable Function
@@ -335,7 +352,11 @@ gl_FragCoord origin is upper left
                               Store 67 66
               69:     68(ptr) AccessChain 64(psout) 26
                               Store 69 65
-              72:62(PS_OUTPUT) Load 64(psout)
-                              Store 71(@entryPointOutput) 72
+              72:      8(ptr) AccessChain 64(psout) 27
+              73:    7(fvec4) Load 72
+                              Store 71(Color) 73
+              76:     68(ptr) AccessChain 64(psout) 26
+              77:    6(float) Load 76
+                              Store 75(Depth) 77
                               Return
                               FunctionEnd
index c3fab2e..84472b0 100644 (file)
@@ -64,10 +64,20 @@ gl_FragCoord origin is upper left
 0:33            1 (const int)
 0:33        Constant:
 0:33          1.000000
-0:35      Sequence
-0:35        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:35          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:35          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:35            Color: direct index for structure (temp 4-component vector of float)
+0:35              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:35              Constant:
+0:35                0 (const int)
+0:35          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:35            Depth: direct index for structure (temp float FragDepth)
+0:35              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:35              Constant:
+0:35                1 (const int)
 0:35        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -150,10 +160,20 @@ gl_FragCoord origin is upper left
 0:33            1 (const int)
 0:33        Constant:
 0:33          1.000000
-0:35      Sequence
-0:35        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:35          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:35          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:35            Color: direct index for structure (temp 4-component vector of float)
+0:35              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:35              Constant:
+0:35                0 (const int)
+0:35          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:35            Depth: direct index for structure (temp float FragDepth)
+0:35              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:35              Constant:
+0:35                1 (const int)
 0:35        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -169,13 +189,13 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 89
+// Id's are bound by 90
 
                               Capability Shader
                               Capability Sampled1D
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 72 86 88
+                              EntryPoint Fragment 4  "main" 72 76
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 9  "txval20"
@@ -189,27 +209,26 @@ gl_FragCoord origin is upper left
                               MemberName 63(PS_OUTPUT) 0  "Color"
                               MemberName 63(PS_OUTPUT) 1  "Depth"
                               Name 65  "psout"
-                              Name 72  "@entryPointOutput"
-                              Name 77  "g_tTex1df4a"
-                              Name 78  "g_tTex1df4"
-                              Name 81  "g_tTex1di4"
-                              Name 84  "g_tTex1du4"
-                              Name 86  "Color"
-                              Name 88  "Depth"
+                              Name 72  "Color"
+                              Name 76  "Depth"
+                              Name 82  "g_tTex1df4a"
+                              Name 83  "g_tTex1df4"
+                              Name 86  "g_tTex1di4"
+                              Name 89  "g_tTex1du4"
                               Decorate 12(g_tTex2df4) DescriptorSet 0
                               Decorate 16(g_sSamp) DescriptorSet 0
                               Decorate 16(g_sSamp) Binding 0
                               Decorate 36(g_tTex2di4) DescriptorSet 0
                               Decorate 51(g_tTex2du4) DescriptorSet 0
                               MemberDecorate 63(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 77(g_tTex1df4a) DescriptorSet 0
-                              Decorate 77(g_tTex1df4a) Binding 1
-                              Decorate 78(g_tTex1df4) DescriptorSet 0
-                              Decorate 78(g_tTex1df4) Binding 0
-                              Decorate 81(g_tTex1di4) DescriptorSet 0
-                              Decorate 84(g_tTex1du4) DescriptorSet 0
-                              Decorate 86(Color) Location 0
-                              Decorate 88(Depth) BuiltIn FragDepth
+                              Decorate 72(Color) Location 0
+                              Decorate 76(Depth) BuiltIn FragDepth
+                              Decorate 82(g_tTex1df4a) DescriptorSet 0
+                              Decorate 82(g_tTex1df4a) Binding 1
+                              Decorate 83(g_tTex1df4) DescriptorSet 0
+                              Decorate 83(g_tTex1df4) Binding 0
+                              Decorate 86(g_tTex1di4) DescriptorSet 0
+                              Decorate 89(g_tTex1du4) DescriptorSet 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -259,22 +278,20 @@ gl_FragCoord origin is upper left
               66:    6(float) Constant 1065353216
               67:    7(fvec4) ConstantComposite 66 66 66 66
               69:             TypePointer Function 6(float)
-              71:             TypePointer Output 63(PS_OUTPUT)
-72(@entryPointOutput):     71(ptr) Variable Output
-              75:             TypeImage 6(float) 1D array sampled format:Unknown
-              76:             TypePointer UniformConstant 75
- 77(g_tTex1df4a):     76(ptr) Variable UniformConstant
-  78(g_tTex1df4):     76(ptr) Variable UniformConstant
-              79:             TypeImage 25(int) 1D array sampled format:Unknown
-              80:             TypePointer UniformConstant 79
-  81(g_tTex1di4):     80(ptr) Variable UniformConstant
-              82:             TypeImage 45(int) 1D array sampled format:Unknown
-              83:             TypePointer UniformConstant 82
-  84(g_tTex1du4):     83(ptr) Variable UniformConstant
-              85:             TypePointer Output 7(fvec4)
-       86(Color):     85(ptr) Variable Output
-              87:             TypePointer Output 6(float)
-       88(Depth):     87(ptr) Variable Output
+              71:             TypePointer Output 7(fvec4)
+       72(Color):     71(ptr) Variable Output
+              75:             TypePointer Output 6(float)
+       76(Depth):     75(ptr) Variable Output
+              80:             TypeImage 6(float) 1D array sampled format:Unknown
+              81:             TypePointer UniformConstant 80
+ 82(g_tTex1df4a):     81(ptr) Variable UniformConstant
+  83(g_tTex1df4):     81(ptr) Variable UniformConstant
+              84:             TypeImage 25(int) 1D array sampled format:Unknown
+              85:             TypePointer UniformConstant 84
+  86(g_tTex1di4):     85(ptr) Variable UniformConstant
+              87:             TypeImage 45(int) 1D array sampled format:Unknown
+              88:             TypePointer UniformConstant 87
+  89(g_tTex1du4):     88(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
       9(txval20):      8(ptr) Variable Function
@@ -300,7 +317,11 @@ gl_FragCoord origin is upper left
                               Store 68 67
               70:     69(ptr) AccessChain 65(psout) 27
                               Store 70 66
-              73:63(PS_OUTPUT) Load 65(psout)
-                              Store 72(@entryPointOutput) 73
+              73:      8(ptr) AccessChain 65(psout) 28
+              74:    7(fvec4) Load 73
+                              Store 72(Color) 74
+              77:     69(ptr) AccessChain 65(psout) 27
+              78:    6(float) Load 77
+                              Store 76(Depth) 78
                               Return
                               FunctionEnd
index 7cfe3d9..cb6180f 100644 (file)
@@ -262,10 +262,20 @@ gl_FragCoord origin is upper left
 0:68            1 (const int)
 0:68        Constant:
 0:68          1.000000
-0:70      Sequence
-0:70        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:70          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:70          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:70            Color: direct index for structure (temp 4-component vector of float)
+0:70              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:70              Constant:
+0:70                0 (const int)
+0:70          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:70            Depth: direct index for structure (temp float FragDepth)
+0:70              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:70              Constant:
+0:70                1 (const int)
 0:70        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -553,10 +563,20 @@ gl_FragCoord origin is upper left
 0:68            1 (const int)
 0:68        Constant:
 0:68          1.000000
-0:70      Sequence
-0:70        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:70          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:70          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:70            Color: direct index for structure (temp 4-component vector of float)
+0:70              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:70              Constant:
+0:70                0 (const int)
+0:70          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:70            Depth: direct index for structure (temp float FragDepth)
+0:70              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:70              Constant:
+0:70                1 (const int)
 0:70        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -579,14 +599,14 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 226
+// Id's are bound by 227
 
                               Capability Shader
                               Capability Sampled1D
                               Capability SampledCubeArray
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 204 223 225
+                              EntryPoint Fragment 4  "main" 204 208
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 9  "txval00"
@@ -626,15 +646,14 @@ gl_FragCoord origin is upper left
                               MemberName 195(PS_OUTPUT) 0  "Color"
                               MemberName 195(PS_OUTPUT) 1  "Depth"
                               Name 197  "psout"
-                              Name 204  "@entryPointOutput"
-                              Name 207  "g_sSamp2d"
-                              Name 210  "g_tTex1df4a"
-                              Name 213  "g_tTex1di4a"
-                              Name 216  "g_tTex1du4a"
-                              Name 218  "c1"
-                              Name 221  "c2"
-                              Name 223  "Color"
-                              Name 225  "Depth"
+                              Name 204  "Color"
+                              Name 208  "Depth"
+                              Name 212  "g_sSamp2d"
+                              Name 215  "g_tTex1df4a"
+                              Name 218  "g_tTex1di4a"
+                              Name 221  "g_tTex1du4a"
+                              Name 223  "c1"
+                              Name 226  "c2"
                               Decorate 12(g_tTex2df4a) DescriptorSet 0
                               Decorate 16(g_sSamp) DescriptorSet 0
                               Decorate 16(g_sSamp) Binding 0
@@ -644,13 +663,13 @@ gl_FragCoord origin is upper left
                               Decorate 124(g_tTexcdi4a) DescriptorSet 0
                               Decorate 134(g_tTexcdu4a) DescriptorSet 0
                               MemberDecorate 195(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 207(g_sSamp2d) DescriptorSet 0
-                              Decorate 210(g_tTex1df4a) DescriptorSet 0
-                              Decorate 210(g_tTex1df4a) Binding 0
-                              Decorate 213(g_tTex1di4a) DescriptorSet 0
-                              Decorate 216(g_tTex1du4a) DescriptorSet 0
-                              Decorate 223(Color) Location 0
-                              Decorate 225(Depth) BuiltIn FragDepth
+                              Decorate 204(Color) Location 0
+                              Decorate 208(Depth) BuiltIn FragDepth
+                              Decorate 212(g_sSamp2d) DescriptorSet 0
+                              Decorate 215(g_tTex1df4a) DescriptorSet 0
+                              Decorate 215(g_tTex1df4a) Binding 0
+                              Decorate 218(g_tTex1di4a) DescriptorSet 0
+                              Decorate 221(g_tTex1du4a) DescriptorSet 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -703,27 +722,25 @@ gl_FragCoord origin is upper left
              198:    6(float) Constant 1065353216
              199:    7(fvec4) ConstantComposite 198 198 198 198
              201:             TypePointer Function 6(float)
-             203:             TypePointer Output 195(PS_OUTPUT)
-204(@entryPointOutput):    203(ptr) Variable Output
-  207(g_sSamp2d):     15(ptr) Variable UniformConstant
-             208:             TypeImage 6(float) 1D array sampled format:Unknown
-             209:             TypePointer UniformConstant 208
-210(g_tTex1df4a):    209(ptr) Variable UniformConstant
-             211:             TypeImage 24(int) 1D array sampled format:Unknown
-             212:             TypePointer UniformConstant 211
-213(g_tTex1di4a):    212(ptr) Variable UniformConstant
-             214:             TypeImage 39(int) 1D array sampled format:Unknown
-             215:             TypePointer UniformConstant 214
-216(g_tTex1du4a):    215(ptr) Variable UniformConstant
-             217:             TypePointer UniformConstant 6(float)
-         218(c1):    217(ptr) Variable UniformConstant
-             219:             TypeVector 6(float) 2
-             220:             TypePointer UniformConstant 219(fvec2)
-         221(c2):    220(ptr) Variable UniformConstant
-             222:             TypePointer Output 7(fvec4)
-      223(Color):    222(ptr) Variable Output
-             224:             TypePointer Output 6(float)
-      225(Depth):    224(ptr) Variable Output
+             203:             TypePointer Output 7(fvec4)
+      204(Color):    203(ptr) Variable Output
+             207:             TypePointer Output 6(float)
+      208(Depth):    207(ptr) Variable Output
+  212(g_sSamp2d):     15(ptr) Variable UniformConstant
+             213:             TypeImage 6(float) 1D array sampled format:Unknown
+             214:             TypePointer UniformConstant 213
+215(g_tTex1df4a):    214(ptr) Variable UniformConstant
+             216:             TypeImage 24(int) 1D array sampled format:Unknown
+             217:             TypePointer UniformConstant 216
+218(g_tTex1di4a):    217(ptr) Variable UniformConstant
+             219:             TypeImage 39(int) 1D array sampled format:Unknown
+             220:             TypePointer UniformConstant 219
+221(g_tTex1du4a):    220(ptr) Variable UniformConstant
+             222:             TypePointer UniformConstant 6(float)
+         223(c1):    222(ptr) Variable UniformConstant
+             224:             TypeVector 6(float) 2
+             225:             TypePointer UniformConstant 224(fvec2)
+         226(c2):    225(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
       9(txval00):      8(ptr) Variable Function
@@ -899,7 +916,11 @@ gl_FragCoord origin is upper left
                               Store 200 199
              202:    201(ptr) AccessChain 197(psout) 57
                               Store 202 198
-             205:195(PS_OUTPUT) Load 197(psout)
-                              Store 204(@entryPointOutput) 205
+             205:      8(ptr) AccessChain 197(psout) 25
+             206:    7(fvec4) Load 205
+                              Store 204(Color) 206
+             209:    201(ptr) AccessChain 197(psout) 57
+             210:    6(float) Load 209
+                              Store 208(Depth) 210
                               Return
                               FunctionEnd
index 9ba2a1a..b5735e4 100644 (file)
@@ -262,10 +262,20 @@ gl_FragCoord origin is upper left
 0:74            1 (const int)
 0:74        Constant:
 0:74          1.000000
-0:76      Sequence
-0:76        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:76          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:76          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:76            Color: direct index for structure (temp 4-component vector of float)
+0:76              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:76              Constant:
+0:76                0 (const int)
+0:76          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:76            Depth: direct index for structure (temp float FragDepth)
+0:76              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:76              Constant:
+0:76                1 (const int)
 0:76        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -557,10 +567,20 @@ gl_FragCoord origin is upper left
 0:74            1 (const int)
 0:74        Constant:
 0:74          1.000000
-0:76      Sequence
-0:76        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:76          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:76          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:76            Color: direct index for structure (temp 4-component vector of float)
+0:76              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:76              Constant:
+0:76                0 (const int)
+0:76          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:76            Depth: direct index for structure (temp float FragDepth)
+0:76              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:76              Constant:
+0:76                1 (const int)
 0:76        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -587,13 +607,13 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 236
+// Id's are bound by 237
 
                               Capability Shader
                               Capability Sampled1D
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 205 233 235
+                              EntryPoint Fragment 4  "main" 205 209
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 9  "txval00"
@@ -633,19 +653,18 @@ gl_FragCoord origin is upper left
                               MemberName 196(PS_OUTPUT) 0  "Color"
                               MemberName 196(PS_OUTPUT) 1  "Depth"
                               Name 198  "psout"
-                              Name 205  "@entryPointOutput"
-                              Name 208  "g_sSamp2d"
-                              Name 211  "g_tTex1df4a"
-                              Name 212  "g_tTex1df4"
-                              Name 215  "g_tTex1di4"
-                              Name 218  "g_tTex1du4"
-                              Name 221  "g_tTex3df4"
-                              Name 224  "g_tTex3di4"
-                              Name 227  "g_tTex3du4"
-                              Name 229  "c1"
-                              Name 231  "c4"
-                              Name 233  "Color"
-                              Name 235  "Depth"
+                              Name 205  "Color"
+                              Name 209  "Depth"
+                              Name 213  "g_sSamp2d"
+                              Name 216  "g_tTex1df4a"
+                              Name 217  "g_tTex1df4"
+                              Name 220  "g_tTex1di4"
+                              Name 223  "g_tTex1du4"
+                              Name 226  "g_tTex3df4"
+                              Name 229  "g_tTex3di4"
+                              Name 232  "g_tTex3du4"
+                              Name 234  "c1"
+                              Name 236  "c4"
                               Decorate 12(g_tTex2df4) DescriptorSet 0
                               Decorate 16(g_sSamp) DescriptorSet 0
                               Decorate 16(g_sSamp) Binding 0
@@ -655,18 +674,18 @@ gl_FragCoord origin is upper left
                               Decorate 125(g_tTexcdi4) DescriptorSet 0
                               Decorate 135(g_tTexcdu4) DescriptorSet 0
                               MemberDecorate 196(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 208(g_sSamp2d) DescriptorSet 0
-                              Decorate 211(g_tTex1df4a) DescriptorSet 0
-                              Decorate 211(g_tTex1df4a) Binding 1
-                              Decorate 212(g_tTex1df4) DescriptorSet 0
-                              Decorate 212(g_tTex1df4) Binding 0
-                              Decorate 215(g_tTex1di4) DescriptorSet 0
-                              Decorate 218(g_tTex1du4) DescriptorSet 0
-                              Decorate 221(g_tTex3df4) DescriptorSet 0
-                              Decorate 224(g_tTex3di4) DescriptorSet 0
-                              Decorate 227(g_tTex3du4) DescriptorSet 0
-                              Decorate 233(Color) Location 0
-                              Decorate 235(Depth) BuiltIn FragDepth
+                              Decorate 205(Color) Location 0
+                              Decorate 209(Depth) BuiltIn FragDepth
+                              Decorate 213(g_sSamp2d) DescriptorSet 0
+                              Decorate 216(g_tTex1df4a) DescriptorSet 0
+                              Decorate 216(g_tTex1df4a) Binding 1
+                              Decorate 217(g_tTex1df4) DescriptorSet 0
+                              Decorate 217(g_tTex1df4) Binding 0
+                              Decorate 220(g_tTex1di4) DescriptorSet 0
+                              Decorate 223(g_tTex1du4) DescriptorSet 0
+                              Decorate 226(g_tTex3df4) DescriptorSet 0
+                              Decorate 229(g_tTex3di4) DescriptorSet 0
+                              Decorate 232(g_tTex3du4) DescriptorSet 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -720,36 +739,34 @@ gl_FragCoord origin is upper left
              199:    6(float) Constant 1065353216
              200:    7(fvec4) ConstantComposite 199 199 199 199
              202:             TypePointer Function 6(float)
-             204:             TypePointer Output 196(PS_OUTPUT)
-205(@entryPointOutput):    204(ptr) Variable Output
-  208(g_sSamp2d):     15(ptr) Variable UniformConstant
-             209:             TypeImage 6(float) 1D sampled format:Unknown
-             210:             TypePointer UniformConstant 209
-211(g_tTex1df4a):    210(ptr) Variable UniformConstant
- 212(g_tTex1df4):    210(ptr) Variable UniformConstant
-             213:             TypeImage 24(int) 1D sampled format:Unknown
-             214:             TypePointer UniformConstant 213
- 215(g_tTex1di4):    214(ptr) Variable UniformConstant
-             216:             TypeImage 39(int) 1D sampled format:Unknown
-             217:             TypePointer UniformConstant 216
- 218(g_tTex1du4):    217(ptr) Variable UniformConstant
-             219:             TypeImage 6(float) 3D sampled format:Unknown
-             220:             TypePointer UniformConstant 219
- 221(g_tTex3df4):    220(ptr) Variable UniformConstant
-             222:             TypeImage 24(int) 3D sampled format:Unknown
-             223:             TypePointer UniformConstant 222
- 224(g_tTex3di4):    223(ptr) Variable UniformConstant
-             225:             TypeImage 39(int) 3D sampled format:Unknown
-             226:             TypePointer UniformConstant 225
- 227(g_tTex3du4):    226(ptr) Variable UniformConstant
-             228:             TypePointer UniformConstant 6(float)
-         229(c1):    228(ptr) Variable UniformConstant
-             230:             TypePointer UniformConstant 7(fvec4)
-         231(c4):    230(ptr) Variable UniformConstant
-             232:             TypePointer Output 7(fvec4)
-      233(Color):    232(ptr) Variable Output
-             234:             TypePointer Output 6(float)
-      235(Depth):    234(ptr) Variable Output
+             204:             TypePointer Output 7(fvec4)
+      205(Color):    204(ptr) Variable Output
+             208:             TypePointer Output 6(float)
+      209(Depth):    208(ptr) Variable Output
+  213(g_sSamp2d):     15(ptr) Variable UniformConstant
+             214:             TypeImage 6(float) 1D sampled format:Unknown
+             215:             TypePointer UniformConstant 214
+216(g_tTex1df4a):    215(ptr) Variable UniformConstant
+ 217(g_tTex1df4):    215(ptr) Variable UniformConstant
+             218:             TypeImage 24(int) 1D sampled format:Unknown
+             219:             TypePointer UniformConstant 218
+ 220(g_tTex1di4):    219(ptr) Variable UniformConstant
+             221:             TypeImage 39(int) 1D sampled format:Unknown
+             222:             TypePointer UniformConstant 221
+ 223(g_tTex1du4):    222(ptr) Variable UniformConstant
+             224:             TypeImage 6(float) 3D sampled format:Unknown
+             225:             TypePointer UniformConstant 224
+ 226(g_tTex3df4):    225(ptr) Variable UniformConstant
+             227:             TypeImage 24(int) 3D sampled format:Unknown
+             228:             TypePointer UniformConstant 227
+ 229(g_tTex3di4):    228(ptr) Variable UniformConstant
+             230:             TypeImage 39(int) 3D sampled format:Unknown
+             231:             TypePointer UniformConstant 230
+ 232(g_tTex3du4):    231(ptr) Variable UniformConstant
+             233:             TypePointer UniformConstant 6(float)
+         234(c1):    233(ptr) Variable UniformConstant
+             235:             TypePointer UniformConstant 7(fvec4)
+         236(c4):    235(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
       9(txval00):      8(ptr) Variable Function
@@ -925,7 +942,11 @@ gl_FragCoord origin is upper left
                               Store 201 200
              203:    202(ptr) AccessChain 198(psout) 57
                               Store 203 199
-             206:196(PS_OUTPUT) Load 198(psout)
-                              Store 205(@entryPointOutput) 206
+             206:      8(ptr) AccessChain 198(psout) 25
+             207:    7(fvec4) Load 206
+                              Store 205(Color) 207
+             210:    202(ptr) AccessChain 198(psout) 57
+             211:    6(float) Load 210
+                              Store 209(Depth) 211
                               Return
                               FunctionEnd
index 283e085..f8857cc 100644 (file)
@@ -334,10 +334,20 @@ gl_FragCoord origin is upper left
 0:113            1 (const int)
 0:113        Constant:
 0:113          1.000000
-0:115      Sequence
-0:115        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:115          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:115          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:115            Color: direct index for structure (temp 4-component vector of float)
+0:115              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:115              Constant:
+0:115                0 (const int)
+0:115          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:115            Depth: direct index for structure (temp float FragDepth)
+0:115              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:115              Constant:
+0:115                1 (const int)
 0:115        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -705,10 +715,20 @@ gl_FragCoord origin is upper left
 0:113            1 (const int)
 0:113        Constant:
 0:113          1.000000
-0:115      Sequence
-0:115        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:115          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:115          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:115            Color: direct index for structure (temp 4-component vector of float)
+0:115              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:115              Constant:
+0:115                0 (const int)
+0:115          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:115            Depth: direct index for structure (temp float FragDepth)
+0:115              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:115              Constant:
+0:115                1 (const int)
 0:115        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -739,14 +759,14 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 317
+// Id's are bound by 318
 
                               Capability Shader
                               Capability ImageGatherExtended
                               Capability Sampled1D
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 267 314 316
+                              EntryPoint Fragment 4  "main" 267 271
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 9  "txval001"
@@ -783,47 +803,46 @@ gl_FragCoord origin is upper left
                               MemberName 258(PS_OUTPUT) 0  "Color"
                               MemberName 258(PS_OUTPUT) 1  "Depth"
                               Name 260  "psout"
-                              Name 267  "@entryPointOutput"
-                              Name 270  "g_sSamp2d"
-                              Name 273  "g_tTex1df4a"
-                              Name 274  "g_tTex1df4"
-                              Name 277  "g_tTex1di4"
-                              Name 280  "g_tTex1du4"
-                              Name 283  "g_tTex3df4"
-                              Name 286  "g_tTex3di4"
-                              Name 289  "g_tTex3du4"
-                              Name 292  "g_tTexcdf4"
-                              Name 295  "g_tTexcdi4"
-                              Name 298  "g_tTexcdu4"
-                              Name 300  "c1"
-                              Name 303  "c3"
-                              Name 305  "c4"
-                              Name 307  "o1"
-                              Name 310  "o3"
-                              Name 312  "o4"
-                              Name 314  "Color"
-                              Name 316  "Depth"
+                              Name 267  "Color"
+                              Name 271  "Depth"
+                              Name 275  "g_sSamp2d"
+                              Name 278  "g_tTex1df4a"
+                              Name 279  "g_tTex1df4"
+                              Name 282  "g_tTex1di4"
+                              Name 285  "g_tTex1du4"
+                              Name 288  "g_tTex3df4"
+                              Name 291  "g_tTex3di4"
+                              Name 294  "g_tTex3du4"
+                              Name 297  "g_tTexcdf4"
+                              Name 300  "g_tTexcdi4"
+                              Name 303  "g_tTexcdu4"
+                              Name 305  "c1"
+                              Name 308  "c3"
+                              Name 310  "c4"
+                              Name 312  "o1"
+                              Name 315  "o3"
+                              Name 317  "o4"
                               Decorate 12(g_tTex2df4) DescriptorSet 0
                               Decorate 16(g_sSamp) DescriptorSet 0
                               Decorate 16(g_sSamp) Binding 0
                               Decorate 36(g_tTex2di4) DescriptorSet 0
                               Decorate 50(g_tTex2du4) DescriptorSet 0
                               MemberDecorate 258(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 270(g_sSamp2d) DescriptorSet 0
-                              Decorate 273(g_tTex1df4a) DescriptorSet 0
-                              Decorate 273(g_tTex1df4a) Binding 1
-                              Decorate 274(g_tTex1df4) DescriptorSet 0
-                              Decorate 274(g_tTex1df4) Binding 0
-                              Decorate 277(g_tTex1di4) DescriptorSet 0
-                              Decorate 280(g_tTex1du4) DescriptorSet 0
-                              Decorate 283(g_tTex3df4) DescriptorSet 0
-                              Decorate 286(g_tTex3di4) DescriptorSet 0
-                              Decorate 289(g_tTex3du4) DescriptorSet 0
-                              Decorate 292(g_tTexcdf4) DescriptorSet 0
-                              Decorate 295(g_tTexcdi4) DescriptorSet 0
-                              Decorate 298(g_tTexcdu4) DescriptorSet 0
-                              Decorate 314(Color) Location 0
-                              Decorate 316(Depth) BuiltIn FragDepth
+                              Decorate 267(Color) Location 0
+                              Decorate 271(Depth) BuiltIn FragDepth
+                              Decorate 275(g_sSamp2d) DescriptorSet 0
+                              Decorate 278(g_tTex1df4a) DescriptorSet 0
+                              Decorate 278(g_tTex1df4a) Binding 1
+                              Decorate 279(g_tTex1df4) DescriptorSet 0
+                              Decorate 279(g_tTex1df4) Binding 0
+                              Decorate 282(g_tTex1di4) DescriptorSet 0
+                              Decorate 285(g_tTex1du4) DescriptorSet 0
+                              Decorate 288(g_tTex3df4) DescriptorSet 0
+                              Decorate 291(g_tTex3di4) DescriptorSet 0
+                              Decorate 294(g_tTex3du4) DescriptorSet 0
+                              Decorate 297(g_tTexcdf4) DescriptorSet 0
+                              Decorate 300(g_tTexcdi4) DescriptorSet 0
+                              Decorate 303(g_tTexcdu4) DescriptorSet 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -867,55 +886,53 @@ gl_FragCoord origin is upper left
              261:    6(float) Constant 1065353216
              262:    7(fvec4) ConstantComposite 261 261 261 261
              264:             TypePointer Function 6(float)
-             266:             TypePointer Output 258(PS_OUTPUT)
-267(@entryPointOutput):    266(ptr) Variable Output
-  270(g_sSamp2d):     15(ptr) Variable UniformConstant
-             271:             TypeImage 6(float) 1D sampled format:Unknown
-             272:             TypePointer UniformConstant 271
-273(g_tTex1df4a):    272(ptr) Variable UniformConstant
- 274(g_tTex1df4):    272(ptr) Variable UniformConstant
-             275:             TypeImage 24(int) 1D sampled format:Unknown
-             276:             TypePointer UniformConstant 275
- 277(g_tTex1di4):    276(ptr) Variable UniformConstant
-             278:             TypeImage 44(int) 1D sampled format:Unknown
-             279:             TypePointer UniformConstant 278
- 280(g_tTex1du4):    279(ptr) Variable UniformConstant
-             281:             TypeImage 6(float) 3D sampled format:Unknown
-             282:             TypePointer UniformConstant 281
- 283(g_tTex3df4):    282(ptr) Variable UniformConstant
-             284:             TypeImage 24(int) 3D sampled format:Unknown
-             285:             TypePointer UniformConstant 284
- 286(g_tTex3di4):    285(ptr) Variable UniformConstant
-             287:             TypeImage 44(int) 3D sampled format:Unknown
-             288:             TypePointer UniformConstant 287
- 289(g_tTex3du4):    288(ptr) Variable UniformConstant
-             290:             TypeImage 6(float) Cube sampled format:Unknown
-             291:             TypePointer UniformConstant 290
- 292(g_tTexcdf4):    291(ptr) Variable UniformConstant
-             293:             TypeImage 24(int) Cube sampled format:Unknown
-             294:             TypePointer UniformConstant 293
- 295(g_tTexcdi4):    294(ptr) Variable UniformConstant
-             296:             TypeImage 44(int) Cube sampled format:Unknown
-             297:             TypePointer UniformConstant 296
- 298(g_tTexcdu4):    297(ptr) Variable UniformConstant
-             299:             TypePointer UniformConstant 6(float)
-         300(c1):    299(ptr) Variable UniformConstant
-             301:             TypeVector 6(float) 3
-             302:             TypePointer UniformConstant 301(fvec3)
-         303(c3):    302(ptr) Variable UniformConstant
-             304:             TypePointer UniformConstant 7(fvec4)
-         305(c4):    304(ptr) Variable UniformConstant
-             306:             TypePointer UniformConstant 24(int)
-         307(o1):    306(ptr) Variable UniformConstant
-             308:             TypeVector 24(int) 3
-             309:             TypePointer UniformConstant 308(ivec3)
-         310(o3):    309(ptr) Variable UniformConstant
-             311:             TypePointer UniformConstant 31(ivec4)
-         312(o4):    311(ptr) Variable UniformConstant
-             313:             TypePointer Output 7(fvec4)
-      314(Color):    313(ptr) Variable Output
-             315:             TypePointer Output 6(float)
-      316(Depth):    315(ptr) Variable Output
+             266:             TypePointer Output 7(fvec4)
+      267(Color):    266(ptr) Variable Output
+             270:             TypePointer Output 6(float)
+      271(Depth):    270(ptr) Variable Output
+  275(g_sSamp2d):     15(ptr) Variable UniformConstant
+             276:             TypeImage 6(float) 1D sampled format:Unknown
+             277:             TypePointer UniformConstant 276
+278(g_tTex1df4a):    277(ptr) Variable UniformConstant
+ 279(g_tTex1df4):    277(ptr) Variable UniformConstant
+             280:             TypeImage 24(int) 1D sampled format:Unknown
+             281:             TypePointer UniformConstant 280
+ 282(g_tTex1di4):    281(ptr) Variable UniformConstant
+             283:             TypeImage 44(int) 1D sampled format:Unknown
+             284:             TypePointer UniformConstant 283
+ 285(g_tTex1du4):    284(ptr) Variable UniformConstant
+             286:             TypeImage 6(float) 3D sampled format:Unknown
+             287:             TypePointer UniformConstant 286
+ 288(g_tTex3df4):    287(ptr) Variable UniformConstant
+             289:             TypeImage 24(int) 3D sampled format:Unknown
+             290:             TypePointer UniformConstant 289
+ 291(g_tTex3di4):    290(ptr) Variable UniformConstant
+             292:             TypeImage 44(int) 3D sampled format:Unknown
+             293:             TypePointer UniformConstant 292
+ 294(g_tTex3du4):    293(ptr) Variable UniformConstant
+             295:             TypeImage 6(float) Cube sampled format:Unknown
+             296:             TypePointer UniformConstant 295
+ 297(g_tTexcdf4):    296(ptr) Variable UniformConstant
+             298:             TypeImage 24(int) Cube sampled format:Unknown
+             299:             TypePointer UniformConstant 298
+ 300(g_tTexcdi4):    299(ptr) Variable UniformConstant
+             301:             TypeImage 44(int) Cube sampled format:Unknown
+             302:             TypePointer UniformConstant 301
+ 303(g_tTexcdu4):    302(ptr) Variable UniformConstant
+             304:             TypePointer UniformConstant 6(float)
+         305(c1):    304(ptr) Variable UniformConstant
+             306:             TypeVector 6(float) 3
+             307:             TypePointer UniformConstant 306(fvec3)
+         308(c3):    307(ptr) Variable UniformConstant
+             309:             TypePointer UniformConstant 7(fvec4)
+         310(c4):    309(ptr) Variable UniformConstant
+             311:             TypePointer UniformConstant 24(int)
+         312(o1):    311(ptr) Variable UniformConstant
+             313:             TypeVector 24(int) 3
+             314:             TypePointer UniformConstant 313(ivec3)
+         315(o3):    314(ptr) Variable UniformConstant
+             316:             TypePointer UniformConstant 31(ivec4)
+         317(o4):    316(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
      9(txval001):      8(ptr) Variable Function
@@ -1163,7 +1180,11 @@ gl_FragCoord origin is upper left
                               Store 263 262
              265:    264(ptr) AccessChain 260(psout) 99
                               Store 265 261
-             268:258(PS_OUTPUT) Load 260(psout)
-                              Store 267(@entryPointOutput) 268
+             268:      8(ptr) AccessChain 260(psout) 29
+             269:    7(fvec4) Load 268
+                              Store 267(Color) 269
+             272:    264(ptr) AccessChain 260(psout) 99
+             273:    6(float) Load 272
+                              Store 271(Depth) 273
                               Return
                               FunctionEnd
index a6fabbf..4ee4aa7 100644 (file)
@@ -334,10 +334,20 @@ gl_FragCoord origin is upper left
 0:107            1 (const int)
 0:107        Constant:
 0:107          1.000000
-0:109      Sequence
-0:109        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:109          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:109          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:109            Color: direct index for structure (temp 4-component vector of float)
+0:109              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:109              Constant:
+0:109                0 (const int)
+0:109          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:109            Depth: direct index for structure (temp float FragDepth)
+0:109              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:109              Constant:
+0:109                1 (const int)
 0:109        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -701,10 +711,20 @@ gl_FragCoord origin is upper left
 0:107            1 (const int)
 0:107        Constant:
 0:107          1.000000
-0:109      Sequence
-0:109        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:109          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:109          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:109            Color: direct index for structure (temp 4-component vector of float)
+0:109              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:109              Constant:
+0:109                0 (const int)
+0:109          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:109            Depth: direct index for structure (temp float FragDepth)
+0:109              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:109              Constant:
+0:109                1 (const int)
 0:109        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -731,7 +751,7 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 307
+// Id's are bound by 308
 
                               Capability Shader
                               Capability ImageGatherExtended
@@ -739,7 +759,7 @@ gl_FragCoord origin is upper left
                               Capability SampledCubeArray
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 267 304 306
+                              EntryPoint Fragment 4  "main" 267 271
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 9  "txval001"
@@ -776,38 +796,37 @@ gl_FragCoord origin is upper left
                               MemberName 258(PS_OUTPUT) 0  "Color"
                               MemberName 258(PS_OUTPUT) 1  "Depth"
                               Name 260  "psout"
-                              Name 267  "@entryPointOutput"
-                              Name 270  "g_sSamp2d"
-                              Name 273  "g_tTex1df4a"
-                              Name 276  "g_tTex1di4a"
-                              Name 279  "g_tTex1du4a"
-                              Name 282  "g_tTexcdf4a"
-                              Name 285  "g_tTexcdi4a"
-                              Name 288  "g_tTexcdu4a"
-                              Name 290  "c1"
-                              Name 293  "c2"
-                              Name 295  "c4"
-                              Name 297  "o1"
-                              Name 300  "o3"
-                              Name 302  "o4"
-                              Name 304  "Color"
-                              Name 306  "Depth"
+                              Name 267  "Color"
+                              Name 271  "Depth"
+                              Name 275  "g_sSamp2d"
+                              Name 278  "g_tTex1df4a"
+                              Name 281  "g_tTex1di4a"
+                              Name 284  "g_tTex1du4a"
+                              Name 287  "g_tTexcdf4a"
+                              Name 290  "g_tTexcdi4a"
+                              Name 293  "g_tTexcdu4a"
+                              Name 295  "c1"
+                              Name 298  "c2"
+                              Name 300  "c4"
+                              Name 302  "o1"
+                              Name 305  "o3"
+                              Name 307  "o4"
                               Decorate 12(g_tTex2df4a) DescriptorSet 0
                               Decorate 16(g_sSamp) DescriptorSet 0
                               Decorate 16(g_sSamp) Binding 0
                               Decorate 36(g_tTex2di4a) DescriptorSet 0
                               Decorate 50(g_tTex2du4a) DescriptorSet 0
                               MemberDecorate 258(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 270(g_sSamp2d) DescriptorSet 0
-                              Decorate 273(g_tTex1df4a) DescriptorSet 0
-                              Decorate 273(g_tTex1df4a) Binding 0
-                              Decorate 276(g_tTex1di4a) DescriptorSet 0
-                              Decorate 279(g_tTex1du4a) DescriptorSet 0
-                              Decorate 282(g_tTexcdf4a) DescriptorSet 0
-                              Decorate 285(g_tTexcdi4a) DescriptorSet 0
-                              Decorate 288(g_tTexcdu4a) DescriptorSet 0
-                              Decorate 304(Color) Location 0
-                              Decorate 306(Depth) BuiltIn FragDepth
+                              Decorate 267(Color) Location 0
+                              Decorate 271(Depth) BuiltIn FragDepth
+                              Decorate 275(g_sSamp2d) DescriptorSet 0
+                              Decorate 278(g_tTex1df4a) DescriptorSet 0
+                              Decorate 278(g_tTex1df4a) Binding 0
+                              Decorate 281(g_tTex1di4a) DescriptorSet 0
+                              Decorate 284(g_tTex1du4a) DescriptorSet 0
+                              Decorate 287(g_tTexcdf4a) DescriptorSet 0
+                              Decorate 290(g_tTexcdi4a) DescriptorSet 0
+                              Decorate 293(g_tTexcdu4a) DescriptorSet 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -851,45 +870,43 @@ gl_FragCoord origin is upper left
              261:    6(float) Constant 1065353216
              262:    7(fvec4) ConstantComposite 261 261 261 261
              264:             TypePointer Function 6(float)
-             266:             TypePointer Output 258(PS_OUTPUT)
-267(@entryPointOutput):    266(ptr) Variable Output
-  270(g_sSamp2d):     15(ptr) Variable UniformConstant
-             271:             TypeImage 6(float) 1D array sampled format:Unknown
-             272:             TypePointer UniformConstant 271
-273(g_tTex1df4a):    272(ptr) Variable UniformConstant
-             274:             TypeImage 24(int) 1D array sampled format:Unknown
-             275:             TypePointer UniformConstant 274
-276(g_tTex1di4a):    275(ptr) Variable UniformConstant
-             277:             TypeImage 44(int) 1D array sampled format:Unknown
-             278:             TypePointer UniformConstant 277
-279(g_tTex1du4a):    278(ptr) Variable UniformConstant
-             280:             TypeImage 6(float) Cube array sampled format:Unknown
-             281:             TypePointer UniformConstant 280
-282(g_tTexcdf4a):    281(ptr) Variable UniformConstant
-             283:             TypeImage 24(int) Cube array sampled format:Unknown
-             284:             TypePointer UniformConstant 283
-285(g_tTexcdi4a):    284(ptr) Variable UniformConstant
-             286:             TypeImage 44(int) Cube array sampled format:Unknown
-             287:             TypePointer UniformConstant 286
-288(g_tTexcdu4a):    287(ptr) Variable UniformConstant
-             289:             TypePointer UniformConstant 6(float)
-         290(c1):    289(ptr) Variable UniformConstant
-             291:             TypeVector 6(float) 2
-             292:             TypePointer UniformConstant 291(fvec2)
-         293(c2):    292(ptr) Variable UniformConstant
-             294:             TypePointer UniformConstant 7(fvec4)
-         295(c4):    294(ptr) Variable UniformConstant
-             296:             TypePointer UniformConstant 24(int)
-         297(o1):    296(ptr) Variable UniformConstant
-             298:             TypeVector 24(int) 3
-             299:             TypePointer UniformConstant 298(ivec3)
-         300(o3):    299(ptr) Variable UniformConstant
-             301:             TypePointer UniformConstant 31(ivec4)
-         302(o4):    301(ptr) Variable UniformConstant
-             303:             TypePointer Output 7(fvec4)
-      304(Color):    303(ptr) Variable Output
-             305:             TypePointer Output 6(float)
-      306(Depth):    305(ptr) Variable Output
+             266:             TypePointer Output 7(fvec4)
+      267(Color):    266(ptr) Variable Output
+             270:             TypePointer Output 6(float)
+      271(Depth):    270(ptr) Variable Output
+  275(g_sSamp2d):     15(ptr) Variable UniformConstant
+             276:             TypeImage 6(float) 1D array sampled format:Unknown
+             277:             TypePointer UniformConstant 276
+278(g_tTex1df4a):    277(ptr) Variable UniformConstant
+             279:             TypeImage 24(int) 1D array sampled format:Unknown
+             280:             TypePointer UniformConstant 279
+281(g_tTex1di4a):    280(ptr) Variable UniformConstant
+             282:             TypeImage 44(int) 1D array sampled format:Unknown
+             283:             TypePointer UniformConstant 282
+284(g_tTex1du4a):    283(ptr) Variable UniformConstant
+             285:             TypeImage 6(float) Cube array sampled format:Unknown
+             286:             TypePointer UniformConstant 285
+287(g_tTexcdf4a):    286(ptr) Variable UniformConstant
+             288:             TypeImage 24(int) Cube array sampled format:Unknown
+             289:             TypePointer UniformConstant 288
+290(g_tTexcdi4a):    289(ptr) Variable UniformConstant
+             291:             TypeImage 44(int) Cube array sampled format:Unknown
+             292:             TypePointer UniformConstant 291
+293(g_tTexcdu4a):    292(ptr) Variable UniformConstant
+             294:             TypePointer UniformConstant 6(float)
+         295(c1):    294(ptr) Variable UniformConstant
+             296:             TypeVector 6(float) 2
+             297:             TypePointer UniformConstant 296(fvec2)
+         298(c2):    297(ptr) Variable UniformConstant
+             299:             TypePointer UniformConstant 7(fvec4)
+         300(c4):    299(ptr) Variable UniformConstant
+             301:             TypePointer UniformConstant 24(int)
+         302(o1):    301(ptr) Variable UniformConstant
+             303:             TypeVector 24(int) 3
+             304:             TypePointer UniformConstant 303(ivec3)
+         305(o3):    304(ptr) Variable UniformConstant
+             306:             TypePointer UniformConstant 31(ivec4)
+         307(o4):    306(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
      9(txval001):      8(ptr) Variable Function
@@ -1137,7 +1154,11 @@ gl_FragCoord origin is upper left
                               Store 263 262
              265:    264(ptr) AccessChain 260(psout) 99
                               Store 265 261
-             268:258(PS_OUTPUT) Load 260(psout)
-                              Store 267(@entryPointOutput) 268
+             268:      8(ptr) AccessChain 260(psout) 29
+             269:    7(fvec4) Load 268
+                              Store 267(Color) 269
+             272:    264(ptr) AccessChain 260(psout) 99
+             273:    6(float) Load 272
+                              Store 271(Depth) 273
                               Return
                               FunctionEnd
index 1c5e425..ca913a8 100644 (file)
@@ -1060,10 +1060,20 @@ gl_FragCoord origin is upper left
 0:277            1 (const int)
 0:277        Constant:
 0:277          1.000000
-0:279      Sequence
-0:279        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:279          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:279          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:279            Color: direct index for structure (temp 4-component vector of float)
+0:279              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:279              Constant:
+0:279                0 (const int)
+0:279          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:279            Depth: direct index for structure (temp float FragDepth)
+0:279              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:279              Constant:
+0:279                1 (const int)
 0:279        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -2162,10 +2172,20 @@ gl_FragCoord origin is upper left
 0:277            1 (const int)
 0:277        Constant:
 0:277          1.000000
-0:279      Sequence
-0:279        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:279          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:279          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:279            Color: direct index for structure (temp 4-component vector of float)
+0:279              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:279              Constant:
+0:279                0 (const int)
+0:279          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:279            Depth: direct index for structure (temp float FragDepth)
+0:279              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:279              Constant:
+0:279                1 (const int)
 0:279        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -2201,7 +2221,7 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 544
+// Id's are bound by 545
 
                               Capability Shader
                               Capability Sampled1D
@@ -2210,7 +2230,7 @@ gl_FragCoord origin is upper left
                               Capability ImageQuery
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 534 541 543
+                              EntryPoint Fragment 4  "main" 534 538
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 8  "sizeQueryTemp"
@@ -2298,10 +2318,9 @@ gl_FragCoord origin is upper left
                               MemberName 522(PS_OUTPUT) 0  "Color"
                               MemberName 522(PS_OUTPUT) 1  "Depth"
                               Name 524  "psout"
-                              Name 534  "@entryPointOutput"
-                              Name 539  "g_sSamp"
-                              Name 541  "Color"
-                              Name 543  "Depth"
+                              Name 534  "Color"
+                              Name 538  "Depth"
+                              Name 544  "g_sSamp"
                               Decorate 12(g_tTex1df4) DescriptorSet 0
                               Decorate 12(g_tTex1df4) Binding 0
                               Decorate 29(g_tTex1di4) DescriptorSet 0
@@ -2331,10 +2350,10 @@ gl_FragCoord origin is upper left
                               Decorate 496(g_tTex2dmsi4a) DescriptorSet 0
                               Decorate 510(g_tTex2dmsu4a) DescriptorSet 0
                               MemberDecorate 522(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 539(g_sSamp) DescriptorSet 0
-                              Decorate 539(g_sSamp) Binding 0
-                              Decorate 541(Color) Location 0
-                              Decorate 543(Depth) BuiltIn FragDepth
+                              Decorate 534(Color) Location 0
+                              Decorate 538(Depth) BuiltIn FragDepth
+                              Decorate 544(g_sSamp) DescriptorSet 0
+                              Decorate 544(g_sSamp) Binding 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeInt 32 0
@@ -2441,15 +2460,13 @@ gl_FragCoord origin is upper left
              528:             TypePointer Function 521(fvec4)
              530:     14(int) Constant 1
              531:             TypePointer Function 9(float)
-             533:             TypePointer Output 522(PS_OUTPUT)
-534(@entryPointOutput):    533(ptr) Variable Output
-             537:             TypeSampler
-             538:             TypePointer UniformConstant 537
-    539(g_sSamp):    538(ptr) Variable UniformConstant
-             540:             TypePointer Output 521(fvec4)
-      541(Color):    540(ptr) Variable Output
-             542:             TypePointer Output 9(float)
-      543(Depth):    542(ptr) Variable Output
+             533:             TypePointer Output 521(fvec4)
+      534(Color):    533(ptr) Variable Output
+             537:             TypePointer Output 9(float)
+      538(Depth):    537(ptr) Variable Output
+             542:             TypeSampler
+             543:             TypePointer UniformConstant 542
+    544(g_sSamp):    543(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
 8(sizeQueryTemp):      7(ptr) Variable Function
@@ -3063,7 +3080,11 @@ gl_FragCoord origin is upper left
                               Store 529 527
              532:    531(ptr) AccessChain 524(psout) 530
                               Store 532 526
-             535:522(PS_OUTPUT) Load 524(psout)
-                              Store 534(@entryPointOutput) 535
+             535:    528(ptr) AccessChain 524(psout) 525
+             536:  521(fvec4) Load 535
+                              Store 534(Color) 536
+             539:    531(ptr) AccessChain 524(psout) 530
+             540:    9(float) Load 539
+                              Store 538(Depth) 540
                               Return
                               FunctionEnd
index 8b10755..9480188 100644 (file)
@@ -36,10 +36,14 @@ Shader version: 450
 0:?           0.000000
 0:?           0.000000
 0:?           0.000000
-0:26      Sequence
-0:26        move second child to first child (temp structure{temp 4-component vector of float Position Pos})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Position Pos})
-0:26          'vsout' (temp structure{temp 4-component vector of float Position Pos})
+0:?       Sequence
+0:?         Sequence
+0:26          move second child to first child (temp 4-component vector of float)
+0:?             'Pos' (out 4-component vector of float Position)
+0:26            Pos: direct index for structure (temp 4-component vector of float Position)
+0:26              'vsout' (temp structure{temp 4-component vector of float Position Pos})
+0:26              Constant:
+0:26                0 (const int)
 0:26        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -87,10 +91,14 @@ Shader version: 450
 0:?           0.000000
 0:?           0.000000
 0:?           0.000000
-0:26      Sequence
-0:26        move second child to first child (temp structure{temp 4-component vector of float Position Pos})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Position Pos})
-0:26          'vsout' (temp structure{temp 4-component vector of float Position Pos})
+0:?       Sequence
+0:?         Sequence
+0:26          move second child to first child (temp 4-component vector of float)
+0:?             'Pos' (out 4-component vector of float Position)
+0:26            Pos: direct index for structure (temp 4-component vector of float Position)
+0:26              'vsout' (temp structure{temp 4-component vector of float Position Pos})
+0:26              Constant:
+0:26                0 (const int)
 0:26        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -99,14 +107,14 @@ Shader version: 450
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 44
+// Id's are bound by 43
 
                               Capability Shader
                               Capability Sampled1D
                               Capability ImageQuery
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Vertex 4  "main" 36 43
+                              EntryPoint Vertex 4  "main" 36
                               Name 4  "main"
                               Name 8  "sizeQueryTemp"
                               Name 12  "g_tTex1df4"
@@ -116,15 +124,14 @@ Shader version: 450
                               Name 27  "VS_OUTPUT"
                               MemberName 27(VS_OUTPUT) 0  "Pos"
                               Name 29  "vsout"
-                              Name 36  "@entryPointOutput"
-                              Name 41  "g_sSamp"
-                              Name 43  "Pos"
+                              Name 36  "Pos"
+                              Name 42  "g_sSamp"
                               Decorate 12(g_tTex1df4) DescriptorSet 0
                               Decorate 12(g_tTex1df4) Binding 0
                               MemberDecorate 27(VS_OUTPUT) 0 BuiltIn Position
-                              Decorate 41(g_sSamp) DescriptorSet 0
-                              Decorate 41(g_sSamp) Binding 0
-                              Decorate 43(Pos) BuiltIn Position
+                              Decorate 36(Pos) BuiltIn Position
+                              Decorate 42(g_sSamp) DescriptorSet 0
+                              Decorate 42(g_sSamp) Binding 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeInt 32 0
@@ -142,13 +149,11 @@ Shader version: 450
               31:    9(float) Constant 0
               32:   26(fvec4) ConstantComposite 31 31 31 31
               33:             TypePointer Function 26(fvec4)
-              35:             TypePointer Output 27(VS_OUTPUT)
-36(@entryPointOutput):     35(ptr) Variable Output
-              39:             TypeSampler
-              40:             TypePointer UniformConstant 39
-     41(g_sSamp):     40(ptr) Variable UniformConstant
-              42:             TypePointer Output 26(fvec4)
-         43(Pos):     42(ptr) Variable Output
+              35:             TypePointer Output 26(fvec4)
+         36(Pos):     35(ptr) Variable Output
+              40:             TypeSampler
+              41:             TypePointer UniformConstant 40
+     42(g_sSamp):     41(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
 8(sizeQueryTemp):      7(ptr) Variable Function
@@ -171,7 +176,8 @@ Shader version: 450
                               Store 23(NumberOfLevelsU) 25
               34:     33(ptr) AccessChain 29(vsout) 30
                               Store 34 32
-              37:27(VS_OUTPUT) Load 29(vsout)
-                              Store 36(@entryPointOutput) 37
+              37:     33(ptr) AccessChain 29(vsout) 30
+              38:   26(fvec4) Load 37
+                              Store 36(Pos) 38
                               Return
                               FunctionEnd
index 8addf8f..3d56bd4 100644 (file)
@@ -43,10 +43,20 @@ ERROR: node is still EOpNull!
 0:20            1 (const int)
 0:20        Constant:
 0:20          1.000000
-0:22      Sequence
-0:22        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:22          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:22          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:22            Color: direct index for structure (temp 4-component vector of float)
+0:22              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:22              Constant:
+0:22                0 (const int)
+0:22          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:22            Depth: direct index for structure (temp float FragDepth)
+0:22              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:22              Constant:
+0:22                1 (const int)
 0:22        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -98,10 +108,20 @@ ERROR: node is still EOpNull!
 0:20            1 (const int)
 0:20        Constant:
 0:20          1.000000
-0:22      Sequence
-0:22        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:22          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:22          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:22            Color: direct index for structure (temp 4-component vector of float)
+0:22              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:22              Constant:
+0:22                0 (const int)
+0:22          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:22            Depth: direct index for structure (temp float FragDepth)
+0:22              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:22              Constant:
+0:22                1 (const int)
 0:22        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
index b5702f3..3657cb2 100644 (file)
@@ -43,10 +43,14 @@ gl_FragCoord origin is upper left
 0:30          1.000000
 0:30          1.000000
 0:30          1.000000
-0:31      Sequence
-0:31        move second child to first child (temp structure{temp 4-component vector of float color})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float color})
-0:31          'ps_output' (temp structure{temp 4-component vector of float color})
+0:?       Sequence
+0:?         Sequence
+0:31          move second child to first child (temp 4-component vector of float)
+0:?             'color' (layout(location=0 ) out 4-component vector of float)
+0:31            color: direct index for structure (temp 4-component vector of float)
+0:31              'ps_output' (temp structure{temp 4-component vector of float color})
+0:31              Constant:
+0:31                0 (const int)
 0:31        Branch: Return
 0:?   Linker Objects
 0:?     'color' (layout(location=0 ) out 4-component vector of float)
@@ -99,22 +103,26 @@ gl_FragCoord origin is upper left
 0:30          1.000000
 0:30          1.000000
 0:30          1.000000
-0:31      Sequence
-0:31        move second child to first child (temp structure{temp 4-component vector of float color})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float color})
-0:31          'ps_output' (temp structure{temp 4-component vector of float color})
+0:?       Sequence
+0:?         Sequence
+0:31          move second child to first child (temp 4-component vector of float)
+0:?             'color' (layout(location=0 ) out 4-component vector of float)
+0:31            color: direct index for structure (temp 4-component vector of float)
+0:31              'ps_output' (temp structure{temp 4-component vector of float color})
+0:31              Constant:
+0:31                0 (const int)
 0:31        Branch: Return
 0:?   Linker Objects
 0:?     'color' (layout(location=0 ) out 4-component vector of float)
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 48
+// Id's are bound by 47
 
                               Capability Shader
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 43 47
+                              EntryPoint Fragment 4  "main" 43
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 6  "Test1("
@@ -131,9 +139,8 @@ gl_FragCoord origin is upper left
                               Name 34  "PS_OUTPUT"
                               MemberName 34(PS_OUTPUT) 0  "color"
                               Name 36  "ps_output"
-                              Name 43  "@entryPointOutput"
-                              Name 47  "color"
-                              Decorate 47(color) Location 0
+                              Name 43  "color"
+                              Decorate 43(color) Location 0
                2:             TypeVoid
                3:             TypeFunction 2
                8:             TypeFloat 32
@@ -163,18 +170,17 @@ gl_FragCoord origin is upper left
               38:     37(int) Constant 0
               39:   33(fvec4) ConstantComposite 13 13 13 13
               40:             TypePointer Function 33(fvec4)
-              42:             TypePointer Output 34(PS_OUTPUT)
-43(@entryPointOutput):     42(ptr) Variable Output
-              46:             TypePointer Output 33(fvec4)
-       47(color):     46(ptr) Variable Output
+              42:             TypePointer Output 33(fvec4)
+       43(color):     42(ptr) Variable Output
          4(main):           2 Function None 3
                5:             Label
    36(ps_output):     35(ptr) Variable Function
               32:           2 FunctionCall 6(Test1()
               41:     40(ptr) AccessChain 36(ps_output) 38
                               Store 41 39
-              44:34(PS_OUTPUT) Load 36(ps_output)
-                              Store 43(@entryPointOutput) 44
+              44:     40(ptr) AccessChain 36(ps_output) 38
+              45:   33(fvec4) Load 44
+                              Store 43(color) 45
                               Return
                               FunctionEnd
        6(Test1():           2 Function None 3
index af6106b..b0f4062 100644 (file)
@@ -55,10 +55,20 @@ gl_FragCoord origin is upper left
 0:22          'inpos' (noperspective in 4-component vector of float FragCoord)
 0:22          Constant:
 0:22            3 (const int)
-0:24      Sequence
-0:24        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:24          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:24          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:24            Color: direct index for structure (temp 4-component vector of float)
+0:24              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:24              Constant:
+0:24                0 (const int)
+0:24          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:24            Depth: direct index for structure (temp float FragDepth)
+0:24              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:24              Constant:
+0:24                1 (const int)
 0:24        Branch: Return
 0:?   Linker Objects
 0:?     'Color' (layout(location=0 ) out 4-component vector of float)
@@ -125,10 +135,20 @@ gl_FragCoord origin is upper left
 0:22          'inpos' (noperspective in 4-component vector of float FragCoord)
 0:22          Constant:
 0:22            3 (const int)
-0:24      Sequence
-0:24        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:24          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:24          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:24            Color: direct index for structure (temp 4-component vector of float)
+0:24              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:24              Constant:
+0:24                0 (const int)
+0:24          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:24            Depth: direct index for structure (temp float FragDepth)
+0:24              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:24              Constant:
+0:24                1 (const int)
 0:24        Branch: Return
 0:?   Linker Objects
 0:?     'Color' (layout(location=0 ) out 4-component vector of float)
@@ -137,12 +157,12 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 60
+// Id's are bound by 61
 
                               Capability Shader
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 45 53 57 59
+                              EntryPoint Fragment 4  "main" 45 53 57
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 12  "MyFunc(f1;f1;f1;"
@@ -160,14 +180,13 @@ gl_FragCoord origin is upper left
                               MemberName 31(PS_OUTPUT) 1  "Depth"
                               Name 33  "psout"
                               Name 45  "inpos"
-                              Name 53  "@entryPointOutput"
-                              Name 57  "Color"
-                              Name 59  "Depth"
+                              Name 53  "Color"
+                              Name 57  "Depth"
                               MemberDecorate 31(PS_OUTPUT) 1 BuiltIn FragDepth
                               Decorate 45(inpos) NoPerspective
                               Decorate 45(inpos) BuiltIn FragCoord
-                              Decorate 57(Color) Location 0
-                              Decorate 59(Depth) BuiltIn FragDepth
+                              Decorate 53(Color) Location 0
+                              Decorate 57(Depth) BuiltIn FragDepth
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -189,12 +208,10 @@ gl_FragCoord origin is upper left
               46:             TypeInt 32 0
               47:     46(int) Constant 3
               48:             TypePointer Input 6(float)
-              52:             TypePointer Output 31(PS_OUTPUT)
-53(@entryPointOutput):     52(ptr) Variable Output
-              56:             TypePointer Output 30(fvec4)
-       57(Color):     56(ptr) Variable Output
-              58:             TypePointer Output 6(float)
-       59(Depth):     58(ptr) Variable Output
+              52:             TypePointer Output 30(fvec4)
+       53(Color):     52(ptr) Variable Output
+              56:             TypePointer Output 6(float)
+       57(Depth):     56(ptr) Variable Output
          4(main):           2 Function None 3
                5:             Label
            17(x):      7(ptr) Variable Function
@@ -225,8 +242,12 @@ gl_FragCoord origin is upper left
               50:    6(float) Load 49
               51:      7(ptr) AccessChain 33(psout) 43
                               Store 51 50
-              54:31(PS_OUTPUT) Load 33(psout)
-                              Store 53(@entryPointOutput) 54
+              54:     41(ptr) AccessChain 33(psout) 35
+              55:   30(fvec4) Load 54
+                              Store 53(Color) 55
+              58:      7(ptr) AccessChain 33(psout) 43
+              59:    6(float) Load 58
+                              Store 57(Depth) 59
                               Return
                               FunctionEnd
 12(MyFunc(f1;f1;f1;):           2 Function None 8
index fd807ba..151bdb4 100644 (file)
@@ -2772,10 +2772,14 @@ gl_FragCoord origin is upper left
 0:491          1.000000
 0:491          1.000000
 0:491          1.000000
-0:492      Sequence
-0:492        move second child to first child (temp structure{temp 4-component vector of float color})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float color})
-0:492          'ps_output' (temp structure{temp 4-component vector of float color})
+0:?       Sequence
+0:?         Sequence
+0:492          move second child to first child (temp 4-component vector of float)
+0:?             'color' (layout(location=0 ) out 4-component vector of float)
+0:492            color: direct index for structure (temp 4-component vector of float)
+0:492              'ps_output' (temp structure{temp 4-component vector of float color})
+0:492              Constant:
+0:492                0 (const int)
 0:492        Branch: Return
 0:?   Linker Objects
 0:?     'gs_ua' (global uint)
@@ -5569,10 +5573,14 @@ gl_FragCoord origin is upper left
 0:491          1.000000
 0:491          1.000000
 0:491          1.000000
-0:492      Sequence
-0:492        move second child to first child (temp structure{temp 4-component vector of float color})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float color})
-0:492          'ps_output' (temp structure{temp 4-component vector of float color})
+0:?       Sequence
+0:?         Sequence
+0:492          move second child to first child (temp 4-component vector of float)
+0:?             'color' (layout(location=0 ) out 4-component vector of float)
+0:492            color: direct index for structure (temp 4-component vector of float)
+0:492              'ps_output' (temp structure{temp 4-component vector of float color})
+0:492              Constant:
+0:492                0 (const int)
 0:492        Branch: Return
 0:?   Linker Objects
 0:?     'gs_ua' (global uint)
@@ -5591,13 +5599,13 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 1826
+// Id's are bound by 1825
 
                               Capability Shader
                               Capability DerivativeControl
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 1805 1825
+                              EntryPoint Fragment 4  "main" 1805
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 16  "PixelShaderFunctionS(f1;f1;f1;u1;u1;"
@@ -6111,21 +6119,20 @@ gl_FragCoord origin is upper left
                               Name 1798  "PS_OUTPUT"
                               MemberName 1798(PS_OUTPUT) 0  "color"
                               Name 1800  "ps_output"
-                              Name 1805  "@entryPointOutput"
-                              Name 1809  "gs_ua"
-                              Name 1810  "gs_ub"
-                              Name 1811  "gs_uc"
-                              Name 1813  "gs_ua2"
-                              Name 1814  "gs_ub2"
-                              Name 1815  "gs_uc2"
-                              Name 1817  "gs_ua3"
-                              Name 1818  "gs_ub3"
-                              Name 1819  "gs_uc3"
-                              Name 1821  "gs_ua4"
-                              Name 1822  "gs_ub4"
-                              Name 1823  "gs_uc4"
-                              Name 1825  "color"
-                              Decorate 1825(color) Location 0
+                              Name 1805  "color"
+                              Name 1810  "gs_ua"
+                              Name 1811  "gs_ub"
+                              Name 1812  "gs_uc"
+                              Name 1814  "gs_ua2"
+                              Name 1815  "gs_ub2"
+                              Name 1816  "gs_uc2"
+                              Name 1818  "gs_ua3"
+                              Name 1819  "gs_ub3"
+                              Name 1820  "gs_uc3"
+                              Name 1822  "gs_ua4"
+                              Name 1823  "gs_ub4"
+                              Name 1824  "gs_uc4"
+                              Decorate 1805(color) Location 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -6241,33 +6248,32 @@ gl_FragCoord origin is upper left
             1799:             TypePointer Function 1798(PS_OUTPUT)
             1801:    148(int) Constant 0
             1802:   48(fvec4) ConstantComposite 284 284 284 284
-            1804:             TypePointer Output 1798(PS_OUTPUT)
-1805(@entryPointOutput):   1804(ptr) Variable Output
-            1808:             TypePointer Private 8(int)
-     1809(gs_ua):   1808(ptr) Variable Private
-     1810(gs_ub):   1808(ptr) Variable Private
-     1811(gs_uc):   1808(ptr) Variable Private
-            1812:             TypePointer Private 26(ivec2)
-    1813(gs_ua2):   1812(ptr) Variable Private
-    1814(gs_ub2):   1812(ptr) Variable Private
-    1815(gs_uc2):   1812(ptr) Variable Private
-            1816:             TypePointer Private 38(ivec3)
-    1817(gs_ua3):   1816(ptr) Variable Private
-    1818(gs_ub3):   1816(ptr) Variable Private
-    1819(gs_uc3):   1816(ptr) Variable Private
-            1820:             TypePointer Private 50(ivec4)
-    1821(gs_ua4):   1820(ptr) Variable Private
-    1822(gs_ub4):   1820(ptr) Variable Private
-    1823(gs_uc4):   1820(ptr) Variable Private
-            1824:             TypePointer Output 48(fvec4)
-     1825(color):   1824(ptr) Variable Output
+            1804:             TypePointer Output 48(fvec4)
+     1805(color):   1804(ptr) Variable Output
+            1809:             TypePointer Private 8(int)
+     1810(gs_ua):   1809(ptr) Variable Private
+     1811(gs_ub):   1809(ptr) Variable Private
+     1812(gs_uc):   1809(ptr) Variable Private
+            1813:             TypePointer Private 26(ivec2)
+    1814(gs_ua2):   1813(ptr) Variable Private
+    1815(gs_ub2):   1813(ptr) Variable Private
+    1816(gs_uc2):   1813(ptr) Variable Private
+            1817:             TypePointer Private 38(ivec3)
+    1818(gs_ua3):   1817(ptr) Variable Private
+    1819(gs_ub3):   1817(ptr) Variable Private
+    1820(gs_uc3):   1817(ptr) Variable Private
+            1821:             TypePointer Private 50(ivec4)
+    1822(gs_ua4):   1821(ptr) Variable Private
+    1823(gs_ub4):   1821(ptr) Variable Private
+    1824(gs_uc4):   1821(ptr) Variable Private
          4(main):           2 Function None 3
                5:             Label
  1800(ps_output):   1799(ptr) Variable Function
             1803:     49(ptr) AccessChain 1800(ps_output) 1801
                               Store 1803 1802
-            1806:1798(PS_OUTPUT) Load 1800(ps_output)
-                              Store 1805(@entryPointOutput) 1806
+            1806:     49(ptr) AccessChain 1800(ps_output) 1801
+            1807:   48(fvec4) Load 1806
+                              Store 1805(color) 1807
                               Return
                               FunctionEnd
 16(PixelShaderFunctionS(f1;f1;f1;u1;u1;):    6(float) Function None 10
index 5de1da6..7733e2e 100644 (file)
@@ -88,10 +88,20 @@ gl_FragCoord origin is upper left
 0:52            1 (const int)
 0:52        Constant:
 0:52          1.000000
-0:54      Sequence
-0:54        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:54          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+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 FragDepth 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 FragDepth)
+0:54              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:54              Constant:
+0:54                1 (const int)
 0:54        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -205,10 +215,20 @@ gl_FragCoord origin is upper left
 0:52            1 (const int)
 0:52        Constant:
 0:52          1.000000
-0:54      Sequence
-0:54        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:54          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+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 FragDepth 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 FragDepth)
+0:54              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:54              Constant:
+0:54                1 (const int)
 0:54        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -231,14 +251,14 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 109
+// Id's are bound by 110
 
                               Capability Shader
                               Capability ImageGatherExtended
                               Capability ImageMSArray
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 92 106 108
+                              EntryPoint Fragment 4  "main" 92 96
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 9  "g_tTex2dmsf4"
@@ -254,15 +274,14 @@ gl_FragCoord origin is upper left
                               MemberName 80(PS_OUTPUT) 0  "Color"
                               MemberName 80(PS_OUTPUT) 1  "Depth"
                               Name 82  "psout"
-                              Name 92  "@entryPointOutput"
-                              Name 97  "g_sSamp"
-                              Name 99  "c1"
-                              Name 101  "c4"
-                              Name 102  "o1"
-                              Name 103  "o3"
-                              Name 104  "o4"
-                              Name 106  "Color"
-                              Name 108  "Depth"
+                              Name 92  "Color"
+                              Name 96  "Depth"
+                              Name 102  "g_sSamp"
+                              Name 104  "c1"
+                              Name 106  "c4"
+                              Name 107  "o1"
+                              Name 108  "o3"
+                              Name 109  "o4"
                               Decorate 9(g_tTex2dmsf4) DescriptorSet 0
                               Decorate 21(g_tTex2dmsi4) DescriptorSet 0
                               Decorate 29(g_tTex2dmsu4) DescriptorSet 0
@@ -270,10 +289,10 @@ gl_FragCoord origin is upper left
                               Decorate 58(g_tTex2dmsi4a) DescriptorSet 0
                               Decorate 64(g_tTex2dmsu4a) DescriptorSet 0
                               MemberDecorate 80(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 97(g_sSamp) DescriptorSet 0
-                              Decorate 97(g_sSamp) Binding 0
-                              Decorate 106(Color) Location 0
-                              Decorate 108(Depth) BuiltIn FragDepth
+                              Decorate 92(Color) Location 0
+                              Decorate 96(Depth) BuiltIn FragDepth
+                              Decorate 102(g_sSamp) DescriptorSet 0
+                              Decorate 102(g_sSamp) Binding 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -316,22 +335,20 @@ gl_FragCoord origin is upper left
               86:             TypePointer Function 17(fvec4)
               88:     11(int) Constant 1
               89:             TypePointer Function 6(float)
-              91:             TypePointer Output 80(PS_OUTPUT)
-92(@entryPointOutput):     91(ptr) Variable Output
-              95:             TypeSampler
-              96:             TypePointer UniformConstant 95
-     97(g_sSamp):     96(ptr) Variable UniformConstant
-              98:             TypePointer UniformConstant 11(int)
-          99(c1):     98(ptr) Variable UniformConstant
-             100:             TypePointer UniformConstant 24(ivec4)
-         101(c4):    100(ptr) Variable UniformConstant
-         102(o1):     98(ptr) Variable UniformConstant
-         103(o3):     52(ptr) Variable UniformConstant
-         104(o4):    100(ptr) Variable UniformConstant
-             105:             TypePointer Output 17(fvec4)
-      106(Color):    105(ptr) Variable Output
-             107:             TypePointer Output 6(float)
-      108(Depth):    107(ptr) Variable Output
+              91:             TypePointer Output 17(fvec4)
+       92(Color):     91(ptr) Variable Output
+              95:             TypePointer Output 6(float)
+       96(Depth):     95(ptr) Variable Output
+             100:             TypeSampler
+             101:             TypePointer UniformConstant 100
+    102(g_sSamp):    101(ptr) Variable UniformConstant
+             103:             TypePointer UniformConstant 11(int)
+         104(c1):    103(ptr) Variable UniformConstant
+             105:             TypePointer UniformConstant 24(ivec4)
+         106(c4):    105(ptr) Variable UniformConstant
+         107(o1):    103(ptr) Variable UniformConstant
+         108(o3):     52(ptr) Variable UniformConstant
+         109(o4):    105(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
        82(psout):     81(ptr) Variable Function
@@ -381,7 +398,11 @@ gl_FragCoord origin is upper left
                               Store 87 85
               90:     89(ptr) AccessChain 82(psout) 88
                               Store 90 84
-              93:80(PS_OUTPUT) Load 82(psout)
-                              Store 92(@entryPointOutput) 93
+              93:     86(ptr) AccessChain 82(psout) 83
+              94:   17(fvec4) Load 93
+                              Store 92(Color) 94
+              97:     89(ptr) AccessChain 82(psout) 88
+              98:    6(float) Load 97
+                              Store 96(Depth) 98
                               Return
                               FunctionEnd
index f496676..ea2e6d5 100644 (file)
@@ -106,10 +106,20 @@ gl_FragCoord origin is upper left
 0:68            1 (const int)
 0:68        Constant:
 0:68          1.000000
-0:70      Sequence
-0:70        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:70          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:70          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:70            Color: direct index for structure (temp 4-component vector of float)
+0:70              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:70              Constant:
+0:70                0 (const int)
+0:70          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:70            Depth: direct index for structure (temp float FragDepth)
+0:70              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:70              Constant:
+0:70                1 (const int)
 0:70        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -256,10 +266,20 @@ gl_FragCoord origin is upper left
 0:68            1 (const int)
 0:68        Constant:
 0:68          1.000000
-0:70      Sequence
-0:70        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:70          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:70          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:70            Color: direct index for structure (temp 4-component vector of float)
+0:70              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:70              Constant:
+0:70                0 (const int)
+0:70          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:70            Depth: direct index for structure (temp float FragDepth)
+0:70              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:70              Constant:
+0:70                1 (const int)
 0:70        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -297,14 +317,14 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 149
+// Id's are bound by 150
 
                               Capability Shader
                               Capability Sampled1D
                               Capability SampledCubeArray
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 87 146 148
+                              EntryPoint Fragment 4  "main" 87 91
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 9  "g_tTex1df4a"
@@ -319,31 +339,30 @@ gl_FragCoord origin is upper left
                               MemberName 75(PS_OUTPUT) 0  "Color"
                               MemberName 75(PS_OUTPUT) 1  "Depth"
                               Name 77  "psout"
-                              Name 87  "@entryPointOutput"
-                              Name 92  "g_sSamp"
-                              Name 95  "g_tTex1df4"
-                              Name 98  "g_tTex1di4"
-                              Name 101  "g_tTex1du4"
-                              Name 104  "g_tTex2df4"
-                              Name 107  "g_tTex2di4"
-                              Name 110  "g_tTex2du4"
-                              Name 113  "g_tTex3df4"
-                              Name 116  "g_tTex3di4"
-                              Name 119  "g_tTex3du4"
-                              Name 122  "g_tTexcdf4"
-                              Name 125  "g_tTexcdi4"
-                              Name 128  "g_tTexcdu4"
-                              Name 131  "g_tTexcdf4a"
-                              Name 134  "g_tTexcdi4a"
-                              Name 137  "g_tTexcdu4a"
-                              Name 138  "c1"
-                              Name 140  "c2"
-                              Name 141  "o1"
-                              Name 142  "o2"
-                              Name 143  "o3"
-                              Name 144  "o4"
-                              Name 146  "Color"
-                              Name 148  "Depth"
+                              Name 87  "Color"
+                              Name 91  "Depth"
+                              Name 97  "g_sSamp"
+                              Name 100  "g_tTex1df4"
+                              Name 103  "g_tTex1di4"
+                              Name 106  "g_tTex1du4"
+                              Name 109  "g_tTex2df4"
+                              Name 112  "g_tTex2di4"
+                              Name 115  "g_tTex2du4"
+                              Name 118  "g_tTex3df4"
+                              Name 121  "g_tTex3di4"
+                              Name 124  "g_tTex3du4"
+                              Name 127  "g_tTexcdf4"
+                              Name 130  "g_tTexcdi4"
+                              Name 133  "g_tTexcdu4"
+                              Name 136  "g_tTexcdf4a"
+                              Name 139  "g_tTexcdi4a"
+                              Name 142  "g_tTexcdu4a"
+                              Name 143  "c1"
+                              Name 145  "c2"
+                              Name 146  "o1"
+                              Name 147  "o2"
+                              Name 148  "o3"
+                              Name 149  "o4"
                               Decorate 9(g_tTex1df4a) DescriptorSet 0
                               Decorate 27(g_tTex1di4a) DescriptorSet 0
                               Decorate 37(g_tTex1du4a) DescriptorSet 0
@@ -351,26 +370,26 @@ gl_FragCoord origin is upper left
                               Decorate 59(g_tTex2di4a) DescriptorSet 0
                               Decorate 68(g_tTex2du4a) DescriptorSet 0
                               MemberDecorate 75(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 92(g_sSamp) DescriptorSet 0
-                              Decorate 92(g_sSamp) Binding 0
-                              Decorate 95(g_tTex1df4) DescriptorSet 0
-                              Decorate 95(g_tTex1df4) Binding 0
-                              Decorate 98(g_tTex1di4) DescriptorSet 0
-                              Decorate 101(g_tTex1du4) DescriptorSet 0
-                              Decorate 104(g_tTex2df4) DescriptorSet 0
-                              Decorate 107(g_tTex2di4) DescriptorSet 0
-                              Decorate 110(g_tTex2du4) DescriptorSet 0
-                              Decorate 113(g_tTex3df4) DescriptorSet 0
-                              Decorate 116(g_tTex3di4) DescriptorSet 0
-                              Decorate 119(g_tTex3du4) DescriptorSet 0
-                              Decorate 122(g_tTexcdf4) DescriptorSet 0
-                              Decorate 125(g_tTexcdi4) DescriptorSet 0
-                              Decorate 128(g_tTexcdu4) DescriptorSet 0
-                              Decorate 131(g_tTexcdf4a) DescriptorSet 0
-                              Decorate 134(g_tTexcdi4a) DescriptorSet 0
-                              Decorate 137(g_tTexcdu4a) DescriptorSet 0
-                              Decorate 146(Color) Location 0
-                              Decorate 148(Depth) BuiltIn FragDepth
+                              Decorate 87(Color) Location 0
+                              Decorate 91(Depth) BuiltIn FragDepth
+                              Decorate 97(g_sSamp) DescriptorSet 0
+                              Decorate 97(g_sSamp) Binding 0
+                              Decorate 100(g_tTex1df4) DescriptorSet 0
+                              Decorate 100(g_tTex1df4) Binding 0
+                              Decorate 103(g_tTex1di4) DescriptorSet 0
+                              Decorate 106(g_tTex1du4) DescriptorSet 0
+                              Decorate 109(g_tTex2df4) DescriptorSet 0
+                              Decorate 112(g_tTex2di4) DescriptorSet 0
+                              Decorate 115(g_tTex2du4) DescriptorSet 0
+                              Decorate 118(g_tTex3df4) DescriptorSet 0
+                              Decorate 121(g_tTex3di4) DescriptorSet 0
+                              Decorate 124(g_tTex3du4) DescriptorSet 0
+                              Decorate 127(g_tTexcdf4) DescriptorSet 0
+                              Decorate 130(g_tTexcdi4) DescriptorSet 0
+                              Decorate 133(g_tTexcdu4) DescriptorSet 0
+                              Decorate 136(g_tTexcdf4a) DescriptorSet 0
+                              Decorate 139(g_tTexcdi4a) DescriptorSet 0
+                              Decorate 142(g_tTexcdu4a) DescriptorSet 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -414,67 +433,65 @@ gl_FragCoord origin is upper left
               81:             TypePointer Function 23(fvec4)
               83:     11(int) Constant 1
               84:             TypePointer Function 6(float)
-              86:             TypePointer Output 75(PS_OUTPUT)
-87(@entryPointOutput):     86(ptr) Variable Output
-              90:             TypeSampler
-              91:             TypePointer UniformConstant 90
-     92(g_sSamp):     91(ptr) Variable UniformConstant
-              93:             TypeImage 6(float) 1D sampled format:Unknown
-              94:             TypePointer UniformConstant 93
-  95(g_tTex1df4):     94(ptr) Variable UniformConstant
-              96:             TypeImage 11(int) 1D sampled format:Unknown
-              97:             TypePointer UniformConstant 96
-  98(g_tTex1di4):     97(ptr) Variable UniformConstant
-              99:             TypeImage 18(int) 1D sampled format:Unknown
-             100:             TypePointer UniformConstant 99
- 101(g_tTex1du4):    100(ptr) Variable UniformConstant
-             102:             TypeImage 6(float) 2D sampled format:Unknown
-             103:             TypePointer UniformConstant 102
- 104(g_tTex2df4):    103(ptr) Variable UniformConstant
-             105:             TypeImage 11(int) 2D sampled format:Unknown
-             106:             TypePointer UniformConstant 105
- 107(g_tTex2di4):    106(ptr) Variable UniformConstant
-             108:             TypeImage 18(int) 2D sampled format:Unknown
-             109:             TypePointer UniformConstant 108
- 110(g_tTex2du4):    109(ptr) Variable UniformConstant
-             111:             TypeImage 6(float) 3D sampled format:Unknown
-             112:             TypePointer UniformConstant 111
- 113(g_tTex3df4):    112(ptr) Variable UniformConstant
-             114:             TypeImage 11(int) 3D sampled format:Unknown
-             115:             TypePointer UniformConstant 114
- 116(g_tTex3di4):    115(ptr) Variable UniformConstant
-             117:             TypeImage 18(int) 3D sampled format:Unknown
-             118:             TypePointer UniformConstant 117
- 119(g_tTex3du4):    118(ptr) Variable UniformConstant
-             120:             TypeImage 6(float) Cube sampled format:Unknown
-             121:             TypePointer UniformConstant 120
- 122(g_tTexcdf4):    121(ptr) Variable UniformConstant
-             123:             TypeImage 11(int) Cube sampled format:Unknown
-             124:             TypePointer UniformConstant 123
- 125(g_tTexcdi4):    124(ptr) Variable UniformConstant
-             126:             TypeImage 18(int) Cube sampled format:Unknown
-             127:             TypePointer UniformConstant 126
- 128(g_tTexcdu4):    127(ptr) Variable UniformConstant
-             129:             TypeImage 6(float) Cube array sampled format:Unknown
-             130:             TypePointer UniformConstant 129
-131(g_tTexcdf4a):    130(ptr) Variable UniformConstant
-             132:             TypeImage 11(int) Cube array sampled format:Unknown
-             133:             TypePointer UniformConstant 132
-134(g_tTexcdi4a):    133(ptr) Variable UniformConstant
-             135:             TypeImage 18(int) Cube array sampled format:Unknown
-             136:             TypePointer UniformConstant 135
-137(g_tTexcdu4a):    136(ptr) Variable UniformConstant
-         138(c1):     20(ptr) Variable UniformConstant
-             139:             TypePointer UniformConstant 15(ivec2)
-         140(c2):    139(ptr) Variable UniformConstant
-         141(o1):     20(ptr) Variable UniformConstant
-         142(o2):    139(ptr) Variable UniformConstant
-         143(o3):     13(ptr) Variable UniformConstant
-         144(o4):     49(ptr) Variable UniformConstant
-             145:             TypePointer Output 23(fvec4)
-      146(Color):    145(ptr) Variable Output
-             147:             TypePointer Output 6(float)
-      148(Depth):    147(ptr) Variable Output
+              86:             TypePointer Output 23(fvec4)
+       87(Color):     86(ptr) Variable Output
+              90:             TypePointer Output 6(float)
+       91(Depth):     90(ptr) Variable Output
+              95:             TypeSampler
+              96:             TypePointer UniformConstant 95
+     97(g_sSamp):     96(ptr) Variable UniformConstant
+              98:             TypeImage 6(float) 1D sampled format:Unknown
+              99:             TypePointer UniformConstant 98
+ 100(g_tTex1df4):     99(ptr) Variable UniformConstant
+             101:             TypeImage 11(int) 1D sampled format:Unknown
+             102:             TypePointer UniformConstant 101
+ 103(g_tTex1di4):    102(ptr) Variable UniformConstant
+             104:             TypeImage 18(int) 1D sampled format:Unknown
+             105:             TypePointer UniformConstant 104
+ 106(g_tTex1du4):    105(ptr) Variable UniformConstant
+             107:             TypeImage 6(float) 2D sampled format:Unknown
+             108:             TypePointer UniformConstant 107
+ 109(g_tTex2df4):    108(ptr) Variable UniformConstant
+             110:             TypeImage 11(int) 2D sampled format:Unknown
+             111:             TypePointer UniformConstant 110
+ 112(g_tTex2di4):    111(ptr) Variable UniformConstant
+             113:             TypeImage 18(int) 2D sampled format:Unknown
+             114:             TypePointer UniformConstant 113
+ 115(g_tTex2du4):    114(ptr) Variable UniformConstant
+             116:             TypeImage 6(float) 3D sampled format:Unknown
+             117:             TypePointer UniformConstant 116
+ 118(g_tTex3df4):    117(ptr) Variable UniformConstant
+             119:             TypeImage 11(int) 3D sampled format:Unknown
+             120:             TypePointer UniformConstant 119
+ 121(g_tTex3di4):    120(ptr) Variable UniformConstant
+             122:             TypeImage 18(int) 3D sampled format:Unknown
+             123:             TypePointer UniformConstant 122
+ 124(g_tTex3du4):    123(ptr) Variable UniformConstant
+             125:             TypeImage 6(float) Cube sampled format:Unknown
+             126:             TypePointer UniformConstant 125
+ 127(g_tTexcdf4):    126(ptr) Variable UniformConstant
+             128:             TypeImage 11(int) Cube sampled format:Unknown
+             129:             TypePointer UniformConstant 128
+ 130(g_tTexcdi4):    129(ptr) Variable UniformConstant
+             131:             TypeImage 18(int) Cube sampled format:Unknown
+             132:             TypePointer UniformConstant 131
+ 133(g_tTexcdu4):    132(ptr) Variable UniformConstant
+             134:             TypeImage 6(float) Cube array sampled format:Unknown
+             135:             TypePointer UniformConstant 134
+136(g_tTexcdf4a):    135(ptr) Variable UniformConstant
+             137:             TypeImage 11(int) Cube array sampled format:Unknown
+             138:             TypePointer UniformConstant 137
+139(g_tTexcdi4a):    138(ptr) Variable UniformConstant
+             140:             TypeImage 18(int) Cube array sampled format:Unknown
+             141:             TypePointer UniformConstant 140
+142(g_tTexcdu4a):    141(ptr) Variable UniformConstant
+         143(c1):     20(ptr) Variable UniformConstant
+             144:             TypePointer UniformConstant 15(ivec2)
+         145(c2):    144(ptr) Variable UniformConstant
+         146(o1):     20(ptr) Variable UniformConstant
+         147(o2):    144(ptr) Variable UniformConstant
+         148(o3):     13(ptr) Variable UniformConstant
+         149(o4):     49(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
        77(psout):     76(ptr) Variable Function
@@ -518,7 +535,11 @@ gl_FragCoord origin is upper left
                               Store 82 80
               85:     84(ptr) AccessChain 77(psout) 83
                               Store 85 79
-              88:75(PS_OUTPUT) Load 77(psout)
-                              Store 87(@entryPointOutput) 88
+              88:     81(ptr) AccessChain 77(psout) 78
+              89:   23(fvec4) Load 88
+                              Store 87(Color) 89
+              92:     84(ptr) AccessChain 77(psout) 83
+              93:    6(float) Load 92
+                              Store 91(Depth) 93
                               Return
                               FunctionEnd
index 2d8501a..ec28311 100644 (file)
@@ -139,10 +139,20 @@ gl_FragCoord origin is upper left
 0:73            1 (const int)
 0:73        Constant:
 0:73          1.000000
-0:75      Sequence
-0:75        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:75          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:75          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:75            Color: direct index for structure (temp 4-component vector of float)
+0:75              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:75              Constant:
+0:75                0 (const int)
+0:75          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:75            Depth: direct index for structure (temp float FragDepth)
+0:75              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:75              Constant:
+0:75                1 (const int)
 0:75        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -322,10 +332,20 @@ gl_FragCoord origin is upper left
 0:73            1 (const int)
 0:73        Constant:
 0:73          1.000000
-0:75      Sequence
-0:75        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:75          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:75          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:75            Color: direct index for structure (temp 4-component vector of float)
+0:75              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:75              Constant:
+0:75                0 (const int)
+0:75          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:75            Depth: direct index for structure (temp float FragDepth)
+0:75              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:75              Constant:
+0:75                1 (const int)
 0:75        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -363,14 +383,14 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 169
+// Id's are bound by 170
 
                               Capability Shader
                               Capability Sampled1D
                               Capability SampledCubeArray
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 118 166 168
+                              EntryPoint Fragment 4  "main" 118 122
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 9  "g_tTex1df4"
@@ -389,27 +409,26 @@ gl_FragCoord origin is upper left
                               MemberName 106(PS_OUTPUT) 0  "Color"
                               MemberName 106(PS_OUTPUT) 1  "Depth"
                               Name 108  "psout"
-                              Name 118  "@entryPointOutput"
-                              Name 123  "g_sSamp"
-                              Name 126  "g_tTexcdf4"
-                              Name 129  "g_tTexcdi4"
-                              Name 132  "g_tTexcdu4"
-                              Name 135  "g_tTex1df4a"
-                              Name 138  "g_tTex1di4a"
-                              Name 141  "g_tTex1du4a"
-                              Name 144  "g_tTex2df4a"
-                              Name 147  "g_tTex2di4a"
-                              Name 150  "g_tTex2du4a"
-                              Name 153  "g_tTexcdf4a"
-                              Name 156  "g_tTexcdi4a"
-                              Name 159  "g_tTexcdu4a"
-                              Name 160  "c1"
-                              Name 161  "o1"
-                              Name 162  "o2"
-                              Name 163  "o3"
-                              Name 164  "o4"
-                              Name 166  "Color"
-                              Name 168  "Depth"
+                              Name 118  "Color"
+                              Name 122  "Depth"
+                              Name 128  "g_sSamp"
+                              Name 131  "g_tTexcdf4"
+                              Name 134  "g_tTexcdi4"
+                              Name 137  "g_tTexcdu4"
+                              Name 140  "g_tTex1df4a"
+                              Name 143  "g_tTex1di4a"
+                              Name 146  "g_tTex1du4a"
+                              Name 149  "g_tTex2df4a"
+                              Name 152  "g_tTex2di4a"
+                              Name 155  "g_tTex2du4a"
+                              Name 158  "g_tTexcdf4a"
+                              Name 161  "g_tTexcdi4a"
+                              Name 164  "g_tTexcdu4a"
+                              Name 165  "c1"
+                              Name 166  "o1"
+                              Name 167  "o2"
+                              Name 168  "o3"
+                              Name 169  "o4"
                               Decorate 9(g_tTex1df4) DescriptorSet 0
                               Decorate 9(g_tTex1df4) Binding 0
                               Decorate 27(g_tTex1di4) DescriptorSet 0
@@ -421,22 +440,22 @@ gl_FragCoord origin is upper left
                               Decorate 90(g_tTex3di4) DescriptorSet 0
                               Decorate 99(g_tTex3du4) DescriptorSet 0
                               MemberDecorate 106(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 123(g_sSamp) DescriptorSet 0
-                              Decorate 123(g_sSamp) Binding 0
-                              Decorate 126(g_tTexcdf4) DescriptorSet 0
-                              Decorate 129(g_tTexcdi4) DescriptorSet 0
-                              Decorate 132(g_tTexcdu4) DescriptorSet 0
-                              Decorate 135(g_tTex1df4a) DescriptorSet 0
-                              Decorate 138(g_tTex1di4a) DescriptorSet 0
-                              Decorate 141(g_tTex1du4a) DescriptorSet 0
-                              Decorate 144(g_tTex2df4a) DescriptorSet 0
-                              Decorate 147(g_tTex2di4a) DescriptorSet 0
-                              Decorate 150(g_tTex2du4a) DescriptorSet 0
-                              Decorate 153(g_tTexcdf4a) DescriptorSet 0
-                              Decorate 156(g_tTexcdi4a) DescriptorSet 0
-                              Decorate 159(g_tTexcdu4a) DescriptorSet 0
-                              Decorate 166(Color) Location 0
-                              Decorate 168(Depth) BuiltIn FragDepth
+                              Decorate 118(Color) Location 0
+                              Decorate 122(Depth) BuiltIn FragDepth
+                              Decorate 128(g_sSamp) DescriptorSet 0
+                              Decorate 128(g_sSamp) Binding 0
+                              Decorate 131(g_tTexcdf4) DescriptorSet 0
+                              Decorate 134(g_tTexcdi4) DescriptorSet 0
+                              Decorate 137(g_tTexcdu4) DescriptorSet 0
+                              Decorate 140(g_tTex1df4a) DescriptorSet 0
+                              Decorate 143(g_tTex1di4a) DescriptorSet 0
+                              Decorate 146(g_tTex1du4a) DescriptorSet 0
+                              Decorate 149(g_tTex2df4a) DescriptorSet 0
+                              Decorate 152(g_tTex2di4a) DescriptorSet 0
+                              Decorate 155(g_tTex2du4a) DescriptorSet 0
+                              Decorate 158(g_tTexcdf4a) DescriptorSet 0
+                              Decorate 161(g_tTexcdi4a) DescriptorSet 0
+                              Decorate 164(g_tTexcdu4a) DescriptorSet 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -493,56 +512,54 @@ gl_FragCoord origin is upper left
              112:             TypePointer Function 23(fvec4)
              114:     11(int) Constant 1
              115:             TypePointer Function 6(float)
-             117:             TypePointer Output 106(PS_OUTPUT)
-118(@entryPointOutput):    117(ptr) Variable Output
-             121:             TypeSampler
-             122:             TypePointer UniformConstant 121
-    123(g_sSamp):    122(ptr) Variable UniformConstant
-             124:             TypeImage 6(float) Cube sampled format:Unknown
-             125:             TypePointer UniformConstant 124
- 126(g_tTexcdf4):    125(ptr) Variable UniformConstant
-             127:             TypeImage 11(int) Cube sampled format:Unknown
-             128:             TypePointer UniformConstant 127
- 129(g_tTexcdi4):    128(ptr) Variable UniformConstant
-             130:             TypeImage 15(int) Cube sampled format:Unknown
-             131:             TypePointer UniformConstant 130
- 132(g_tTexcdu4):    131(ptr) Variable UniformConstant
-             133:             TypeImage 6(float) 1D array sampled format:Unknown
-             134:             TypePointer UniformConstant 133
-135(g_tTex1df4a):    134(ptr) Variable UniformConstant
-             136:             TypeImage 11(int) 1D array sampled format:Unknown
-             137:             TypePointer UniformConstant 136
-138(g_tTex1di4a):    137(ptr) Variable UniformConstant
-             139:             TypeImage 15(int) 1D array sampled format:Unknown
-             140:             TypePointer UniformConstant 139
-141(g_tTex1du4a):    140(ptr) Variable UniformConstant
-             142:             TypeImage 6(float) 2D array sampled format:Unknown
-             143:             TypePointer UniformConstant 142
-144(g_tTex2df4a):    143(ptr) Variable UniformConstant
-             145:             TypeImage 11(int) 2D array sampled format:Unknown
-             146:             TypePointer UniformConstant 145
-147(g_tTex2di4a):    146(ptr) Variable UniformConstant
-             148:             TypeImage 15(int) 2D array sampled format:Unknown
-             149:             TypePointer UniformConstant 148
-150(g_tTex2du4a):    149(ptr) Variable UniformConstant
-             151:             TypeImage 6(float) Cube array sampled format:Unknown
-             152:             TypePointer UniformConstant 151
-153(g_tTexcdf4a):    152(ptr) Variable UniformConstant
-             154:             TypeImage 11(int) Cube array sampled format:Unknown
-             155:             TypePointer UniformConstant 154
-156(g_tTexcdi4a):    155(ptr) Variable UniformConstant
-             157:             TypeImage 15(int) Cube array sampled format:Unknown
-             158:             TypePointer UniformConstant 157
-159(g_tTexcdu4a):    158(ptr) Variable UniformConstant
-         160(c1):     17(ptr) Variable UniformConstant
-         161(o1):     17(ptr) Variable UniformConstant
-         162(o2):     13(ptr) Variable UniformConstant
-         163(o3):     50(ptr) Variable UniformConstant
-         164(o4):     80(ptr) Variable UniformConstant
-             165:             TypePointer Output 23(fvec4)
-      166(Color):    165(ptr) Variable Output
-             167:             TypePointer Output 6(float)
-      168(Depth):    167(ptr) Variable Output
+             117:             TypePointer Output 23(fvec4)
+      118(Color):    117(ptr) Variable Output
+             121:             TypePointer Output 6(float)
+      122(Depth):    121(ptr) Variable Output
+             126:             TypeSampler
+             127:             TypePointer UniformConstant 126
+    128(g_sSamp):    127(ptr) Variable UniformConstant
+             129:             TypeImage 6(float) Cube sampled format:Unknown
+             130:             TypePointer UniformConstant 129
+ 131(g_tTexcdf4):    130(ptr) Variable UniformConstant
+             132:             TypeImage 11(int) Cube sampled format:Unknown
+             133:             TypePointer UniformConstant 132
+ 134(g_tTexcdi4):    133(ptr) Variable UniformConstant
+             135:             TypeImage 15(int) Cube sampled format:Unknown
+             136:             TypePointer UniformConstant 135
+ 137(g_tTexcdu4):    136(ptr) Variable UniformConstant
+             138:             TypeImage 6(float) 1D array sampled format:Unknown
+             139:             TypePointer UniformConstant 138
+140(g_tTex1df4a):    139(ptr) Variable UniformConstant
+             141:             TypeImage 11(int) 1D array sampled format:Unknown
+             142:             TypePointer UniformConstant 141
+143(g_tTex1di4a):    142(ptr) Variable UniformConstant
+             144:             TypeImage 15(int) 1D array sampled format:Unknown
+             145:             TypePointer UniformConstant 144
+146(g_tTex1du4a):    145(ptr) Variable UniformConstant
+             147:             TypeImage 6(float) 2D array sampled format:Unknown
+             148:             TypePointer UniformConstant 147
+149(g_tTex2df4a):    148(ptr) Variable UniformConstant
+             150:             TypeImage 11(int) 2D array sampled format:Unknown
+             151:             TypePointer UniformConstant 150
+152(g_tTex2di4a):    151(ptr) Variable UniformConstant
+             153:             TypeImage 15(int) 2D array sampled format:Unknown
+             154:             TypePointer UniformConstant 153
+155(g_tTex2du4a):    154(ptr) Variable UniformConstant
+             156:             TypeImage 6(float) Cube array sampled format:Unknown
+             157:             TypePointer UniformConstant 156
+158(g_tTexcdf4a):    157(ptr) Variable UniformConstant
+             159:             TypeImage 11(int) Cube array sampled format:Unknown
+             160:             TypePointer UniformConstant 159
+161(g_tTexcdi4a):    160(ptr) Variable UniformConstant
+             162:             TypeImage 15(int) Cube array sampled format:Unknown
+             163:             TypePointer UniformConstant 162
+164(g_tTexcdu4a):    163(ptr) Variable UniformConstant
+         165(c1):     17(ptr) Variable UniformConstant
+         166(o1):     17(ptr) Variable UniformConstant
+         167(o2):     13(ptr) Variable UniformConstant
+         168(o3):     50(ptr) Variable UniformConstant
+         169(o4):     80(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
       108(psout):    107(ptr) Variable Function
@@ -604,7 +621,11 @@ gl_FragCoord origin is upper left
                               Store 113 111
              116:    115(ptr) AccessChain 108(psout) 114
                               Store 116 110
-             119:106(PS_OUTPUT) Load 108(psout)
-                              Store 118(@entryPointOutput) 119
+             119:    112(ptr) AccessChain 108(psout) 109
+             120:   23(fvec4) Load 119
+                              Store 118(Color) 120
+             123:    115(ptr) AccessChain 108(psout) 114
+             124:    6(float) Load 123
+                              Store 122(Depth) 124
                               Return
                               FunctionEnd
index fada872..b574eb6 100644 (file)
@@ -131,10 +131,14 @@ Shader version: 450
 0:?           0.000000
 0:?           0.000000
 0:?           0.000000
-0:69      Sequence
-0:69        move second child to first child (temp structure{temp 4-component vector of float Position Pos})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Position Pos})
-0:69          'vsout' (temp structure{temp 4-component vector of float Position Pos})
+0:?       Sequence
+0:?         Sequence
+0:69          move second child to first child (temp 4-component vector of float)
+0:?             'Pos' (out 4-component vector of float Position)
+0:69            Pos: direct index for structure (temp 4-component vector of float Position)
+0:69              'vsout' (temp structure{temp 4-component vector of float Position Pos})
+0:69              Constant:
+0:69                0 (const int)
 0:69        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -305,10 +309,14 @@ Shader version: 450
 0:?           0.000000
 0:?           0.000000
 0:?           0.000000
-0:69      Sequence
-0:69        move second child to first child (temp structure{temp 4-component vector of float Position Pos})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Position Pos})
-0:69          'vsout' (temp structure{temp 4-component vector of float Position Pos})
+0:?       Sequence
+0:?         Sequence
+0:69          move second child to first child (temp 4-component vector of float)
+0:?             'Pos' (out 4-component vector of float Position)
+0:69            Pos: direct index for structure (temp 4-component vector of float Position)
+0:69              'vsout' (temp structure{temp 4-component vector of float Position Pos})
+0:69              Constant:
+0:69                0 (const int)
 0:69        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -345,14 +353,14 @@ Shader version: 450
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 164
+// Id's are bound by 163
 
                               Capability Shader
                               Capability Sampled1D
                               Capability SampledCubeArray
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Vertex 4  "main" 115 163
+                              EntryPoint Vertex 4  "main" 115
                               Name 4  "main"
                               Name 9  "g_tTex1df4"
                               Name 14  "c2"
@@ -369,26 +377,25 @@ Shader version: 450
                               Name 106  "VS_OUTPUT"
                               MemberName 106(VS_OUTPUT) 0  "Pos"
                               Name 108  "vsout"
-                              Name 115  "@entryPointOutput"
-                              Name 120  "g_sSamp"
-                              Name 123  "g_tTexcdf4"
-                              Name 126  "g_tTexcdi4"
-                              Name 129  "g_tTexcdu4"
-                              Name 132  "g_tTex1df4a"
-                              Name 135  "g_tTex1di4a"
-                              Name 138  "g_tTex1du4a"
-                              Name 141  "g_tTex2df4a"
-                              Name 144  "g_tTex2di4a"
-                              Name 147  "g_tTex2du4a"
-                              Name 150  "g_tTexcdf4a"
-                              Name 153  "g_tTexcdi4a"
-                              Name 156  "g_tTexcdu4a"
-                              Name 157  "c1"
-                              Name 158  "o1"
-                              Name 159  "o2"
-                              Name 160  "o3"
-                              Name 161  "o4"
-                              Name 163  "Pos"
+                              Name 115  "Pos"
+                              Name 121  "g_sSamp"
+                              Name 124  "g_tTexcdf4"
+                              Name 127  "g_tTexcdi4"
+                              Name 130  "g_tTexcdu4"
+                              Name 133  "g_tTex1df4a"
+                              Name 136  "g_tTex1di4a"
+                              Name 139  "g_tTex1du4a"
+                              Name 142  "g_tTex2df4a"
+                              Name 145  "g_tTex2di4a"
+                              Name 148  "g_tTex2du4a"
+                              Name 151  "g_tTexcdf4a"
+                              Name 154  "g_tTexcdi4a"
+                              Name 157  "g_tTexcdu4a"
+                              Name 158  "c1"
+                              Name 159  "o1"
+                              Name 160  "o2"
+                              Name 161  "o3"
+                              Name 162  "o4"
                               Decorate 9(g_tTex1df4) DescriptorSet 0
                               Decorate 9(g_tTex1df4) Binding 0
                               Decorate 27(g_tTex1di4) DescriptorSet 0
@@ -400,21 +407,21 @@ Shader version: 450
                               Decorate 90(g_tTex3di4) DescriptorSet 0
                               Decorate 99(g_tTex3du4) DescriptorSet 0
                               MemberDecorate 106(VS_OUTPUT) 0 BuiltIn Position
-                              Decorate 120(g_sSamp) DescriptorSet 0
-                              Decorate 120(g_sSamp) Binding 0
-                              Decorate 123(g_tTexcdf4) DescriptorSet 0
-                              Decorate 126(g_tTexcdi4) DescriptorSet 0
-                              Decorate 129(g_tTexcdu4) DescriptorSet 0
-                              Decorate 132(g_tTex1df4a) DescriptorSet 0
-                              Decorate 135(g_tTex1di4a) DescriptorSet 0
-                              Decorate 138(g_tTex1du4a) DescriptorSet 0
-                              Decorate 141(g_tTex2df4a) DescriptorSet 0
-                              Decorate 144(g_tTex2di4a) DescriptorSet 0
-                              Decorate 147(g_tTex2du4a) DescriptorSet 0
-                              Decorate 150(g_tTexcdf4a) DescriptorSet 0
-                              Decorate 153(g_tTexcdi4a) DescriptorSet 0
-                              Decorate 156(g_tTexcdu4a) DescriptorSet 0
-                              Decorate 163(Pos) BuiltIn Position
+                              Decorate 115(Pos) BuiltIn Position
+                              Decorate 121(g_sSamp) DescriptorSet 0
+                              Decorate 121(g_sSamp) Binding 0
+                              Decorate 124(g_tTexcdf4) DescriptorSet 0
+                              Decorate 127(g_tTexcdi4) DescriptorSet 0
+                              Decorate 130(g_tTexcdu4) DescriptorSet 0
+                              Decorate 133(g_tTex1df4a) DescriptorSet 0
+                              Decorate 136(g_tTex1di4a) DescriptorSet 0
+                              Decorate 139(g_tTex1du4a) DescriptorSet 0
+                              Decorate 142(g_tTex2df4a) DescriptorSet 0
+                              Decorate 145(g_tTex2di4a) DescriptorSet 0
+                              Decorate 148(g_tTex2du4a) DescriptorSet 0
+                              Decorate 151(g_tTexcdf4a) DescriptorSet 0
+                              Decorate 154(g_tTexcdi4a) DescriptorSet 0
+                              Decorate 157(g_tTexcdu4a) DescriptorSet 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -469,54 +476,52 @@ Shader version: 450
              110:    6(float) Constant 0
              111:   23(fvec4) ConstantComposite 110 110 110 110
              112:             TypePointer Function 23(fvec4)
-             114:             TypePointer Output 106(VS_OUTPUT)
-115(@entryPointOutput):    114(ptr) Variable Output
-             118:             TypeSampler
-             119:             TypePointer UniformConstant 118
-    120(g_sSamp):    119(ptr) Variable UniformConstant
-             121:             TypeImage 6(float) Cube sampled format:Unknown
-             122:             TypePointer UniformConstant 121
- 123(g_tTexcdf4):    122(ptr) Variable UniformConstant
-             124:             TypeImage 11(int) Cube sampled format:Unknown
-             125:             TypePointer UniformConstant 124
- 126(g_tTexcdi4):    125(ptr) Variable UniformConstant
-             127:             TypeImage 15(int) Cube sampled format:Unknown
-             128:             TypePointer UniformConstant 127
- 129(g_tTexcdu4):    128(ptr) Variable UniformConstant
-             130:             TypeImage 6(float) 1D array sampled format:Unknown
-             131:             TypePointer UniformConstant 130
-132(g_tTex1df4a):    131(ptr) Variable UniformConstant
-             133:             TypeImage 11(int) 1D array sampled format:Unknown
-             134:             TypePointer UniformConstant 133
-135(g_tTex1di4a):    134(ptr) Variable UniformConstant
-             136:             TypeImage 15(int) 1D array sampled format:Unknown
-             137:             TypePointer UniformConstant 136
-138(g_tTex1du4a):    137(ptr) Variable UniformConstant
-             139:             TypeImage 6(float) 2D array sampled format:Unknown
-             140:             TypePointer UniformConstant 139
-141(g_tTex2df4a):    140(ptr) Variable UniformConstant
-             142:             TypeImage 11(int) 2D array sampled format:Unknown
-             143:             TypePointer UniformConstant 142
-144(g_tTex2di4a):    143(ptr) Variable UniformConstant
-             145:             TypeImage 15(int) 2D array sampled format:Unknown
-             146:             TypePointer UniformConstant 145
-147(g_tTex2du4a):    146(ptr) Variable UniformConstant
-             148:             TypeImage 6(float) Cube array sampled format:Unknown
-             149:             TypePointer UniformConstant 148
-150(g_tTexcdf4a):    149(ptr) Variable UniformConstant
-             151:             TypeImage 11(int) Cube array sampled format:Unknown
-             152:             TypePointer UniformConstant 151
-153(g_tTexcdi4a):    152(ptr) Variable UniformConstant
-             154:             TypeImage 15(int) Cube array sampled format:Unknown
-             155:             TypePointer UniformConstant 154
-156(g_tTexcdu4a):    155(ptr) Variable UniformConstant
-         157(c1):     17(ptr) Variable UniformConstant
-         158(o1):     17(ptr) Variable UniformConstant
-         159(o2):     13(ptr) Variable UniformConstant
-         160(o3):     50(ptr) Variable UniformConstant
-         161(o4):     80(ptr) Variable UniformConstant
-             162:             TypePointer Output 23(fvec4)
-        163(Pos):    162(ptr) Variable Output
+             114:             TypePointer Output 23(fvec4)
+        115(Pos):    114(ptr) Variable Output
+             119:             TypeSampler
+             120:             TypePointer UniformConstant 119
+    121(g_sSamp):    120(ptr) Variable UniformConstant
+             122:             TypeImage 6(float) Cube sampled format:Unknown
+             123:             TypePointer UniformConstant 122
+ 124(g_tTexcdf4):    123(ptr) Variable UniformConstant
+             125:             TypeImage 11(int) Cube sampled format:Unknown
+             126:             TypePointer UniformConstant 125
+ 127(g_tTexcdi4):    126(ptr) Variable UniformConstant
+             128:             TypeImage 15(int) Cube sampled format:Unknown
+             129:             TypePointer UniformConstant 128
+ 130(g_tTexcdu4):    129(ptr) Variable UniformConstant
+             131:             TypeImage 6(float) 1D array sampled format:Unknown
+             132:             TypePointer UniformConstant 131
+133(g_tTex1df4a):    132(ptr) Variable UniformConstant
+             134:             TypeImage 11(int) 1D array sampled format:Unknown
+             135:             TypePointer UniformConstant 134
+136(g_tTex1di4a):    135(ptr) Variable UniformConstant
+             137:             TypeImage 15(int) 1D array sampled format:Unknown
+             138:             TypePointer UniformConstant 137
+139(g_tTex1du4a):    138(ptr) Variable UniformConstant
+             140:             TypeImage 6(float) 2D array sampled format:Unknown
+             141:             TypePointer UniformConstant 140
+142(g_tTex2df4a):    141(ptr) Variable UniformConstant
+             143:             TypeImage 11(int) 2D array sampled format:Unknown
+             144:             TypePointer UniformConstant 143
+145(g_tTex2di4a):    144(ptr) Variable UniformConstant
+             146:             TypeImage 15(int) 2D array sampled format:Unknown
+             147:             TypePointer UniformConstant 146
+148(g_tTex2du4a):    147(ptr) Variable UniformConstant
+             149:             TypeImage 6(float) Cube array sampled format:Unknown
+             150:             TypePointer UniformConstant 149
+151(g_tTexcdf4a):    150(ptr) Variable UniformConstant
+             152:             TypeImage 11(int) Cube array sampled format:Unknown
+             153:             TypePointer UniformConstant 152
+154(g_tTexcdi4a):    153(ptr) Variable UniformConstant
+             155:             TypeImage 15(int) Cube array sampled format:Unknown
+             156:             TypePointer UniformConstant 155
+157(g_tTexcdu4a):    156(ptr) Variable UniformConstant
+         158(c1):     17(ptr) Variable UniformConstant
+         159(o1):     17(ptr) Variable UniformConstant
+         160(o2):     13(ptr) Variable UniformConstant
+         161(o3):     50(ptr) Variable UniformConstant
+         162(o4):     80(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
       108(vsout):    107(ptr) Variable Function
@@ -576,7 +581,8 @@ Shader version: 450
              105:   43(ivec4) ImageFetch 100 102 Lod 104
              113:    112(ptr) AccessChain 108(vsout) 109
                               Store 113 111
-             116:106(VS_OUTPUT) Load 108(vsout)
-                              Store 115(@entryPointOutput) 116
+             116:    112(ptr) AccessChain 108(vsout) 109
+             117:   23(fvec4) Load 116
+                              Store 115(Pos) 117
                               Return
                               FunctionEnd
index 86acd71..2b02aee 100644 (file)
@@ -40,10 +40,20 @@ gl_FragCoord origin is upper left
 0:35            1 (const int)
 0:35        Constant:
 0:35          1.000000
-0:37      Sequence
-0:37        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:37          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         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 FragDepth 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 FragDepth)
+0:37              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:37              Constant:
+0:37                1 (const int)
 0:37        Branch: Return
 0:?   Linker Objects
 0:?     'g_tTexbf4_test' (layout(binding=0 ) uniform samplerBuffer)
@@ -106,10 +116,20 @@ gl_FragCoord origin is upper left
 0:35            1 (const int)
 0:35        Constant:
 0:35          1.000000
-0:37      Sequence
-0:37        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:37          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         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 FragDepth 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 FragDepth)
+0:37              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:37              Constant:
+0:37                1 (const int)
 0:37        Branch: Return
 0:?   Linker Objects
 0:?     'g_tTexbf4_test' (layout(binding=0 ) uniform samplerBuffer)
@@ -129,13 +149,13 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 75
+// Id's are bound by 76
 
                               Capability Shader
                               Capability SampledBuffer
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 55 72 74
+                              EntryPoint Fragment 4  "main" 55 59
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 9  "r00"
@@ -149,25 +169,24 @@ gl_FragCoord origin is upper left
                               MemberName 44(PS_OUTPUT) 0  "Color"
                               MemberName 44(PS_OUTPUT) 1  "Depth"
                               Name 46  "psout"
-                              Name 55  "@entryPointOutput"
-                              Name 58  "g_tTexbf4_test"
-                              Name 61  "c2"
-                              Name 64  "c3"
-                              Name 66  "c4"
-                              Name 67  "o1"
-                              Name 68  "o2"
-                              Name 69  "o3"
-                              Name 70  "o4"
-                              Name 72  "Color"
-                              Name 74  "Depth"
+                              Name 55  "Color"
+                              Name 59  "Depth"
+                              Name 63  "g_tTexbf4_test"
+                              Name 66  "c2"
+                              Name 69  "c3"
+                              Name 71  "c4"
+                              Name 72  "o1"
+                              Name 73  "o2"
+                              Name 74  "o3"
+                              Name 75  "o4"
                               Decorate 13(g_tTexbf4) DescriptorSet 0
                               Decorate 27(g_tTexbi4) DescriptorSet 0
                               Decorate 39(g_tTexbu4) DescriptorSet 0
                               MemberDecorate 44(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 58(g_tTexbf4_test) DescriptorSet 0
-                              Decorate 58(g_tTexbf4_test) Binding 0
-                              Decorate 72(Color) Location 0
-                              Decorate 74(Depth) BuiltIn FragDepth
+                              Decorate 55(Color) Location 0
+                              Decorate 59(Depth) BuiltIn FragDepth
+                              Decorate 63(g_tTexbf4_test) DescriptorSet 0
+                              Decorate 63(g_tTexbf4_test) Binding 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -200,25 +219,23 @@ gl_FragCoord origin is upper left
               49:    7(fvec4) ConstantComposite 48 48 48 48
               51:     15(int) Constant 1
               52:             TypePointer Function 6(float)
-              54:             TypePointer Output 44(PS_OUTPUT)
-55(@entryPointOutput):     54(ptr) Variable Output
-58(g_tTexbf4_test):     12(ptr) Variable UniformConstant
-              59:             TypeVector 15(int) 2
-              60:             TypePointer UniformConstant 59(ivec2)
-          61(c2):     60(ptr) Variable UniformConstant
-              62:             TypeVector 15(int) 3
-              63:             TypePointer UniformConstant 62(ivec3)
-          64(c3):     63(ptr) Variable UniformConstant
-              65:             TypePointer UniformConstant 21(ivec4)
-          66(c4):     65(ptr) Variable UniformConstant
-          67(o1):     16(ptr) Variable UniformConstant
-          68(o2):     60(ptr) Variable UniformConstant
-          69(o3):     63(ptr) Variable UniformConstant
-          70(o4):     65(ptr) Variable UniformConstant
-              71:             TypePointer Output 7(fvec4)
-       72(Color):     71(ptr) Variable Output
-              73:             TypePointer Output 6(float)
-       74(Depth):     73(ptr) Variable Output
+              54:             TypePointer Output 7(fvec4)
+       55(Color):     54(ptr) Variable Output
+              58:             TypePointer Output 6(float)
+       59(Depth):     58(ptr) Variable Output
+63(g_tTexbf4_test):     12(ptr) Variable UniformConstant
+              64:             TypeVector 15(int) 2
+              65:             TypePointer UniformConstant 64(ivec2)
+          66(c2):     65(ptr) Variable UniformConstant
+              67:             TypeVector 15(int) 3
+              68:             TypePointer UniformConstant 67(ivec3)
+          69(c3):     68(ptr) Variable UniformConstant
+              70:             TypePointer UniformConstant 21(ivec4)
+          71(c4):     70(ptr) Variable UniformConstant
+          72(o1):     16(ptr) Variable UniformConstant
+          73(o2):     65(ptr) Variable UniformConstant
+          74(o3):     68(ptr) Variable UniformConstant
+          75(o4):     70(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
           9(r00):      8(ptr) Variable Function
@@ -244,7 +261,11 @@ gl_FragCoord origin is upper left
                               Store 50 49
               53:     52(ptr) AccessChain 46(psout) 51
                               Store 53 48
-              56:44(PS_OUTPUT) Load 46(psout)
-                              Store 55(@entryPointOutput) 56
+              56:      8(ptr) AccessChain 46(psout) 47
+              57:    7(fvec4) Load 56
+                              Store 55(Color) 57
+              60:     52(ptr) AccessChain 46(psout) 51
+              61:    6(float) Load 60
+                              Store 59(Depth) 61
                               Return
                               FunctionEnd
index 82f00d2..5ac4e8d 100644 (file)
@@ -148,10 +148,20 @@ gl_FragCoord origin is upper left
 0:73            1 (const int)
 0:73        Constant:
 0:73          1.000000
-0:75      Sequence
-0:75        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:75          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:75          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:75            Color: direct index for structure (temp 4-component vector of float)
+0:75              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:75              Constant:
+0:75                0 (const int)
+0:75          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:75            Depth: direct index for structure (temp float FragDepth)
+0:75              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:75              Constant:
+0:75                1 (const int)
 0:75        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -340,10 +350,20 @@ gl_FragCoord origin is upper left
 0:73            1 (const int)
 0:73        Constant:
 0:73          1.000000
-0:75      Sequence
-0:75        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:75          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:75          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:75            Color: direct index for structure (temp 4-component vector of float)
+0:75              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:75              Constant:
+0:75                0 (const int)
+0:75          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:75            Depth: direct index for structure (temp float FragDepth)
+0:75              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:75              Constant:
+0:75                1 (const int)
 0:75        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -381,7 +401,7 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 178
+// Id's are bound by 179
 
                               Capability Shader
                               Capability ImageGatherExtended
@@ -389,7 +409,7 @@ gl_FragCoord origin is upper left
                               Capability SampledCubeArray
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 130 175 177
+                              EntryPoint Fragment 4  "main" 130 134
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 9  "g_tTex1df4"
@@ -411,24 +431,23 @@ gl_FragCoord origin is upper left
                               MemberName 118(PS_OUTPUT) 0  "Color"
                               MemberName 118(PS_OUTPUT) 1  "Depth"
                               Name 120  "psout"
-                              Name 130  "@entryPointOutput"
-                              Name 135  "g_sSamp"
-                              Name 138  "g_tTexcdf4"
-                              Name 141  "g_tTexcdi4"
-                              Name 144  "g_tTexcdu4"
-                              Name 147  "g_tTex1df4a"
-                              Name 150  "g_tTex1di4a"
-                              Name 153  "g_tTex1du4a"
-                              Name 156  "g_tTex2df4a"
-                              Name 159  "g_tTex2di4a"
-                              Name 162  "g_tTex2du4a"
-                              Name 165  "g_tTexcdf4a"
-                              Name 168  "g_tTexcdi4a"
-                              Name 171  "g_tTexcdu4a"
-                              Name 172  "c1"
-                              Name 173  "o4"
-                              Name 175  "Color"
-                              Name 177  "Depth"
+                              Name 130  "Color"
+                              Name 134  "Depth"
+                              Name 140  "g_sSamp"
+                              Name 143  "g_tTexcdf4"
+                              Name 146  "g_tTexcdi4"
+                              Name 149  "g_tTexcdu4"
+                              Name 152  "g_tTex1df4a"
+                              Name 155  "g_tTex1di4a"
+                              Name 158  "g_tTex1du4a"
+                              Name 161  "g_tTex2df4a"
+                              Name 164  "g_tTex2di4a"
+                              Name 167  "g_tTex2du4a"
+                              Name 170  "g_tTexcdf4a"
+                              Name 173  "g_tTexcdi4a"
+                              Name 176  "g_tTexcdu4a"
+                              Name 177  "c1"
+                              Name 178  "o4"
                               Decorate 9(g_tTex1df4) DescriptorSet 0
                               Decorate 9(g_tTex1df4) Binding 0
                               Decorate 29(g_tTex1di4) DescriptorSet 0
@@ -440,22 +459,22 @@ gl_FragCoord origin is upper left
                               Decorate 100(g_tTex3di4) DescriptorSet 0
                               Decorate 110(g_tTex3du4) DescriptorSet 0
                               MemberDecorate 118(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 135(g_sSamp) DescriptorSet 0
-                              Decorate 135(g_sSamp) Binding 0
-                              Decorate 138(g_tTexcdf4) DescriptorSet 0
-                              Decorate 141(g_tTexcdi4) DescriptorSet 0
-                              Decorate 144(g_tTexcdu4) DescriptorSet 0
-                              Decorate 147(g_tTex1df4a) DescriptorSet 0
-                              Decorate 150(g_tTex1di4a) DescriptorSet 0
-                              Decorate 153(g_tTex1du4a) DescriptorSet 0
-                              Decorate 156(g_tTex2df4a) DescriptorSet 0
-                              Decorate 159(g_tTex2di4a) DescriptorSet 0
-                              Decorate 162(g_tTex2du4a) DescriptorSet 0
-                              Decorate 165(g_tTexcdf4a) DescriptorSet 0
-                              Decorate 168(g_tTexcdi4a) DescriptorSet 0
-                              Decorate 171(g_tTexcdu4a) DescriptorSet 0
-                              Decorate 175(Color) Location 0
-                              Decorate 177(Depth) BuiltIn FragDepth
+                              Decorate 130(Color) Location 0
+                              Decorate 134(Depth) BuiltIn FragDepth
+                              Decorate 140(g_sSamp) DescriptorSet 0
+                              Decorate 140(g_sSamp) Binding 0
+                              Decorate 143(g_tTexcdf4) DescriptorSet 0
+                              Decorate 146(g_tTexcdi4) DescriptorSet 0
+                              Decorate 149(g_tTexcdu4) DescriptorSet 0
+                              Decorate 152(g_tTex1df4a) DescriptorSet 0
+                              Decorate 155(g_tTex1di4a) DescriptorSet 0
+                              Decorate 158(g_tTex1du4a) DescriptorSet 0
+                              Decorate 161(g_tTex2df4a) DescriptorSet 0
+                              Decorate 164(g_tTex2di4a) DescriptorSet 0
+                              Decorate 167(g_tTex2du4a) DescriptorSet 0
+                              Decorate 170(g_tTexcdf4a) DescriptorSet 0
+                              Decorate 173(g_tTexcdi4a) DescriptorSet 0
+                              Decorate 176(g_tTexcdu4a) DescriptorSet 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -515,53 +534,51 @@ gl_FragCoord origin is upper left
              124:             TypePointer Function 25(fvec4)
              126:     11(int) Constant 1
              127:             TypePointer Function 6(float)
-             129:             TypePointer Output 118(PS_OUTPUT)
-130(@entryPointOutput):    129(ptr) Variable Output
-             133:             TypeSampler
-             134:             TypePointer UniformConstant 133
-    135(g_sSamp):    134(ptr) Variable UniformConstant
-             136:             TypeImage 6(float) Cube sampled format:Unknown
-             137:             TypePointer UniformConstant 136
- 138(g_tTexcdf4):    137(ptr) Variable UniformConstant
-             139:             TypeImage 11(int) Cube sampled format:Unknown
-             140:             TypePointer UniformConstant 139
- 141(g_tTexcdi4):    140(ptr) Variable UniformConstant
-             142:             TypeImage 15(int) Cube sampled format:Unknown
-             143:             TypePointer UniformConstant 142
- 144(g_tTexcdu4):    143(ptr) Variable UniformConstant
-             145:             TypeImage 6(float) 1D array sampled format:Unknown
-             146:             TypePointer UniformConstant 145
-147(g_tTex1df4a):    146(ptr) Variable UniformConstant
-             148:             TypeImage 11(int) 1D array sampled format:Unknown
-             149:             TypePointer UniformConstant 148
-150(g_tTex1di4a):    149(ptr) Variable UniformConstant
-             151:             TypeImage 15(int) 1D array sampled format:Unknown
-             152:             TypePointer UniformConstant 151
-153(g_tTex1du4a):    152(ptr) Variable UniformConstant
-             154:             TypeImage 6(float) 2D array sampled format:Unknown
-             155:             TypePointer UniformConstant 154
-156(g_tTex2df4a):    155(ptr) Variable UniformConstant
-             157:             TypeImage 11(int) 2D array sampled format:Unknown
-             158:             TypePointer UniformConstant 157
-159(g_tTex2di4a):    158(ptr) Variable UniformConstant
-             160:             TypeImage 15(int) 2D array sampled format:Unknown
-             161:             TypePointer UniformConstant 160
-162(g_tTex2du4a):    161(ptr) Variable UniformConstant
-             163:             TypeImage 6(float) Cube array sampled format:Unknown
-             164:             TypePointer UniformConstant 163
-165(g_tTexcdf4a):    164(ptr) Variable UniformConstant
-             166:             TypeImage 11(int) Cube array sampled format:Unknown
-             167:             TypePointer UniformConstant 166
-168(g_tTexcdi4a):    167(ptr) Variable UniformConstant
-             169:             TypeImage 15(int) Cube array sampled format:Unknown
-             170:             TypePointer UniformConstant 169
-171(g_tTexcdu4a):    170(ptr) Variable UniformConstant
-         172(c1):     17(ptr) Variable UniformConstant
-         173(o4):     88(ptr) Variable UniformConstant
-             174:             TypePointer Output 25(fvec4)
-      175(Color):    174(ptr) Variable Output
-             176:             TypePointer Output 6(float)
-      177(Depth):    176(ptr) Variable Output
+             129:             TypePointer Output 25(fvec4)
+      130(Color):    129(ptr) Variable Output
+             133:             TypePointer Output 6(float)
+      134(Depth):    133(ptr) Variable Output
+             138:             TypeSampler
+             139:             TypePointer UniformConstant 138
+    140(g_sSamp):    139(ptr) Variable UniformConstant
+             141:             TypeImage 6(float) Cube sampled format:Unknown
+             142:             TypePointer UniformConstant 141
+ 143(g_tTexcdf4):    142(ptr) Variable UniformConstant
+             144:             TypeImage 11(int) Cube sampled format:Unknown
+             145:             TypePointer UniformConstant 144
+ 146(g_tTexcdi4):    145(ptr) Variable UniformConstant
+             147:             TypeImage 15(int) Cube sampled format:Unknown
+             148:             TypePointer UniformConstant 147
+ 149(g_tTexcdu4):    148(ptr) Variable UniformConstant
+             150:             TypeImage 6(float) 1D array sampled format:Unknown
+             151:             TypePointer UniformConstant 150
+152(g_tTex1df4a):    151(ptr) Variable UniformConstant
+             153:             TypeImage 11(int) 1D array sampled format:Unknown
+             154:             TypePointer UniformConstant 153
+155(g_tTex1di4a):    154(ptr) Variable UniformConstant
+             156:             TypeImage 15(int) 1D array sampled format:Unknown
+             157:             TypePointer UniformConstant 156
+158(g_tTex1du4a):    157(ptr) Variable UniformConstant
+             159:             TypeImage 6(float) 2D array sampled format:Unknown
+             160:             TypePointer UniformConstant 159
+161(g_tTex2df4a):    160(ptr) Variable UniformConstant
+             162:             TypeImage 11(int) 2D array sampled format:Unknown
+             163:             TypePointer UniformConstant 162
+164(g_tTex2di4a):    163(ptr) Variable UniformConstant
+             165:             TypeImage 15(int) 2D array sampled format:Unknown
+             166:             TypePointer UniformConstant 165
+167(g_tTex2du4a):    166(ptr) Variable UniformConstant
+             168:             TypeImage 6(float) Cube array sampled format:Unknown
+             169:             TypePointer UniformConstant 168
+170(g_tTexcdf4a):    169(ptr) Variable UniformConstant
+             171:             TypeImage 11(int) Cube array sampled format:Unknown
+             172:             TypePointer UniformConstant 171
+173(g_tTexcdi4a):    172(ptr) Variable UniformConstant
+             174:             TypeImage 15(int) Cube array sampled format:Unknown
+             175:             TypePointer UniformConstant 174
+176(g_tTexcdu4a):    175(ptr) Variable UniformConstant
+         177(c1):     17(ptr) Variable UniformConstant
+         178(o4):     88(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
       120(psout):    119(ptr) Variable Function
@@ -632,7 +649,11 @@ gl_FragCoord origin is upper left
                               Store 125 123
              128:    127(ptr) AccessChain 120(psout) 126
                               Store 128 122
-             131:118(PS_OUTPUT) Load 120(psout)
-                              Store 130(@entryPointOutput) 131
+             131:    124(ptr) AccessChain 120(psout) 121
+             132:   25(fvec4) Load 131
+                              Store 130(Color) 132
+             135:    127(ptr) AccessChain 120(psout) 126
+             136:    6(float) Load 135
+                              Store 134(Depth) 136
                               Return
                               FunctionEnd
index e3230f6..ce5da11 100644 (file)
@@ -112,10 +112,20 @@ gl_FragCoord origin is upper left
 0:66            1 (const int)
 0:66        Constant:
 0:66          1.000000
-0:68      Sequence
-0:68        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:68          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:68          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:68            Color: direct index for structure (temp 4-component vector of float)
+0:68              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:68              Constant:
+0:68                0 (const int)
+0:68          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:68            Depth: direct index for structure (temp float FragDepth)
+0:68              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:68              Constant:
+0:68                1 (const int)
 0:68        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -268,10 +278,20 @@ gl_FragCoord origin is upper left
 0:66            1 (const int)
 0:66        Constant:
 0:66          1.000000
-0:68      Sequence
-0:68        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:68          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:68          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:68            Color: direct index for structure (temp 4-component vector of float)
+0:68              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:68              Constant:
+0:68                0 (const int)
+0:68          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:68            Depth: direct index for structure (temp float FragDepth)
+0:68              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:68              Constant:
+0:68                1 (const int)
 0:68        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -309,7 +329,7 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 155
+// Id's are bound by 156
 
                               Capability Shader
                               Capability ImageGatherExtended
@@ -317,7 +337,7 @@ gl_FragCoord origin is upper left
                               Capability SampledCubeArray
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 96 152 154
+                              EntryPoint Fragment 4  "main" 96 100
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 9  "g_tTex1df4a"
@@ -334,29 +354,28 @@ gl_FragCoord origin is upper left
                               MemberName 84(PS_OUTPUT) 0  "Color"
                               MemberName 84(PS_OUTPUT) 1  "Depth"
                               Name 86  "psout"
-                              Name 96  "@entryPointOutput"
-                              Name 101  "g_sSamp"
-                              Name 104  "g_tTex1df4"
-                              Name 107  "g_tTex1di4"
-                              Name 110  "g_tTex1du4"
-                              Name 113  "g_tTex2df4"
-                              Name 116  "g_tTex2di4"
-                              Name 119  "g_tTex2du4"
-                              Name 122  "g_tTex3df4"
-                              Name 125  "g_tTex3di4"
-                              Name 128  "g_tTex3du4"
-                              Name 131  "g_tTexcdf4"
-                              Name 134  "g_tTexcdi4"
-                              Name 137  "g_tTexcdu4"
-                              Name 140  "g_tTexcdf4a"
-                              Name 143  "g_tTexcdi4a"
-                              Name 146  "g_tTexcdu4a"
-                              Name 147  "c1"
-                              Name 148  "c2"
-                              Name 149  "o3"
-                              Name 150  "o4"
-                              Name 152  "Color"
-                              Name 154  "Depth"
+                              Name 96  "Color"
+                              Name 100  "Depth"
+                              Name 106  "g_sSamp"
+                              Name 109  "g_tTex1df4"
+                              Name 112  "g_tTex1di4"
+                              Name 115  "g_tTex1du4"
+                              Name 118  "g_tTex2df4"
+                              Name 121  "g_tTex2di4"
+                              Name 124  "g_tTex2du4"
+                              Name 127  "g_tTex3df4"
+                              Name 130  "g_tTex3di4"
+                              Name 133  "g_tTex3du4"
+                              Name 136  "g_tTexcdf4"
+                              Name 139  "g_tTexcdi4"
+                              Name 142  "g_tTexcdu4"
+                              Name 145  "g_tTexcdf4a"
+                              Name 148  "g_tTexcdi4a"
+                              Name 151  "g_tTexcdu4a"
+                              Name 152  "c1"
+                              Name 153  "c2"
+                              Name 154  "o3"
+                              Name 155  "o4"
                               Decorate 9(g_tTex1df4a) DescriptorSet 0
                               Decorate 29(g_tTex1di4a) DescriptorSet 0
                               Decorate 40(g_tTex1du4a) DescriptorSet 0
@@ -364,26 +383,26 @@ gl_FragCoord origin is upper left
                               Decorate 66(g_tTex2di4a) DescriptorSet 0
                               Decorate 76(g_tTex2du4a) DescriptorSet 0
                               MemberDecorate 84(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 101(g_sSamp) DescriptorSet 0
-                              Decorate 101(g_sSamp) Binding 0
-                              Decorate 104(g_tTex1df4) DescriptorSet 0
-                              Decorate 104(g_tTex1df4) Binding 0
-                              Decorate 107(g_tTex1di4) DescriptorSet 0
-                              Decorate 110(g_tTex1du4) DescriptorSet 0
-                              Decorate 113(g_tTex2df4) DescriptorSet 0
-                              Decorate 116(g_tTex2di4) DescriptorSet 0
-                              Decorate 119(g_tTex2du4) DescriptorSet 0
-                              Decorate 122(g_tTex3df4) DescriptorSet 0
-                              Decorate 125(g_tTex3di4) DescriptorSet 0
-                              Decorate 128(g_tTex3du4) DescriptorSet 0
-                              Decorate 131(g_tTexcdf4) DescriptorSet 0
-                              Decorate 134(g_tTexcdi4) DescriptorSet 0
-                              Decorate 137(g_tTexcdu4) DescriptorSet 0
-                              Decorate 140(g_tTexcdf4a) DescriptorSet 0
-                              Decorate 143(g_tTexcdi4a) DescriptorSet 0
-                              Decorate 146(g_tTexcdu4a) DescriptorSet 0
-                              Decorate 152(Color) Location 0
-                              Decorate 154(Depth) BuiltIn FragDepth
+                              Decorate 96(Color) Location 0
+                              Decorate 100(Depth) BuiltIn FragDepth
+                              Decorate 106(g_sSamp) DescriptorSet 0
+                              Decorate 106(g_sSamp) Binding 0
+                              Decorate 109(g_tTex1df4) DescriptorSet 0
+                              Decorate 109(g_tTex1df4) Binding 0
+                              Decorate 112(g_tTex1di4) DescriptorSet 0
+                              Decorate 115(g_tTex1du4) DescriptorSet 0
+                              Decorate 118(g_tTex2df4) DescriptorSet 0
+                              Decorate 121(g_tTex2di4) DescriptorSet 0
+                              Decorate 124(g_tTex2du4) DescriptorSet 0
+                              Decorate 127(g_tTex3df4) DescriptorSet 0
+                              Decorate 130(g_tTex3di4) DescriptorSet 0
+                              Decorate 133(g_tTex3du4) DescriptorSet 0
+                              Decorate 136(g_tTexcdf4) DescriptorSet 0
+                              Decorate 139(g_tTexcdi4) DescriptorSet 0
+                              Decorate 142(g_tTexcdu4) DescriptorSet 0
+                              Decorate 145(g_tTexcdf4a) DescriptorSet 0
+                              Decorate 148(g_tTexcdi4a) DescriptorSet 0
+                              Decorate 151(g_tTexcdu4a) DescriptorSet 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -430,64 +449,62 @@ gl_FragCoord origin is upper left
               90:             TypePointer Function 25(fvec4)
               92:     11(int) Constant 1
               93:             TypePointer Function 6(float)
-              95:             TypePointer Output 84(PS_OUTPUT)
-96(@entryPointOutput):     95(ptr) Variable Output
-              99:             TypeSampler
-             100:             TypePointer UniformConstant 99
-    101(g_sSamp):    100(ptr) Variable UniformConstant
-             102:             TypeImage 6(float) 1D sampled format:Unknown
-             103:             TypePointer UniformConstant 102
- 104(g_tTex1df4):    103(ptr) Variable UniformConstant
-             105:             TypeImage 11(int) 1D sampled format:Unknown
-             106:             TypePointer UniformConstant 105
- 107(g_tTex1di4):    106(ptr) Variable UniformConstant
-             108:             TypeImage 18(int) 1D sampled format:Unknown
-             109:             TypePointer UniformConstant 108
- 110(g_tTex1du4):    109(ptr) Variable UniformConstant
-             111:             TypeImage 6(float) 2D sampled format:Unknown
-             112:             TypePointer UniformConstant 111
- 113(g_tTex2df4):    112(ptr) Variable UniformConstant
-             114:             TypeImage 11(int) 2D sampled format:Unknown
-             115:             TypePointer UniformConstant 114
- 116(g_tTex2di4):    115(ptr) Variable UniformConstant
-             117:             TypeImage 18(int) 2D sampled format:Unknown
-             118:             TypePointer UniformConstant 117
- 119(g_tTex2du4):    118(ptr) Variable UniformConstant
-             120:             TypeImage 6(float) 3D sampled format:Unknown
-             121:             TypePointer UniformConstant 120
- 122(g_tTex3df4):    121(ptr) Variable UniformConstant
-             123:             TypeImage 11(int) 3D sampled format:Unknown
-             124:             TypePointer UniformConstant 123
- 125(g_tTex3di4):    124(ptr) Variable UniformConstant
-             126:             TypeImage 18(int) 3D sampled format:Unknown
-             127:             TypePointer UniformConstant 126
- 128(g_tTex3du4):    127(ptr) Variable UniformConstant
-             129:             TypeImage 6(float) Cube sampled format:Unknown
-             130:             TypePointer UniformConstant 129
- 131(g_tTexcdf4):    130(ptr) Variable UniformConstant
-             132:             TypeImage 11(int) Cube sampled format:Unknown
-             133:             TypePointer UniformConstant 132
- 134(g_tTexcdi4):    133(ptr) Variable UniformConstant
-             135:             TypeImage 18(int) Cube sampled format:Unknown
-             136:             TypePointer UniformConstant 135
- 137(g_tTexcdu4):    136(ptr) Variable UniformConstant
-             138:             TypeImage 6(float) Cube array sampled format:Unknown
-             139:             TypePointer UniformConstant 138
-140(g_tTexcdf4a):    139(ptr) Variable UniformConstant
-             141:             TypeImage 11(int) Cube array sampled format:Unknown
-             142:             TypePointer UniformConstant 141
-143(g_tTexcdi4a):    142(ptr) Variable UniformConstant
-             144:             TypeImage 18(int) Cube array sampled format:Unknown
-             145:             TypePointer UniformConstant 144
-146(g_tTexcdu4a):    145(ptr) Variable UniformConstant
-         147(c1):     20(ptr) Variable UniformConstant
-         148(c2):     60(ptr) Variable UniformConstant
-         149(o3):     13(ptr) Variable UniformConstant
-         150(o4):     53(ptr) Variable UniformConstant
-             151:             TypePointer Output 25(fvec4)
-      152(Color):    151(ptr) Variable Output
-             153:             TypePointer Output 6(float)
-      154(Depth):    153(ptr) Variable Output
+              95:             TypePointer Output 25(fvec4)
+       96(Color):     95(ptr) Variable Output
+              99:             TypePointer Output 6(float)
+      100(Depth):     99(ptr) Variable Output
+             104:             TypeSampler
+             105:             TypePointer UniformConstant 104
+    106(g_sSamp):    105(ptr) Variable UniformConstant
+             107:             TypeImage 6(float) 1D sampled format:Unknown
+             108:             TypePointer UniformConstant 107
+ 109(g_tTex1df4):    108(ptr) Variable UniformConstant
+             110:             TypeImage 11(int) 1D sampled format:Unknown
+             111:             TypePointer UniformConstant 110
+ 112(g_tTex1di4):    111(ptr) Variable UniformConstant
+             113:             TypeImage 18(int) 1D sampled format:Unknown
+             114:             TypePointer UniformConstant 113
+ 115(g_tTex1du4):    114(ptr) Variable UniformConstant
+             116:             TypeImage 6(float) 2D sampled format:Unknown
+             117:             TypePointer UniformConstant 116
+ 118(g_tTex2df4):    117(ptr) Variable UniformConstant
+             119:             TypeImage 11(int) 2D sampled format:Unknown
+             120:             TypePointer UniformConstant 119
+ 121(g_tTex2di4):    120(ptr) Variable UniformConstant
+             122:             TypeImage 18(int) 2D sampled format:Unknown
+             123:             TypePointer UniformConstant 122
+ 124(g_tTex2du4):    123(ptr) Variable UniformConstant
+             125:             TypeImage 6(float) 3D sampled format:Unknown
+             126:             TypePointer UniformConstant 125
+ 127(g_tTex3df4):    126(ptr) Variable UniformConstant
+             128:             TypeImage 11(int) 3D sampled format:Unknown
+             129:             TypePointer UniformConstant 128
+ 130(g_tTex3di4):    129(ptr) Variable UniformConstant
+             131:             TypeImage 18(int) 3D sampled format:Unknown
+             132:             TypePointer UniformConstant 131
+ 133(g_tTex3du4):    132(ptr) Variable UniformConstant
+             134:             TypeImage 6(float) Cube sampled format:Unknown
+             135:             TypePointer UniformConstant 134
+ 136(g_tTexcdf4):    135(ptr) Variable UniformConstant
+             137:             TypeImage 11(int) Cube sampled format:Unknown
+             138:             TypePointer UniformConstant 137
+ 139(g_tTexcdi4):    138(ptr) Variable UniformConstant
+             140:             TypeImage 18(int) Cube sampled format:Unknown
+             141:             TypePointer UniformConstant 140
+ 142(g_tTexcdu4):    141(ptr) Variable UniformConstant
+             143:             TypeImage 6(float) Cube array sampled format:Unknown
+             144:             TypePointer UniformConstant 143
+145(g_tTexcdf4a):    144(ptr) Variable UniformConstant
+             146:             TypeImage 11(int) Cube array sampled format:Unknown
+             147:             TypePointer UniformConstant 146
+148(g_tTexcdi4a):    147(ptr) Variable UniformConstant
+             149:             TypeImage 18(int) Cube array sampled format:Unknown
+             150:             TypePointer UniformConstant 149
+151(g_tTexcdu4a):    150(ptr) Variable UniformConstant
+         152(c1):     20(ptr) Variable UniformConstant
+         153(c2):     60(ptr) Variable UniformConstant
+         154(o3):     13(ptr) Variable UniformConstant
+         155(o4):     53(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
        86(psout):     85(ptr) Variable Function
@@ -537,7 +554,11 @@ gl_FragCoord origin is upper left
                               Store 91 89
               94:     93(ptr) AccessChain 86(psout) 92
                               Store 94 88
-              97:84(PS_OUTPUT) Load 86(psout)
-                              Store 96(@entryPointOutput) 97
+              97:     90(ptr) AccessChain 86(psout) 87
+              98:   25(fvec4) Load 97
+                              Store 96(Color) 98
+             101:     93(ptr) AccessChain 86(psout) 92
+             102:    6(float) Load 101
+                              Store 100(Depth) 102
                               Return
                               FunctionEnd
index d8eb9de..7acaa71 100644 (file)
@@ -108,10 +108,14 @@ gl_FragCoord origin is upper left
 0:47            0 (const int)
 0:47        Construct vec4 (temp 4-component vector of float)
 0:47          'e2_11' (temp float)
-0:48      Sequence
-0:48        move second child to first child (temp structure{temp 4-component vector of float Color})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color})
-0:48          'psout' (temp structure{temp 4-component vector of float Color})
+0:?       Sequence
+0:?         Sequence
+0:48          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:48            Color: direct index for structure (temp 4-component vector of float)
+0:48              'psout' (temp structure{temp 4-component vector of float Color})
+0:48              Constant:
+0:48                0 (const int)
 0:48        Branch: Return
 0:?   Linker Objects
 0:?     'idx' (uniform int)
@@ -231,10 +235,14 @@ gl_FragCoord origin is upper left
 0:47            0 (const int)
 0:47        Construct vec4 (temp 4-component vector of float)
 0:47          'e2_11' (temp float)
-0:48      Sequence
-0:48        move second child to first child (temp structure{temp 4-component vector of float Color})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color})
-0:48          'psout' (temp structure{temp 4-component vector of float Color})
+0:?       Sequence
+0:?         Sequence
+0:48          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:48            Color: direct index for structure (temp 4-component vector of float)
+0:48              'psout' (temp structure{temp 4-component vector of float Color})
+0:48              Constant:
+0:48                0 (const int)
 0:48        Branch: Return
 0:?   Linker Objects
 0:?     'idx' (uniform int)
@@ -243,12 +251,12 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 76
+// Id's are bound by 75
 
                               Capability Shader
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 71 75
+                              EntryPoint Fragment 4  "main" 71
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 8  "e1_00"
@@ -274,9 +282,8 @@ gl_FragCoord origin is upper left
                               Name 62  "PS_OUTPUT"
                               MemberName 62(PS_OUTPUT) 0  "Color"
                               Name 64  "psout"
-                              Name 71  "@entryPointOutput"
-                              Name 75  "Color"
-                              Decorate 75(Color) Location 0
+                              Name 71  "Color"
+                              Decorate 71(Color) Location 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -315,10 +322,8 @@ gl_FragCoord origin is upper left
               63:             TypePointer Function 62(PS_OUTPUT)
               65:     46(int) Constant 0
               68:             TypePointer Function 61(fvec4)
-              70:             TypePointer Output 62(PS_OUTPUT)
-71(@entryPointOutput):     70(ptr) Variable Output
-              74:             TypePointer Output 61(fvec4)
-       75(Color):     74(ptr) Variable Output
+              70:             TypePointer Output 61(fvec4)
+       71(Color):     70(ptr) Variable Output
          4(main):           2 Function None 3
                5:             Label
         8(e1_00):      7(ptr) Variable Function
@@ -368,7 +373,8 @@ gl_FragCoord origin is upper left
               67:   61(fvec4) CompositeConstruct 66 66 66 66
               69:     68(ptr) AccessChain 64(psout) 65
                               Store 69 67
-              72:62(PS_OUTPUT) Load 64(psout)
-                              Store 71(@entryPointOutput) 72
+              72:     68(ptr) AccessChain 64(psout) 65
+              73:   61(fvec4) Load 72
+                              Store 71(Color) 73
                               Return
                               FunctionEnd
index 787a503..168065b 100644 (file)
@@ -58,10 +58,14 @@ gl_FragCoord origin is upper left
 0:18        Construct vec4 (temp 4-component vector of float)
 0:18          Convert int to float (temp float)
 0:18            'r07' (temp int)
-0:19      Sequence
-0:19        move second child to first child (temp structure{temp 4-component vector of float color})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float color})
-0:19          'ps_output' (temp structure{temp 4-component vector of float color})
+0:?       Sequence
+0:?         Sequence
+0:19          move second child to first child (temp 4-component vector of float)
+0:?             'color' (layout(location=0 ) out 4-component vector of float)
+0:19            color: direct index for structure (temp 4-component vector of float)
+0:19              'ps_output' (temp structure{temp 4-component vector of float color})
+0:19              Constant:
+0:19                0 (const int)
 0:19        Branch: Return
 0:?   Linker Objects
 0:?     'color' (layout(location=0 ) out 4-component vector of float)
@@ -129,22 +133,26 @@ gl_FragCoord origin is upper left
 0:18        Construct vec4 (temp 4-component vector of float)
 0:18          Convert int to float (temp float)
 0:18            'r07' (temp int)
-0:19      Sequence
-0:19        move second child to first child (temp structure{temp 4-component vector of float color})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float color})
-0:19          'ps_output' (temp structure{temp 4-component vector of float color})
+0:?       Sequence
+0:?         Sequence
+0:19          move second child to first child (temp 4-component vector of float)
+0:?             'color' (layout(location=0 ) out 4-component vector of float)
+0:19            color: direct index for structure (temp 4-component vector of float)
+0:19              'ps_output' (temp structure{temp 4-component vector of float color})
+0:19              Constant:
+0:19                0 (const int)
 0:19        Branch: Return
 0:?   Linker Objects
 0:?     'color' (layout(location=0 ) out 4-component vector of float)
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 45
+// Id's are bound by 44
 
                               Capability Shader
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 40 44
+                              EntryPoint Fragment 4  "main" 40
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 8  "r00"
@@ -159,9 +167,8 @@ gl_FragCoord origin is upper left
                               Name 30  "PS_OUTPUT"
                               MemberName 30(PS_OUTPUT) 0  "color"
                               Name 32  "ps_output"
-                              Name 40  "@entryPointOutput"
-                              Name 44  "color"
-                              Decorate 44(color) Location 0
+                              Name 40  "color"
+                              Decorate 40(color) Location 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -183,10 +190,8 @@ gl_FragCoord origin is upper left
               31:             TypePointer Function 30(PS_OUTPUT)
               33:     19(int) Constant 0
               37:             TypePointer Function 29(fvec4)
-              39:             TypePointer Output 30(PS_OUTPUT)
-40(@entryPointOutput):     39(ptr) Variable Output
-              43:             TypePointer Output 29(fvec4)
-       44(color):     43(ptr) Variable Output
+              39:             TypePointer Output 29(fvec4)
+       40(color):     39(ptr) Variable Output
          4(main):           2 Function None 3
                5:             Label
           8(r00):      7(ptr) Variable Function
@@ -213,7 +218,8 @@ gl_FragCoord origin is upper left
               36:   29(fvec4) CompositeConstruct 35 35 35 35
               38:     37(ptr) AccessChain 32(ps_output) 33
                               Store 38 36
-              41:30(PS_OUTPUT) Load 32(ps_output)
-                              Store 40(@entryPointOutput) 41
+              41:     37(ptr) AccessChain 32(ps_output) 33
+              42:   29(fvec4) Load 41
+                              Store 40(color) 42
                               Return
                               FunctionEnd
index fac2410..8bd07c0 100644 (file)
@@ -31,10 +31,20 @@ gl_FragCoord origin is upper left
 0:127            1 (const int)
 0:127        Constant:
 0:127          1.000000
-0:129      Sequence
-0:129        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:129          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:129          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:129            Color: direct index for structure (temp 4-component vector of float)
+0:129              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:129              Constant:
+0:129                0 (const int)
+0:129          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:129            Depth: direct index for structure (temp float FragDepth)
+0:129              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:129              Constant:
+0:129                1 (const int)
 0:129        Branch: Return
 0:?   Linker Objects
 0:?     'Color' (layout(location=0 ) out 4-component vector of float)
@@ -76,10 +86,20 @@ gl_FragCoord origin is upper left
 0:127            1 (const int)
 0:127        Constant:
 0:127          1.000000
-0:129      Sequence
-0:129        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:129          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:129          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:129            Color: direct index for structure (temp 4-component vector of float)
+0:129              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:129              Constant:
+0:129                0 (const int)
+0:129          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:129            Depth: direct index for structure (temp float FragDepth)
+0:129              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:129              Constant:
+0:129                1 (const int)
 0:129        Branch: Return
 0:?   Linker Objects
 0:?     'Color' (layout(location=0 ) out 4-component vector of float)
@@ -87,12 +107,12 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 34
+// Id's are bound by 35
 
                               Capability Shader
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 27 31 33
+                              EntryPoint Fragment 4  "main" 27 31
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 8  "thisLineIs"
@@ -100,12 +120,11 @@ gl_FragCoord origin is upper left
                               MemberName 12(PS_OUTPUT) 0  "Color"
                               MemberName 12(PS_OUTPUT) 1  "Depth"
                               Name 14  "psout"
-                              Name 27  "@entryPointOutput"
-                              Name 31  "Color"
-                              Name 33  "Depth"
+                              Name 27  "Color"
+                              Name 31  "Depth"
                               MemberDecorate 12(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 31(Color) Location 0
-                              Decorate 33(Depth) BuiltIn FragDepth
+                              Decorate 27(Color) Location 0
+                              Decorate 31(Depth) BuiltIn FragDepth
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeInt 32 1
@@ -121,12 +140,10 @@ gl_FragCoord origin is upper left
               21:             TypePointer Function 11(fvec4)
               23:      6(int) Constant 1
               24:             TypePointer Function 10(float)
-              26:             TypePointer Output 12(PS_OUTPUT)
-27(@entryPointOutput):     26(ptr) Variable Output
-              30:             TypePointer Output 11(fvec4)
-       31(Color):     30(ptr) Variable Output
-              32:             TypePointer Output 10(float)
-       33(Depth):     32(ptr) Variable Output
+              26:             TypePointer Output 11(fvec4)
+       27(Color):     26(ptr) Variable Output
+              30:             TypePointer Output 10(float)
+       31(Depth):     30(ptr) Variable Output
          4(main):           2 Function None 3
                5:             Label
    8(thisLineIs):      7(ptr) Variable Function
@@ -139,7 +156,11 @@ gl_FragCoord origin is upper left
                               Store 22 20
               25:     24(ptr) AccessChain 14(psout) 23
                               Store 25 19
-              28:12(PS_OUTPUT) Load 14(psout)
-                              Store 27(@entryPointOutput) 28
+              28:     21(ptr) AccessChain 14(psout) 15
+              29:   11(fvec4) Load 28
+                              Store 27(Color) 29
+              32:     24(ptr) AccessChain 14(psout) 23
+              33:   10(float) Load 32
+                              Store 31(Depth) 33
                               Return
                               FunctionEnd
index 4cbf8b7..d76dc3f 100644 (file)
@@ -19,10 +19,14 @@ gl_FragCoord origin is upper left
 0:11          1.000000
 0:11          1.000000
 0:11          1.000000
-0:12      Sequence
-0:12        move second child to first child (temp structure{noContraction temp 4-component vector of float color})
-0:?           '@entryPointOutput' (out structure{noContraction temp 4-component vector of float color})
-0:12          'ps_output' (temp structure{noContraction temp 4-component vector of float color})
+0:?       Sequence
+0:?         Sequence
+0:12          move second child to first child (noContraction temp 4-component vector of float)
+0:?             'color' (layout(location=0 ) noContraction out 4-component vector of float)
+0:12            color: direct index for structure (noContraction temp 4-component vector of float)
+0:12              'ps_output' (temp structure{noContraction temp 4-component vector of float color})
+0:12              Constant:
+0:12                0 (const int)
 0:12        Branch: Return
 0:?   Linker Objects
 0:?     'precisefloat' (noContraction global float)
@@ -52,10 +56,14 @@ gl_FragCoord origin is upper left
 0:11          1.000000
 0:11          1.000000
 0:11          1.000000
-0:12      Sequence
-0:12        move second child to first child (temp structure{noContraction temp 4-component vector of float color})
-0:?           '@entryPointOutput' (out structure{noContraction temp 4-component vector of float color})
-0:12          'ps_output' (temp structure{noContraction temp 4-component vector of float color})
+0:?       Sequence
+0:?         Sequence
+0:12          move second child to first child (noContraction temp 4-component vector of float)
+0:?             'color' (layout(location=0 ) noContraction out 4-component vector of float)
+0:12            color: direct index for structure (noContraction temp 4-component vector of float)
+0:12              'ps_output' (temp structure{noContraction temp 4-component vector of float color})
+0:12              Constant:
+0:12                0 (const int)
 0:12        Branch: Return
 0:?   Linker Objects
 0:?     'precisefloat' (noContraction global float)
@@ -63,12 +71,12 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 33
+// Id's are bound by 32
 
                               Capability Shader
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 26 32
+                              EntryPoint Fragment 4  "main" 26
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 13  "MyFunction(f1;vf3;"
@@ -77,10 +85,9 @@ gl_FragCoord origin is upper left
                               Name 16  "PS_OUTPUT"
                               MemberName 16(PS_OUTPUT) 0  "color"
                               Name 18  "ps_output"
-                              Name 26  "@entryPointOutput"
-                              Name 30  "precisefloat"
-                              Name 32  "color"
-                              Decorate 32(color) Location 0
+                              Name 26  "color"
+                              Name 31  "precisefloat"
+                              Decorate 26(color) Location 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -96,19 +103,18 @@ gl_FragCoord origin is upper left
               21:    6(float) Constant 1065353216
               22:   15(fvec4) ConstantComposite 21 21 21 21
               23:             TypePointer Function 15(fvec4)
-              25:             TypePointer Output 16(PS_OUTPUT)
-26(@entryPointOutput):     25(ptr) Variable Output
-              29:             TypePointer Private 6(float)
-30(precisefloat):     29(ptr) Variable Private
-              31:             TypePointer Output 15(fvec4)
-       32(color):     31(ptr) Variable Output
+              25:             TypePointer Output 15(fvec4)
+       26(color):     25(ptr) Variable Output
+              30:             TypePointer Private 6(float)
+31(precisefloat):     30(ptr) Variable Private
          4(main):           2 Function None 3
                5:             Label
    18(ps_output):     17(ptr) Variable Function
               24:     23(ptr) AccessChain 18(ps_output) 20
                               Store 24 22
-              27:16(PS_OUTPUT) Load 18(ps_output)
-                              Store 26(@entryPointOutput) 27
+              27:     23(ptr) AccessChain 18(ps_output) 20
+              28:   15(fvec4) Load 27
+                              Store 26(color) 28
                               Return
                               FunctionEnd
 13(MyFunction(f1;vf3;):           2 Function None 10
index 1e20680..3f1c788 100644 (file)
@@ -496,10 +496,14 @@ gl_FragCoord origin is upper left
 0:199          Constant:
 0:199            0 (const int)
 0:199        'outval' (temp 4-component vector of float)
-0:200      Sequence
-0:200        move second child to first child (temp structure{temp 4-component vector of float Color})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color})
-0:200          'psout' (temp structure{temp 4-component vector of float Color})
+0:?       Sequence
+0:?         Sequence
+0:200          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:200            Color: direct index for structure (temp 4-component vector of float)
+0:200              'psout' (temp structure{temp 4-component vector of float Color})
+0:200              Constant:
+0:200                0 (const int)
 0:200        Branch: Return
 0:?   Linker Objects
 0:?     'i3' (uniform 3-component vector of int)
@@ -1015,10 +1019,14 @@ gl_FragCoord origin is upper left
 0:199          Constant:
 0:199            0 (const int)
 0:199        'outval' (temp 4-component vector of float)
-0:200      Sequence
-0:200        move second child to first child (temp structure{temp 4-component vector of float Color})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color})
-0:200          'psout' (temp structure{temp 4-component vector of float Color})
+0:?       Sequence
+0:?         Sequence
+0:200          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:200            Color: direct index for structure (temp 4-component vector of float)
+0:200              'psout' (temp structure{temp 4-component vector of float Color})
+0:200              Constant:
+0:200                0 (const int)
 0:200        Branch: Return
 0:?   Linker Objects
 0:?     'i3' (uniform 3-component vector of int)
@@ -1035,13 +1043,13 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 482
+// Id's are bound by 481
 
                               Capability Shader
                               Capability Float64
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 477 481
+                              EntryPoint Fragment 4  "main" 477
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 11  "Fn_F3(vf3;"
@@ -1130,9 +1138,8 @@ gl_FragCoord origin is upper left
                               Name 471  "PS_OUTPUT"
                               MemberName 471(PS_OUTPUT) 0  "Color"
                               Name 473  "psout"
-                              Name 477  "@entryPointOutput"
-                              Name 481  "Color"
-                              Decorate 481(Color) Location 0
+                              Name 477  "Color"
+                              Decorate 477(Color) Location 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -1203,10 +1210,8 @@ gl_FragCoord origin is upper left
              465:    6(float) Constant 1080452710
   471(PS_OUTPUT):             TypeStruct 462(fvec4)
              472:             TypePointer Function 471(PS_OUTPUT)
-             476:             TypePointer Output 471(PS_OUTPUT)
-477(@entryPointOutput):    476(ptr) Variable Output
-             480:             TypePointer Output 462(fvec4)
-      481(Color):    480(ptr) Variable Output
+             476:             TypePointer Output 462(fvec4)
+      477(Color):    476(ptr) Variable Output
          4(main):           2 Function None 3
                5:             Label
         252(r00):      8(ptr) Variable Function
@@ -1472,8 +1477,9 @@ gl_FragCoord origin is upper left
              474:  462(fvec4) Load 464(outval)
              475:    463(ptr) AccessChain 473(psout) 149
                               Store 475 474
-             478:471(PS_OUTPUT) Load 473(psout)
-                              Store 477(@entryPointOutput) 478
+             478:    463(ptr) AccessChain 473(psout) 149
+             479:  462(fvec4) Load 478
+                              Store 477(Color) 479
                               Return
                               FunctionEnd
   11(Fn_F3(vf3;):           2 Function None 9
index d549925..e35a9a4 100644 (file)
@@ -121,10 +121,20 @@ gl_FragCoord origin is upper left
 0:40            1 (const int)
 0:40        Constant:
 0:40          1.000000
-0:42      Sequence
-0:42        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:42          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:42          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:42            Color: direct index for structure (temp 4-component vector of float)
+0:42              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:42              Constant:
+0:42                0 (const int)
+0:42          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:42            Depth: direct index for structure (temp float FragDepth)
+0:42              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:42              Constant:
+0:42                1 (const int)
 0:42        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -267,10 +277,20 @@ gl_FragCoord origin is upper left
 0:40            1 (const int)
 0:40        Constant:
 0:40          1.000000
-0:42      Sequence
-0:42        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:42          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:42          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:42            Color: direct index for structure (temp 4-component vector of float)
+0:42              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:42              Constant:
+0:42                0 (const int)
+0:42          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:42            Depth: direct index for structure (temp float FragDepth)
+0:42              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:42              Constant:
+0:42                1 (const int)
 0:42        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -289,14 +309,14 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 138
+// Id's are bound by 139
 
                               Capability Shader
                               Capability Sampled1D
                               Capability SampledCubeArray
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 130 135 137
+                              EntryPoint Fragment 4  "main" 130 134
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 9  "txval10"
@@ -322,10 +342,9 @@ gl_FragCoord origin is upper left
                               MemberName 120(PS_OUTPUT) 0  "Color"
                               MemberName 120(PS_OUTPUT) 1  "Depth"
                               Name 122  "psout"
-                              Name 130  "@entryPointOutput"
-                              Name 133  "g_tTex1df4a"
-                              Name 135  "Color"
-                              Name 137  "Depth"
+                              Name 130  "Color"
+                              Name 134  "Depth"
+                              Name 138  "g_tTex1df4a"
                               Decorate 12(g_tTex1df4) DescriptorSet 0
                               Decorate 12(g_tTex1df4) Binding 0
                               Decorate 16(g_sSamp) DescriptorSet 0
@@ -339,10 +358,10 @@ gl_FragCoord origin is upper left
                               Decorate 100(g_tTexcdi4) DescriptorSet 0
                               Decorate 110(g_tTexcdu4) DescriptorSet 0
                               MemberDecorate 120(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 133(g_tTex1df4a) DescriptorSet 0
-                              Decorate 133(g_tTex1df4a) Binding 1
-                              Decorate 135(Color) Location 0
-                              Decorate 137(Depth) BuiltIn FragDepth
+                              Decorate 130(Color) Location 0
+                              Decorate 134(Depth) BuiltIn FragDepth
+                              Decorate 138(g_tTex1df4a) DescriptorSet 0
+                              Decorate 138(g_tTex1df4a) Binding 1
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -420,13 +439,11 @@ gl_FragCoord origin is upper left
              124:    7(fvec4) ConstantComposite 117 117 117 117
              126:     25(int) Constant 1
              127:             TypePointer Function 6(float)
-             129:             TypePointer Output 120(PS_OUTPUT)
-130(@entryPointOutput):    129(ptr) Variable Output
-133(g_tTex1df4a):     11(ptr) Variable UniformConstant
-             134:             TypePointer Output 7(fvec4)
-      135(Color):    134(ptr) Variable Output
-             136:             TypePointer Output 6(float)
-      137(Depth):    136(ptr) Variable Output
+             129:             TypePointer Output 7(fvec4)
+      130(Color):    129(ptr) Variable Output
+             133:             TypePointer Output 6(float)
+      134(Depth):    133(ptr) Variable Output
+138(g_tTex1df4a):     11(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
       9(txval10):      8(ptr) Variable Function
@@ -488,7 +505,11 @@ gl_FragCoord origin is upper left
                               Store 125 124
              128:    127(ptr) AccessChain 122(psout) 126
                               Store 128 117
-             131:120(PS_OUTPUT) Load 122(psout)
-                              Store 130(@entryPointOutput) 131
+             131:      8(ptr) AccessChain 122(psout) 123
+             132:    7(fvec4) Load 131
+                              Store 130(Color) 132
+             135:    127(ptr) AccessChain 122(psout) 126
+             136:    6(float) Load 135
+                              Store 134(Depth) 136
                               Return
                               FunctionEnd
index bb73a97..2e79f62 100644 (file)
@@ -231,10 +231,20 @@ gl_FragCoord origin is upper left
 0:87            1 (const int)
 0:87        Constant:
 0:87          1.000000
-0:89      Sequence
-0:89        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:89          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:89          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:89            Color: direct index for structure (temp 4-component vector of float)
+0:89              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:89              Constant:
+0:89                0 (const int)
+0:89          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:89            Depth: direct index for structure (temp float FragDepth)
+0:89              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:89              Constant:
+0:89                1 (const int)
 0:89        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -490,10 +500,20 @@ gl_FragCoord origin is upper left
 0:87            1 (const int)
 0:87        Constant:
 0:87          1.000000
-0:89      Sequence
-0:89        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:89          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:89          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:89            Color: direct index for structure (temp 4-component vector of float)
+0:89              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:89              Constant:
+0:89                0 (const int)
+0:89          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:89            Depth: direct index for structure (temp float FragDepth)
+0:89              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:89              Constant:
+0:89                1 (const int)
 0:89        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -517,13 +537,13 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 190
+// Id's are bound by 191
 
                               Capability Shader
                               Capability Sampled1D
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 180 187 189
+                              EntryPoint Fragment 4  "main" 180 184
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 7  "MemberTest"
@@ -569,12 +589,11 @@ gl_FragCoord origin is upper left
                               MemberName 171(PS_OUTPUT) 0  "Color"
                               MemberName 171(PS_OUTPUT) 1  "Depth"
                               Name 173  "psout"
-                              Name 180  "@entryPointOutput"
-                              Name 183  "g_sSamp2d"
-                              Name 184  "g_sSamp2D_b"
-                              Name 185  "g_tTex1df4a"
-                              Name 187  "Color"
-                              Name 189  "Depth"
+                              Name 180  "Color"
+                              Name 184  "Depth"
+                              Name 188  "g_sSamp2d"
+                              Name 189  "g_sSamp2D_b"
+                              Name 190  "g_tTex1df4a"
                               Decorate 41(g_tTex1df4) DescriptorSet 0
                               Decorate 41(g_tTex1df4) Binding 0
                               Decorate 45(g_sSamp) DescriptorSet 0
@@ -591,12 +610,12 @@ gl_FragCoord origin is upper left
                               Decorate 156(g_tTexcdi4) DescriptorSet 0
                               Decorate 165(g_tTexcdu4) DescriptorSet 0
                               MemberDecorate 171(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 183(g_sSamp2d) DescriptorSet 0
-                              Decorate 184(g_sSamp2D_b) DescriptorSet 0
-                              Decorate 185(g_tTex1df4a) DescriptorSet 0
-                              Decorate 185(g_tTex1df4a) Binding 1
-                              Decorate 187(Color) Location 0
-                              Decorate 189(Depth) BuiltIn FragDepth
+                              Decorate 180(Color) Location 0
+                              Decorate 184(Depth) BuiltIn FragDepth
+                              Decorate 188(g_sSamp2d) DescriptorSet 0
+                              Decorate 189(g_sSamp2D_b) DescriptorSet 0
+                              Decorate 190(g_tTex1df4a) DescriptorSet 0
+                              Decorate 190(g_tTex1df4a) Binding 1
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeInt 32 1
@@ -696,15 +715,13 @@ gl_FragCoord origin is upper left
              174:   35(float) Constant 1065353216
              175:   36(fvec4) ConstantComposite 174 174 174 174
              177:             TypePointer Function 35(float)
-             179:             TypePointer Output 171(PS_OUTPUT)
-180(@entryPointOutput):    179(ptr) Variable Output
-  183(g_sSamp2d):     44(ptr) Variable UniformConstant
-184(g_sSamp2D_b):     44(ptr) Variable UniformConstant
-185(g_tTex1df4a):     40(ptr) Variable UniformConstant
-             186:             TypePointer Output 36(fvec4)
-      187(Color):    186(ptr) Variable Output
-             188:             TypePointer Output 35(float)
-      189(Depth):    188(ptr) Variable Output
+             179:             TypePointer Output 36(fvec4)
+      180(Color):    179(ptr) Variable Output
+             183:             TypePointer Output 35(float)
+      184(Depth):    183(ptr) Variable Output
+  188(g_sSamp2d):     44(ptr) Variable UniformConstant
+189(g_sSamp2D_b):     44(ptr) Variable UniformConstant
+190(g_tTex1df4a):     40(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
         9(mtest):      8(ptr) Variable Function
@@ -809,7 +826,11 @@ gl_FragCoord origin is upper left
                               Store 176 175
              178:    177(ptr) AccessChain 173(psout) 10
                               Store 178 174
-             181:171(PS_OUTPUT) Load 173(psout)
-                              Store 180(@entryPointOutput) 181
+             181:     37(ptr) AccessChain 173(psout) 23
+             182:   36(fvec4) Load 181
+                              Store 180(Color) 182
+             185:    177(ptr) AccessChain 173(psout) 10
+             186:   35(float) Load 185
+                              Store 184(Depth) 186
                               Return
                               FunctionEnd
index b241f6d..9be83eb 100644 (file)
@@ -139,10 +139,20 @@ gl_FragCoord origin is upper left
 0:46            1 (const int)
 0:46        Constant:
 0:46          1.000000
-0:48      Sequence
-0:48        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:48          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:48          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:48            Color: direct index for structure (temp 4-component vector of float)
+0:48              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:48              Constant:
+0:48                0 (const int)
+0:48          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:48            Depth: direct index for structure (temp float FragDepth)
+0:48              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:48              Constant:
+0:48                1 (const int)
 0:48        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -306,10 +316,20 @@ gl_FragCoord origin is upper left
 0:46            1 (const int)
 0:46        Constant:
 0:46          1.000000
-0:48      Sequence
-0:48        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:48          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:48          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:48            Color: direct index for structure (temp 4-component vector of float)
+0:48              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:48              Constant:
+0:48                0 (const int)
+0:48          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:48            Depth: direct index for structure (temp float FragDepth)
+0:48              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:48              Constant:
+0:48                1 (const int)
 0:48        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -331,13 +351,13 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 153
+// Id's are bound by 154
 
                               Capability Shader
                               Capability Sampled1D
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 136 150 152
+                              EntryPoint Fragment 4  "main" 136 140
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 9  "txval10"
@@ -363,13 +383,12 @@ gl_FragCoord origin is upper left
                               MemberName 127(PS_OUTPUT) 0  "Color"
                               MemberName 127(PS_OUTPUT) 1  "Depth"
                               Name 129  "psout"
-                              Name 136  "@entryPointOutput"
-                              Name 139  "g_tTex1df4a"
-                              Name 142  "g_tTexcdf4"
-                              Name 145  "g_tTexcdi4"
-                              Name 148  "g_tTexcdu4"
-                              Name 150  "Color"
-                              Name 152  "Depth"
+                              Name 136  "Color"
+                              Name 140  "Depth"
+                              Name 144  "g_tTex1df4a"
+                              Name 147  "g_tTexcdf4"
+                              Name 150  "g_tTexcdi4"
+                              Name 153  "g_tTexcdu4"
                               Decorate 12(g_tTex1df4) DescriptorSet 0
                               Decorate 12(g_tTex1df4) Binding 0
                               Decorate 16(g_sSamp) DescriptorSet 0
@@ -383,13 +402,13 @@ gl_FragCoord origin is upper left
                               Decorate 105(g_tTex3di4) DescriptorSet 0
                               Decorate 116(g_tTex3du4) DescriptorSet 0
                               MemberDecorate 127(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 139(g_tTex1df4a) DescriptorSet 0
-                              Decorate 139(g_tTex1df4a) Binding 1
-                              Decorate 142(g_tTexcdf4) DescriptorSet 0
-                              Decorate 145(g_tTexcdi4) DescriptorSet 0
-                              Decorate 148(g_tTexcdu4) DescriptorSet 0
-                              Decorate 150(Color) Location 0
-                              Decorate 152(Depth) BuiltIn FragDepth
+                              Decorate 136(Color) Location 0
+                              Decorate 140(Depth) BuiltIn FragDepth
+                              Decorate 144(g_tTex1df4a) DescriptorSet 0
+                              Decorate 144(g_tTex1df4a) Binding 1
+                              Decorate 147(g_tTexcdf4) DescriptorSet 0
+                              Decorate 150(g_tTexcdi4) DescriptorSet 0
+                              Decorate 153(g_tTexcdu4) DescriptorSet 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -473,22 +492,20 @@ gl_FragCoord origin is upper left
              130:    6(float) Constant 1065353216
              131:    7(fvec4) ConstantComposite 130 130 130 130
              133:             TypePointer Function 6(float)
-             135:             TypePointer Output 127(PS_OUTPUT)
-136(@entryPointOutput):    135(ptr) Variable Output
-139(g_tTex1df4a):     11(ptr) Variable UniformConstant
-             140:             TypeImage 6(float) Cube sampled format:Unknown
-             141:             TypePointer UniformConstant 140
- 142(g_tTexcdf4):    141(ptr) Variable UniformConstant
-             143:             TypeImage 21(int) Cube sampled format:Unknown
-             144:             TypePointer UniformConstant 143
- 145(g_tTexcdi4):    144(ptr) Variable UniformConstant
-             146:             TypeImage 36(int) Cube sampled format:Unknown
-             147:             TypePointer UniformConstant 146
- 148(g_tTexcdu4):    147(ptr) Variable UniformConstant
-             149:             TypePointer Output 7(fvec4)
-      150(Color):    149(ptr) Variable Output
-             151:             TypePointer Output 6(float)
-      152(Depth):    151(ptr) Variable Output
+             135:             TypePointer Output 7(fvec4)
+      136(Color):    135(ptr) Variable Output
+             139:             TypePointer Output 6(float)
+      140(Depth):    139(ptr) Variable Output
+144(g_tTex1df4a):     11(ptr) Variable UniformConstant
+             145:             TypeImage 6(float) Cube sampled format:Unknown
+             146:             TypePointer UniformConstant 145
+ 147(g_tTexcdf4):    146(ptr) Variable UniformConstant
+             148:             TypeImage 21(int) Cube sampled format:Unknown
+             149:             TypePointer UniformConstant 148
+ 150(g_tTexcdi4):    149(ptr) Variable UniformConstant
+             151:             TypeImage 36(int) Cube sampled format:Unknown
+             152:             TypePointer UniformConstant 151
+ 153(g_tTexcdu4):    152(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
       9(txval10):      8(ptr) Variable Function
@@ -550,7 +567,11 @@ gl_FragCoord origin is upper left
                               Store 132 131
              134:    133(ptr) AccessChain 129(psout) 22
                               Store 134 130
-             137:127(PS_OUTPUT) Load 129(psout)
-                              Store 136(@entryPointOutput) 137
+             137:      8(ptr) AccessChain 129(psout) 60
+             138:    7(fvec4) Load 137
+                              Store 136(Color) 138
+             141:    133(ptr) AccessChain 129(psout) 22
+             142:    6(float) Load 141
+                              Store 140(Depth) 142
                               Return
                               FunctionEnd
index a2debf4..ae5aab5 100644 (file)
@@ -100,10 +100,20 @@ gl_FragCoord origin is upper left
 0:34            1 (const int)
 0:34        Constant:
 0:34          1.000000
-0:36      Sequence
-0:36        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:36          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:36          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:36            Color: direct index for structure (temp 4-component vector of float)
+0:36              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:36              Constant:
+0:36                0 (const int)
+0:36          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:36            Depth: direct index for structure (temp float FragDepth)
+0:36              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:36              Constant:
+0:36                1 (const int)
 0:36        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -222,10 +232,20 @@ gl_FragCoord origin is upper left
 0:34            1 (const int)
 0:34        Constant:
 0:34          1.000000
-0:36      Sequence
-0:36        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:36          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:36          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:36            Color: direct index for structure (temp 4-component vector of float)
+0:36              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:36              Constant:
+0:36                0 (const int)
+0:36          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:36            Depth: direct index for structure (temp float FragDepth)
+0:36              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:36              Constant:
+0:36                1 (const int)
 0:36        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -241,13 +261,13 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 110
+// Id's are bound by 111
 
                               Capability Shader
                               Capability Sampled1D
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 102 107 109
+                              EntryPoint Fragment 4  "main" 102 106
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 9  "txval10"
@@ -267,10 +287,9 @@ gl_FragCoord origin is upper left
                               MemberName 93(PS_OUTPUT) 0  "Color"
                               MemberName 93(PS_OUTPUT) 1  "Depth"
                               Name 95  "psout"
-                              Name 102  "@entryPointOutput"
-                              Name 105  "g_tTex1df4a"
-                              Name 107  "Color"
-                              Name 109  "Depth"
+                              Name 102  "Color"
+                              Name 106  "Depth"
+                              Name 110  "g_tTex1df4a"
                               Decorate 12(g_tTex1df4) DescriptorSet 0
                               Decorate 12(g_tTex1df4) Binding 0
                               Decorate 16(g_sSamp) DescriptorSet 0
@@ -281,10 +300,10 @@ gl_FragCoord origin is upper left
                               Decorate 72(g_tTex2di4) DescriptorSet 0
                               Decorate 83(g_tTex2du4) DescriptorSet 0
                               MemberDecorate 93(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 105(g_tTex1df4a) DescriptorSet 0
-                              Decorate 105(g_tTex1df4a) Binding 1
-                              Decorate 107(Color) Location 0
-                              Decorate 109(Depth) BuiltIn FragDepth
+                              Decorate 102(Color) Location 0
+                              Decorate 106(Depth) BuiltIn FragDepth
+                              Decorate 110(g_tTex1df4a) DescriptorSet 0
+                              Decorate 110(g_tTex1df4a) Binding 1
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -349,13 +368,11 @@ gl_FragCoord origin is upper left
               96:    6(float) Constant 1065353216
               97:    7(fvec4) ConstantComposite 96 96 96 96
               99:             TypePointer Function 6(float)
-             101:             TypePointer Output 93(PS_OUTPUT)
-102(@entryPointOutput):    101(ptr) Variable Output
-105(g_tTex1df4a):     11(ptr) Variable UniformConstant
-             106:             TypePointer Output 7(fvec4)
-      107(Color):    106(ptr) Variable Output
-             108:             TypePointer Output 6(float)
-      109(Depth):    108(ptr) Variable Output
+             101:             TypePointer Output 7(fvec4)
+      102(Color):    101(ptr) Variable Output
+             105:             TypePointer Output 6(float)
+      106(Depth):    105(ptr) Variable Output
+110(g_tTex1df4a):     11(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
       9(txval10):      8(ptr) Variable Function
@@ -399,7 +416,11 @@ gl_FragCoord origin is upper left
                               Store 98 97
              100:     99(ptr) AccessChain 95(psout) 39
                               Store 100 96
-             103:93(PS_OUTPUT) Load 95(psout)
-                              Store 102(@entryPointOutput) 103
+             103:      8(ptr) AccessChain 95(psout) 25
+             104:    7(fvec4) Load 103
+                              Store 102(Color) 104
+             107:     99(ptr) AccessChain 95(psout) 39
+             108:    6(float) Load 107
+                              Store 106(Depth) 108
                               Return
                               FunctionEnd
index 2bb3052..d80e6f1 100644 (file)
@@ -139,10 +139,20 @@ gl_FragCoord origin is upper left
 0:40            1 (const int)
 0:40        Constant:
 0:40          1.000000
-0:42      Sequence
-0:42        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:42          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:42          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:42            Color: direct index for structure (temp 4-component vector of float)
+0:42              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:42              Constant:
+0:42                0 (const int)
+0:42          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:42            Depth: direct index for structure (temp float FragDepth)
+0:42              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:42              Constant:
+0:42                1 (const int)
 0:42        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -303,10 +313,20 @@ gl_FragCoord origin is upper left
 0:40            1 (const int)
 0:40        Constant:
 0:40          1.000000
-0:42      Sequence
-0:42        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:42          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:42          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:42            Color: direct index for structure (temp 4-component vector of float)
+0:42              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:42              Constant:
+0:42                0 (const int)
+0:42          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:42            Depth: direct index for structure (temp float FragDepth)
+0:42              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:42              Constant:
+0:42                1 (const int)
 0:42        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -325,14 +345,14 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 138
+// Id's are bound by 139
 
                               Capability Shader
                               Capability Sampled1D
                               Capability SampledCubeArray
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 130 135 137
+                              EntryPoint Fragment 4  "main" 130 134
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 9  "txval10"
@@ -358,10 +378,9 @@ gl_FragCoord origin is upper left
                               MemberName 120(PS_OUTPUT) 0  "Color"
                               MemberName 120(PS_OUTPUT) 1  "Depth"
                               Name 122  "psout"
-                              Name 130  "@entryPointOutput"
-                              Name 133  "g_tTex1df4a"
-                              Name 135  "Color"
-                              Name 137  "Depth"
+                              Name 130  "Color"
+                              Name 134  "Depth"
+                              Name 138  "g_tTex1df4a"
                               Decorate 12(g_tTex1df4) DescriptorSet 0
                               Decorate 12(g_tTex1df4) Binding 0
                               Decorate 16(g_sSamp) DescriptorSet 0
@@ -375,10 +394,10 @@ gl_FragCoord origin is upper left
                               Decorate 100(g_tTexcdi4) DescriptorSet 0
                               Decorate 110(g_tTexcdu4) DescriptorSet 0
                               MemberDecorate 120(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 133(g_tTex1df4a) DescriptorSet 0
-                              Decorate 133(g_tTex1df4a) Binding 1
-                              Decorate 135(Color) Location 0
-                              Decorate 137(Depth) BuiltIn FragDepth
+                              Decorate 130(Color) Location 0
+                              Decorate 134(Depth) BuiltIn FragDepth
+                              Decorate 138(g_tTex1df4a) DescriptorSet 0
+                              Decorate 138(g_tTex1df4a) Binding 1
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -456,13 +475,11 @@ gl_FragCoord origin is upper left
              124:    7(fvec4) ConstantComposite 117 117 117 117
              126:     26(int) Constant 1
              127:             TypePointer Function 6(float)
-             129:             TypePointer Output 120(PS_OUTPUT)
-130(@entryPointOutput):    129(ptr) Variable Output
-133(g_tTex1df4a):     11(ptr) Variable UniformConstant
-             134:             TypePointer Output 7(fvec4)
-      135(Color):    134(ptr) Variable Output
-             136:             TypePointer Output 6(float)
-      137(Depth):    136(ptr) Variable Output
+             129:             TypePointer Output 7(fvec4)
+      130(Color):    129(ptr) Variable Output
+             133:             TypePointer Output 6(float)
+      134(Depth):    133(ptr) Variable Output
+138(g_tTex1df4a):     11(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
       9(txval10):      8(ptr) Variable Function
@@ -524,7 +541,11 @@ gl_FragCoord origin is upper left
                               Store 125 124
              128:    127(ptr) AccessChain 122(psout) 126
                               Store 128 117
-             131:120(PS_OUTPUT) Load 122(psout)
-                              Store 130(@entryPointOutput) 131
+             131:      8(ptr) AccessChain 122(psout) 123
+             132:    7(fvec4) Load 131
+                              Store 130(Color) 132
+             135:    127(ptr) AccessChain 122(psout) 126
+             136:    6(float) Load 135
+                              Store 134(Depth) 136
                               Return
                               FunctionEnd
index 7c19be9..c462e47 100644 (file)
@@ -169,10 +169,20 @@ gl_FragCoord origin is upper left
 0:48            1 (const int)
 0:48        Constant:
 0:48          1.000000
-0:50      Sequence
-0:50        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:50          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:50          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:50            Color: direct index for structure (temp 4-component vector of float)
+0:50              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:50              Constant:
+0:50                0 (const int)
+0:50          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:50            Depth: direct index for structure (temp float FragDepth)
+0:50              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:50              Constant:
+0:50                1 (const int)
 0:50        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -366,10 +376,20 @@ gl_FragCoord origin is upper left
 0:48            1 (const int)
 0:48        Constant:
 0:48          1.000000
-0:50      Sequence
-0:50        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:50          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:50          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:50            Color: direct index for structure (temp 4-component vector of float)
+0:50              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:50              Constant:
+0:50                0 (const int)
+0:50          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:50            Depth: direct index for structure (temp float FragDepth)
+0:50              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:50              Constant:
+0:50                1 (const int)
 0:50        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -391,13 +411,13 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 162
+// Id's are bound by 163
 
                               Capability Shader
                               Capability Sampled1D
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 154 159 161
+                              EntryPoint Fragment 4  "main" 154 158
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 9  "txval10"
@@ -429,10 +449,9 @@ gl_FragCoord origin is upper left
                               MemberName 143(PS_OUTPUT) 0  "Color"
                               MemberName 143(PS_OUTPUT) 1  "Depth"
                               Name 145  "psout"
-                              Name 154  "@entryPointOutput"
-                              Name 157  "g_tTex1df4a"
-                              Name 159  "Color"
-                              Name 161  "Depth"
+                              Name 154  "Color"
+                              Name 158  "Depth"
+                              Name 162  "g_tTex1df4a"
                               Decorate 12(g_tTex1df4) DescriptorSet 0
                               Decorate 12(g_tTex1df4) Binding 0
                               Decorate 16(g_sSamp) DescriptorSet 0
@@ -449,10 +468,10 @@ gl_FragCoord origin is upper left
                               Decorate 128(g_tTexcdi4) DescriptorSet 0
                               Decorate 137(g_tTexcdu4) DescriptorSet 0
                               MemberDecorate 143(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 157(g_tTex1df4a) DescriptorSet 0
-                              Decorate 157(g_tTex1df4a) Binding 1
-                              Decorate 159(Color) Location 0
-                              Decorate 161(Depth) BuiltIn FragDepth
+                              Decorate 154(Color) Location 0
+                              Decorate 158(Depth) BuiltIn FragDepth
+                              Decorate 162(g_tTex1df4a) DescriptorSet 0
+                              Decorate 162(g_tTex1df4a) Binding 1
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -539,13 +558,11 @@ gl_FragCoord origin is upper left
              148:    7(fvec4) ConstantComposite 147 147 147 147
              150:     23(int) Constant 1
              151:             TypePointer Function 6(float)
-             153:             TypePointer Output 143(PS_OUTPUT)
-154(@entryPointOutput):    153(ptr) Variable Output
-157(g_tTex1df4a):     11(ptr) Variable UniformConstant
-             158:             TypePointer Output 7(fvec4)
-      159(Color):    158(ptr) Variable Output
-             160:             TypePointer Output 6(float)
-      161(Depth):    160(ptr) Variable Output
+             153:             TypePointer Output 7(fvec4)
+      154(Color):    153(ptr) Variable Output
+             157:             TypePointer Output 6(float)
+      158(Depth):    157(ptr) Variable Output
+162(g_tTex1df4a):     11(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
       9(txval10):      8(ptr) Variable Function
@@ -625,7 +642,11 @@ gl_FragCoord origin is upper left
                               Store 149 148
              152:    151(ptr) AccessChain 145(psout) 150
                               Store 152 147
-             155:143(PS_OUTPUT) Load 145(psout)
-                              Store 154(@entryPointOutput) 155
+             155:      8(ptr) AccessChain 145(psout) 146
+             156:    7(fvec4) Load 155
+                              Store 154(Color) 156
+             159:    151(ptr) AccessChain 145(psout) 150
+             160:    6(float) Load 159
+                              Store 158(Depth) 160
                               Return
                               FunctionEnd
index 57e3260..58a87fd 100644 (file)
@@ -157,10 +157,20 @@ gl_FragCoord origin is upper left
 0:46            1 (const int)
 0:46        Constant:
 0:46          1.000000
-0:48      Sequence
-0:48        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:48          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:48          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:48            Color: direct index for structure (temp 4-component vector of float)
+0:48              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:48              Constant:
+0:48                0 (const int)
+0:48          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:48            Depth: direct index for structure (temp float FragDepth)
+0:48              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:48              Constant:
+0:48                1 (const int)
 0:48        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -342,10 +352,20 @@ gl_FragCoord origin is upper left
 0:46            1 (const int)
 0:46        Constant:
 0:46          1.000000
-0:48      Sequence
-0:48        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:48          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:48          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:48            Color: direct index for structure (temp 4-component vector of float)
+0:48              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:48              Constant:
+0:48                0 (const int)
+0:48          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:48            Depth: direct index for structure (temp float FragDepth)
+0:48              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:48              Constant:
+0:48                1 (const int)
 0:48        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -367,13 +387,13 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 153
+// Id's are bound by 154
 
                               Capability Shader
                               Capability Sampled1D
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 136 150 152
+                              EntryPoint Fragment 4  "main" 136 140
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 9  "txval10"
@@ -399,13 +419,12 @@ gl_FragCoord origin is upper left
                               MemberName 127(PS_OUTPUT) 0  "Color"
                               MemberName 127(PS_OUTPUT) 1  "Depth"
                               Name 129  "psout"
-                              Name 136  "@entryPointOutput"
-                              Name 139  "g_tTex1df4a"
-                              Name 142  "g_tTexcdf4"
-                              Name 145  "g_tTexcdi4"
-                              Name 148  "g_tTexcdu4"
-                              Name 150  "Color"
-                              Name 152  "Depth"
+                              Name 136  "Color"
+                              Name 140  "Depth"
+                              Name 144  "g_tTex1df4a"
+                              Name 147  "g_tTexcdf4"
+                              Name 150  "g_tTexcdi4"
+                              Name 153  "g_tTexcdu4"
                               Decorate 12(g_tTex1df4) DescriptorSet 0
                               Decorate 12(g_tTex1df4) Binding 0
                               Decorate 16(g_sSamp) DescriptorSet 0
@@ -419,13 +438,13 @@ gl_FragCoord origin is upper left
                               Decorate 105(g_tTex3di4) DescriptorSet 0
                               Decorate 116(g_tTex3du4) DescriptorSet 0
                               MemberDecorate 127(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 139(g_tTex1df4a) DescriptorSet 0
-                              Decorate 139(g_tTex1df4a) Binding 1
-                              Decorate 142(g_tTexcdf4) DescriptorSet 0
-                              Decorate 145(g_tTexcdi4) DescriptorSet 0
-                              Decorate 148(g_tTexcdu4) DescriptorSet 0
-                              Decorate 150(Color) Location 0
-                              Decorate 152(Depth) BuiltIn FragDepth
+                              Decorate 136(Color) Location 0
+                              Decorate 140(Depth) BuiltIn FragDepth
+                              Decorate 144(g_tTex1df4a) DescriptorSet 0
+                              Decorate 144(g_tTex1df4a) Binding 1
+                              Decorate 147(g_tTexcdf4) DescriptorSet 0
+                              Decorate 150(g_tTexcdi4) DescriptorSet 0
+                              Decorate 153(g_tTexcdu4) DescriptorSet 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -509,22 +528,20 @@ gl_FragCoord origin is upper left
              130:    6(float) Constant 1065353216
              131:    7(fvec4) ConstantComposite 130 130 130 130
              133:             TypePointer Function 6(float)
-             135:             TypePointer Output 127(PS_OUTPUT)
-136(@entryPointOutput):    135(ptr) Variable Output
-139(g_tTex1df4a):     11(ptr) Variable UniformConstant
-             140:             TypeImage 6(float) Cube sampled format:Unknown
-             141:             TypePointer UniformConstant 140
- 142(g_tTexcdf4):    141(ptr) Variable UniformConstant
-             143:             TypeImage 22(int) Cube sampled format:Unknown
-             144:             TypePointer UniformConstant 143
- 145(g_tTexcdi4):    144(ptr) Variable UniformConstant
-             146:             TypeImage 37(int) Cube sampled format:Unknown
-             147:             TypePointer UniformConstant 146
- 148(g_tTexcdu4):    147(ptr) Variable UniformConstant
-             149:             TypePointer Output 7(fvec4)
-      150(Color):    149(ptr) Variable Output
-             151:             TypePointer Output 6(float)
-      152(Depth):    151(ptr) Variable Output
+             135:             TypePointer Output 7(fvec4)
+      136(Color):    135(ptr) Variable Output
+             139:             TypePointer Output 6(float)
+      140(Depth):    139(ptr) Variable Output
+144(g_tTex1df4a):     11(ptr) Variable UniformConstant
+             145:             TypeImage 6(float) Cube sampled format:Unknown
+             146:             TypePointer UniformConstant 145
+ 147(g_tTexcdf4):    146(ptr) Variable UniformConstant
+             148:             TypeImage 22(int) Cube sampled format:Unknown
+             149:             TypePointer UniformConstant 148
+ 150(g_tTexcdi4):    149(ptr) Variable UniformConstant
+             151:             TypeImage 37(int) Cube sampled format:Unknown
+             152:             TypePointer UniformConstant 151
+ 153(g_tTexcdu4):    152(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
       9(txval10):      8(ptr) Variable Function
@@ -586,7 +603,11 @@ gl_FragCoord origin is upper left
                               Store 132 131
              134:    133(ptr) AccessChain 129(psout) 23
                               Store 134 130
-             137:127(PS_OUTPUT) Load 129(psout)
-                              Store 136(@entryPointOutput) 137
+             137:      8(ptr) AccessChain 129(psout) 61
+             138:    7(fvec4) Load 137
+                              Store 136(Color) 138
+             141:    133(ptr) AccessChain 129(psout) 23
+             142:    6(float) Load 141
+                              Store 140(Depth) 142
                               Return
                               FunctionEnd
index 5a5380c..6a0d18d 100644 (file)
@@ -112,10 +112,20 @@ gl_FragCoord origin is upper left
 0:34            1 (const int)
 0:34        Constant:
 0:34          1.000000
-0:36      Sequence
-0:36        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:36          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:36          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:36            Color: direct index for structure (temp 4-component vector of float)
+0:36              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:36              Constant:
+0:36                0 (const int)
+0:36          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:36            Depth: direct index for structure (temp float FragDepth)
+0:36              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:36              Constant:
+0:36                1 (const int)
 0:36        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -246,10 +256,20 @@ gl_FragCoord origin is upper left
 0:34            1 (const int)
 0:34        Constant:
 0:34          1.000000
-0:36      Sequence
-0:36        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:36          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:36          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:36            Color: direct index for structure (temp 4-component vector of float)
+0:36              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:36              Constant:
+0:36                0 (const int)
+0:36          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:36            Depth: direct index for structure (temp float FragDepth)
+0:36              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:36              Constant:
+0:36                1 (const int)
 0:36        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -265,13 +285,13 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 110
+// Id's are bound by 111
 
                               Capability Shader
                               Capability Sampled1D
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 102 107 109
+                              EntryPoint Fragment 4  "main" 102 106
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 9  "txval10"
@@ -291,10 +311,9 @@ gl_FragCoord origin is upper left
                               MemberName 93(PS_OUTPUT) 0  "Color"
                               MemberName 93(PS_OUTPUT) 1  "Depth"
                               Name 95  "psout"
-                              Name 102  "@entryPointOutput"
-                              Name 105  "g_tTex1df4a"
-                              Name 107  "Color"
-                              Name 109  "Depth"
+                              Name 102  "Color"
+                              Name 106  "Depth"
+                              Name 110  "g_tTex1df4a"
                               Decorate 12(g_tTex1df4) DescriptorSet 0
                               Decorate 12(g_tTex1df4) Binding 0
                               Decorate 16(g_sSamp) DescriptorSet 0
@@ -305,10 +324,10 @@ gl_FragCoord origin is upper left
                               Decorate 73(g_tTex2di4) DescriptorSet 0
                               Decorate 83(g_tTex2du4) DescriptorSet 0
                               MemberDecorate 93(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 105(g_tTex1df4a) DescriptorSet 0
-                              Decorate 105(g_tTex1df4a) Binding 1
-                              Decorate 107(Color) Location 0
-                              Decorate 109(Depth) BuiltIn FragDepth
+                              Decorate 102(Color) Location 0
+                              Decorate 106(Depth) BuiltIn FragDepth
+                              Decorate 110(g_tTex1df4a) DescriptorSet 0
+                              Decorate 110(g_tTex1df4a) Binding 1
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -373,13 +392,11 @@ gl_FragCoord origin is upper left
               96:    6(float) Constant 1065353216
               97:    7(fvec4) ConstantComposite 96 96 96 96
               99:             TypePointer Function 6(float)
-             101:             TypePointer Output 93(PS_OUTPUT)
-102(@entryPointOutput):    101(ptr) Variable Output
-105(g_tTex1df4a):     11(ptr) Variable UniformConstant
-             106:             TypePointer Output 7(fvec4)
-      107(Color):    106(ptr) Variable Output
-             108:             TypePointer Output 6(float)
-      109(Depth):    108(ptr) Variable Output
+             101:             TypePointer Output 7(fvec4)
+      102(Color):    101(ptr) Variable Output
+             105:             TypePointer Output 6(float)
+      106(Depth):    105(ptr) Variable Output
+110(g_tTex1df4a):     11(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
       9(txval10):      8(ptr) Variable Function
@@ -423,7 +440,11 @@ gl_FragCoord origin is upper left
                               Store 98 97
              100:     99(ptr) AccessChain 95(psout) 40
                               Store 100 96
-             103:93(PS_OUTPUT) Load 95(psout)
-                              Store 102(@entryPointOutput) 103
+             103:      8(ptr) AccessChain 95(psout) 26
+             104:    7(fvec4) Load 103
+                              Store 102(Color) 104
+             107:     99(ptr) AccessChain 95(psout) 40
+             108:    6(float) Load 107
+                              Store 106(Depth) 108
                               Return
                               FunctionEnd
index 17f4743..215fa8f 100644 (file)
@@ -148,10 +148,20 @@ gl_FragCoord origin is upper left
 0:57            1 (const int)
 0:57        Constant:
 0:57          1.000000
-0:59      Sequence
-0:59        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:59          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:59          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:59            Color: direct index for structure (temp 4-component vector of float)
+0:59              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:59              Constant:
+0:59                0 (const int)
+0:59          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:59            Depth: direct index for structure (temp float FragDepth)
+0:59              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:59              Constant:
+0:59                1 (const int)
 0:59        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -332,10 +342,20 @@ gl_FragCoord origin is upper left
 0:57            1 (const int)
 0:57        Constant:
 0:57          1.000000
-0:59      Sequence
-0:59        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:59          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:59          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:59            Color: direct index for structure (temp 4-component vector of float)
+0:59              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:59              Constant:
+0:59                0 (const int)
+0:59          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:59            Depth: direct index for structure (temp float FragDepth)
+0:59              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:59              Constant:
+0:59                1 (const int)
 0:59        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -365,14 +385,14 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 183
+// Id's are bound by 184
 
                               Capability Shader
                               Capability Sampled1D
                               Capability SampledCubeArray
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 140 180 182
+                              EntryPoint Fragment 4  "main" 140 144
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 8  "r10"
@@ -398,21 +418,20 @@ gl_FragCoord origin is upper left
                               MemberName 129(PS_OUTPUT) 0  "Color"
                               MemberName 129(PS_OUTPUT) 1  "Depth"
                               Name 131  "psout"
-                              Name 140  "@entryPointOutput"
-                              Name 145  "g_tTex1df4"
-                              Name 148  "g_tTex1di4"
-                              Name 151  "g_tTex1du4"
-                              Name 154  "g_tTex2df4"
-                              Name 157  "g_tTex2di4"
-                              Name 160  "g_tTex2du4"
-                              Name 163  "g_tTex3df4"
-                              Name 166  "g_tTex3di4"
-                              Name 169  "g_tTex3du4"
-                              Name 172  "g_tTexcdf4"
-                              Name 175  "g_tTexcdi4"
-                              Name 178  "g_tTexcdu4"
-                              Name 180  "Color"
-                              Name 182  "Depth"
+                              Name 140  "Color"
+                              Name 144  "Depth"
+                              Name 150  "g_tTex1df4"
+                              Name 153  "g_tTex1di4"
+                              Name 156  "g_tTex1du4"
+                              Name 159  "g_tTex2df4"
+                              Name 162  "g_tTex2di4"
+                              Name 165  "g_tTex2du4"
+                              Name 168  "g_tTex3df4"
+                              Name 171  "g_tTex3di4"
+                              Name 174  "g_tTex3du4"
+                              Name 177  "g_tTexcdf4"
+                              Name 180  "g_tTexcdi4"
+                              Name 183  "g_tTexcdu4"
                               Decorate 11(g_tTex1df4a) DescriptorSet 0
                               Decorate 15(g_sSamp) DescriptorSet 0
                               Decorate 15(g_sSamp) Binding 0
@@ -425,21 +444,21 @@ gl_FragCoord origin is upper left
                               Decorate 110(g_tTexcdi4a) DescriptorSet 0
                               Decorate 121(g_tTexcdu4a) DescriptorSet 0
                               MemberDecorate 129(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 145(g_tTex1df4) DescriptorSet 0
-                              Decorate 145(g_tTex1df4) Binding 0
-                              Decorate 148(g_tTex1di4) DescriptorSet 0
-                              Decorate 151(g_tTex1du4) DescriptorSet 0
-                              Decorate 154(g_tTex2df4) DescriptorSet 0
-                              Decorate 157(g_tTex2di4) DescriptorSet 0
-                              Decorate 160(g_tTex2du4) DescriptorSet 0
-                              Decorate 163(g_tTex3df4) DescriptorSet 0
-                              Decorate 166(g_tTex3di4) DescriptorSet 0
-                              Decorate 169(g_tTex3du4) DescriptorSet 0
-                              Decorate 172(g_tTexcdf4) DescriptorSet 0
-                              Decorate 175(g_tTexcdi4) DescriptorSet 0
-                              Decorate 178(g_tTexcdu4) DescriptorSet 0
-                              Decorate 180(Color) Location 0
-                              Decorate 182(Depth) BuiltIn FragDepth
+                              Decorate 140(Color) Location 0
+                              Decorate 144(Depth) BuiltIn FragDepth
+                              Decorate 150(g_tTex1df4) DescriptorSet 0
+                              Decorate 150(g_tTex1df4) Binding 0
+                              Decorate 153(g_tTex1di4) DescriptorSet 0
+                              Decorate 156(g_tTex1du4) DescriptorSet 0
+                              Decorate 159(g_tTex2df4) DescriptorSet 0
+                              Decorate 162(g_tTex2di4) DescriptorSet 0
+                              Decorate 165(g_tTex2du4) DescriptorSet 0
+                              Decorate 168(g_tTex3df4) DescriptorSet 0
+                              Decorate 171(g_tTex3di4) DescriptorSet 0
+                              Decorate 174(g_tTex3du4) DescriptorSet 0
+                              Decorate 177(g_tTexcdf4) DescriptorSet 0
+                              Decorate 180(g_tTexcdi4) DescriptorSet 0
+                              Decorate 183(g_tTexcdu4) DescriptorSet 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -512,48 +531,46 @@ gl_FragCoord origin is upper left
              134:  102(fvec4) ConstantComposite 133 133 133 133
              135:             TypePointer Function 102(fvec4)
              137:     29(int) Constant 1
-             139:             TypePointer Output 129(PS_OUTPUT)
-140(@entryPointOutput):    139(ptr) Variable Output
-             143:             TypeImage 6(float) 1D sampled format:Unknown
-             144:             TypePointer UniformConstant 143
- 145(g_tTex1df4):    144(ptr) Variable UniformConstant
-             146:             TypeImage 29(int) 1D sampled format:Unknown
-             147:             TypePointer UniformConstant 146
- 148(g_tTex1di4):    147(ptr) Variable UniformConstant
-             149:             TypeImage 42(int) 1D sampled format:Unknown
-             150:             TypePointer UniformConstant 149
- 151(g_tTex1du4):    150(ptr) Variable UniformConstant
-             152:             TypeImage 6(float) 2D sampled format:Unknown
-             153:             TypePointer UniformConstant 152
- 154(g_tTex2df4):    153(ptr) Variable UniformConstant
-             155:             TypeImage 29(int) 2D sampled format:Unknown
-             156:             TypePointer UniformConstant 155
- 157(g_tTex2di4):    156(ptr) Variable UniformConstant
-             158:             TypeImage 42(int) 2D sampled format:Unknown
-             159:             TypePointer UniformConstant 158
- 160(g_tTex2du4):    159(ptr) Variable UniformConstant
-             161:             TypeImage 6(float) 3D sampled format:Unknown
-             162:             TypePointer UniformConstant 161
- 163(g_tTex3df4):    162(ptr) Variable UniformConstant
-             164:             TypeImage 29(int) 3D sampled format:Unknown
-             165:             TypePointer UniformConstant 164
- 166(g_tTex3di4):    165(ptr) Variable UniformConstant
-             167:             TypeImage 42(int) 3D sampled format:Unknown
-             168:             TypePointer UniformConstant 167
- 169(g_tTex3du4):    168(ptr) Variable UniformConstant
-             170:             TypeImage 6(float) Cube sampled format:Unknown
-             171:             TypePointer UniformConstant 170
- 172(g_tTexcdf4):    171(ptr) Variable UniformConstant
-             173:             TypeImage 29(int) Cube sampled format:Unknown
-             174:             TypePointer UniformConstant 173
- 175(g_tTexcdi4):    174(ptr) Variable UniformConstant
-             176:             TypeImage 42(int) Cube sampled format:Unknown
-             177:             TypePointer UniformConstant 176
- 178(g_tTexcdu4):    177(ptr) Variable UniformConstant
-             179:             TypePointer Output 102(fvec4)
-      180(Color):    179(ptr) Variable Output
-             181:             TypePointer Output 6(float)
-      182(Depth):    181(ptr) Variable Output
+             139:             TypePointer Output 102(fvec4)
+      140(Color):    139(ptr) Variable Output
+             143:             TypePointer Output 6(float)
+      144(Depth):    143(ptr) Variable Output
+             148:             TypeImage 6(float) 1D sampled format:Unknown
+             149:             TypePointer UniformConstant 148
+ 150(g_tTex1df4):    149(ptr) Variable UniformConstant
+             151:             TypeImage 29(int) 1D sampled format:Unknown
+             152:             TypePointer UniformConstant 151
+ 153(g_tTex1di4):    152(ptr) Variable UniformConstant
+             154:             TypeImage 42(int) 1D sampled format:Unknown
+             155:             TypePointer UniformConstant 154
+ 156(g_tTex1du4):    155(ptr) Variable UniformConstant
+             157:             TypeImage 6(float) 2D sampled format:Unknown
+             158:             TypePointer UniformConstant 157
+ 159(g_tTex2df4):    158(ptr) Variable UniformConstant
+             160:             TypeImage 29(int) 2D sampled format:Unknown
+             161:             TypePointer UniformConstant 160
+ 162(g_tTex2di4):    161(ptr) Variable UniformConstant
+             163:             TypeImage 42(int) 2D sampled format:Unknown
+             164:             TypePointer UniformConstant 163
+ 165(g_tTex2du4):    164(ptr) Variable UniformConstant
+             166:             TypeImage 6(float) 3D sampled format:Unknown
+             167:             TypePointer UniformConstant 166
+ 168(g_tTex3df4):    167(ptr) Variable UniformConstant
+             169:             TypeImage 29(int) 3D sampled format:Unknown
+             170:             TypePointer UniformConstant 169
+ 171(g_tTex3di4):    170(ptr) Variable UniformConstant
+             172:             TypeImage 42(int) 3D sampled format:Unknown
+             173:             TypePointer UniformConstant 172
+ 174(g_tTex3du4):    173(ptr) Variable UniformConstant
+             175:             TypeImage 6(float) Cube sampled format:Unknown
+             176:             TypePointer UniformConstant 175
+ 177(g_tTexcdf4):    176(ptr) Variable UniformConstant
+             178:             TypeImage 29(int) Cube sampled format:Unknown
+             179:             TypePointer UniformConstant 178
+ 180(g_tTexcdi4):    179(ptr) Variable UniformConstant
+             181:             TypeImage 42(int) Cube sampled format:Unknown
+             182:             TypePointer UniformConstant 181
+ 183(g_tTexcdu4):    182(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
           8(r10):      7(ptr) Variable Function
@@ -630,7 +647,11 @@ gl_FragCoord origin is upper left
                               Store 136 134
              138:      7(ptr) AccessChain 131(psout) 137
                               Store 138 133
-             141:129(PS_OUTPUT) Load 131(psout)
-                              Store 140(@entryPointOutput) 141
+             141:    135(ptr) AccessChain 131(psout) 132
+             142:  102(fvec4) Load 141
+                              Store 140(Color) 142
+             145:      7(ptr) AccessChain 131(psout) 137
+             146:    6(float) Load 145
+                              Store 144(Depth) 146
                               Return
                               FunctionEnd
index 3181445..f6967c7 100644 (file)
@@ -139,10 +139,20 @@ gl_FragCoord origin is upper left
 0:58            1 (const int)
 0:58        Constant:
 0:58          1.000000
-0:60      Sequence
-0:60        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:60          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:60          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:60            Color: direct index for structure (temp 4-component vector of float)
+0:60              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:60              Constant:
+0:60                0 (const int)
+0:60          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:60            Depth: direct index for structure (temp float FragDepth)
+0:60              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:60              Constant:
+0:60                1 (const int)
 0:60        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -314,10 +324,20 @@ gl_FragCoord origin is upper left
 0:58            1 (const int)
 0:58        Constant:
 0:58          1.000000
-0:60      Sequence
-0:60        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:60          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:60          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:60            Color: direct index for structure (temp 4-component vector of float)
+0:60              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:60              Constant:
+0:60                0 (const int)
+0:60          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:60            Depth: direct index for structure (temp float FragDepth)
+0:60              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:60              Constant:
+0:60                1 (const int)
 0:60        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -347,14 +367,14 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 181
+// Id's are bound by 182
 
                               Capability Shader
                               Capability Sampled1D
                               Capability SampledCubeArray
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 138 178 180
+                              EntryPoint Fragment 4  "main" 138 142
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 8  "r00"
@@ -380,21 +400,20 @@ gl_FragCoord origin is upper left
                               MemberName 127(PS_OUTPUT) 0  "Color"
                               MemberName 127(PS_OUTPUT) 1  "Depth"
                               Name 129  "psout"
-                              Name 138  "@entryPointOutput"
-                              Name 143  "g_tTex3df4"
-                              Name 146  "g_tTex3di4"
-                              Name 149  "g_tTex3du4"
-                              Name 152  "g_tTex1df4a"
-                              Name 155  "g_tTex1di4a"
-                              Name 158  "g_tTex1du4a"
-                              Name 161  "g_tTex2df4a"
-                              Name 164  "g_tTex2di4a"
-                              Name 167  "g_tTex2du4a"
-                              Name 170  "g_tTexcdf4a"
-                              Name 173  "g_tTexcdi4a"
-                              Name 176  "g_tTexcdu4a"
-                              Name 178  "Color"
-                              Name 180  "Depth"
+                              Name 138  "Color"
+                              Name 142  "Depth"
+                              Name 148  "g_tTex3df4"
+                              Name 151  "g_tTex3di4"
+                              Name 154  "g_tTex3du4"
+                              Name 157  "g_tTex1df4a"
+                              Name 160  "g_tTex1di4a"
+                              Name 163  "g_tTex1du4a"
+                              Name 166  "g_tTex2df4a"
+                              Name 169  "g_tTex2di4a"
+                              Name 172  "g_tTex2du4a"
+                              Name 175  "g_tTexcdf4a"
+                              Name 178  "g_tTexcdi4a"
+                              Name 181  "g_tTexcdu4a"
                               Decorate 11(g_tTex1df4) DescriptorSet 0
                               Decorate 11(g_tTex1df4) Binding 0
                               Decorate 15(g_sSamp) DescriptorSet 0
@@ -408,20 +427,20 @@ gl_FragCoord origin is upper left
                               Decorate 105(g_tTexcdi4) DescriptorSet 0
                               Decorate 117(g_tTexcdu4) DescriptorSet 0
                               MemberDecorate 127(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 143(g_tTex3df4) DescriptorSet 0
-                              Decorate 146(g_tTex3di4) DescriptorSet 0
-                              Decorate 149(g_tTex3du4) DescriptorSet 0
-                              Decorate 152(g_tTex1df4a) DescriptorSet 0
-                              Decorate 155(g_tTex1di4a) DescriptorSet 0
-                              Decorate 158(g_tTex1du4a) DescriptorSet 0
-                              Decorate 161(g_tTex2df4a) DescriptorSet 0
-                              Decorate 164(g_tTex2di4a) DescriptorSet 0
-                              Decorate 167(g_tTex2du4a) DescriptorSet 0
-                              Decorate 170(g_tTexcdf4a) DescriptorSet 0
-                              Decorate 173(g_tTexcdi4a) DescriptorSet 0
-                              Decorate 176(g_tTexcdu4a) DescriptorSet 0
-                              Decorate 178(Color) Location 0
-                              Decorate 180(Depth) BuiltIn FragDepth
+                              Decorate 138(Color) Location 0
+                              Decorate 142(Depth) BuiltIn FragDepth
+                              Decorate 148(g_tTex3df4) DescriptorSet 0
+                              Decorate 151(g_tTex3di4) DescriptorSet 0
+                              Decorate 154(g_tTex3du4) DescriptorSet 0
+                              Decorate 157(g_tTex1df4a) DescriptorSet 0
+                              Decorate 160(g_tTex1di4a) DescriptorSet 0
+                              Decorate 163(g_tTex1du4a) DescriptorSet 0
+                              Decorate 166(g_tTex2df4a) DescriptorSet 0
+                              Decorate 169(g_tTex2di4a) DescriptorSet 0
+                              Decorate 172(g_tTex2du4a) DescriptorSet 0
+                              Decorate 175(g_tTexcdf4a) DescriptorSet 0
+                              Decorate 178(g_tTexcdi4a) DescriptorSet 0
+                              Decorate 181(g_tTexcdu4a) DescriptorSet 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -492,48 +511,46 @@ gl_FragCoord origin is upper left
              132:  126(fvec4) ConstantComposite 131 131 131 131
              133:             TypePointer Function 126(fvec4)
              135:     25(int) Constant 1
-             137:             TypePointer Output 127(PS_OUTPUT)
-138(@entryPointOutput):    137(ptr) Variable Output
-             141:             TypeImage 6(float) 3D sampled format:Unknown
-             142:             TypePointer UniformConstant 141
- 143(g_tTex3df4):    142(ptr) Variable UniformConstant
-             144:             TypeImage 25(int) 3D sampled format:Unknown
-             145:             TypePointer UniformConstant 144
- 146(g_tTex3di4):    145(ptr) Variable UniformConstant
-             147:             TypeImage 37(int) 3D sampled format:Unknown
-             148:             TypePointer UniformConstant 147
- 149(g_tTex3du4):    148(ptr) Variable UniformConstant
-             150:             TypeImage 6(float) 1D array sampled format:Unknown
-             151:             TypePointer UniformConstant 150
-152(g_tTex1df4a):    151(ptr) Variable UniformConstant
-             153:             TypeImage 25(int) 1D array sampled format:Unknown
-             154:             TypePointer UniformConstant 153
-155(g_tTex1di4a):    154(ptr) Variable UniformConstant
-             156:             TypeImage 37(int) 1D array sampled format:Unknown
-             157:             TypePointer UniformConstant 156
-158(g_tTex1du4a):    157(ptr) Variable UniformConstant
-             159:             TypeImage 6(float) 2D array sampled format:Unknown
-             160:             TypePointer UniformConstant 159
-161(g_tTex2df4a):    160(ptr) Variable UniformConstant
-             162:             TypeImage 25(int) 2D array sampled format:Unknown
-             163:             TypePointer UniformConstant 162
-164(g_tTex2di4a):    163(ptr) Variable UniformConstant
-             165:             TypeImage 37(int) 2D array sampled format:Unknown
-             166:             TypePointer UniformConstant 165
-167(g_tTex2du4a):    166(ptr) Variable UniformConstant
-             168:             TypeImage 6(float) Cube array sampled format:Unknown
-             169:             TypePointer UniformConstant 168
-170(g_tTexcdf4a):    169(ptr) Variable UniformConstant
-             171:             TypeImage 25(int) Cube array sampled format:Unknown
-             172:             TypePointer UniformConstant 171
-173(g_tTexcdi4a):    172(ptr) Variable UniformConstant
-             174:             TypeImage 37(int) Cube array sampled format:Unknown
-             175:             TypePointer UniformConstant 174
-176(g_tTexcdu4a):    175(ptr) Variable UniformConstant
-             177:             TypePointer Output 126(fvec4)
-      178(Color):    177(ptr) Variable Output
-             179:             TypePointer Output 6(float)
-      180(Depth):    179(ptr) Variable Output
+             137:             TypePointer Output 126(fvec4)
+      138(Color):    137(ptr) Variable Output
+             141:             TypePointer Output 6(float)
+      142(Depth):    141(ptr) Variable Output
+             146:             TypeImage 6(float) 3D sampled format:Unknown
+             147:             TypePointer UniformConstant 146
+ 148(g_tTex3df4):    147(ptr) Variable UniformConstant
+             149:             TypeImage 25(int) 3D sampled format:Unknown
+             150:             TypePointer UniformConstant 149
+ 151(g_tTex3di4):    150(ptr) Variable UniformConstant
+             152:             TypeImage 37(int) 3D sampled format:Unknown
+             153:             TypePointer UniformConstant 152
+ 154(g_tTex3du4):    153(ptr) Variable UniformConstant
+             155:             TypeImage 6(float) 1D array sampled format:Unknown
+             156:             TypePointer UniformConstant 155
+157(g_tTex1df4a):    156(ptr) Variable UniformConstant
+             158:             TypeImage 25(int) 1D array sampled format:Unknown
+             159:             TypePointer UniformConstant 158
+160(g_tTex1di4a):    159(ptr) Variable UniformConstant
+             161:             TypeImage 37(int) 1D array sampled format:Unknown
+             162:             TypePointer UniformConstant 161
+163(g_tTex1du4a):    162(ptr) Variable UniformConstant
+             164:             TypeImage 6(float) 2D array sampled format:Unknown
+             165:             TypePointer UniformConstant 164
+166(g_tTex2df4a):    165(ptr) Variable UniformConstant
+             167:             TypeImage 25(int) 2D array sampled format:Unknown
+             168:             TypePointer UniformConstant 167
+169(g_tTex2di4a):    168(ptr) Variable UniformConstant
+             170:             TypeImage 37(int) 2D array sampled format:Unknown
+             171:             TypePointer UniformConstant 170
+172(g_tTex2du4a):    171(ptr) Variable UniformConstant
+             173:             TypeImage 6(float) Cube array sampled format:Unknown
+             174:             TypePointer UniformConstant 173
+175(g_tTexcdf4a):    174(ptr) Variable UniformConstant
+             176:             TypeImage 25(int) Cube array sampled format:Unknown
+             177:             TypePointer UniformConstant 176
+178(g_tTexcdi4a):    177(ptr) Variable UniformConstant
+             179:             TypeImage 37(int) Cube array sampled format:Unknown
+             180:             TypePointer UniformConstant 179
+181(g_tTexcdu4a):    180(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
           8(r00):      7(ptr) Variable Function
@@ -610,7 +627,11 @@ gl_FragCoord origin is upper left
                               Store 134 132
              136:      7(ptr) AccessChain 129(psout) 135
                               Store 136 131
-             139:127(PS_OUTPUT) Load 129(psout)
-                              Store 138(@entryPointOutput) 139
+             139:    133(ptr) AccessChain 129(psout) 130
+             140:  126(fvec4) Load 139
+                              Store 138(Color) 140
+             143:      7(ptr) AccessChain 129(psout) 135
+             144:    6(float) Load 143
+                              Store 142(Depth) 144
                               Return
                               FunctionEnd
index fa3904e..b069356 100644 (file)
@@ -112,10 +112,20 @@ gl_FragCoord origin is upper left
 0:63            1 (const int)
 0:63        Constant:
 0:63          1.000000
-0:65      Sequence
-0:65        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:65          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:65          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:65            Color: direct index for structure (temp 4-component vector of float)
+0:65              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:65              Constant:
+0:65                0 (const int)
+0:65          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:65            Depth: direct index for structure (temp float FragDepth)
+0:65              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:65              Constant:
+0:65                1 (const int)
 0:65        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -260,10 +270,20 @@ gl_FragCoord origin is upper left
 0:63            1 (const int)
 0:63        Constant:
 0:63          1.000000
-0:65      Sequence
-0:65        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:65          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:65          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:65            Color: direct index for structure (temp 4-component vector of float)
+0:65              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:65              Constant:
+0:65                0 (const int)
+0:65          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:65            Depth: direct index for structure (temp float FragDepth)
+0:65              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:65              Constant:
+0:65                1 (const int)
 0:65        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -293,14 +313,14 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 155
+// Id's are bound by 156
 
                               Capability Shader
                               Capability Sampled1D
                               Capability SampledCubeArray
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 103 152 154
+                              EntryPoint Fragment 4  "main" 103 107
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 8  "r01"
@@ -320,24 +340,23 @@ gl_FragCoord origin is upper left
                               MemberName 92(PS_OUTPUT) 0  "Color"
                               MemberName 92(PS_OUTPUT) 1  "Depth"
                               Name 94  "psout"
-                              Name 103  "@entryPointOutput"
-                              Name 108  "g_tTex3df4"
-                              Name 111  "g_tTex3di4"
-                              Name 114  "g_tTex3du4"
-                              Name 117  "g_tTexcdf4"
-                              Name 120  "g_tTexcdi4"
-                              Name 123  "g_tTexcdu4"
-                              Name 126  "g_tTex1df4a"
-                              Name 129  "g_tTex1di4a"
-                              Name 132  "g_tTex1du4a"
-                              Name 135  "g_tTex2df4a"
-                              Name 138  "g_tTex2di4a"
-                              Name 141  "g_tTex2du4a"
-                              Name 144  "g_tTexcdf4a"
-                              Name 147  "g_tTexcdi4a"
-                              Name 150  "g_tTexcdu4a"
-                              Name 152  "Color"
-                              Name 154  "Depth"
+                              Name 103  "Color"
+                              Name 107  "Depth"
+                              Name 113  "g_tTex3df4"
+                              Name 116  "g_tTex3di4"
+                              Name 119  "g_tTex3du4"
+                              Name 122  "g_tTexcdf4"
+                              Name 125  "g_tTexcdi4"
+                              Name 128  "g_tTexcdu4"
+                              Name 131  "g_tTex1df4a"
+                              Name 134  "g_tTex1di4a"
+                              Name 137  "g_tTex1du4a"
+                              Name 140  "g_tTex2df4a"
+                              Name 143  "g_tTex2di4a"
+                              Name 146  "g_tTex2du4a"
+                              Name 149  "g_tTexcdf4a"
+                              Name 152  "g_tTexcdi4a"
+                              Name 155  "g_tTexcdu4a"
                               Decorate 11(g_tTex1df4) DescriptorSet 0
                               Decorate 11(g_tTex1df4) Binding 0
                               Decorate 15(g_sSamp) DescriptorSet 0
@@ -348,23 +367,23 @@ gl_FragCoord origin is upper left
                               Decorate 70(g_tTex2di4) DescriptorSet 0
                               Decorate 82(g_tTex2du4) DescriptorSet 0
                               MemberDecorate 92(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 108(g_tTex3df4) DescriptorSet 0
-                              Decorate 111(g_tTex3di4) DescriptorSet 0
-                              Decorate 114(g_tTex3du4) DescriptorSet 0
-                              Decorate 117(g_tTexcdf4) DescriptorSet 0
-                              Decorate 120(g_tTexcdi4) DescriptorSet 0
-                              Decorate 123(g_tTexcdu4) DescriptorSet 0
-                              Decorate 126(g_tTex1df4a) DescriptorSet 0
-                              Decorate 129(g_tTex1di4a) DescriptorSet 0
-                              Decorate 132(g_tTex1du4a) DescriptorSet 0
-                              Decorate 135(g_tTex2df4a) DescriptorSet 0
-                              Decorate 138(g_tTex2di4a) DescriptorSet 0
-                              Decorate 141(g_tTex2du4a) DescriptorSet 0
-                              Decorate 144(g_tTexcdf4a) DescriptorSet 0
-                              Decorate 147(g_tTexcdi4a) DescriptorSet 0
-                              Decorate 150(g_tTexcdu4a) DescriptorSet 0
-                              Decorate 152(Color) Location 0
-                              Decorate 154(Depth) BuiltIn FragDepth
+                              Decorate 103(Color) Location 0
+                              Decorate 107(Depth) BuiltIn FragDepth
+                              Decorate 113(g_tTex3df4) DescriptorSet 0
+                              Decorate 116(g_tTex3di4) DescriptorSet 0
+                              Decorate 119(g_tTex3du4) DescriptorSet 0
+                              Decorate 122(g_tTexcdf4) DescriptorSet 0
+                              Decorate 125(g_tTexcdi4) DescriptorSet 0
+                              Decorate 128(g_tTexcdu4) DescriptorSet 0
+                              Decorate 131(g_tTex1df4a) DescriptorSet 0
+                              Decorate 134(g_tTex1di4a) DescriptorSet 0
+                              Decorate 137(g_tTex1du4a) DescriptorSet 0
+                              Decorate 140(g_tTex2df4a) DescriptorSet 0
+                              Decorate 143(g_tTex2di4a) DescriptorSet 0
+                              Decorate 146(g_tTex2du4a) DescriptorSet 0
+                              Decorate 149(g_tTexcdf4a) DescriptorSet 0
+                              Decorate 152(g_tTexcdi4a) DescriptorSet 0
+                              Decorate 155(g_tTexcdu4a) DescriptorSet 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -421,57 +440,55 @@ gl_FragCoord origin is upper left
               97:   91(fvec4) ConstantComposite 96 96 96 96
               98:             TypePointer Function 91(fvec4)
              100:     22(int) Constant 1
-             102:             TypePointer Output 92(PS_OUTPUT)
-103(@entryPointOutput):    102(ptr) Variable Output
-             106:             TypeImage 6(float) 3D sampled format:Unknown
-             107:             TypePointer UniformConstant 106
- 108(g_tTex3df4):    107(ptr) Variable UniformConstant
-             109:             TypeImage 22(int) 3D sampled format:Unknown
-             110:             TypePointer UniformConstant 109
- 111(g_tTex3di4):    110(ptr) Variable UniformConstant
-             112:             TypeImage 38(int) 3D sampled format:Unknown
-             113:             TypePointer UniformConstant 112
- 114(g_tTex3du4):    113(ptr) Variable UniformConstant
-             115:             TypeImage 6(float) Cube sampled format:Unknown
-             116:             TypePointer UniformConstant 115
- 117(g_tTexcdf4):    116(ptr) Variable UniformConstant
-             118:             TypeImage 22(int) Cube sampled format:Unknown
-             119:             TypePointer UniformConstant 118
- 120(g_tTexcdi4):    119(ptr) Variable UniformConstant
-             121:             TypeImage 38(int) Cube sampled format:Unknown
-             122:             TypePointer UniformConstant 121
- 123(g_tTexcdu4):    122(ptr) Variable UniformConstant
-             124:             TypeImage 6(float) 1D array sampled format:Unknown
-             125:             TypePointer UniformConstant 124
-126(g_tTex1df4a):    125(ptr) Variable UniformConstant
-             127:             TypeImage 22(int) 1D array sampled format:Unknown
-             128:             TypePointer UniformConstant 127
-129(g_tTex1di4a):    128(ptr) Variable UniformConstant
-             130:             TypeImage 38(int) 1D array sampled format:Unknown
-             131:             TypePointer UniformConstant 130
-132(g_tTex1du4a):    131(ptr) Variable UniformConstant
-             133:             TypeImage 6(float) 2D array sampled format:Unknown
-             134:             TypePointer UniformConstant 133
-135(g_tTex2df4a):    134(ptr) Variable UniformConstant
-             136:             TypeImage 22(int) 2D array sampled format:Unknown
-             137:             TypePointer UniformConstant 136
-138(g_tTex2di4a):    137(ptr) Variable UniformConstant
-             139:             TypeImage 38(int) 2D array sampled format:Unknown
-             140:             TypePointer UniformConstant 139
-141(g_tTex2du4a):    140(ptr) Variable UniformConstant
-             142:             TypeImage 6(float) Cube array sampled format:Unknown
-             143:             TypePointer UniformConstant 142
-144(g_tTexcdf4a):    143(ptr) Variable UniformConstant
-             145:             TypeImage 22(int) Cube array sampled format:Unknown
-             146:             TypePointer UniformConstant 145
-147(g_tTexcdi4a):    146(ptr) Variable UniformConstant
-             148:             TypeImage 38(int) Cube array sampled format:Unknown
-             149:             TypePointer UniformConstant 148
-150(g_tTexcdu4a):    149(ptr) Variable UniformConstant
-             151:             TypePointer Output 91(fvec4)
-      152(Color):    151(ptr) Variable Output
-             153:             TypePointer Output 6(float)
-      154(Depth):    153(ptr) Variable Output
+             102:             TypePointer Output 91(fvec4)
+      103(Color):    102(ptr) Variable Output
+             106:             TypePointer Output 6(float)
+      107(Depth):    106(ptr) Variable Output
+             111:             TypeImage 6(float) 3D sampled format:Unknown
+             112:             TypePointer UniformConstant 111
+ 113(g_tTex3df4):    112(ptr) Variable UniformConstant
+             114:             TypeImage 22(int) 3D sampled format:Unknown
+             115:             TypePointer UniformConstant 114
+ 116(g_tTex3di4):    115(ptr) Variable UniformConstant
+             117:             TypeImage 38(int) 3D sampled format:Unknown
+             118:             TypePointer UniformConstant 117
+ 119(g_tTex3du4):    118(ptr) Variable UniformConstant
+             120:             TypeImage 6(float) Cube sampled format:Unknown
+             121:             TypePointer UniformConstant 120
+ 122(g_tTexcdf4):    121(ptr) Variable UniformConstant
+             123:             TypeImage 22(int) Cube sampled format:Unknown
+             124:             TypePointer UniformConstant 123
+ 125(g_tTexcdi4):    124(ptr) Variable UniformConstant
+             126:             TypeImage 38(int) Cube sampled format:Unknown
+             127:             TypePointer UniformConstant 126
+ 128(g_tTexcdu4):    127(ptr) Variable UniformConstant
+             129:             TypeImage 6(float) 1D array sampled format:Unknown
+             130:             TypePointer UniformConstant 129
+131(g_tTex1df4a):    130(ptr) Variable UniformConstant
+             132:             TypeImage 22(int) 1D array sampled format:Unknown
+             133:             TypePointer UniformConstant 132
+134(g_tTex1di4a):    133(ptr) Variable UniformConstant
+             135:             TypeImage 38(int) 1D array sampled format:Unknown
+             136:             TypePointer UniformConstant 135
+137(g_tTex1du4a):    136(ptr) Variable UniformConstant
+             138:             TypeImage 6(float) 2D array sampled format:Unknown
+             139:             TypePointer UniformConstant 138
+140(g_tTex2df4a):    139(ptr) Variable UniformConstant
+             141:             TypeImage 22(int) 2D array sampled format:Unknown
+             142:             TypePointer UniformConstant 141
+143(g_tTex2di4a):    142(ptr) Variable UniformConstant
+             144:             TypeImage 38(int) 2D array sampled format:Unknown
+             145:             TypePointer UniformConstant 144
+146(g_tTex2du4a):    145(ptr) Variable UniformConstant
+             147:             TypeImage 6(float) Cube array sampled format:Unknown
+             148:             TypePointer UniformConstant 147
+149(g_tTexcdf4a):    148(ptr) Variable UniformConstant
+             150:             TypeImage 22(int) Cube array sampled format:Unknown
+             151:             TypePointer UniformConstant 150
+152(g_tTexcdi4a):    151(ptr) Variable UniformConstant
+             153:             TypeImage 38(int) Cube array sampled format:Unknown
+             154:             TypePointer UniformConstant 153
+155(g_tTexcdu4a):    154(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
           8(r01):      7(ptr) Variable Function
@@ -524,7 +541,11 @@ gl_FragCoord origin is upper left
                               Store 99 97
              101:      7(ptr) AccessChain 94(psout) 100
                               Store 101 96
-             104:92(PS_OUTPUT) Load 94(psout)
-                              Store 103(@entryPointOutput) 104
+             104:     98(ptr) AccessChain 94(psout) 95
+             105:   91(fvec4) Load 104
+                              Store 103(Color) 105
+             108:      7(ptr) AccessChain 94(psout) 100
+             109:    6(float) Load 108
+                              Store 107(Depth) 109
                               Return
                               FunctionEnd
index ba41364..caa2b2c 100644 (file)
@@ -118,10 +118,20 @@ gl_FragCoord origin is upper left
 0:64            1 (const int)
 0:64        Constant:
 0:64          1.000000
-0:66      Sequence
-0:66        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:66          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:66          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:66            Color: direct index for structure (temp 4-component vector of float)
+0:66              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:66              Constant:
+0:66                0 (const int)
+0:66          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:66            Depth: direct index for structure (temp float FragDepth)
+0:66              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:66              Constant:
+0:66                1 (const int)
 0:66        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -272,10 +282,20 @@ gl_FragCoord origin is upper left
 0:64            1 (const int)
 0:64        Constant:
 0:64          1.000000
-0:66      Sequence
-0:66        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:66          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:66          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:66            Color: direct index for structure (temp 4-component vector of float)
+0:66              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:66              Constant:
+0:66                0 (const int)
+0:66          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:66            Depth: direct index for structure (temp float FragDepth)
+0:66              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:66              Constant:
+0:66                1 (const int)
 0:66        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -305,14 +325,14 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 161
+// Id's are bound by 162
 
                               Capability Shader
                               Capability Sampled1D
                               Capability SampledCubeArray
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 109 158 160
+                              EntryPoint Fragment 4  "main" 109 113
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 8  "r11"
@@ -332,24 +352,23 @@ gl_FragCoord origin is upper left
                               MemberName 98(PS_OUTPUT) 0  "Color"
                               MemberName 98(PS_OUTPUT) 1  "Depth"
                               Name 100  "psout"
-                              Name 109  "@entryPointOutput"
-                              Name 114  "g_tTex1df4"
-                              Name 117  "g_tTex1di4"
-                              Name 120  "g_tTex1du4"
-                              Name 123  "g_tTex2df4"
-                              Name 126  "g_tTex2di4"
-                              Name 129  "g_tTex2du4"
-                              Name 132  "g_tTex3df4"
-                              Name 135  "g_tTex3di4"
-                              Name 138  "g_tTex3du4"
-                              Name 141  "g_tTexcdf4"
-                              Name 144  "g_tTexcdi4"
-                              Name 147  "g_tTexcdu4"
-                              Name 150  "g_tTexcdf4a"
-                              Name 153  "g_tTexcdi4a"
-                              Name 156  "g_tTexcdu4a"
-                              Name 158  "Color"
-                              Name 160  "Depth"
+                              Name 109  "Color"
+                              Name 113  "Depth"
+                              Name 119  "g_tTex1df4"
+                              Name 122  "g_tTex1di4"
+                              Name 125  "g_tTex1du4"
+                              Name 128  "g_tTex2df4"
+                              Name 131  "g_tTex2di4"
+                              Name 134  "g_tTex2du4"
+                              Name 137  "g_tTex3df4"
+                              Name 140  "g_tTex3di4"
+                              Name 143  "g_tTex3du4"
+                              Name 146  "g_tTexcdf4"
+                              Name 149  "g_tTexcdi4"
+                              Name 152  "g_tTexcdu4"
+                              Name 155  "g_tTexcdf4a"
+                              Name 158  "g_tTexcdi4a"
+                              Name 161  "g_tTexcdu4a"
                               Decorate 11(g_tTex1df4a) DescriptorSet 0
                               Decorate 15(g_sSamp) DescriptorSet 0
                               Decorate 15(g_sSamp) Binding 0
@@ -359,24 +378,24 @@ gl_FragCoord origin is upper left
                               Decorate 76(g_tTex2di4a) DescriptorSet 0
                               Decorate 88(g_tTex2du4a) DescriptorSet 0
                               MemberDecorate 98(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 114(g_tTex1df4) DescriptorSet 0
-                              Decorate 114(g_tTex1df4) Binding 0
-                              Decorate 117(g_tTex1di4) DescriptorSet 0
-                              Decorate 120(g_tTex1du4) DescriptorSet 0
-                              Decorate 123(g_tTex2df4) DescriptorSet 0
-                              Decorate 126(g_tTex2di4) DescriptorSet 0
-                              Decorate 129(g_tTex2du4) DescriptorSet 0
-                              Decorate 132(g_tTex3df4) DescriptorSet 0
-                              Decorate 135(g_tTex3di4) DescriptorSet 0
-                              Decorate 138(g_tTex3du4) DescriptorSet 0
-                              Decorate 141(g_tTexcdf4) DescriptorSet 0
-                              Decorate 144(g_tTexcdi4) DescriptorSet 0
-                              Decorate 147(g_tTexcdu4) DescriptorSet 0
-                              Decorate 150(g_tTexcdf4a) DescriptorSet 0
-                              Decorate 153(g_tTexcdi4a) DescriptorSet 0
-                              Decorate 156(g_tTexcdu4a) DescriptorSet 0
-                              Decorate 158(Color) Location 0
-                              Decorate 160(Depth) BuiltIn FragDepth
+                              Decorate 109(Color) Location 0
+                              Decorate 113(Depth) BuiltIn FragDepth
+                              Decorate 119(g_tTex1df4) DescriptorSet 0
+                              Decorate 119(g_tTex1df4) Binding 0
+                              Decorate 122(g_tTex1di4) DescriptorSet 0
+                              Decorate 125(g_tTex1du4) DescriptorSet 0
+                              Decorate 128(g_tTex2df4) DescriptorSet 0
+                              Decorate 131(g_tTex2di4) DescriptorSet 0
+                              Decorate 134(g_tTex2du4) DescriptorSet 0
+                              Decorate 137(g_tTex3df4) DescriptorSet 0
+                              Decorate 140(g_tTex3di4) DescriptorSet 0
+                              Decorate 143(g_tTex3du4) DescriptorSet 0
+                              Decorate 146(g_tTexcdf4) DescriptorSet 0
+                              Decorate 149(g_tTexcdi4) DescriptorSet 0
+                              Decorate 152(g_tTexcdu4) DescriptorSet 0
+                              Decorate 155(g_tTexcdf4a) DescriptorSet 0
+                              Decorate 158(g_tTexcdi4a) DescriptorSet 0
+                              Decorate 161(g_tTexcdu4a) DescriptorSet 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -436,57 +455,55 @@ gl_FragCoord origin is upper left
              103:   97(fvec4) ConstantComposite 102 102 102 102
              104:             TypePointer Function 97(fvec4)
              106:     26(int) Constant 1
-             108:             TypePointer Output 98(PS_OUTPUT)
-109(@entryPointOutput):    108(ptr) Variable Output
-             112:             TypeImage 6(float) 1D sampled format:Unknown
-             113:             TypePointer UniformConstant 112
- 114(g_tTex1df4):    113(ptr) Variable UniformConstant
-             115:             TypeImage 26(int) 1D sampled format:Unknown
-             116:             TypePointer UniformConstant 115
- 117(g_tTex1di4):    116(ptr) Variable UniformConstant
-             118:             TypeImage 43(int) 1D sampled format:Unknown
-             119:             TypePointer UniformConstant 118
- 120(g_tTex1du4):    119(ptr) Variable UniformConstant
-             121:             TypeImage 6(float) 2D sampled format:Unknown
-             122:             TypePointer UniformConstant 121
- 123(g_tTex2df4):    122(ptr) Variable UniformConstant
-             124:             TypeImage 26(int) 2D sampled format:Unknown
-             125:             TypePointer UniformConstant 124
- 126(g_tTex2di4):    125(ptr) Variable UniformConstant
-             127:             TypeImage 43(int) 2D sampled format:Unknown
-             128:             TypePointer UniformConstant 127
- 129(g_tTex2du4):    128(ptr) Variable UniformConstant
-             130:             TypeImage 6(float) 3D sampled format:Unknown
-             131:             TypePointer UniformConstant 130
- 132(g_tTex3df4):    131(ptr) Variable UniformConstant
-             133:             TypeImage 26(int) 3D sampled format:Unknown
-             134:             TypePointer UniformConstant 133
- 135(g_tTex3di4):    134(ptr) Variable UniformConstant
-             136:             TypeImage 43(int) 3D sampled format:Unknown
-             137:             TypePointer UniformConstant 136
- 138(g_tTex3du4):    137(ptr) Variable UniformConstant
-             139:             TypeImage 6(float) Cube sampled format:Unknown
-             140:             TypePointer UniformConstant 139
- 141(g_tTexcdf4):    140(ptr) Variable UniformConstant
-             142:             TypeImage 26(int) Cube sampled format:Unknown
-             143:             TypePointer UniformConstant 142
- 144(g_tTexcdi4):    143(ptr) Variable UniformConstant
-             145:             TypeImage 43(int) Cube sampled format:Unknown
-             146:             TypePointer UniformConstant 145
- 147(g_tTexcdu4):    146(ptr) Variable UniformConstant
-             148:             TypeImage 6(float) Cube array sampled format:Unknown
-             149:             TypePointer UniformConstant 148
-150(g_tTexcdf4a):    149(ptr) Variable UniformConstant
-             151:             TypeImage 26(int) Cube array sampled format:Unknown
-             152:             TypePointer UniformConstant 151
-153(g_tTexcdi4a):    152(ptr) Variable UniformConstant
-             154:             TypeImage 43(int) Cube array sampled format:Unknown
-             155:             TypePointer UniformConstant 154
-156(g_tTexcdu4a):    155(ptr) Variable UniformConstant
-             157:             TypePointer Output 97(fvec4)
-      158(Color):    157(ptr) Variable Output
-             159:             TypePointer Output 6(float)
-      160(Depth):    159(ptr) Variable Output
+             108:             TypePointer Output 97(fvec4)
+      109(Color):    108(ptr) Variable Output
+             112:             TypePointer Output 6(float)
+      113(Depth):    112(ptr) Variable Output
+             117:             TypeImage 6(float) 1D sampled format:Unknown
+             118:             TypePointer UniformConstant 117
+ 119(g_tTex1df4):    118(ptr) Variable UniformConstant
+             120:             TypeImage 26(int) 1D sampled format:Unknown
+             121:             TypePointer UniformConstant 120
+ 122(g_tTex1di4):    121(ptr) Variable UniformConstant
+             123:             TypeImage 43(int) 1D sampled format:Unknown
+             124:             TypePointer UniformConstant 123
+ 125(g_tTex1du4):    124(ptr) Variable UniformConstant
+             126:             TypeImage 6(float) 2D sampled format:Unknown
+             127:             TypePointer UniformConstant 126
+ 128(g_tTex2df4):    127(ptr) Variable UniformConstant
+             129:             TypeImage 26(int) 2D sampled format:Unknown
+             130:             TypePointer UniformConstant 129
+ 131(g_tTex2di4):    130(ptr) Variable UniformConstant
+             132:             TypeImage 43(int) 2D sampled format:Unknown
+             133:             TypePointer UniformConstant 132
+ 134(g_tTex2du4):    133(ptr) Variable UniformConstant
+             135:             TypeImage 6(float) 3D sampled format:Unknown
+             136:             TypePointer UniformConstant 135
+ 137(g_tTex3df4):    136(ptr) Variable UniformConstant
+             138:             TypeImage 26(int) 3D sampled format:Unknown
+             139:             TypePointer UniformConstant 138
+ 140(g_tTex3di4):    139(ptr) Variable UniformConstant
+             141:             TypeImage 43(int) 3D sampled format:Unknown
+             142:             TypePointer UniformConstant 141
+ 143(g_tTex3du4):    142(ptr) Variable UniformConstant
+             144:             TypeImage 6(float) Cube sampled format:Unknown
+             145:             TypePointer UniformConstant 144
+ 146(g_tTexcdf4):    145(ptr) Variable UniformConstant
+             147:             TypeImage 26(int) Cube sampled format:Unknown
+             148:             TypePointer UniformConstant 147
+ 149(g_tTexcdi4):    148(ptr) Variable UniformConstant
+             150:             TypeImage 43(int) Cube sampled format:Unknown
+             151:             TypePointer UniformConstant 150
+ 152(g_tTexcdu4):    151(ptr) Variable UniformConstant
+             153:             TypeImage 6(float) Cube array sampled format:Unknown
+             154:             TypePointer UniformConstant 153
+155(g_tTexcdf4a):    154(ptr) Variable UniformConstant
+             156:             TypeImage 26(int) Cube array sampled format:Unknown
+             157:             TypePointer UniformConstant 156
+158(g_tTexcdi4a):    157(ptr) Variable UniformConstant
+             159:             TypeImage 43(int) Cube array sampled format:Unknown
+             160:             TypePointer UniformConstant 159
+161(g_tTexcdu4a):    160(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
           8(r11):      7(ptr) Variable Function
@@ -542,7 +559,11 @@ gl_FragCoord origin is upper left
                               Store 105 103
              107:      7(ptr) AccessChain 100(psout) 106
                               Store 107 102
-             110:98(PS_OUTPUT) Load 100(psout)
-                              Store 109(@entryPointOutput) 110
+             110:    104(ptr) AccessChain 100(psout) 101
+             111:   97(fvec4) Load 110
+                              Store 109(Color) 111
+             114:      7(ptr) AccessChain 100(psout) 106
+             115:    6(float) Load 114
+                              Store 113(Depth) 115
                               Return
                               FunctionEnd
index f8049ba..0702b24 100644 (file)
@@ -166,10 +166,20 @@ gl_FragCoord origin is upper left
 0:57            1 (const int)
 0:57        Constant:
 0:57          1.000000
-0:59      Sequence
-0:59        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:59          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:59          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:59            Color: direct index for structure (temp 4-component vector of float)
+0:59              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:59              Constant:
+0:59                0 (const int)
+0:59          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:59            Depth: direct index for structure (temp float FragDepth)
+0:59              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:59              Constant:
+0:59                1 (const int)
 0:59        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -368,10 +378,20 @@ gl_FragCoord origin is upper left
 0:57            1 (const int)
 0:57        Constant:
 0:57          1.000000
-0:59      Sequence
-0:59        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:59          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:59          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:59            Color: direct index for structure (temp 4-component vector of float)
+0:59              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:59              Constant:
+0:59                0 (const int)
+0:59          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:59            Depth: direct index for structure (temp float FragDepth)
+0:59              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:59              Constant:
+0:59                1 (const int)
 0:59        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -401,14 +421,14 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 184
+// Id's are bound by 185
 
                               Capability Shader
                               Capability Sampled1D
                               Capability SampledCubeArray
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 141 181 183
+                              EntryPoint Fragment 4  "main" 141 145
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 8  "r10"
@@ -434,21 +454,20 @@ gl_FragCoord origin is upper left
                               MemberName 130(PS_OUTPUT) 0  "Color"
                               MemberName 130(PS_OUTPUT) 1  "Depth"
                               Name 132  "psout"
-                              Name 141  "@entryPointOutput"
-                              Name 146  "g_tTex1df4"
-                              Name 149  "g_tTex1di4"
-                              Name 152  "g_tTex1du4"
-                              Name 155  "g_tTex2df4"
-                              Name 158  "g_tTex2di4"
-                              Name 161  "g_tTex2du4"
-                              Name 164  "g_tTex3df4"
-                              Name 167  "g_tTex3di4"
-                              Name 170  "g_tTex3du4"
-                              Name 173  "g_tTexcdf4"
-                              Name 176  "g_tTexcdi4"
-                              Name 179  "g_tTexcdu4"
-                              Name 181  "Color"
-                              Name 183  "Depth"
+                              Name 141  "Color"
+                              Name 145  "Depth"
+                              Name 151  "g_tTex1df4"
+                              Name 154  "g_tTex1di4"
+                              Name 157  "g_tTex1du4"
+                              Name 160  "g_tTex2df4"
+                              Name 163  "g_tTex2di4"
+                              Name 166  "g_tTex2du4"
+                              Name 169  "g_tTex3df4"
+                              Name 172  "g_tTex3di4"
+                              Name 175  "g_tTex3du4"
+                              Name 178  "g_tTexcdf4"
+                              Name 181  "g_tTexcdi4"
+                              Name 184  "g_tTexcdu4"
                               Decorate 11(g_tTex1df4a) DescriptorSet 0
                               Decorate 15(g_sSamp) DescriptorSet 0
                               Decorate 15(g_sSamp) Binding 0
@@ -461,21 +480,21 @@ gl_FragCoord origin is upper left
                               Decorate 111(g_tTexcdi4a) DescriptorSet 0
                               Decorate 122(g_tTexcdu4a) DescriptorSet 0
                               MemberDecorate 130(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 146(g_tTex1df4) DescriptorSet 0
-                              Decorate 146(g_tTex1df4) Binding 0
-                              Decorate 149(g_tTex1di4) DescriptorSet 0
-                              Decorate 152(g_tTex1du4) DescriptorSet 0
-                              Decorate 155(g_tTex2df4) DescriptorSet 0
-                              Decorate 158(g_tTex2di4) DescriptorSet 0
-                              Decorate 161(g_tTex2du4) DescriptorSet 0
-                              Decorate 164(g_tTex3df4) DescriptorSet 0
-                              Decorate 167(g_tTex3di4) DescriptorSet 0
-                              Decorate 170(g_tTex3du4) DescriptorSet 0
-                              Decorate 173(g_tTexcdf4) DescriptorSet 0
-                              Decorate 176(g_tTexcdi4) DescriptorSet 0
-                              Decorate 179(g_tTexcdu4) DescriptorSet 0
-                              Decorate 181(Color) Location 0
-                              Decorate 183(Depth) BuiltIn FragDepth
+                              Decorate 141(Color) Location 0
+                              Decorate 145(Depth) BuiltIn FragDepth
+                              Decorate 151(g_tTex1df4) DescriptorSet 0
+                              Decorate 151(g_tTex1df4) Binding 0
+                              Decorate 154(g_tTex1di4) DescriptorSet 0
+                              Decorate 157(g_tTex1du4) DescriptorSet 0
+                              Decorate 160(g_tTex2df4) DescriptorSet 0
+                              Decorate 163(g_tTex2di4) DescriptorSet 0
+                              Decorate 166(g_tTex2du4) DescriptorSet 0
+                              Decorate 169(g_tTex3df4) DescriptorSet 0
+                              Decorate 172(g_tTex3di4) DescriptorSet 0
+                              Decorate 175(g_tTex3du4) DescriptorSet 0
+                              Decorate 178(g_tTexcdf4) DescriptorSet 0
+                              Decorate 181(g_tTexcdi4) DescriptorSet 0
+                              Decorate 184(g_tTexcdu4) DescriptorSet 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -549,48 +568,46 @@ gl_FragCoord origin is upper left
              135:  103(fvec4) ConstantComposite 134 134 134 134
              136:             TypePointer Function 103(fvec4)
              138:     30(int) Constant 1
-             140:             TypePointer Output 130(PS_OUTPUT)
-141(@entryPointOutput):    140(ptr) Variable Output
-             144:             TypeImage 6(float) 1D sampled format:Unknown
-             145:             TypePointer UniformConstant 144
- 146(g_tTex1df4):    145(ptr) Variable UniformConstant
-             147:             TypeImage 30(int) 1D sampled format:Unknown
-             148:             TypePointer UniformConstant 147
- 149(g_tTex1di4):    148(ptr) Variable UniformConstant
-             150:             TypeImage 43(int) 1D sampled format:Unknown
-             151:             TypePointer UniformConstant 150
- 152(g_tTex1du4):    151(ptr) Variable UniformConstant
-             153:             TypeImage 6(float) 2D sampled format:Unknown
-             154:             TypePointer UniformConstant 153
- 155(g_tTex2df4):    154(ptr) Variable UniformConstant
-             156:             TypeImage 30(int) 2D sampled format:Unknown
-             157:             TypePointer UniformConstant 156
- 158(g_tTex2di4):    157(ptr) Variable UniformConstant
-             159:             TypeImage 43(int) 2D sampled format:Unknown
-             160:             TypePointer UniformConstant 159
- 161(g_tTex2du4):    160(ptr) Variable UniformConstant
-             162:             TypeImage 6(float) 3D sampled format:Unknown
-             163:             TypePointer UniformConstant 162
- 164(g_tTex3df4):    163(ptr) Variable UniformConstant
-             165:             TypeImage 30(int) 3D sampled format:Unknown
-             166:             TypePointer UniformConstant 165
- 167(g_tTex3di4):    166(ptr) Variable UniformConstant
-             168:             TypeImage 43(int) 3D sampled format:Unknown
-             169:             TypePointer UniformConstant 168
- 170(g_tTex3du4):    169(ptr) Variable UniformConstant
-             171:             TypeImage 6(float) Cube sampled format:Unknown
-             172:             TypePointer UniformConstant 171
- 173(g_tTexcdf4):    172(ptr) Variable UniformConstant
-             174:             TypeImage 30(int) Cube sampled format:Unknown
-             175:             TypePointer UniformConstant 174
- 176(g_tTexcdi4):    175(ptr) Variable UniformConstant
-             177:             TypeImage 43(int) Cube sampled format:Unknown
-             178:             TypePointer UniformConstant 177
- 179(g_tTexcdu4):    178(ptr) Variable UniformConstant
-             180:             TypePointer Output 103(fvec4)
-      181(Color):    180(ptr) Variable Output
-             182:             TypePointer Output 6(float)
-      183(Depth):    182(ptr) Variable Output
+             140:             TypePointer Output 103(fvec4)
+      141(Color):    140(ptr) Variable Output
+             144:             TypePointer Output 6(float)
+      145(Depth):    144(ptr) Variable Output
+             149:             TypeImage 6(float) 1D sampled format:Unknown
+             150:             TypePointer UniformConstant 149
+ 151(g_tTex1df4):    150(ptr) Variable UniformConstant
+             152:             TypeImage 30(int) 1D sampled format:Unknown
+             153:             TypePointer UniformConstant 152
+ 154(g_tTex1di4):    153(ptr) Variable UniformConstant
+             155:             TypeImage 43(int) 1D sampled format:Unknown
+             156:             TypePointer UniformConstant 155
+ 157(g_tTex1du4):    156(ptr) Variable UniformConstant
+             158:             TypeImage 6(float) 2D sampled format:Unknown
+             159:             TypePointer UniformConstant 158
+ 160(g_tTex2df4):    159(ptr) Variable UniformConstant
+             161:             TypeImage 30(int) 2D sampled format:Unknown
+             162:             TypePointer UniformConstant 161
+ 163(g_tTex2di4):    162(ptr) Variable UniformConstant
+             164:             TypeImage 43(int) 2D sampled format:Unknown
+             165:             TypePointer UniformConstant 164
+ 166(g_tTex2du4):    165(ptr) Variable UniformConstant
+             167:             TypeImage 6(float) 3D sampled format:Unknown
+             168:             TypePointer UniformConstant 167
+ 169(g_tTex3df4):    168(ptr) Variable UniformConstant
+             170:             TypeImage 30(int) 3D sampled format:Unknown
+             171:             TypePointer UniformConstant 170
+ 172(g_tTex3di4):    171(ptr) Variable UniformConstant
+             173:             TypeImage 43(int) 3D sampled format:Unknown
+             174:             TypePointer UniformConstant 173
+ 175(g_tTex3du4):    174(ptr) Variable UniformConstant
+             176:             TypeImage 6(float) Cube sampled format:Unknown
+             177:             TypePointer UniformConstant 176
+ 178(g_tTexcdf4):    177(ptr) Variable UniformConstant
+             179:             TypeImage 30(int) Cube sampled format:Unknown
+             180:             TypePointer UniformConstant 179
+ 181(g_tTexcdi4):    180(ptr) Variable UniformConstant
+             182:             TypeImage 43(int) Cube sampled format:Unknown
+             183:             TypePointer UniformConstant 182
+ 184(g_tTexcdu4):    183(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
           8(r10):      7(ptr) Variable Function
@@ -667,7 +684,11 @@ gl_FragCoord origin is upper left
                               Store 137 135
              139:      7(ptr) AccessChain 132(psout) 138
                               Store 139 134
-             142:130(PS_OUTPUT) Load 132(psout)
-                              Store 141(@entryPointOutput) 142
+             142:    136(ptr) AccessChain 132(psout) 133
+             143:  103(fvec4) Load 142
+                              Store 141(Color) 143
+             146:      7(ptr) AccessChain 132(psout) 138
+             147:    6(float) Load 146
+                              Store 145(Depth) 147
                               Return
                               FunctionEnd
index 10ae1b7..705e283 100644 (file)
@@ -157,10 +157,20 @@ gl_FragCoord origin is upper left
 0:58            1 (const int)
 0:58        Constant:
 0:58          1.000000
-0:60      Sequence
-0:60        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:60          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:60          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:60            Color: direct index for structure (temp 4-component vector of float)
+0:60              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:60              Constant:
+0:60                0 (const int)
+0:60          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:60            Depth: direct index for structure (temp float FragDepth)
+0:60              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:60              Constant:
+0:60                1 (const int)
 0:60        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -350,10 +360,20 @@ gl_FragCoord origin is upper left
 0:58            1 (const int)
 0:58        Constant:
 0:58          1.000000
-0:60      Sequence
-0:60        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:60          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:60          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:60            Color: direct index for structure (temp 4-component vector of float)
+0:60              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:60              Constant:
+0:60                0 (const int)
+0:60          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:60            Depth: direct index for structure (temp float FragDepth)
+0:60              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:60              Constant:
+0:60                1 (const int)
 0:60        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -383,14 +403,14 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 182
+// Id's are bound by 183
 
                               Capability Shader
                               Capability Sampled1D
                               Capability SampledCubeArray
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 139 179 181
+                              EntryPoint Fragment 4  "main" 139 143
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 8  "r00"
@@ -416,21 +436,20 @@ gl_FragCoord origin is upper left
                               MemberName 128(PS_OUTPUT) 0  "Color"
                               MemberName 128(PS_OUTPUT) 1  "Depth"
                               Name 130  "psout"
-                              Name 139  "@entryPointOutput"
-                              Name 144  "g_tTex3df4"
-                              Name 147  "g_tTex3di4"
-                              Name 150  "g_tTex3du4"
-                              Name 153  "g_tTex1df4a"
-                              Name 156  "g_tTex1di4a"
-                              Name 159  "g_tTex1du4a"
-                              Name 162  "g_tTex2df4a"
-                              Name 165  "g_tTex2di4a"
-                              Name 168  "g_tTex2du4a"
-                              Name 171  "g_tTexcdf4a"
-                              Name 174  "g_tTexcdi4a"
-                              Name 177  "g_tTexcdu4a"
-                              Name 179  "Color"
-                              Name 181  "Depth"
+                              Name 139  "Color"
+                              Name 143  "Depth"
+                              Name 149  "g_tTex3df4"
+                              Name 152  "g_tTex3di4"
+                              Name 155  "g_tTex3du4"
+                              Name 158  "g_tTex1df4a"
+                              Name 161  "g_tTex1di4a"
+                              Name 164  "g_tTex1du4a"
+                              Name 167  "g_tTex2df4a"
+                              Name 170  "g_tTex2di4a"
+                              Name 173  "g_tTex2du4a"
+                              Name 176  "g_tTexcdf4a"
+                              Name 179  "g_tTexcdi4a"
+                              Name 182  "g_tTexcdu4a"
                               Decorate 11(g_tTex1df4) DescriptorSet 0
                               Decorate 11(g_tTex1df4) Binding 0
                               Decorate 15(g_sSamp) DescriptorSet 0
@@ -444,20 +463,20 @@ gl_FragCoord origin is upper left
                               Decorate 106(g_tTexcdi4) DescriptorSet 0
                               Decorate 118(g_tTexcdu4) DescriptorSet 0
                               MemberDecorate 128(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 144(g_tTex3df4) DescriptorSet 0
-                              Decorate 147(g_tTex3di4) DescriptorSet 0
-                              Decorate 150(g_tTex3du4) DescriptorSet 0
-                              Decorate 153(g_tTex1df4a) DescriptorSet 0
-                              Decorate 156(g_tTex1di4a) DescriptorSet 0
-                              Decorate 159(g_tTex1du4a) DescriptorSet 0
-                              Decorate 162(g_tTex2df4a) DescriptorSet 0
-                              Decorate 165(g_tTex2di4a) DescriptorSet 0
-                              Decorate 168(g_tTex2du4a) DescriptorSet 0
-                              Decorate 171(g_tTexcdf4a) DescriptorSet 0
-                              Decorate 174(g_tTexcdi4a) DescriptorSet 0
-                              Decorate 177(g_tTexcdu4a) DescriptorSet 0
-                              Decorate 179(Color) Location 0
-                              Decorate 181(Depth) BuiltIn FragDepth
+                              Decorate 139(Color) Location 0
+                              Decorate 143(Depth) BuiltIn FragDepth
+                              Decorate 149(g_tTex3df4) DescriptorSet 0
+                              Decorate 152(g_tTex3di4) DescriptorSet 0
+                              Decorate 155(g_tTex3du4) DescriptorSet 0
+                              Decorate 158(g_tTex1df4a) DescriptorSet 0
+                              Decorate 161(g_tTex1di4a) DescriptorSet 0
+                              Decorate 164(g_tTex1du4a) DescriptorSet 0
+                              Decorate 167(g_tTex2df4a) DescriptorSet 0
+                              Decorate 170(g_tTex2di4a) DescriptorSet 0
+                              Decorate 173(g_tTex2du4a) DescriptorSet 0
+                              Decorate 176(g_tTexcdf4a) DescriptorSet 0
+                              Decorate 179(g_tTexcdi4a) DescriptorSet 0
+                              Decorate 182(g_tTexcdu4a) DescriptorSet 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -529,48 +548,46 @@ gl_FragCoord origin is upper left
              133:  127(fvec4) ConstantComposite 132 132 132 132
              134:             TypePointer Function 127(fvec4)
              136:     26(int) Constant 1
-             138:             TypePointer Output 128(PS_OUTPUT)
-139(@entryPointOutput):    138(ptr) Variable Output
-             142:             TypeImage 6(float) 3D sampled format:Unknown
-             143:             TypePointer UniformConstant 142
- 144(g_tTex3df4):    143(ptr) Variable UniformConstant
-             145:             TypeImage 26(int) 3D sampled format:Unknown
-             146:             TypePointer UniformConstant 145
- 147(g_tTex3di4):    146(ptr) Variable UniformConstant
-             148:             TypeImage 38(int) 3D sampled format:Unknown
-             149:             TypePointer UniformConstant 148
- 150(g_tTex3du4):    149(ptr) Variable UniformConstant
-             151:             TypeImage 6(float) 1D array sampled format:Unknown
-             152:             TypePointer UniformConstant 151
-153(g_tTex1df4a):    152(ptr) Variable UniformConstant
-             154:             TypeImage 26(int) 1D array sampled format:Unknown
-             155:             TypePointer UniformConstant 154
-156(g_tTex1di4a):    155(ptr) Variable UniformConstant
-             157:             TypeImage 38(int) 1D array sampled format:Unknown
-             158:             TypePointer UniformConstant 157
-159(g_tTex1du4a):    158(ptr) Variable UniformConstant
-             160:             TypeImage 6(float) 2D array sampled format:Unknown
-             161:             TypePointer UniformConstant 160
-162(g_tTex2df4a):    161(ptr) Variable UniformConstant
-             163:             TypeImage 26(int) 2D array sampled format:Unknown
-             164:             TypePointer UniformConstant 163
-165(g_tTex2di4a):    164(ptr) Variable UniformConstant
-             166:             TypeImage 38(int) 2D array sampled format:Unknown
-             167:             TypePointer UniformConstant 166
-168(g_tTex2du4a):    167(ptr) Variable UniformConstant
-             169:             TypeImage 6(float) Cube array sampled format:Unknown
-             170:             TypePointer UniformConstant 169
-171(g_tTexcdf4a):    170(ptr) Variable UniformConstant
-             172:             TypeImage 26(int) Cube array sampled format:Unknown
-             173:             TypePointer UniformConstant 172
-174(g_tTexcdi4a):    173(ptr) Variable UniformConstant
-             175:             TypeImage 38(int) Cube array sampled format:Unknown
-             176:             TypePointer UniformConstant 175
-177(g_tTexcdu4a):    176(ptr) Variable UniformConstant
-             178:             TypePointer Output 127(fvec4)
-      179(Color):    178(ptr) Variable Output
-             180:             TypePointer Output 6(float)
-      181(Depth):    180(ptr) Variable Output
+             138:             TypePointer Output 127(fvec4)
+      139(Color):    138(ptr) Variable Output
+             142:             TypePointer Output 6(float)
+      143(Depth):    142(ptr) Variable Output
+             147:             TypeImage 6(float) 3D sampled format:Unknown
+             148:             TypePointer UniformConstant 147
+ 149(g_tTex3df4):    148(ptr) Variable UniformConstant
+             150:             TypeImage 26(int) 3D sampled format:Unknown
+             151:             TypePointer UniformConstant 150
+ 152(g_tTex3di4):    151(ptr) Variable UniformConstant
+             153:             TypeImage 38(int) 3D sampled format:Unknown
+             154:             TypePointer UniformConstant 153
+ 155(g_tTex3du4):    154(ptr) Variable UniformConstant
+             156:             TypeImage 6(float) 1D array sampled format:Unknown
+             157:             TypePointer UniformConstant 156
+158(g_tTex1df4a):    157(ptr) Variable UniformConstant
+             159:             TypeImage 26(int) 1D array sampled format:Unknown
+             160:             TypePointer UniformConstant 159
+161(g_tTex1di4a):    160(ptr) Variable UniformConstant
+             162:             TypeImage 38(int) 1D array sampled format:Unknown
+             163:             TypePointer UniformConstant 162
+164(g_tTex1du4a):    163(ptr) Variable UniformConstant
+             165:             TypeImage 6(float) 2D array sampled format:Unknown
+             166:             TypePointer UniformConstant 165
+167(g_tTex2df4a):    166(ptr) Variable UniformConstant
+             168:             TypeImage 26(int) 2D array sampled format:Unknown
+             169:             TypePointer UniformConstant 168
+170(g_tTex2di4a):    169(ptr) Variable UniformConstant
+             171:             TypeImage 38(int) 2D array sampled format:Unknown
+             172:             TypePointer UniformConstant 171
+173(g_tTex2du4a):    172(ptr) Variable UniformConstant
+             174:             TypeImage 6(float) Cube array sampled format:Unknown
+             175:             TypePointer UniformConstant 174
+176(g_tTexcdf4a):    175(ptr) Variable UniformConstant
+             177:             TypeImage 26(int) Cube array sampled format:Unknown
+             178:             TypePointer UniformConstant 177
+179(g_tTexcdi4a):    178(ptr) Variable UniformConstant
+             180:             TypeImage 38(int) Cube array sampled format:Unknown
+             181:             TypePointer UniformConstant 180
+182(g_tTexcdu4a):    181(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
           8(r00):      7(ptr) Variable Function
@@ -647,7 +664,11 @@ gl_FragCoord origin is upper left
                               Store 135 133
              137:      7(ptr) AccessChain 130(psout) 136
                               Store 137 132
-             140:128(PS_OUTPUT) Load 130(psout)
-                              Store 139(@entryPointOutput) 140
+             140:    134(ptr) AccessChain 130(psout) 131
+             141:  127(fvec4) Load 140
+                              Store 139(Color) 141
+             144:      7(ptr) AccessChain 130(psout) 136
+             145:    6(float) Load 144
+                              Store 143(Depth) 145
                               Return
                               FunctionEnd
index e744e60..6e7e0fd 100644 (file)
@@ -124,10 +124,20 @@ gl_FragCoord origin is upper left
 0:63            1 (const int)
 0:63        Constant:
 0:63          1.000000
-0:65      Sequence
-0:65        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:65          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:65          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:65            Color: direct index for structure (temp 4-component vector of float)
+0:65              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:65              Constant:
+0:65                0 (const int)
+0:65          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:65            Depth: direct index for structure (temp float FragDepth)
+0:65              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:65              Constant:
+0:65                1 (const int)
 0:65        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -284,10 +294,20 @@ gl_FragCoord origin is upper left
 0:63            1 (const int)
 0:63        Constant:
 0:63          1.000000
-0:65      Sequence
-0:65        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:65          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:65          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:65            Color: direct index for structure (temp 4-component vector of float)
+0:65              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:65              Constant:
+0:65                0 (const int)
+0:65          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:65            Depth: direct index for structure (temp float FragDepth)
+0:65              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:65              Constant:
+0:65                1 (const int)
 0:65        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -317,14 +337,14 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 156
+// Id's are bound by 157
 
                               Capability Shader
                               Capability Sampled1D
                               Capability SampledCubeArray
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 104 153 155
+                              EntryPoint Fragment 4  "main" 104 108
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 8  "r01"
@@ -344,24 +364,23 @@ gl_FragCoord origin is upper left
                               MemberName 93(PS_OUTPUT) 0  "Color"
                               MemberName 93(PS_OUTPUT) 1  "Depth"
                               Name 95  "psout"
-                              Name 104  "@entryPointOutput"
-                              Name 109  "g_tTex3df4"
-                              Name 112  "g_tTex3di4"
-                              Name 115  "g_tTex3du4"
-                              Name 118  "g_tTexcdf4"
-                              Name 121  "g_tTexcdi4"
-                              Name 124  "g_tTexcdu4"
-                              Name 127  "g_tTex1df4a"
-                              Name 130  "g_tTex1di4a"
-                              Name 133  "g_tTex1du4a"
-                              Name 136  "g_tTex2df4a"
-                              Name 139  "g_tTex2di4a"
-                              Name 142  "g_tTex2du4a"
-                              Name 145  "g_tTexcdf4a"
-                              Name 148  "g_tTexcdi4a"
-                              Name 151  "g_tTexcdu4a"
-                              Name 153  "Color"
-                              Name 155  "Depth"
+                              Name 104  "Color"
+                              Name 108  "Depth"
+                              Name 114  "g_tTex3df4"
+                              Name 117  "g_tTex3di4"
+                              Name 120  "g_tTex3du4"
+                              Name 123  "g_tTexcdf4"
+                              Name 126  "g_tTexcdi4"
+                              Name 129  "g_tTexcdu4"
+                              Name 132  "g_tTex1df4a"
+                              Name 135  "g_tTex1di4a"
+                              Name 138  "g_tTex1du4a"
+                              Name 141  "g_tTex2df4a"
+                              Name 144  "g_tTex2di4a"
+                              Name 147  "g_tTex2du4a"
+                              Name 150  "g_tTexcdf4a"
+                              Name 153  "g_tTexcdi4a"
+                              Name 156  "g_tTexcdu4a"
                               Decorate 11(g_tTex1df4) DescriptorSet 0
                               Decorate 11(g_tTex1df4) Binding 0
                               Decorate 15(g_sSamp) DescriptorSet 0
@@ -372,23 +391,23 @@ gl_FragCoord origin is upper left
                               Decorate 71(g_tTex2di4) DescriptorSet 0
                               Decorate 83(g_tTex2du4) DescriptorSet 0
                               MemberDecorate 93(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 109(g_tTex3df4) DescriptorSet 0
-                              Decorate 112(g_tTex3di4) DescriptorSet 0
-                              Decorate 115(g_tTex3du4) DescriptorSet 0
-                              Decorate 118(g_tTexcdf4) DescriptorSet 0
-                              Decorate 121(g_tTexcdi4) DescriptorSet 0
-                              Decorate 124(g_tTexcdu4) DescriptorSet 0
-                              Decorate 127(g_tTex1df4a) DescriptorSet 0
-                              Decorate 130(g_tTex1di4a) DescriptorSet 0
-                              Decorate 133(g_tTex1du4a) DescriptorSet 0
-                              Decorate 136(g_tTex2df4a) DescriptorSet 0
-                              Decorate 139(g_tTex2di4a) DescriptorSet 0
-                              Decorate 142(g_tTex2du4a) DescriptorSet 0
-                              Decorate 145(g_tTexcdf4a) DescriptorSet 0
-                              Decorate 148(g_tTexcdi4a) DescriptorSet 0
-                              Decorate 151(g_tTexcdu4a) DescriptorSet 0
-                              Decorate 153(Color) Location 0
-                              Decorate 155(Depth) BuiltIn FragDepth
+                              Decorate 104(Color) Location 0
+                              Decorate 108(Depth) BuiltIn FragDepth
+                              Decorate 114(g_tTex3df4) DescriptorSet 0
+                              Decorate 117(g_tTex3di4) DescriptorSet 0
+                              Decorate 120(g_tTex3du4) DescriptorSet 0
+                              Decorate 123(g_tTexcdf4) DescriptorSet 0
+                              Decorate 126(g_tTexcdi4) DescriptorSet 0
+                              Decorate 129(g_tTexcdu4) DescriptorSet 0
+                              Decorate 132(g_tTex1df4a) DescriptorSet 0
+                              Decorate 135(g_tTex1di4a) DescriptorSet 0
+                              Decorate 138(g_tTex1du4a) DescriptorSet 0
+                              Decorate 141(g_tTex2df4a) DescriptorSet 0
+                              Decorate 144(g_tTex2di4a) DescriptorSet 0
+                              Decorate 147(g_tTex2du4a) DescriptorSet 0
+                              Decorate 150(g_tTexcdf4a) DescriptorSet 0
+                              Decorate 153(g_tTexcdi4a) DescriptorSet 0
+                              Decorate 156(g_tTexcdu4a) DescriptorSet 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -446,57 +465,55 @@ gl_FragCoord origin is upper left
               98:   92(fvec4) ConstantComposite 97 97 97 97
               99:             TypePointer Function 92(fvec4)
              101:     23(int) Constant 1
-             103:             TypePointer Output 93(PS_OUTPUT)
-104(@entryPointOutput):    103(ptr) Variable Output
-             107:             TypeImage 6(float) 3D sampled format:Unknown
-             108:             TypePointer UniformConstant 107
- 109(g_tTex3df4):    108(ptr) Variable UniformConstant
-             110:             TypeImage 23(int) 3D sampled format:Unknown
-             111:             TypePointer UniformConstant 110
- 112(g_tTex3di4):    111(ptr) Variable UniformConstant
-             113:             TypeImage 39(int) 3D sampled format:Unknown
-             114:             TypePointer UniformConstant 113
- 115(g_tTex3du4):    114(ptr) Variable UniformConstant
-             116:             TypeImage 6(float) Cube sampled format:Unknown
-             117:             TypePointer UniformConstant 116
- 118(g_tTexcdf4):    117(ptr) Variable UniformConstant
-             119:             TypeImage 23(int) Cube sampled format:Unknown
-             120:             TypePointer UniformConstant 119
- 121(g_tTexcdi4):    120(ptr) Variable UniformConstant
-             122:             TypeImage 39(int) Cube sampled format:Unknown
-             123:             TypePointer UniformConstant 122
- 124(g_tTexcdu4):    123(ptr) Variable UniformConstant
-             125:             TypeImage 6(float) 1D array sampled format:Unknown
-             126:             TypePointer UniformConstant 125
-127(g_tTex1df4a):    126(ptr) Variable UniformConstant
-             128:             TypeImage 23(int) 1D array sampled format:Unknown
-             129:             TypePointer UniformConstant 128
-130(g_tTex1di4a):    129(ptr) Variable UniformConstant
-             131:             TypeImage 39(int) 1D array sampled format:Unknown
-             132:             TypePointer UniformConstant 131
-133(g_tTex1du4a):    132(ptr) Variable UniformConstant
-             134:             TypeImage 6(float) 2D array sampled format:Unknown
-             135:             TypePointer UniformConstant 134
-136(g_tTex2df4a):    135(ptr) Variable UniformConstant
-             137:             TypeImage 23(int) 2D array sampled format:Unknown
-             138:             TypePointer UniformConstant 137
-139(g_tTex2di4a):    138(ptr) Variable UniformConstant
-             140:             TypeImage 39(int) 2D array sampled format:Unknown
-             141:             TypePointer UniformConstant 140
-142(g_tTex2du4a):    141(ptr) Variable UniformConstant
-             143:             TypeImage 6(float) Cube array sampled format:Unknown
-             144:             TypePointer UniformConstant 143
-145(g_tTexcdf4a):    144(ptr) Variable UniformConstant
-             146:             TypeImage 23(int) Cube array sampled format:Unknown
-             147:             TypePointer UniformConstant 146
-148(g_tTexcdi4a):    147(ptr) Variable UniformConstant
-             149:             TypeImage 39(int) Cube array sampled format:Unknown
-             150:             TypePointer UniformConstant 149
-151(g_tTexcdu4a):    150(ptr) Variable UniformConstant
-             152:             TypePointer Output 92(fvec4)
-      153(Color):    152(ptr) Variable Output
-             154:             TypePointer Output 6(float)
-      155(Depth):    154(ptr) Variable Output
+             103:             TypePointer Output 92(fvec4)
+      104(Color):    103(ptr) Variable Output
+             107:             TypePointer Output 6(float)
+      108(Depth):    107(ptr) Variable Output
+             112:             TypeImage 6(float) 3D sampled format:Unknown
+             113:             TypePointer UniformConstant 112
+ 114(g_tTex3df4):    113(ptr) Variable UniformConstant
+             115:             TypeImage 23(int) 3D sampled format:Unknown
+             116:             TypePointer UniformConstant 115
+ 117(g_tTex3di4):    116(ptr) Variable UniformConstant
+             118:             TypeImage 39(int) 3D sampled format:Unknown
+             119:             TypePointer UniformConstant 118
+ 120(g_tTex3du4):    119(ptr) Variable UniformConstant
+             121:             TypeImage 6(float) Cube sampled format:Unknown
+             122:             TypePointer UniformConstant 121
+ 123(g_tTexcdf4):    122(ptr) Variable UniformConstant
+             124:             TypeImage 23(int) Cube sampled format:Unknown
+             125:             TypePointer UniformConstant 124
+ 126(g_tTexcdi4):    125(ptr) Variable UniformConstant
+             127:             TypeImage 39(int) Cube sampled format:Unknown
+             128:             TypePointer UniformConstant 127
+ 129(g_tTexcdu4):    128(ptr) Variable UniformConstant
+             130:             TypeImage 6(float) 1D array sampled format:Unknown
+             131:             TypePointer UniformConstant 130
+132(g_tTex1df4a):    131(ptr) Variable UniformConstant
+             133:             TypeImage 23(int) 1D array sampled format:Unknown
+             134:             TypePointer UniformConstant 133
+135(g_tTex1di4a):    134(ptr) Variable UniformConstant
+             136:             TypeImage 39(int) 1D array sampled format:Unknown
+             137:             TypePointer UniformConstant 136
+138(g_tTex1du4a):    137(ptr) Variable UniformConstant
+             139:             TypeImage 6(float) 2D array sampled format:Unknown
+             140:             TypePointer UniformConstant 139
+141(g_tTex2df4a):    140(ptr) Variable UniformConstant
+             142:             TypeImage 23(int) 2D array sampled format:Unknown
+             143:             TypePointer UniformConstant 142
+144(g_tTex2di4a):    143(ptr) Variable UniformConstant
+             145:             TypeImage 39(int) 2D array sampled format:Unknown
+             146:             TypePointer UniformConstant 145
+147(g_tTex2du4a):    146(ptr) Variable UniformConstant
+             148:             TypeImage 6(float) Cube array sampled format:Unknown
+             149:             TypePointer UniformConstant 148
+150(g_tTexcdf4a):    149(ptr) Variable UniformConstant
+             151:             TypeImage 23(int) Cube array sampled format:Unknown
+             152:             TypePointer UniformConstant 151
+153(g_tTexcdi4a):    152(ptr) Variable UniformConstant
+             154:             TypeImage 39(int) Cube array sampled format:Unknown
+             155:             TypePointer UniformConstant 154
+156(g_tTexcdu4a):    155(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
           8(r01):      7(ptr) Variable Function
@@ -549,7 +566,11 @@ gl_FragCoord origin is upper left
                               Store 100 98
              102:      7(ptr) AccessChain 95(psout) 101
                               Store 102 97
-             105:93(PS_OUTPUT) Load 95(psout)
-                              Store 104(@entryPointOutput) 105
+             105:     99(ptr) AccessChain 95(psout) 96
+             106:   92(fvec4) Load 105
+                              Store 104(Color) 106
+             109:      7(ptr) AccessChain 95(psout) 101
+             110:    6(float) Load 109
+                              Store 108(Depth) 110
                               Return
                               FunctionEnd
index f529d46..ac23b8f 100644 (file)
@@ -130,10 +130,20 @@ gl_FragCoord origin is upper left
 0:64            1 (const int)
 0:64        Constant:
 0:64          1.000000
-0:66      Sequence
-0:66        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:66          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:66          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:66            Color: direct index for structure (temp 4-component vector of float)
+0:66              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:66              Constant:
+0:66                0 (const int)
+0:66          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:66            Depth: direct index for structure (temp float FragDepth)
+0:66              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:66              Constant:
+0:66                1 (const int)
 0:66        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -296,10 +306,20 @@ gl_FragCoord origin is upper left
 0:64            1 (const int)
 0:64        Constant:
 0:64          1.000000
-0:66      Sequence
-0:66        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:66          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:66          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:66            Color: direct index for structure (temp 4-component vector of float)
+0:66              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:66              Constant:
+0:66                0 (const int)
+0:66          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:66            Depth: direct index for structure (temp float FragDepth)
+0:66              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:66              Constant:
+0:66                1 (const int)
 0:66        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -329,14 +349,14 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 162
+// Id's are bound by 163
 
                               Capability Shader
                               Capability Sampled1D
                               Capability SampledCubeArray
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 110 159 161
+                              EntryPoint Fragment 4  "main" 110 114
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 8  "r11"
@@ -356,24 +376,23 @@ gl_FragCoord origin is upper left
                               MemberName 99(PS_OUTPUT) 0  "Color"
                               MemberName 99(PS_OUTPUT) 1  "Depth"
                               Name 101  "psout"
-                              Name 110  "@entryPointOutput"
-                              Name 115  "g_tTex1df4"
-                              Name 118  "g_tTex1di4"
-                              Name 121  "g_tTex1du4"
-                              Name 124  "g_tTex2df4"
-                              Name 127  "g_tTex2di4"
-                              Name 130  "g_tTex2du4"
-                              Name 133  "g_tTex3df4"
-                              Name 136  "g_tTex3di4"
-                              Name 139  "g_tTex3du4"
-                              Name 142  "g_tTexcdf4"
-                              Name 145  "g_tTexcdi4"
-                              Name 148  "g_tTexcdu4"
-                              Name 151  "g_tTexcdf4a"
-                              Name 154  "g_tTexcdi4a"
-                              Name 157  "g_tTexcdu4a"
-                              Name 159  "Color"
-                              Name 161  "Depth"
+                              Name 110  "Color"
+                              Name 114  "Depth"
+                              Name 120  "g_tTex1df4"
+                              Name 123  "g_tTex1di4"
+                              Name 126  "g_tTex1du4"
+                              Name 129  "g_tTex2df4"
+                              Name 132  "g_tTex2di4"
+                              Name 135  "g_tTex2du4"
+                              Name 138  "g_tTex3df4"
+                              Name 141  "g_tTex3di4"
+                              Name 144  "g_tTex3du4"
+                              Name 147  "g_tTexcdf4"
+                              Name 150  "g_tTexcdi4"
+                              Name 153  "g_tTexcdu4"
+                              Name 156  "g_tTexcdf4a"
+                              Name 159  "g_tTexcdi4a"
+                              Name 162  "g_tTexcdu4a"
                               Decorate 11(g_tTex1df4a) DescriptorSet 0
                               Decorate 15(g_sSamp) DescriptorSet 0
                               Decorate 15(g_sSamp) Binding 0
@@ -383,24 +402,24 @@ gl_FragCoord origin is upper left
                               Decorate 77(g_tTex2di4a) DescriptorSet 0
                               Decorate 89(g_tTex2du4a) DescriptorSet 0
                               MemberDecorate 99(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 115(g_tTex1df4) DescriptorSet 0
-                              Decorate 115(g_tTex1df4) Binding 0
-                              Decorate 118(g_tTex1di4) DescriptorSet 0
-                              Decorate 121(g_tTex1du4) DescriptorSet 0
-                              Decorate 124(g_tTex2df4) DescriptorSet 0
-                              Decorate 127(g_tTex2di4) DescriptorSet 0
-                              Decorate 130(g_tTex2du4) DescriptorSet 0
-                              Decorate 133(g_tTex3df4) DescriptorSet 0
-                              Decorate 136(g_tTex3di4) DescriptorSet 0
-                              Decorate 139(g_tTex3du4) DescriptorSet 0
-                              Decorate 142(g_tTexcdf4) DescriptorSet 0
-                              Decorate 145(g_tTexcdi4) DescriptorSet 0
-                              Decorate 148(g_tTexcdu4) DescriptorSet 0
-                              Decorate 151(g_tTexcdf4a) DescriptorSet 0
-                              Decorate 154(g_tTexcdi4a) DescriptorSet 0
-                              Decorate 157(g_tTexcdu4a) DescriptorSet 0
-                              Decorate 159(Color) Location 0
-                              Decorate 161(Depth) BuiltIn FragDepth
+                              Decorate 110(Color) Location 0
+                              Decorate 114(Depth) BuiltIn FragDepth
+                              Decorate 120(g_tTex1df4) DescriptorSet 0
+                              Decorate 120(g_tTex1df4) Binding 0
+                              Decorate 123(g_tTex1di4) DescriptorSet 0
+                              Decorate 126(g_tTex1du4) DescriptorSet 0
+                              Decorate 129(g_tTex2df4) DescriptorSet 0
+                              Decorate 132(g_tTex2di4) DescriptorSet 0
+                              Decorate 135(g_tTex2du4) DescriptorSet 0
+                              Decorate 138(g_tTex3df4) DescriptorSet 0
+                              Decorate 141(g_tTex3di4) DescriptorSet 0
+                              Decorate 144(g_tTex3du4) DescriptorSet 0
+                              Decorate 147(g_tTexcdf4) DescriptorSet 0
+                              Decorate 150(g_tTexcdi4) DescriptorSet 0
+                              Decorate 153(g_tTexcdu4) DescriptorSet 0
+                              Decorate 156(g_tTexcdf4a) DescriptorSet 0
+                              Decorate 159(g_tTexcdi4a) DescriptorSet 0
+                              Decorate 162(g_tTexcdu4a) DescriptorSet 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -461,57 +480,55 @@ gl_FragCoord origin is upper left
              104:   98(fvec4) ConstantComposite 103 103 103 103
              105:             TypePointer Function 98(fvec4)
              107:     27(int) Constant 1
-             109:             TypePointer Output 99(PS_OUTPUT)
-110(@entryPointOutput):    109(ptr) Variable Output
-             113:             TypeImage 6(float) 1D sampled format:Unknown
-             114:             TypePointer UniformConstant 113
- 115(g_tTex1df4):    114(ptr) Variable UniformConstant
-             116:             TypeImage 27(int) 1D sampled format:Unknown
-             117:             TypePointer UniformConstant 116
- 118(g_tTex1di4):    117(ptr) Variable UniformConstant
-             119:             TypeImage 44(int) 1D sampled format:Unknown
-             120:             TypePointer UniformConstant 119
- 121(g_tTex1du4):    120(ptr) Variable UniformConstant
-             122:             TypeImage 6(float) 2D sampled format:Unknown
-             123:             TypePointer UniformConstant 122
- 124(g_tTex2df4):    123(ptr) Variable UniformConstant
-             125:             TypeImage 27(int) 2D sampled format:Unknown
-             126:             TypePointer UniformConstant 125
- 127(g_tTex2di4):    126(ptr) Variable UniformConstant
-             128:             TypeImage 44(int) 2D sampled format:Unknown
-             129:             TypePointer UniformConstant 128
- 130(g_tTex2du4):    129(ptr) Variable UniformConstant
-             131:             TypeImage 6(float) 3D sampled format:Unknown
-             132:             TypePointer UniformConstant 131
- 133(g_tTex3df4):    132(ptr) Variable UniformConstant
-             134:             TypeImage 27(int) 3D sampled format:Unknown
-             135:             TypePointer UniformConstant 134
- 136(g_tTex3di4):    135(ptr) Variable UniformConstant
-             137:             TypeImage 44(int) 3D sampled format:Unknown
-             138:             TypePointer UniformConstant 137
- 139(g_tTex3du4):    138(ptr) Variable UniformConstant
-             140:             TypeImage 6(float) Cube sampled format:Unknown
-             141:             TypePointer UniformConstant 140
- 142(g_tTexcdf4):    141(ptr) Variable UniformConstant
-             143:             TypeImage 27(int) Cube sampled format:Unknown
-             144:             TypePointer UniformConstant 143
- 145(g_tTexcdi4):    144(ptr) Variable UniformConstant
-             146:             TypeImage 44(int) Cube sampled format:Unknown
-             147:             TypePointer UniformConstant 146
- 148(g_tTexcdu4):    147(ptr) Variable UniformConstant
-             149:             TypeImage 6(float) Cube array sampled format:Unknown
-             150:             TypePointer UniformConstant 149
-151(g_tTexcdf4a):    150(ptr) Variable UniformConstant
-             152:             TypeImage 27(int) Cube array sampled format:Unknown
-             153:             TypePointer UniformConstant 152
-154(g_tTexcdi4a):    153(ptr) Variable UniformConstant
-             155:             TypeImage 44(int) Cube array sampled format:Unknown
-             156:             TypePointer UniformConstant 155
-157(g_tTexcdu4a):    156(ptr) Variable UniformConstant
-             158:             TypePointer Output 98(fvec4)
-      159(Color):    158(ptr) Variable Output
-             160:             TypePointer Output 6(float)
-      161(Depth):    160(ptr) Variable Output
+             109:             TypePointer Output 98(fvec4)
+      110(Color):    109(ptr) Variable Output
+             113:             TypePointer Output 6(float)
+      114(Depth):    113(ptr) Variable Output
+             118:             TypeImage 6(float) 1D sampled format:Unknown
+             119:             TypePointer UniformConstant 118
+ 120(g_tTex1df4):    119(ptr) Variable UniformConstant
+             121:             TypeImage 27(int) 1D sampled format:Unknown
+             122:             TypePointer UniformConstant 121
+ 123(g_tTex1di4):    122(ptr) Variable UniformConstant
+             124:             TypeImage 44(int) 1D sampled format:Unknown
+             125:             TypePointer UniformConstant 124
+ 126(g_tTex1du4):    125(ptr) Variable UniformConstant
+             127:             TypeImage 6(float) 2D sampled format:Unknown
+             128:             TypePointer UniformConstant 127
+ 129(g_tTex2df4):    128(ptr) Variable UniformConstant
+             130:             TypeImage 27(int) 2D sampled format:Unknown
+             131:             TypePointer UniformConstant 130
+ 132(g_tTex2di4):    131(ptr) Variable UniformConstant
+             133:             TypeImage 44(int) 2D sampled format:Unknown
+             134:             TypePointer UniformConstant 133
+ 135(g_tTex2du4):    134(ptr) Variable UniformConstant
+             136:             TypeImage 6(float) 3D sampled format:Unknown
+             137:             TypePointer UniformConstant 136
+ 138(g_tTex3df4):    137(ptr) Variable UniformConstant
+             139:             TypeImage 27(int) 3D sampled format:Unknown
+             140:             TypePointer UniformConstant 139
+ 141(g_tTex3di4):    140(ptr) Variable UniformConstant
+             142:             TypeImage 44(int) 3D sampled format:Unknown
+             143:             TypePointer UniformConstant 142
+ 144(g_tTex3du4):    143(ptr) Variable UniformConstant
+             145:             TypeImage 6(float) Cube sampled format:Unknown
+             146:             TypePointer UniformConstant 145
+ 147(g_tTexcdf4):    146(ptr) Variable UniformConstant
+             148:             TypeImage 27(int) Cube sampled format:Unknown
+             149:             TypePointer UniformConstant 148
+ 150(g_tTexcdi4):    149(ptr) Variable UniformConstant
+             151:             TypeImage 44(int) Cube sampled format:Unknown
+             152:             TypePointer UniformConstant 151
+ 153(g_tTexcdu4):    152(ptr) Variable UniformConstant
+             154:             TypeImage 6(float) Cube array sampled format:Unknown
+             155:             TypePointer UniformConstant 154
+156(g_tTexcdf4a):    155(ptr) Variable UniformConstant
+             157:             TypeImage 27(int) Cube array sampled format:Unknown
+             158:             TypePointer UniformConstant 157
+159(g_tTexcdi4a):    158(ptr) Variable UniformConstant
+             160:             TypeImage 44(int) Cube array sampled format:Unknown
+             161:             TypePointer UniformConstant 160
+162(g_tTexcdu4a):    161(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
           8(r11):      7(ptr) Variable Function
@@ -567,7 +584,11 @@ gl_FragCoord origin is upper left
                               Store 106 104
              108:      7(ptr) AccessChain 101(psout) 107
                               Store 108 103
-             111:99(PS_OUTPUT) Load 101(psout)
-                              Store 110(@entryPointOutput) 111
+             111:    105(ptr) AccessChain 101(psout) 102
+             112:   98(fvec4) Load 111
+                              Store 110(Color) 112
+             115:      7(ptr) AccessChain 101(psout) 107
+             116:    6(float) Load 115
+                              Store 114(Depth) 116
                               Return
                               FunctionEnd
index 75b3124..70e0fbe 100644 (file)
@@ -175,10 +175,20 @@ gl_FragCoord origin is upper left
 0:40            1 (const int)
 0:40        Constant:
 0:40          1.000000
-0:42      Sequence
-0:42        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:42          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:42          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:42            Color: direct index for structure (temp 4-component vector of float)
+0:42              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:42              Constant:
+0:42                0 (const int)
+0:42          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:42            Depth: direct index for structure (temp float FragDepth)
+0:42              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:42              Constant:
+0:42                1 (const int)
 0:42        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -375,10 +385,20 @@ gl_FragCoord origin is upper left
 0:40            1 (const int)
 0:40        Constant:
 0:40          1.000000
-0:42      Sequence
-0:42        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:42          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:42          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:42            Color: direct index for structure (temp 4-component vector of float)
+0:42              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:42              Constant:
+0:42                0 (const int)
+0:42          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:42            Depth: direct index for structure (temp float FragDepth)
+0:42              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:42              Constant:
+0:42                1 (const int)
 0:42        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -397,14 +417,14 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 132
+// Id's are bound by 133
 
                               Capability Shader
                               Capability Sampled1D
                               Capability SampledCubeArray
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 124 129 131
+                              EntryPoint Fragment 4  "main" 124 128
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 9  "txval10"
@@ -430,10 +450,9 @@ gl_FragCoord origin is upper left
                               MemberName 113(PS_OUTPUT) 0  "Color"
                               MemberName 113(PS_OUTPUT) 1  "Depth"
                               Name 115  "psout"
-                              Name 124  "@entryPointOutput"
-                              Name 127  "g_tTex1df4a"
-                              Name 129  "Color"
-                              Name 131  "Depth"
+                              Name 124  "Color"
+                              Name 128  "Depth"
+                              Name 132  "g_tTex1df4a"
                               Decorate 12(g_tTex1df4) DescriptorSet 0
                               Decorate 12(g_tTex1df4) Binding 0
                               Decorate 16(g_sSamp) DescriptorSet 0
@@ -447,10 +466,10 @@ gl_FragCoord origin is upper left
                               Decorate 98(g_tTexcdi4) DescriptorSet 0
                               Decorate 107(g_tTexcdu4) DescriptorSet 0
                               MemberDecorate 113(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 127(g_tTex1df4a) DescriptorSet 0
-                              Decorate 127(g_tTex1df4a) Binding 1
-                              Decorate 129(Color) Location 0
-                              Decorate 131(Depth) BuiltIn FragDepth
+                              Decorate 124(Color) Location 0
+                              Decorate 128(Depth) BuiltIn FragDepth
+                              Decorate 132(g_tTex1df4a) DescriptorSet 0
+                              Decorate 132(g_tTex1df4a) Binding 1
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -522,13 +541,11 @@ gl_FragCoord origin is upper left
              118:    7(fvec4) ConstantComposite 117 117 117 117
              120:     27(int) Constant 1
              121:             TypePointer Function 6(float)
-             123:             TypePointer Output 113(PS_OUTPUT)
-124(@entryPointOutput):    123(ptr) Variable Output
-127(g_tTex1df4a):     11(ptr) Variable UniformConstant
-             128:             TypePointer Output 7(fvec4)
-      129(Color):    128(ptr) Variable Output
-             130:             TypePointer Output 6(float)
-      131(Depth):    130(ptr) Variable Output
+             123:             TypePointer Output 7(fvec4)
+      124(Color):    123(ptr) Variable Output
+             127:             TypePointer Output 6(float)
+      128(Depth):    127(ptr) Variable Output
+132(g_tTex1df4a):     11(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
       9(txval10):      8(ptr) Variable Function
@@ -590,7 +607,11 @@ gl_FragCoord origin is upper left
                               Store 119 118
              122:    121(ptr) AccessChain 115(psout) 120
                               Store 122 117
-             125:113(PS_OUTPUT) Load 115(psout)
-                              Store 124(@entryPointOutput) 125
+             125:      8(ptr) AccessChain 115(psout) 116
+             126:    7(fvec4) Load 125
+                              Store 124(Color) 126
+             129:    121(ptr) AccessChain 115(psout) 120
+             130:    6(float) Load 129
+                              Store 128(Depth) 130
                               Return
                               FunctionEnd
index ed868f3..fe07552 100644 (file)
@@ -223,10 +223,20 @@ gl_FragCoord origin is upper left
 0:48            1 (const int)
 0:48        Constant:
 0:48          1.000000
-0:50      Sequence
-0:50        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:50          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:50          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:50            Color: direct index for structure (temp 4-component vector of float)
+0:50              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:50              Constant:
+0:50                0 (const int)
+0:50          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:50            Depth: direct index for structure (temp float FragDepth)
+0:50              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:50              Constant:
+0:50                1 (const int)
 0:50        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -474,10 +484,20 @@ gl_FragCoord origin is upper left
 0:48            1 (const int)
 0:48        Constant:
 0:48          1.000000
-0:50      Sequence
-0:50        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:50          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:50          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:50            Color: direct index for structure (temp 4-component vector of float)
+0:50              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:50              Constant:
+0:50                0 (const int)
+0:50          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:50            Depth: direct index for structure (temp float FragDepth)
+0:50              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:50              Constant:
+0:50                1 (const int)
 0:50        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -499,13 +519,13 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 167
+// Id's are bound by 168
 
                               Capability Shader
                               Capability Sampled1D
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 159 164 166
+                              EntryPoint Fragment 4  "main" 159 163
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 9  "txval10"
@@ -537,10 +557,9 @@ gl_FragCoord origin is upper left
                               MemberName 148(PS_OUTPUT) 0  "Color"
                               MemberName 148(PS_OUTPUT) 1  "Depth"
                               Name 150  "psout"
-                              Name 159  "@entryPointOutput"
-                              Name 162  "g_tTex1df4a"
-                              Name 164  "Color"
-                              Name 166  "Depth"
+                              Name 159  "Color"
+                              Name 163  "Depth"
+                              Name 167  "g_tTex1df4a"
                               Decorate 12(g_tTex1df4) DescriptorSet 0
                               Decorate 12(g_tTex1df4) Binding 0
                               Decorate 16(g_sSamp) DescriptorSet 0
@@ -557,10 +576,10 @@ gl_FragCoord origin is upper left
                               Decorate 133(g_tTexcdi4) DescriptorSet 0
                               Decorate 142(g_tTexcdu4) DescriptorSet 0
                               MemberDecorate 148(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 162(g_tTex1df4a) DescriptorSet 0
-                              Decorate 162(g_tTex1df4a) Binding 1
-                              Decorate 164(Color) Location 0
-                              Decorate 166(Depth) BuiltIn FragDepth
+                              Decorate 159(Color) Location 0
+                              Decorate 163(Depth) BuiltIn FragDepth
+                              Decorate 167(g_tTex1df4a) DescriptorSet 0
+                              Decorate 167(g_tTex1df4a) Binding 1
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -652,13 +671,11 @@ gl_FragCoord origin is upper left
              153:    7(fvec4) ConstantComposite 152 152 152 152
              155:     24(int) Constant 1
              156:             TypePointer Function 6(float)
-             158:             TypePointer Output 148(PS_OUTPUT)
-159(@entryPointOutput):    158(ptr) Variable Output
-162(g_tTex1df4a):     11(ptr) Variable UniformConstant
-             163:             TypePointer Output 7(fvec4)
-      164(Color):    163(ptr) Variable Output
-             165:             TypePointer Output 6(float)
-      166(Depth):    165(ptr) Variable Output
+             158:             TypePointer Output 7(fvec4)
+      159(Color):    158(ptr) Variable Output
+             162:             TypePointer Output 6(float)
+      163(Depth):    162(ptr) Variable Output
+167(g_tTex1df4a):     11(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
       9(txval10):      8(ptr) Variable Function
@@ -738,7 +755,11 @@ gl_FragCoord origin is upper left
                               Store 154 153
              157:    156(ptr) AccessChain 150(psout) 155
                               Store 157 152
-             160:148(PS_OUTPUT) Load 150(psout)
-                              Store 159(@entryPointOutput) 160
+             160:      8(ptr) AccessChain 150(psout) 151
+             161:    7(fvec4) Load 160
+                              Store 159(Color) 161
+             164:    156(ptr) AccessChain 150(psout) 155
+             165:    6(float) Load 164
+                              Store 163(Depth) 165
                               Return
                               FunctionEnd
index 7a677ac..f2d6af7 100644 (file)
@@ -215,10 +215,14 @@ Shader version: 450
 0:?           0.000000
 0:?           0.000000
 0:?           0.000000
-0:48      Sequence
-0:48        move second child to first child (temp structure{temp 4-component vector of float Position Pos})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Position Pos})
-0:48          'vsout' (temp structure{temp 4-component vector of float Position Pos})
+0:?       Sequence
+0:?         Sequence
+0:48          move second child to first child (temp 4-component vector of float)
+0:?             'Pos' (out 4-component vector of float Position)
+0:48            Pos: direct index for structure (temp 4-component vector of float Position)
+0:48              'vsout' (temp structure{temp 4-component vector of float Position Pos})
+0:48              Constant:
+0:48                0 (const int)
 0:48        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -457,10 +461,14 @@ Shader version: 450
 0:?           0.000000
 0:?           0.000000
 0:?           0.000000
-0:48      Sequence
-0:48        move second child to first child (temp structure{temp 4-component vector of float Position Pos})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Position Pos})
-0:48          'vsout' (temp structure{temp 4-component vector of float Position Pos})
+0:?       Sequence
+0:?         Sequence
+0:48          move second child to first child (temp 4-component vector of float)
+0:?             'Pos' (out 4-component vector of float Position)
+0:48            Pos: direct index for structure (temp 4-component vector of float Position)
+0:48              'vsout' (temp structure{temp 4-component vector of float Position Pos})
+0:48              Constant:
+0:48                0 (const int)
 0:48        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -481,13 +489,13 @@ Shader version: 450
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 162
+// Id's are bound by 161
 
                               Capability Shader
                               Capability Sampled1D
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Vertex 4  "main" 156 161
+                              EntryPoint Vertex 4  "main" 156
                               Name 4  "main"
                               Name 9  "txval10"
                               Name 12  "g_tTex1df4"
@@ -517,9 +525,8 @@ Shader version: 450
                               Name 148  "VS_OUTPUT"
                               MemberName 148(VS_OUTPUT) 0  "Pos"
                               Name 150  "vsout"
-                              Name 156  "@entryPointOutput"
-                              Name 159  "g_tTex1df4a"
-                              Name 161  "Pos"
+                              Name 156  "Pos"
+                              Name 160  "g_tTex1df4a"
                               Decorate 12(g_tTex1df4) DescriptorSet 0
                               Decorate 12(g_tTex1df4) Binding 0
                               Decorate 16(g_sSamp) DescriptorSet 0
@@ -536,9 +543,9 @@ Shader version: 450
                               Decorate 133(g_tTexcdi4) DescriptorSet 0
                               Decorate 142(g_tTexcdu4) DescriptorSet 0
                               MemberDecorate 148(VS_OUTPUT) 0 BuiltIn Position
-                              Decorate 159(g_tTex1df4a) DescriptorSet 0
-                              Decorate 159(g_tTex1df4a) Binding 1
-                              Decorate 161(Pos) BuiltIn Position
+                              Decorate 156(Pos) BuiltIn Position
+                              Decorate 160(g_tTex1df4a) DescriptorSet 0
+                              Decorate 160(g_tTex1df4a) Binding 1
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -628,11 +635,9 @@ Shader version: 450
              151:     24(int) Constant 0
              152:    6(float) Constant 0
              153:    7(fvec4) ConstantComposite 152 152 152 152
-             155:             TypePointer Output 148(VS_OUTPUT)
-156(@entryPointOutput):    155(ptr) Variable Output
-159(g_tTex1df4a):     11(ptr) Variable UniformConstant
-             160:             TypePointer Output 7(fvec4)
-        161(Pos):    160(ptr) Variable Output
+             155:             TypePointer Output 7(fvec4)
+        156(Pos):    155(ptr) Variable Output
+160(g_tTex1df4a):     11(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
       9(txval10):      8(ptr) Variable Function
@@ -710,7 +715,8 @@ Shader version: 450
                               Store 139(txval42) 147
              154:      8(ptr) AccessChain 150(vsout) 151
                               Store 154 153
-             157:148(VS_OUTPUT) Load 150(vsout)
-                              Store 156(@entryPointOutput) 157
+             157:      8(ptr) AccessChain 150(vsout) 151
+             158:    7(fvec4) Load 157
+                              Store 156(Pos) 158
                               Return
                               FunctionEnd
index ce3b2ca..4bfdadf 100644 (file)
@@ -193,10 +193,20 @@ gl_FragCoord origin is upper left
 0:46            1 (const int)
 0:46        Constant:
 0:46          1.000000
-0:48      Sequence
-0:48        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:48          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:48          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:48            Color: direct index for structure (temp 4-component vector of float)
+0:48              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:48              Constant:
+0:48                0 (const int)
+0:48          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:48            Depth: direct index for structure (temp float FragDepth)
+0:48              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:48              Constant:
+0:48                1 (const int)
 0:48        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -414,10 +424,20 @@ gl_FragCoord origin is upper left
 0:46            1 (const int)
 0:46        Constant:
 0:46          1.000000
-0:48      Sequence
-0:48        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:48          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:48          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:48            Color: direct index for structure (temp 4-component vector of float)
+0:48              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:48              Constant:
+0:48                0 (const int)
+0:48          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:48            Depth: direct index for structure (temp float FragDepth)
+0:48              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:48              Constant:
+0:48                1 (const int)
 0:48        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -439,13 +459,13 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 158
+// Id's are bound by 159
 
                               Capability Shader
                               Capability Sampled1D
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 141 155 157
+                              EntryPoint Fragment 4  "main" 141 145
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 9  "txval10"
@@ -471,13 +491,12 @@ gl_FragCoord origin is upper left
                               MemberName 132(PS_OUTPUT) 0  "Color"
                               MemberName 132(PS_OUTPUT) 1  "Depth"
                               Name 134  "psout"
-                              Name 141  "@entryPointOutput"
-                              Name 144  "g_tTex1df4a"
-                              Name 147  "g_tTexcdf4"
-                              Name 150  "g_tTexcdi4"
-                              Name 153  "g_tTexcdu4"
-                              Name 155  "Color"
-                              Name 157  "Depth"
+                              Name 141  "Color"
+                              Name 145  "Depth"
+                              Name 149  "g_tTex1df4a"
+                              Name 152  "g_tTexcdf4"
+                              Name 155  "g_tTexcdi4"
+                              Name 158  "g_tTexcdu4"
                               Decorate 12(g_tTex1df4) DescriptorSet 0
                               Decorate 12(g_tTex1df4) Binding 0
                               Decorate 16(g_sSamp) DescriptorSet 0
@@ -491,13 +510,13 @@ gl_FragCoord origin is upper left
                               Decorate 110(g_tTex3di4) DescriptorSet 0
                               Decorate 121(g_tTex3du4) DescriptorSet 0
                               MemberDecorate 132(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 144(g_tTex1df4a) DescriptorSet 0
-                              Decorate 144(g_tTex1df4a) Binding 1
-                              Decorate 147(g_tTexcdf4) DescriptorSet 0
-                              Decorate 150(g_tTexcdi4) DescriptorSet 0
-                              Decorate 153(g_tTexcdu4) DescriptorSet 0
-                              Decorate 155(Color) Location 0
-                              Decorate 157(Depth) BuiltIn FragDepth
+                              Decorate 141(Color) Location 0
+                              Decorate 145(Depth) BuiltIn FragDepth
+                              Decorate 149(g_tTex1df4a) DescriptorSet 0
+                              Decorate 149(g_tTex1df4a) Binding 1
+                              Decorate 152(g_tTexcdf4) DescriptorSet 0
+                              Decorate 155(g_tTexcdi4) DescriptorSet 0
+                              Decorate 158(g_tTexcdu4) DescriptorSet 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -586,22 +605,20 @@ gl_FragCoord origin is upper left
              135:    6(float) Constant 1065353216
              136:    7(fvec4) ConstantComposite 135 135 135 135
              138:             TypePointer Function 6(float)
-             140:             TypePointer Output 132(PS_OUTPUT)
-141(@entryPointOutput):    140(ptr) Variable Output
-144(g_tTex1df4a):     11(ptr) Variable UniformConstant
-             145:             TypeImage 6(float) Cube sampled format:Unknown
-             146:             TypePointer UniformConstant 145
- 147(g_tTexcdf4):    146(ptr) Variable UniformConstant
-             148:             TypeImage 23(int) Cube sampled format:Unknown
-             149:             TypePointer UniformConstant 148
- 150(g_tTexcdi4):    149(ptr) Variable UniformConstant
-             151:             TypeImage 38(int) Cube sampled format:Unknown
-             152:             TypePointer UniformConstant 151
- 153(g_tTexcdu4):    152(ptr) Variable UniformConstant
-             154:             TypePointer Output 7(fvec4)
-      155(Color):    154(ptr) Variable Output
-             156:             TypePointer Output 6(float)
-      157(Depth):    156(ptr) Variable Output
+             140:             TypePointer Output 7(fvec4)
+      141(Color):    140(ptr) Variable Output
+             144:             TypePointer Output 6(float)
+      145(Depth):    144(ptr) Variable Output
+149(g_tTex1df4a):     11(ptr) Variable UniformConstant
+             150:             TypeImage 6(float) Cube sampled format:Unknown
+             151:             TypePointer UniformConstant 150
+ 152(g_tTexcdf4):    151(ptr) Variable UniformConstant
+             153:             TypeImage 23(int) Cube sampled format:Unknown
+             154:             TypePointer UniformConstant 153
+ 155(g_tTexcdi4):    154(ptr) Variable UniformConstant
+             156:             TypeImage 38(int) Cube sampled format:Unknown
+             157:             TypePointer UniformConstant 156
+ 158(g_tTexcdu4):    157(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
       9(txval10):      8(ptr) Variable Function
@@ -663,7 +680,11 @@ gl_FragCoord origin is upper left
                               Store 137 136
              139:    138(ptr) AccessChain 134(psout) 24
                               Store 139 135
-             142:132(PS_OUTPUT) Load 134(psout)
-                              Store 141(@entryPointOutput) 142
+             142:      8(ptr) AccessChain 134(psout) 63
+             143:    7(fvec4) Load 142
+                              Store 141(Color) 143
+             146:    138(ptr) AccessChain 134(psout) 24
+             147:    6(float) Load 146
+                              Store 145(Depth) 147
                               Return
                               FunctionEnd
index 4e9f2af..fc4cb53 100644 (file)
@@ -130,10 +130,20 @@ gl_FragCoord origin is upper left
 0:36            1 (const int)
 0:36        Constant:
 0:36          1.000000
-0:38      Sequence
-0:38        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:38          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:38          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:38            Color: direct index for structure (temp 4-component vector of float)
+0:38              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:38              Constant:
+0:38                0 (const int)
+0:38          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:38            Depth: direct index for structure (temp float FragDepth)
+0:38              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:38              Constant:
+0:38                1 (const int)
 0:38        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -285,10 +295,20 @@ gl_FragCoord origin is upper left
 0:36            1 (const int)
 0:36        Constant:
 0:36          1.000000
-0:38      Sequence
-0:38        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:38          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:38          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:38            Color: direct index for structure (temp 4-component vector of float)
+0:38              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:38              Constant:
+0:38                0 (const int)
+0:38          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:38            Depth: direct index for structure (temp float FragDepth)
+0:38              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:38              Constant:
+0:38                1 (const int)
 0:38        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -307,14 +327,14 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 112
+// Id's are bound by 113
 
                               Capability Shader
                               Capability Sampled1D
                               Capability SampledCubeArray
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 95 109 111
+                              EntryPoint Fragment 4  "main" 95 99
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 9  "txval10"
@@ -334,13 +354,12 @@ gl_FragCoord origin is upper left
                               MemberName 86(PS_OUTPUT) 0  "Color"
                               MemberName 86(PS_OUTPUT) 1  "Depth"
                               Name 88  "psout"
-                              Name 95  "@entryPointOutput"
-                              Name 98  "g_tTex1df4a"
-                              Name 101  "g_tTexcdf4"
-                              Name 104  "g_tTexcdi4"
-                              Name 107  "g_tTexcdu4"
-                              Name 109  "Color"
-                              Name 111  "Depth"
+                              Name 95  "Color"
+                              Name 99  "Depth"
+                              Name 103  "g_tTex1df4a"
+                              Name 106  "g_tTexcdf4"
+                              Name 109  "g_tTexcdi4"
+                              Name 112  "g_tTexcdu4"
                               Decorate 12(g_tTex1df4) DescriptorSet 0
                               Decorate 12(g_tTex1df4) Binding 0
                               Decorate 16(g_sSamp) DescriptorSet 0
@@ -351,13 +370,13 @@ gl_FragCoord origin is upper left
                               Decorate 71(g_tTex2di4) DescriptorSet 0
                               Decorate 80(g_tTex2du4) DescriptorSet 0
                               MemberDecorate 86(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 98(g_tTex1df4a) DescriptorSet 0
-                              Decorate 98(g_tTex1df4a) Binding 1
-                              Decorate 101(g_tTexcdf4) DescriptorSet 0
-                              Decorate 104(g_tTexcdi4) DescriptorSet 0
-                              Decorate 107(g_tTexcdu4) DescriptorSet 0
-                              Decorate 109(Color) Location 0
-                              Decorate 111(Depth) BuiltIn FragDepth
+                              Decorate 95(Color) Location 0
+                              Decorate 99(Depth) BuiltIn FragDepth
+                              Decorate 103(g_tTex1df4a) DescriptorSet 0
+                              Decorate 103(g_tTex1df4a) Binding 1
+                              Decorate 106(g_tTexcdf4) DescriptorSet 0
+                              Decorate 109(g_tTexcdi4) DescriptorSet 0
+                              Decorate 112(g_tTexcdu4) DescriptorSet 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -415,22 +434,20 @@ gl_FragCoord origin is upper left
               89:    6(float) Constant 1065353216
               90:    7(fvec4) ConstantComposite 89 89 89 89
               92:             TypePointer Function 6(float)
-              94:             TypePointer Output 86(PS_OUTPUT)
-95(@entryPointOutput):     94(ptr) Variable Output
- 98(g_tTex1df4a):     11(ptr) Variable UniformConstant
-              99:             TypeImage 6(float) Cube array sampled format:Unknown
-             100:             TypePointer UniformConstant 99
- 101(g_tTexcdf4):    100(ptr) Variable UniformConstant
-             102:             TypeImage 26(int) Cube array sampled format:Unknown
-             103:             TypePointer UniformConstant 102
- 104(g_tTexcdi4):    103(ptr) Variable UniformConstant
-             105:             TypeImage 40(int) Cube array sampled format:Unknown
-             106:             TypePointer UniformConstant 105
- 107(g_tTexcdu4):    106(ptr) Variable UniformConstant
-             108:             TypePointer Output 7(fvec4)
-      109(Color):    108(ptr) Variable Output
-             110:             TypePointer Output 6(float)
-      111(Depth):    110(ptr) Variable Output
+              94:             TypePointer Output 7(fvec4)
+       95(Color):     94(ptr) Variable Output
+              98:             TypePointer Output 6(float)
+       99(Depth):     98(ptr) Variable Output
+103(g_tTex1df4a):     11(ptr) Variable UniformConstant
+             104:             TypeImage 6(float) Cube array sampled format:Unknown
+             105:             TypePointer UniformConstant 104
+ 106(g_tTexcdf4):    105(ptr) Variable UniformConstant
+             107:             TypeImage 26(int) Cube array sampled format:Unknown
+             108:             TypePointer UniformConstant 107
+ 109(g_tTexcdi4):    108(ptr) Variable UniformConstant
+             110:             TypeImage 40(int) Cube array sampled format:Unknown
+             111:             TypePointer UniformConstant 110
+ 112(g_tTexcdu4):    111(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
       9(txval10):      8(ptr) Variable Function
@@ -474,7 +491,11 @@ gl_FragCoord origin is upper left
                               Store 91 90
               93:     92(ptr) AccessChain 88(psout) 27
                               Store 93 89
-              96:86(PS_OUTPUT) Load 88(psout)
-                              Store 95(@entryPointOutput) 96
+              96:      8(ptr) AccessChain 88(psout) 65
+              97:    7(fvec4) Load 96
+                              Store 95(Color) 97
+             100:     92(ptr) AccessChain 88(psout) 27
+             101:    6(float) Load 100
+                              Store 99(Depth) 101
                               Return
                               FunctionEnd
index 675c3f8..192edb1 100644 (file)
@@ -139,10 +139,20 @@ gl_FragCoord origin is upper left
 0:40            1 (const int)
 0:40        Constant:
 0:40          1.000000
-0:42      Sequence
-0:42        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:42          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:42          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:42            Color: direct index for structure (temp 4-component vector of float)
+0:42              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:42              Constant:
+0:42                0 (const int)
+0:42          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:42            Depth: direct index for structure (temp float FragDepth)
+0:42              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:42              Constant:
+0:42                1 (const int)
 0:42        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -303,10 +313,20 @@ gl_FragCoord origin is upper left
 0:40            1 (const int)
 0:40        Constant:
 0:40          1.000000
-0:42      Sequence
-0:42        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:42          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:42          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:42            Color: direct index for structure (temp 4-component vector of float)
+0:42              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:42              Constant:
+0:42                0 (const int)
+0:42          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:42            Depth: direct index for structure (temp float FragDepth)
+0:42              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:42              Constant:
+0:42                1 (const int)
 0:42        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -325,14 +345,14 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 139
+// Id's are bound by 140
 
                               Capability Shader
                               Capability Sampled1D
                               Capability SampledCubeArray
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 131 136 138
+                              EntryPoint Fragment 4  "main" 131 135
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 9  "txval10"
@@ -358,10 +378,9 @@ gl_FragCoord origin is upper left
                               MemberName 121(PS_OUTPUT) 0  "Color"
                               MemberName 121(PS_OUTPUT) 1  "Depth"
                               Name 123  "psout"
-                              Name 131  "@entryPointOutput"
-                              Name 134  "g_tTex1df4"
-                              Name 136  "Color"
-                              Name 138  "Depth"
+                              Name 131  "Color"
+                              Name 135  "Depth"
+                              Name 139  "g_tTex1df4"
                               Decorate 12(g_tTex1df4a) DescriptorSet 0
                               Decorate 12(g_tTex1df4a) Binding 1
                               Decorate 16(g_sSamp) DescriptorSet 0
@@ -375,10 +394,10 @@ gl_FragCoord origin is upper left
                               Decorate 101(g_tTexcdi4a) DescriptorSet 0
                               Decorate 111(g_tTexcdu4a) DescriptorSet 0
                               MemberDecorate 121(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 134(g_tTex1df4) DescriptorSet 0
-                              Decorate 134(g_tTex1df4) Binding 0
-                              Decorate 136(Color) Location 0
-                              Decorate 138(Depth) BuiltIn FragDepth
+                              Decorate 131(Color) Location 0
+                              Decorate 135(Depth) BuiltIn FragDepth
+                              Decorate 139(g_tTex1df4) DescriptorSet 0
+                              Decorate 139(g_tTex1df4) Binding 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -457,13 +476,11 @@ gl_FragCoord origin is upper left
              125:    7(fvec4) ConstantComposite 118 118 118 118
              127:     26(int) Constant 1
              128:             TypePointer Function 6(float)
-             130:             TypePointer Output 121(PS_OUTPUT)
-131(@entryPointOutput):    130(ptr) Variable Output
- 134(g_tTex1df4):     11(ptr) Variable UniformConstant
-             135:             TypePointer Output 7(fvec4)
-      136(Color):    135(ptr) Variable Output
-             137:             TypePointer Output 6(float)
-      138(Depth):    137(ptr) Variable Output
+             130:             TypePointer Output 7(fvec4)
+      131(Color):    130(ptr) Variable Output
+             134:             TypePointer Output 6(float)
+      135(Depth):    134(ptr) Variable Output
+ 139(g_tTex1df4):     11(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
       9(txval10):      8(ptr) Variable Function
@@ -525,7 +542,11 @@ gl_FragCoord origin is upper left
                               Store 126 125
              129:    128(ptr) AccessChain 123(psout) 127
                               Store 129 118
-             132:121(PS_OUTPUT) Load 123(psout)
-                              Store 131(@entryPointOutput) 132
+             132:      8(ptr) AccessChain 123(psout) 124
+             133:    7(fvec4) Load 132
+                              Store 131(Color) 133
+             136:    128(ptr) AccessChain 123(psout) 127
+             137:    6(float) Load 136
+                              Store 135(Depth) 137
                               Return
                               FunctionEnd
index 96def42..e96a524 100644 (file)
@@ -169,10 +169,20 @@ gl_FragCoord origin is upper left
 0:49            1 (const int)
 0:49        Constant:
 0:49          1.000000
-0:51      Sequence
-0:51        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:51          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:51          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 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 FragDepth Depth})
+0:51              Constant:
+0:51                0 (const int)
+0:51          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:51            Depth: direct index for structure (temp float FragDepth)
+0:51              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:51              Constant:
+0:51                1 (const int)
 0:51        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -367,10 +377,20 @@ gl_FragCoord origin is upper left
 0:49            1 (const int)
 0:49        Constant:
 0:49          1.000000
-0:51      Sequence
-0:51        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:51          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:51          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 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 FragDepth Depth})
+0:51              Constant:
+0:51                0 (const int)
+0:51          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:51            Depth: direct index for structure (temp float FragDepth)
+0:51              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:51              Constant:
+0:51                1 (const int)
 0:51        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -393,13 +413,13 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 164
+// Id's are bound by 165
 
                               Capability Shader
                               Capability Sampled1D
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 155 161 163
+                              EntryPoint Fragment 4  "main" 155 159
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 9  "txval10"
@@ -431,11 +451,10 @@ gl_FragCoord origin is upper left
                               MemberName 144(PS_OUTPUT) 0  "Color"
                               MemberName 144(PS_OUTPUT) 1  "Depth"
                               Name 146  "psout"
-                              Name 155  "@entryPointOutput"
-                              Name 158  "g_sSamp2d"
-                              Name 159  "g_tTex1df4a"
-                              Name 161  "Color"
-                              Name 163  "Depth"
+                              Name 155  "Color"
+                              Name 159  "Depth"
+                              Name 163  "g_sSamp2d"
+                              Name 164  "g_tTex1df4a"
                               Decorate 12(g_tTex1df4) DescriptorSet 0
                               Decorate 12(g_tTex1df4) Binding 0
                               Decorate 16(g_sSamp) DescriptorSet 0
@@ -452,11 +471,11 @@ gl_FragCoord origin is upper left
                               Decorate 129(g_tTexcdi4) DescriptorSet 0
                               Decorate 138(g_tTexcdu4) DescriptorSet 0
                               MemberDecorate 144(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 158(g_sSamp2d) DescriptorSet 0
-                              Decorate 159(g_tTex1df4a) DescriptorSet 0
-                              Decorate 159(g_tTex1df4a) Binding 1
-                              Decorate 161(Color) Location 0
-                              Decorate 163(Depth) BuiltIn FragDepth
+                              Decorate 155(Color) Location 0
+                              Decorate 159(Depth) BuiltIn FragDepth
+                              Decorate 163(g_sSamp2d) DescriptorSet 0
+                              Decorate 164(g_tTex1df4a) DescriptorSet 0
+                              Decorate 164(g_tTex1df4a) Binding 1
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -544,14 +563,12 @@ gl_FragCoord origin is upper left
              149:    7(fvec4) ConstantComposite 148 148 148 148
              151:     23(int) Constant 1
              152:             TypePointer Function 6(float)
-             154:             TypePointer Output 144(PS_OUTPUT)
-155(@entryPointOutput):    154(ptr) Variable Output
-  158(g_sSamp2d):     15(ptr) Variable UniformConstant
-159(g_tTex1df4a):     11(ptr) Variable UniformConstant
-             160:             TypePointer Output 7(fvec4)
-      161(Color):    160(ptr) Variable Output
-             162:             TypePointer Output 6(float)
-      163(Depth):    162(ptr) Variable Output
+             154:             TypePointer Output 7(fvec4)
+      155(Color):    154(ptr) Variable Output
+             158:             TypePointer Output 6(float)
+      159(Depth):    158(ptr) Variable Output
+  163(g_sSamp2d):     15(ptr) Variable UniformConstant
+164(g_tTex1df4a):     11(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
       9(txval10):      8(ptr) Variable Function
@@ -631,7 +648,11 @@ gl_FragCoord origin is upper left
                               Store 150 149
              153:    152(ptr) AccessChain 146(psout) 151
                               Store 153 148
-             156:144(PS_OUTPUT) Load 146(psout)
-                              Store 155(@entryPointOutput) 156
+             156:      8(ptr) AccessChain 146(psout) 147
+             157:    7(fvec4) Load 156
+                              Store 155(Color) 157
+             160:    152(ptr) AccessChain 146(psout) 151
+             161:    6(float) Load 160
+                              Store 159(Depth) 161
                               Return
                               FunctionEnd
index 73eabbc..15c9ac7 100644 (file)
@@ -161,10 +161,14 @@ Shader version: 450
 0:?           0.000000
 0:?           0.000000
 0:?           0.000000
-0:48      Sequence
-0:48        move second child to first child (temp structure{temp 4-component vector of float Position Pos})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Position Pos})
-0:48          'vsout' (temp structure{temp 4-component vector of float Position Pos})
+0:?       Sequence
+0:?         Sequence
+0:48          move second child to first child (temp 4-component vector of float)
+0:?             'Pos' (out 4-component vector of float Position)
+0:48            Pos: direct index for structure (temp 4-component vector of float Position)
+0:48              'vsout' (temp structure{temp 4-component vector of float Position Pos})
+0:48              Constant:
+0:48                0 (const int)
 0:48        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -349,10 +353,14 @@ Shader version: 450
 0:?           0.000000
 0:?           0.000000
 0:?           0.000000
-0:48      Sequence
-0:48        move second child to first child (temp structure{temp 4-component vector of float Position Pos})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Position Pos})
-0:48          'vsout' (temp structure{temp 4-component vector of float Position Pos})
+0:?       Sequence
+0:?         Sequence
+0:48          move second child to first child (temp 4-component vector of float)
+0:?             'Pos' (out 4-component vector of float Position)
+0:48            Pos: direct index for structure (temp 4-component vector of float Position)
+0:48              'vsout' (temp structure{temp 4-component vector of float Position Pos})
+0:48              Constant:
+0:48                0 (const int)
 0:48        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -373,13 +381,13 @@ Shader version: 450
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 158
+// Id's are bound by 157
 
                               Capability Shader
                               Capability Sampled1D
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Vertex 4  "main" 152 157
+                              EntryPoint Vertex 4  "main" 152
                               Name 4  "main"
                               Name 9  "txval10"
                               Name 12  "g_tTex1df4"
@@ -409,9 +417,8 @@ Shader version: 450
                               Name 144  "VS_OUTPUT"
                               MemberName 144(VS_OUTPUT) 0  "Pos"
                               Name 146  "vsout"
-                              Name 152  "@entryPointOutput"
-                              Name 155  "g_tTex1df4a"
-                              Name 157  "Pos"
+                              Name 152  "Pos"
+                              Name 156  "g_tTex1df4a"
                               Decorate 12(g_tTex1df4) DescriptorSet 0
                               Decorate 12(g_tTex1df4) Binding 0
                               Decorate 16(g_sSamp) DescriptorSet 0
@@ -428,9 +435,9 @@ Shader version: 450
                               Decorate 129(g_tTexcdi4) DescriptorSet 0
                               Decorate 138(g_tTexcdu4) DescriptorSet 0
                               MemberDecorate 144(VS_OUTPUT) 0 BuiltIn Position
-                              Decorate 155(g_tTex1df4a) DescriptorSet 0
-                              Decorate 155(g_tTex1df4a) Binding 1
-                              Decorate 157(Pos) BuiltIn Position
+                              Decorate 152(Pos) BuiltIn Position
+                              Decorate 156(g_tTex1df4a) DescriptorSet 0
+                              Decorate 156(g_tTex1df4a) Binding 1
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -516,11 +523,9 @@ Shader version: 450
              147:     23(int) Constant 0
              148:    6(float) Constant 0
              149:    7(fvec4) ConstantComposite 148 148 148 148
-             151:             TypePointer Output 144(VS_OUTPUT)
-152(@entryPointOutput):    151(ptr) Variable Output
-155(g_tTex1df4a):     11(ptr) Variable UniformConstant
-             156:             TypePointer Output 7(fvec4)
-        157(Pos):    156(ptr) Variable Output
+             151:             TypePointer Output 7(fvec4)
+        152(Pos):    151(ptr) Variable Output
+156(g_tTex1df4a):     11(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
       9(txval10):      8(ptr) Variable Function
@@ -598,7 +603,8 @@ Shader version: 450
                               Store 135(txval42) 143
              150:      8(ptr) AccessChain 146(vsout) 147
                               Store 150 149
-             153:144(VS_OUTPUT) Load 146(vsout)
-                              Store 152(@entryPointOutput) 153
+             153:      8(ptr) AccessChain 146(vsout) 147
+             154:    7(fvec4) Load 153
+                              Store 152(Pos) 154
                               Return
                               FunctionEnd
index 9d32ce5..712f050 100644 (file)
@@ -157,10 +157,20 @@ gl_FragCoord origin is upper left
 0:46            1 (const int)
 0:46        Constant:
 0:46          1.000000
-0:48      Sequence
-0:48        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:48          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:48          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:48            Color: direct index for structure (temp 4-component vector of float)
+0:48              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:48              Constant:
+0:48                0 (const int)
+0:48          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:48            Depth: direct index for structure (temp float FragDepth)
+0:48              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:48              Constant:
+0:48                1 (const int)
 0:48        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -342,10 +352,20 @@ gl_FragCoord origin is upper left
 0:46            1 (const int)
 0:46        Constant:
 0:46          1.000000
-0:48      Sequence
-0:48        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:48          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:48          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:48            Color: direct index for structure (temp 4-component vector of float)
+0:48              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:48              Constant:
+0:48                0 (const int)
+0:48          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:48            Depth: direct index for structure (temp float FragDepth)
+0:48              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:48              Constant:
+0:48                1 (const int)
 0:48        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -367,13 +387,13 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 154
+// Id's are bound by 155
 
                               Capability Shader
                               Capability Sampled1D
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 137 151 153
+                              EntryPoint Fragment 4  "main" 137 141
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 9  "txval10"
@@ -399,13 +419,12 @@ gl_FragCoord origin is upper left
                               MemberName 128(PS_OUTPUT) 0  "Color"
                               MemberName 128(PS_OUTPUT) 1  "Depth"
                               Name 130  "psout"
-                              Name 137  "@entryPointOutput"
-                              Name 140  "g_tTex1df4a"
-                              Name 143  "g_tTexcdf4"
-                              Name 146  "g_tTexcdi4"
-                              Name 149  "g_tTexcdu4"
-                              Name 151  "Color"
-                              Name 153  "Depth"
+                              Name 137  "Color"
+                              Name 141  "Depth"
+                              Name 145  "g_tTex1df4a"
+                              Name 148  "g_tTexcdf4"
+                              Name 151  "g_tTexcdi4"
+                              Name 154  "g_tTexcdu4"
                               Decorate 12(g_tTex1df4) DescriptorSet 0
                               Decorate 12(g_tTex1df4) Binding 0
                               Decorate 16(g_sSamp) DescriptorSet 0
@@ -419,13 +438,13 @@ gl_FragCoord origin is upper left
                               Decorate 106(g_tTex3di4) DescriptorSet 0
                               Decorate 117(g_tTex3du4) DescriptorSet 0
                               MemberDecorate 128(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 140(g_tTex1df4a) DescriptorSet 0
-                              Decorate 140(g_tTex1df4a) Binding 1
-                              Decorate 143(g_tTexcdf4) DescriptorSet 0
-                              Decorate 146(g_tTexcdi4) DescriptorSet 0
-                              Decorate 149(g_tTexcdu4) DescriptorSet 0
-                              Decorate 151(Color) Location 0
-                              Decorate 153(Depth) BuiltIn FragDepth
+                              Decorate 137(Color) Location 0
+                              Decorate 141(Depth) BuiltIn FragDepth
+                              Decorate 145(g_tTex1df4a) DescriptorSet 0
+                              Decorate 145(g_tTex1df4a) Binding 1
+                              Decorate 148(g_tTexcdf4) DescriptorSet 0
+                              Decorate 151(g_tTexcdi4) DescriptorSet 0
+                              Decorate 154(g_tTexcdu4) DescriptorSet 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -510,22 +529,20 @@ gl_FragCoord origin is upper left
              131:    6(float) Constant 1065353216
              132:    7(fvec4) ConstantComposite 131 131 131 131
              134:             TypePointer Function 6(float)
-             136:             TypePointer Output 128(PS_OUTPUT)
-137(@entryPointOutput):    136(ptr) Variable Output
-140(g_tTex1df4a):     11(ptr) Variable UniformConstant
-             141:             TypeImage 6(float) Cube sampled format:Unknown
-             142:             TypePointer UniformConstant 141
- 143(g_tTexcdf4):    142(ptr) Variable UniformConstant
-             144:             TypeImage 22(int) Cube sampled format:Unknown
-             145:             TypePointer UniformConstant 144
- 146(g_tTexcdi4):    145(ptr) Variable UniformConstant
-             147:             TypeImage 37(int) Cube sampled format:Unknown
-             148:             TypePointer UniformConstant 147
- 149(g_tTexcdu4):    148(ptr) Variable UniformConstant
-             150:             TypePointer Output 7(fvec4)
-      151(Color):    150(ptr) Variable Output
-             152:             TypePointer Output 6(float)
-      153(Depth):    152(ptr) Variable Output
+             136:             TypePointer Output 7(fvec4)
+      137(Color):    136(ptr) Variable Output
+             140:             TypePointer Output 6(float)
+      141(Depth):    140(ptr) Variable Output
+145(g_tTex1df4a):     11(ptr) Variable UniformConstant
+             146:             TypeImage 6(float) Cube sampled format:Unknown
+             147:             TypePointer UniformConstant 146
+ 148(g_tTexcdf4):    147(ptr) Variable UniformConstant
+             149:             TypeImage 22(int) Cube sampled format:Unknown
+             150:             TypePointer UniformConstant 149
+ 151(g_tTexcdi4):    150(ptr) Variable UniformConstant
+             152:             TypeImage 37(int) Cube sampled format:Unknown
+             153:             TypePointer UniformConstant 152
+ 154(g_tTexcdu4):    153(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
       9(txval10):      8(ptr) Variable Function
@@ -587,7 +604,11 @@ gl_FragCoord origin is upper left
                               Store 133 132
              135:    134(ptr) AccessChain 130(psout) 23
                               Store 135 131
-             138:128(PS_OUTPUT) Load 130(psout)
-                              Store 137(@entryPointOutput) 138
+             138:      8(ptr) AccessChain 130(psout) 61
+             139:    7(fvec4) Load 138
+                              Store 137(Color) 139
+             142:    134(ptr) AccessChain 130(psout) 23
+             143:    6(float) Load 142
+                              Store 141(Depth) 143
                               Return
                               FunctionEnd
index d628a7c..02f4a32 100644 (file)
@@ -112,10 +112,20 @@ gl_FragCoord origin is upper left
 0:34            1 (const int)
 0:34        Constant:
 0:34          1.000000
-0:36      Sequence
-0:36        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:36          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:36          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:36            Color: direct index for structure (temp 4-component vector of float)
+0:36              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:36              Constant:
+0:36                0 (const int)
+0:36          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:36            Depth: direct index for structure (temp float FragDepth)
+0:36              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:36              Constant:
+0:36                1 (const int)
 0:36        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -246,10 +256,20 @@ gl_FragCoord origin is upper left
 0:34            1 (const int)
 0:34        Constant:
 0:34          1.000000
-0:36      Sequence
-0:36        move second child to first child (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color, temp float FragDepth Depth})
-0:36          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:?       Sequence
+0:?         Sequence
+0:36          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:36            Color: direct index for structure (temp 4-component vector of float)
+0:36              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:36              Constant:
+0:36                0 (const int)
+0:36          move second child to first child (temp float)
+0:?             'Depth' (out float FragDepth)
+0:36            Depth: direct index for structure (temp float FragDepth)
+0:36              'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
+0:36              Constant:
+0:36                1 (const int)
 0:36        Branch: Return
 0:?   Linker Objects
 0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
@@ -265,13 +285,13 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 111
+// Id's are bound by 112
 
                               Capability Shader
                               Capability Sampled1D
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 103 108 110
+                              EntryPoint Fragment 4  "main" 103 107
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 9  "txval10"
@@ -291,10 +311,9 @@ gl_FragCoord origin is upper left
                               MemberName 94(PS_OUTPUT) 0  "Color"
                               MemberName 94(PS_OUTPUT) 1  "Depth"
                               Name 96  "psout"
-                              Name 103  "@entryPointOutput"
-                              Name 106  "g_tTex1df4a"
-                              Name 108  "Color"
-                              Name 110  "Depth"
+                              Name 103  "Color"
+                              Name 107  "Depth"
+                              Name 111  "g_tTex1df4a"
                               Decorate 12(g_tTex1df4) DescriptorSet 0
                               Decorate 12(g_tTex1df4) Binding 0
                               Decorate 16(g_sSamp) DescriptorSet 0
@@ -305,10 +324,10 @@ gl_FragCoord origin is upper left
                               Decorate 73(g_tTex2di4) DescriptorSet 0
                               Decorate 84(g_tTex2du4) DescriptorSet 0
                               MemberDecorate 94(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 106(g_tTex1df4a) DescriptorSet 0
-                              Decorate 106(g_tTex1df4a) Binding 1
-                              Decorate 108(Color) Location 0
-                              Decorate 110(Depth) BuiltIn FragDepth
+                              Decorate 103(Color) Location 0
+                              Decorate 107(Depth) BuiltIn FragDepth
+                              Decorate 111(g_tTex1df4a) DescriptorSet 0
+                              Decorate 111(g_tTex1df4a) Binding 1
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -374,13 +393,11 @@ gl_FragCoord origin is upper left
               97:    6(float) Constant 1065353216
               98:    7(fvec4) ConstantComposite 97 97 97 97
              100:             TypePointer Function 6(float)
-             102:             TypePointer Output 94(PS_OUTPUT)
-103(@entryPointOutput):    102(ptr) Variable Output
-106(g_tTex1df4a):     11(ptr) Variable UniformConstant
-             107:             TypePointer Output 7(fvec4)
-      108(Color):    107(ptr) Variable Output
-             109:             TypePointer Output 6(float)
-      110(Depth):    109(ptr) Variable Output
+             102:             TypePointer Output 7(fvec4)
+      103(Color):    102(ptr) Variable Output
+             106:             TypePointer Output 6(float)
+      107(Depth):    106(ptr) Variable Output
+111(g_tTex1df4a):     11(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
       9(txval10):      8(ptr) Variable Function
@@ -424,7 +441,11 @@ gl_FragCoord origin is upper left
                               Store 99 98
              101:    100(ptr) AccessChain 96(psout) 40
                               Store 101 97
-             104:94(PS_OUTPUT) Load 96(psout)
-                              Store 103(@entryPointOutput) 104
+             104:      8(ptr) AccessChain 96(psout) 26
+             105:    7(fvec4) Load 104
+                              Store 103(Color) 105
+             108:    100(ptr) AccessChain 96(psout) 40
+             109:    6(float) Load 108
+                              Store 107(Depth) 109
                               Return
                               FunctionEnd
index 2d06690..a37991d 100644 (file)
@@ -19,10 +19,14 @@ gl_FragCoord origin is upper left
 0:16          1.000000
 0:16          1.000000
 0:16          1.000000
-0:17      Sequence
-0:17        move second child to first child (temp structure{temp 4-component vector of float color})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float color})
-0:17          'ps_output' (temp structure{temp 4-component vector of float color})
+0:?       Sequence
+0:?         Sequence
+0:17          move second child to first child (temp 4-component vector of float)
+0:?             'color' (layout(location=0 ) out 4-component vector of float)
+0:17            color: direct index for structure (temp 4-component vector of float)
+0:17              'ps_output' (temp structure{temp 4-component vector of float color})
+0:17              Constant:
+0:17                0 (const int)
 0:17        Branch: Return
 0:?   Linker Objects
 0:?     'color' (layout(location=0 ) out 4-component vector of float)
@@ -51,22 +55,26 @@ gl_FragCoord origin is upper left
 0:16          1.000000
 0:16          1.000000
 0:16          1.000000
-0:17      Sequence
-0:17        move second child to first child (temp structure{temp 4-component vector of float color})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float color})
-0:17          'ps_output' (temp structure{temp 4-component vector of float color})
+0:?       Sequence
+0:?         Sequence
+0:17          move second child to first child (temp 4-component vector of float)
+0:?             'color' (layout(location=0 ) out 4-component vector of float)
+0:17            color: direct index for structure (temp 4-component vector of float)
+0:17              'ps_output' (temp structure{temp 4-component vector of float color})
+0:17              Constant:
+0:17                0 (const int)
 0:17        Branch: Return
 0:?   Linker Objects
 0:?     'color' (layout(location=0 ) out 4-component vector of float)
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 27
+// Id's are bound by 26
 
                               Capability Shader
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 22 26
+                              EntryPoint Fragment 4  "main" 22
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 6  "MyFunc("
@@ -74,9 +82,8 @@ gl_FragCoord origin is upper left
                               Name 12  "PS_OUTPUT"
                               MemberName 12(PS_OUTPUT) 0  "color"
                               Name 14  "ps_output"
-                              Name 22  "@entryPointOutput"
-                              Name 26  "color"
-                              Decorate 26(color) Location 0
+                              Name 22  "color"
+                              Decorate 22(color) Location 0
                2:             TypeVoid
                3:             TypeFunction 2
               10:             TypeFloat 32
@@ -88,17 +95,16 @@ gl_FragCoord origin is upper left
               17:   10(float) Constant 1065353216
               18:   11(fvec4) ConstantComposite 17 17 17 17
               19:             TypePointer Function 11(fvec4)
-              21:             TypePointer Output 12(PS_OUTPUT)
-22(@entryPointOutput):     21(ptr) Variable Output
-              25:             TypePointer Output 11(fvec4)
-       26(color):     25(ptr) Variable Output
+              21:             TypePointer Output 11(fvec4)
+       22(color):     21(ptr) Variable Output
          4(main):           2 Function None 3
                5:             Label
    14(ps_output):     13(ptr) Variable Function
               20:     19(ptr) AccessChain 14(ps_output) 16
                               Store 20 18
-              23:12(PS_OUTPUT) Load 14(ps_output)
-                              Store 22(@entryPointOutput) 23
+              23:     19(ptr) AccessChain 14(ps_output) 16
+              24:   11(fvec4) Load 23
+                              Store 22(color) 24
                               Return
                               FunctionEnd
       6(MyFunc():           2 Function None 3
index a7e1e97..42885bc 100644 (file)
@@ -15,10 +15,14 @@ gl_FragCoord origin is upper left
 0:?           0.000000
 0:?           0.000000
 0:?           1.000000
-0:19      Sequence
-0:19        move second child to first child (temp structure{temp 4-component vector of float Color})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color})
-0:19          'psout' (temp structure{temp 4-component vector of float Color})
+0:?       Sequence
+0:?         Sequence
+0:19          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:19            Color: direct index for structure (temp 4-component vector of float)
+0:19              'psout' (temp structure{temp 4-component vector of float Color})
+0:19              Constant:
+0:19                0 (const int)
 0:19        Branch: Return
 0:?   Linker Objects
 0:?     'TestTexture' (uniform texture2D)
@@ -45,10 +49,14 @@ gl_FragCoord origin is upper left
 0:?           0.000000
 0:?           0.000000
 0:?           1.000000
-0:19      Sequence
-0:19        move second child to first child (temp structure{temp 4-component vector of float Color})
-0:?           '@entryPointOutput' (out structure{temp 4-component vector of float Color})
-0:19          'psout' (temp structure{temp 4-component vector of float Color})
+0:?       Sequence
+0:?         Sequence
+0:19          move second child to first child (temp 4-component vector of float)
+0:?             'Color' (layout(location=0 ) out 4-component vector of float)
+0:19            Color: direct index for structure (temp 4-component vector of float)
+0:19              'psout' (temp structure{temp 4-component vector of float Color})
+0:19              Constant:
+0:19                0 (const int)
 0:19        Branch: Return
 0:?   Linker Objects
 0:?     'TestTexture' (uniform texture2D)
@@ -57,23 +65,22 @@ gl_FragCoord origin is upper left
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 29
+// Id's are bound by 28
 
                               Capability Shader
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 19 28
+                              EntryPoint Fragment 4  "main" 19
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 8  "PS_OUTPUT"
                               MemberName 8(PS_OUTPUT) 0  "Color"
                               Name 10  "psout"
-                              Name 19  "@entryPointOutput"
-                              Name 24  "TestTexture"
-                              Name 26  "TestUF"
-                              Name 28  "Color"
-                              Decorate 24(TestTexture) DescriptorSet 0
-                              Decorate 28(Color) Location 0
+                              Name 19  "Color"
+                              Name 25  "TestTexture"
+                              Name 27  "TestUF"
+                              Decorate 19(Color) Location 0
+                              Decorate 25(TestTexture) DescriptorSet 0
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeFloat 32
@@ -86,21 +93,20 @@ gl_FragCoord origin is upper left
               14:    6(float) Constant 1065353216
               15:    7(fvec4) ConstantComposite 13 13 13 14
               16:             TypePointer Function 7(fvec4)
-              18:             TypePointer Output 8(PS_OUTPUT)
-19(@entryPointOutput):     18(ptr) Variable Output
-              22:             TypeImage 6(float) 2D sampled format:Unknown
-              23:             TypePointer UniformConstant 22
- 24(TestTexture):     23(ptr) Variable UniformConstant
-              25:             TypePointer UniformConstant 7(fvec4)
-      26(TestUF):     25(ptr) Variable UniformConstant
-              27:             TypePointer Output 7(fvec4)
-       28(Color):     27(ptr) Variable Output
+              18:             TypePointer Output 7(fvec4)
+       19(Color):     18(ptr) Variable Output
+              23:             TypeImage 6(float) 2D sampled format:Unknown
+              24:             TypePointer UniformConstant 23
+ 25(TestTexture):     24(ptr) Variable UniformConstant
+              26:             TypePointer UniformConstant 7(fvec4)
+      27(TestUF):     26(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
        10(psout):      9(ptr) Variable Function
               17:     16(ptr) AccessChain 10(psout) 12
                               Store 17 15
-              20:8(PS_OUTPUT) Load 10(psout)
-                              Store 19(@entryPointOutput) 20
+              20:     16(ptr) AccessChain 10(psout) 12
+              21:    7(fvec4) Load 20
+                              Store 19(Color) 21
                               Return
                               FunctionEnd
index 5436adf..0c00f23 100644 (file)
@@ -13,7 +13,7 @@ Linked fragment stage:
                               Capability Sampled1D
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 5663  "main" 4045 4656 4112
+                              EntryPoint Fragment 5663  "main" 4656 4112
                               ExecutionMode 5663 OriginUpperLeft
                               Decorate 4727 DescriptorSet 0
                               Decorate 4727 Binding 0
@@ -130,8 +130,6 @@ Linked fragment stage:
              138:   13(float) Constant 1065353216
             1284:   29(fvec4) ConstantComposite 138 138 138 138
              650:             TypePointer Function 13(float)
-            1670:             TypePointer Output 1032(struct)
-            4045:   1670(ptr) Variable Output
              667:             TypePointer Output 29(fvec4)
             4656:    667(ptr) Variable Output
              651:             TypePointer Output 13(float)
@@ -214,9 +212,13 @@ Linked fragment stage:
             7204:   23(ivec4) ImageSampleImplicitLod 12016 2476
            20158:    666(ptr) AccessChain 5072 2571
                               Store 20158 1284
-           19657:    650(ptr) AccessChain 5072 2574
-                              Store 19657 138
-           17934:1032(struct) Load 5072
-                              Store 4045 17934
+           19742:    650(ptr) AccessChain 5072 2574
+                              Store 19742 138
+           19848:    666(ptr) AccessChain 5072 2571
+            7967:   29(fvec4) Load 19848
+                              Store 4656 7967
+           16622:    650(ptr) AccessChain 5072 2574
+           11539:   13(float) Load 16622
+                              Store 4112 11539
                               Return
                               FunctionEnd
index 546763f..34477d2 100644 (file)
@@ -7,13 +7,13 @@ Linked fragment stage:
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 189
+// Id's are bound by 190
 
                               Capability Shader
                               Capability Sampled1D
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 180 186 188
+                              EntryPoint Fragment 4  "main" 180 184
                               ExecutionMode 4 OriginUpperLeft
                               Name 4  "main"
                               Name 7  "MemberTest"
@@ -59,12 +59,11 @@ Linked fragment stage:
                               MemberName 171(PS_OUTPUT) 0  "Color"
                               MemberName 171(PS_OUTPUT) 1  "Depth"
                               Name 173  "psout"
-                              Name 180  "@entryPointOutput"
-                              Name 182  "g_sSamp2d"
-                              Name 183  "g_sSamp2D_b"
-                              Name 184  "g_tTex1df4a"
-                              Name 186  "Color"
-                              Name 188  "Depth"
+                              Name 180  "Color"
+                              Name 184  "Depth"
+                              Name 187  "g_sSamp2d"
+                              Name 188  "g_sSamp2D_b"
+                              Name 189  "g_tTex1df4a"
                               Decorate 41(g_tTex1df4) DescriptorSet 0
                               Decorate 41(g_tTex1df4) Binding 0
                               Decorate 45(g_sSamp) DescriptorSet 0
@@ -81,12 +80,12 @@ Linked fragment stage:
                               Decorate 156(g_tTexcdi4) DescriptorSet 0
                               Decorate 165(g_tTexcdu4) DescriptorSet 0
                               MemberDecorate 171(PS_OUTPUT) 1 BuiltIn FragDepth
-                              Decorate 182(g_sSamp2d) DescriptorSet 0
-                              Decorate 183(g_sSamp2D_b) DescriptorSet 0
-                              Decorate 184(g_tTex1df4a) DescriptorSet 0
-                              Decorate 184(g_tTex1df4a) Binding 1
-                              Decorate 186(Color) Location 0
-                              Decorate 188(Depth) BuiltIn FragDepth
+                              Decorate 180(Color) Location 0
+                              Decorate 184(Depth) BuiltIn FragDepth
+                              Decorate 187(g_sSamp2d) DescriptorSet 0
+                              Decorate 188(g_sSamp2D_b) DescriptorSet 0
+                              Decorate 189(g_tTex1df4a) DescriptorSet 0
+                              Decorate 189(g_tTex1df4a) Binding 1
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeInt 32 1
@@ -186,15 +185,13 @@ Linked fragment stage:
              174:   35(float) Constant 1065353216
              175:   36(fvec4) ConstantComposite 174 174 174 174
              177:             TypePointer Function 35(float)
-             179:             TypePointer Output 171(PS_OUTPUT)
-180(@entryPointOutput):    179(ptr) Variable Output
-  182(g_sSamp2d):     44(ptr) Variable UniformConstant
-183(g_sSamp2D_b):     44(ptr) Variable UniformConstant
-184(g_tTex1df4a):     40(ptr) Variable UniformConstant
-             185:             TypePointer Output 36(fvec4)
-      186(Color):    185(ptr) Variable Output
-             187:             TypePointer Output 35(float)
-      188(Depth):    187(ptr) Variable Output
+             179:             TypePointer Output 36(fvec4)
+      180(Color):    179(ptr) Variable Output
+             183:             TypePointer Output 35(float)
+      184(Depth):    183(ptr) Variable Output
+  187(g_sSamp2d):     44(ptr) Variable UniformConstant
+188(g_sSamp2D_b):     44(ptr) Variable UniformConstant
+189(g_tTex1df4a):     40(ptr) Variable UniformConstant
          4(main):           2 Function None 3
                5:             Label
         9(mtest):      8(ptr) Variable Function
@@ -299,7 +296,11 @@ Linked fragment stage:
                               Store 176 175
              178:    177(ptr) AccessChain 173(psout) 10
                               Store 178 174
-             181:171(PS_OUTPUT) Load 173(psout)
-                              Store 180(@entryPointOutput) 181
+             181:     37(ptr) AccessChain 173(psout) 23
+             182:   36(fvec4) Load 181
+                              Store 180(Color) 182
+             185:    177(ptr) AccessChain 173(psout) 10
+             186:   35(float) Load 185
+                              Store 184(Depth) 186
                               Return
                               FunctionEnd
index 7ac9e46..b4a792c 100644 (file)
@@ -7,13 +7,13 @@ Linked fragment stage:
 
 // Module Version 10000
 // Generated by (magic number): 80001
-// Id's are bound by 189
+// Id's are bound by 190
 
                               Capability Shader
                               Capability Sampled1D
                1:             ExtInstImport  "GLSL.std.450"
                               MemoryModel Logical GLSL450
-                              EntryPoint Fragment 4  "main" 180 186 188
+                              EntryPoint Fragment 4  "main" 180 184
                               ExecutionMode 4 OriginUpperLeft
                               Decorate 41 DescriptorSet 0
                               Decorate 41 Binding 0
@@ -31,12 +31,12 @@ Linked fragment stage:
                               Decorate 156 DescriptorSet 0
                               Decorate 165 DescriptorSet 0
                               MemberDecorate 171 1 BuiltIn FragDepth
-                              Decorate 182 DescriptorSet 0
-                              Decorate 183 DescriptorSet 0
-                              Decorate 184 DescriptorSet 0
-                              Decorate 184 Binding 1
-                              Decorate 186 Location 0
-                              Decorate 188 BuiltIn FragDepth
+                              Decorate 180 Location 0
+                              Decorate 184 BuiltIn FragDepth
+                              Decorate 187 DescriptorSet 0
+                              Decorate 188 DescriptorSet 0
+                              Decorate 189 DescriptorSet 0
+                              Decorate 189 Binding 1
                2:             TypeVoid
                3:             TypeFunction 2
                6:             TypeInt 32 1
@@ -136,15 +136,13 @@ Linked fragment stage:
              174:   35(float) Constant 1065353216
              175:   36(fvec4) ConstantComposite 174 174 174 174
              177:             TypePointer Function 35(float)
-             179:             TypePointer Output 171(struct)
+             179:             TypePointer Output 36(fvec4)
              180:    179(ptr) Variable Output
-             182:     44(ptr) Variable UniformConstant
-             183:     44(ptr) Variable UniformConstant
-             184:     40(ptr) Variable UniformConstant
-             185:             TypePointer Output 36(fvec4)
-             186:    185(ptr) Variable Output
-             187:             TypePointer Output 35(float)
-             188:    187(ptr) Variable Output
+             183:             TypePointer Output 35(float)
+             184:    183(ptr) Variable Output
+             187:     44(ptr) Variable UniformConstant
+             188:     44(ptr) Variable UniformConstant
+             189:     40(ptr) Variable UniformConstant
                4:           2 Function None 3
                5:             Label
                9:      8(ptr) Variable Function
@@ -249,7 +247,11 @@ Linked fragment stage:
                               Store 176 175
              178:    177(ptr) AccessChain 173 10
                               Store 178 174
-             181: 171(struct) Load 173
-                              Store 180 181
+             181:     37(ptr) AccessChain 173 23
+             182:   36(fvec4) Load 181
+                              Store 180 182
+             185:    177(ptr) AccessChain 173 10
+             186:   35(float) Load 185
+                              Store 184 186
                               Return
                               FunctionEnd
index 7238991..14f0e45 100644 (file)
@@ -3,10 +3,15 @@ struct OutParam {
     int2 i;
 };
 
-float4 PixelShaderFunction(float4 input, out float4 out1, out OutParam out2) : COLOR0
+float4 PixelShaderFunction(float4 input, out float4 out1, out OutParam out2, out OutParam out3) : COLOR0
 {
     out1 = input;
     out2.v = 2.0;
     out2.i = 3;
+    OutParam local;
+    local.v = 12.0;
+    local.i = 13;
+    out3 = local;
+
     return out1;
 }
index ad54631..5ffcb46 100644 (file)
@@ -2,5 +2,5 @@
 // For the version, it uses the latest git tag followed by the number of commits.
 // For the date, it uses the current date (when then script is run).
 
-#define GLSLANG_REVISION "Overload400-PrecQual.1487"
+#define GLSLANG_REVISION "Overload400-PrecQual.1489"
 #define GLSLANG_DATE "16-Sep-2016"
index bad6034..d0ff3cd 100755 (executable)
@@ -1672,7 +1672,7 @@ bool HlslGrammar::acceptAssignmentExpression(TIntermTyped*& node)
         return false;
     }
 
-    node = intermediate.addAssign(assignOp, node, rightNode, loc);
+    node = parseContext.handleAssign(loc, assignOp, node, rightNode);
     if (node == nullptr) {
         parseContext.error(loc, "could not create assignment", "", "");
         return false;
index e80505a..d97bf2a 100755 (executable)
@@ -1011,7 +1011,7 @@ TIntermNode* HlslParseContext::handleReturnValue(const TSourceLoc& loc, TIntermT
         assert(entryPointOutput != nullptr); // should have been error tested at the beginning
         TIntermSymbol* left = new TIntermSymbol(entryPointOutput->getUniqueId(), entryPointOutput->getName(),
                                                 entryPointOutput->getType());
-        TIntermNode* returnSequence = intermediate.addAssign(EOpAssign, left, converted, loc);
+        TIntermNode* returnSequence = handleAssign(loc, EOpAssign, left, converted);
         returnSequence = intermediate.makeAggregate(returnSequence);
         returnSequence = intermediate.growAggregate(returnSequence, intermediate.addBranch(EOpReturn, loc));
         returnSequence->getAsAggregate()->setOperator(EOpSequence);
@@ -1032,6 +1032,32 @@ void HlslParseContext::handleFunctionArgument(TFunction* function, TIntermTyped*
         arguments = newArg;
 }
 
+// Some simple source assignments need to be flattened to a sequence
+// of AST assignments.  Catch these and flatten, otherwise, pass through
+// to intermediate.addAssign().
+TIntermTyped* HlslParseContext::handleAssign(const TSourceLoc& loc, TOperator op, TIntermTyped* left, TIntermTyped* right)
+{
+    if (! shouldFlatten(left->getType()) ||
+            ! left->getAsSymbolNode() ||
+            flattenMap.find(left->getAsSymbolNode()->getId()) == flattenMap.end())
+        return intermediate.addAssign(op, left, right, loc);
+
+    // If we get here, we are assigning a whole struct to a flattened l-value, so have to
+    // do member-by-member assignment:
+    const auto& members = *left->getType().getStruct();
+    const auto& memberVariables = flattenMap[left->getAsSymbolNode()->getId()];
+    TIntermAggregate* assignList = nullptr;
+    for (int member = 0; member < (int)memberVariables.size(); ++member) {
+        TIntermTyped* subRight = intermediate.addIndex(EOpIndexDirectStruct, right, intermediate.addConstantUnion(member, loc), loc);
+        subRight->setType(*members[member].type);
+        TIntermTyped* subLeft = intermediate.addSymbol(*memberVariables[member]);
+        assignList = intermediate.growAggregate(assignList, intermediate.addAssign(op, subLeft, subRight, loc));
+    }
+    assignList->setOperator(EOpSequence);
+
+    return assignList;
+}
+
 //
 // HLSL atomic operations have slightly different arguments than
 // GLSL/AST/SPIRV.  The semantics are converted below in decomposeIntrinsic.
index d75b3d7..ccdf771 100755 (executable)
@@ -94,6 +94,7 @@ public:
     void remapNonEntrypointIO(TFunction& function);
     TIntermNode* handleReturnValue(const TSourceLoc&, TIntermTyped*);
     void handleFunctionArgument(TFunction*, TIntermTyped*& arguments, TIntermTyped* newArg);
+    TIntermTyped* handleAssign(const TSourceLoc&, TOperator, TIntermTyped* left, TIntermTyped* right);
     TIntermTyped* handleFunctionCall(const TSourceLoc&, TFunction*, TIntermNode*);
     void decomposeIntrinsic(const TSourceLoc&, TIntermTyped*& node, TIntermNode* arguments);
     void decomposeSampleMethods(const TSourceLoc&, TIntermTyped*& node, TIntermNode* arguments);
@@ -238,7 +239,7 @@ protected:
     //
     TVector<TSymbol*> ioArraySymbolResizeList;
 
-    TUnorderedMap<int, TVector<TVariable*>> flattenMap;
+    TMap<int, TVector<TVariable*>> flattenMap;
     unsigned int nextInLocation;
     unsigned int nextOutLocation;
 };