spv.1.4.constructComposite.comp
// Module Version 10400
// Generated by (magic number): 80008
// Id's are bound by 27

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint GLCompute 4  "main" 10 15
                              ExecutionMode 4 LocalSize 64 1 1
                              Source GLSL 460
                              Name 4  "main"
                              Name 7  "sA"
                              MemberName 7(sA) 0  "x"
                              MemberName 7(sA) 1  "y"
                              Name 8  "sC"
                              MemberName 8(sC) 0  "state"
                              Name 10  "c"
                              Name 11  "sA"
                              MemberName 11(sA) 0  "x"
                              MemberName 11(sA) 1  "y"
                              Name 12  "sB"
                              MemberName 12(sB) 0  "a"
                              Name 13  "ubo"
                              MemberName 13(ubo) 0  "b"
                              Name 15  ""
                              MemberDecorate 11(sA) 0 Offset 0
                              MemberDecorate 11(sA) 1 Offset 4
                              MemberDecorate 12(sB) 0 Offset 0
                              MemberDecorate 13(ubo) 0 Offset 0
                              Decorate 13(ubo) Block
                              Decorate 15 DescriptorSet 0
                              Decorate 15 Binding 0
                              Decorate 26 BuiltIn WorkgroupSize
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeInt 32 1
           7(sA):             TypeStruct 6(int) 6(int)
           8(sC):             TypeStruct 7(sA)
               9:             TypePointer Private 8(sC)
           10(c):      9(ptr) Variable Private
          11(sA):             TypeStruct 6(int) 6(int)
          12(sB):             TypeStruct 11(sA)
         13(ubo):             TypeStruct 12(sB)
              14:             TypePointer Uniform 13(ubo)
              15:     14(ptr) Variable Uniform
              16:      6(int) Constant 0
              17:             TypePointer Uniform 11(sA)
              22:             TypeInt 32 0
              23:             TypeVector 22(int) 3
              24:     22(int) Constant 64
              25:     22(int) Constant 1
              26:   23(ivec3) ConstantComposite 24 25 25
         4(main):           2 Function None 3
               5:             Label
              18:     17(ptr) AccessChain 15 16 16
              19:      11(sA) Load 18
              20:       7(sA) CopyLogical 19
              21:       8(sC) CompositeConstruct 20
                              Store 10(c) 21
                              Return
                              FunctionEnd
