• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1hlsl.constantbuffer.frag
2Shader version: 500
3gl_FragCoord origin is upper left
40:? Sequence
50:20  Function Definition: @main( ( temp 4-component vector of float)
60:20    Function Parameters:
70:?     Sequence
80:21      Test condition and select ( temp void)
90:21        Condition
100:21        x: direct index for structure (layout( row_major std140) uniform bool)
110:21          direct index (layout( row_major std140) temp block{layout( row_major std140) uniform bool x, layout( row_major std140) uniform float y})
120:21            direct index (layout( row_major std140) temp 4-element array of block{layout( row_major std140) uniform bool x, layout( row_major std140) uniform float y})
130:21              'cb3' (layout( row_major std140) uniform 2-element array of 4-element array of block{layout( row_major std140) uniform bool x, layout( row_major std140) uniform float y})
140:21              Constant:
150:21                1 (const int)
160:21            Constant:
170:21              2 (const int)
180:21          Constant:
190:21            0 (const int)
200:21        true case
210:22        Branch: Return with expression
220:22          add ( temp 4-component vector of float)
230:22            add ( temp 4-component vector of float)
240:22              x: direct index for structure (layout( row_major std140) uniform 4-component vector of float)
250:22                'cb1' (layout( binding=12 row_major std140) uniform block{layout( row_major std140) uniform 4-component vector of float x})
260:22                Constant:
270:22                  0 (const int)
280:22              y: direct index for structure (layout( row_major std140) uniform float)
290:22                direct index (layout( row_major std140) temp block{layout( row_major std140) uniform bool x, layout( row_major std140) uniform float y})
300:22                  'cb2' (layout( row_major std140) uniform 3-element array of block{layout( row_major std140) uniform bool x, layout( row_major std140) uniform float y})
310:22                  Constant:
320:22                    1 (const int)
330:22                Constant:
340:22                  1 (const int)
350:22            Convert int to float ( temp float)
360:22              c1: direct index for structure (layout( row_major std140) uniform int)
370:22                'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform int c1})
380:22                Constant:
390:22                  0 (const uint)
400:21        false case
410:24        Branch: Return with expression
420:24          Construct vec4 ( temp 4-component vector of float)
430:24            y: direct index for structure (layout( row_major std140) uniform float)
440:24              direct index (layout( row_major std140) temp block{layout( row_major std140) uniform bool x, layout( row_major std140) uniform float y})
450:24                direct index (layout( row_major std140) temp 4-element array of block{layout( row_major std140) uniform bool x, layout( row_major std140) uniform float y})
460:24                  'cb3' (layout( row_major std140) uniform 2-element array of 4-element array of block{layout( row_major std140) uniform bool x, layout( row_major std140) uniform float y})
470:24                  Constant:
480:24                    1 (const int)
490:24                Constant:
500:24                  3 (const int)
510:24              Constant:
520:24                1 (const int)
530:20  Function Definition: main( ( temp void)
540:20    Function Parameters:
550:?     Sequence
560:20      move second child to first child ( temp 4-component vector of float)
570:?         '@entryPointOutput' (layout( location=0) out 4-component vector of float)
580:20        Function Call: @main( ( temp 4-component vector of float)
590:?   Linker Objects
600:?     'cb1' (layout( binding=12 row_major std140) uniform block{layout( row_major std140) uniform 4-component vector of float x})
610:?     'cb2' (layout( row_major std140) uniform 3-element array of block{layout( row_major std140) uniform bool x, layout( row_major std140) uniform float y})
620:?     'cb3' (layout( row_major std140) uniform 2-element array of 4-element array of block{layout( row_major std140) uniform bool x, layout( row_major std140) uniform float y})
630:?     'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform int c1})
640:?     '@entryPointOutput' (layout( location=0) out 4-component vector of float)
65
66
67Linked fragment stage:
68
69
70Shader version: 500
71gl_FragCoord origin is upper left
720:? Sequence
730:20  Function Definition: @main( ( temp 4-component vector of float)
740:20    Function Parameters:
750:?     Sequence
760:21      Test condition and select ( temp void)
770:21        Condition
780:21        x: direct index for structure (layout( row_major std140) uniform bool)
790:21          direct index (layout( row_major std140) temp block{layout( row_major std140) uniform bool x, layout( row_major std140) uniform float y})
800:21            direct index (layout( row_major std140) temp 4-element array of block{layout( row_major std140) uniform bool x, layout( row_major std140) uniform float y})
810:21              'cb3' (layout( row_major std140) uniform 2-element array of 4-element array of block{layout( row_major std140) uniform bool x, layout( row_major std140) uniform float y})
820:21              Constant:
830:21                1 (const int)
840:21            Constant:
850:21              2 (const int)
860:21          Constant:
870:21            0 (const int)
880:21        true case
890:22        Branch: Return with expression
900:22          add ( temp 4-component vector of float)
910:22            add ( temp 4-component vector of float)
920:22              x: direct index for structure (layout( row_major std140) uniform 4-component vector of float)
930:22                'cb1' (layout( binding=12 row_major std140) uniform block{layout( row_major std140) uniform 4-component vector of float x})
940:22                Constant:
950:22                  0 (const int)
960:22              y: direct index for structure (layout( row_major std140) uniform float)
970:22                direct index (layout( row_major std140) temp block{layout( row_major std140) uniform bool x, layout( row_major std140) uniform float y})
980:22                  'cb2' (layout( row_major std140) uniform 3-element array of block{layout( row_major std140) uniform bool x, layout( row_major std140) uniform float y})
990:22                  Constant:
1000:22                    1 (const int)
1010:22                Constant:
1020:22                  1 (const int)
1030:22            Convert int to float ( temp float)
1040:22              c1: direct index for structure (layout( row_major std140) uniform int)
1050:22                'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform int c1})
1060:22                Constant:
1070:22                  0 (const uint)
1080:21        false case
1090:24        Branch: Return with expression
1100:24          Construct vec4 ( temp 4-component vector of float)
1110:24            y: direct index for structure (layout( row_major std140) uniform float)
1120:24              direct index (layout( row_major std140) temp block{layout( row_major std140) uniform bool x, layout( row_major std140) uniform float y})
1130:24                direct index (layout( row_major std140) temp 4-element array of block{layout( row_major std140) uniform bool x, layout( row_major std140) uniform float y})
1140:24                  'cb3' (layout( row_major std140) uniform 2-element array of 4-element array of block{layout( row_major std140) uniform bool x, layout( row_major std140) uniform float y})
1150:24                  Constant:
1160:24                    1 (const int)
1170:24                Constant:
1180:24                  3 (const int)
1190:24              Constant:
1200:24                1 (const int)
1210:20  Function Definition: main( ( temp void)
1220:20    Function Parameters:
1230:?     Sequence
1240:20      move second child to first child ( temp 4-component vector of float)
1250:?         '@entryPointOutput' (layout( location=0) out 4-component vector of float)
1260:20        Function Call: @main( ( temp 4-component vector of float)
1270:?   Linker Objects
1280:?     'cb1' (layout( binding=12 row_major std140) uniform block{layout( row_major std140) uniform 4-component vector of float x})
1290:?     'cb2' (layout( row_major std140) uniform 3-element array of block{layout( row_major std140) uniform bool x, layout( row_major std140) uniform float y})
1300:?     'cb3' (layout( row_major std140) uniform 2-element array of 4-element array of block{layout( row_major std140) uniform bool x, layout( row_major std140) uniform float y})
1310:?     'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform int c1})
1320:?     '@entryPointOutput' (layout( location=0) out 4-component vector of float)
133
134Validation failed
135// Module Version 10000
136// Generated by (magic number): 8000a
137// Id's are bound by 66
138
139                              Capability Shader
140               1:             ExtInstImport  "GLSL.std.450"
141                              MemoryModel Logical GLSL450
142                              EntryPoint Fragment 4  "main" 64
143                              ExecutionMode 4 OriginUpperLeft
144                              Source HLSL 500
145                              Name 4  "main"
146                              Name 9  "@main("
147                              Name 12  "cb3"
148                              MemberName 12(cb3) 0  "x"
149                              MemberName 12(cb3) 1  "y"
150                              Name 18  "cb3"
151                              Name 31  "cb1"
152                              MemberName 31(cb1) 0  "x"
153                              Name 33  "cb1"
154                              Name 40  "cb2"
155                              Name 46  "cbuff"
156                              MemberName 46(cbuff) 0  "c1"
157                              Name 48  ""
158                              Name 64  "@entryPointOutput"
159                              MemberDecorate 12(cb3) 0 Offset 0
160                              MemberDecorate 12(cb3) 1 Offset 4
161                              Decorate 12(cb3) Block
162                              Decorate 18(cb3) DescriptorSet 0
163                              Decorate 18(cb3) Binding 1
164                              MemberDecorate 31(cb1) 0 Offset 0
165                              Decorate 31(cb1) Block
166                              Decorate 33(cb1) DescriptorSet 0
167                              Decorate 33(cb1) Binding 12
168                              Decorate 40(cb2) DescriptorSet 0
169                              Decorate 40(cb2) Binding 0
170                              MemberDecorate 46(cbuff) 0 Offset 0
171                              Decorate 46(cbuff) Block
172                              Decorate 48 DescriptorSet 0
173                              Decorate 48 Binding 2
174                              Decorate 64(@entryPointOutput) Location 0
175               2:             TypeVoid
176               3:             TypeFunction 2
177               6:             TypeFloat 32
178               7:             TypeVector 6(float) 4
179               8:             TypeFunction 7(fvec4)
180              11:             TypeInt 32 0
181         12(cb3):             TypeStruct 11(int) 6(float)
182              13:     11(int) Constant 4
183              14:             TypeArray 12(cb3) 13
184              15:     11(int) Constant 2
185              16:             TypeArray 14 15
186              17:             TypePointer Uniform 16
187         18(cb3):     17(ptr) Variable Uniform
188              19:             TypeInt 32 1
189              20:     19(int) Constant 1
190              21:     19(int) Constant 2
191              22:     19(int) Constant 0
192              23:             TypePointer Uniform 11(int)
193              26:             TypeBool
194              27:     11(int) Constant 0
195         31(cb1):             TypeStruct 7(fvec4)
196              32:             TypePointer Uniform 31(cb1)
197         33(cb1):     32(ptr) Variable Uniform
198              34:             TypePointer Uniform 7(fvec4)
199              37:     11(int) Constant 3
200              38:             TypeArray 12(cb3) 37
201              39:             TypePointer Uniform 38
202         40(cb2):     39(ptr) Variable Uniform
203              41:             TypePointer Uniform 6(float)
204       46(cbuff):             TypeStruct 19(int)
205              47:             TypePointer Uniform 46(cbuff)
206              48:     47(ptr) Variable Uniform
207              49:             TypePointer Uniform 19(int)
208              57:     19(int) Constant 3
209              63:             TypePointer Output 7(fvec4)
21064(@entryPointOutput):     63(ptr) Variable Output
211         4(main):           2 Function None 3
212               5:             Label
213              65:    7(fvec4) FunctionCall 9(@main()
214                              Store 64(@entryPointOutput) 65
215                              Return
216                              FunctionEnd
217       9(@main():    7(fvec4) Function None 8
218              10:             Label
219              24:     23(ptr) AccessChain 18(cb3) 20 21 22
220              25:     11(int) Load 24
221              28:    26(bool) INotEqual 25 27
222                              SelectionMerge 30 None
223                              BranchConditional 28 29 56
224              29:               Label
225              35:     34(ptr)   AccessChain 33(cb1) 22
226              36:    7(fvec4)   Load 35
227              42:     41(ptr)   AccessChain 40(cb2) 20 20
228              43:    6(float)   Load 42
229              44:    7(fvec4)   CompositeConstruct 43 43 43 43
230              45:    7(fvec4)   FAdd 36 44
231              50:     49(ptr)   AccessChain 48 22
232              51:     19(int)   Load 50
233              52:    6(float)   ConvertSToF 51
234              53:    7(fvec4)   CompositeConstruct 52 52 52 52
235              54:    7(fvec4)   FAdd 45 53
236                                ReturnValue 54
237              56:               Label
238              58:     41(ptr)   AccessChain 18(cb3) 20 57 20
239              59:    6(float)   Load 58
240              60:    7(fvec4)   CompositeConstruct 59 59 59 59
241                                ReturnValue 60
242              30:             Label
243                              Unreachable
244                              FunctionEnd
245