spv.dataOutIndirect.frag
// Module Version 10000
// Generated by (magic number): 80008
// Id's are bound by 26

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 12 22
                              ExecutionMode 4 OriginUpperLeft
                              Source GLSL 140
                              Name 4  "main"
                              Name 12  "fcolor"
                              Name 14  "b"
                              MemberName 14(b) 0  "i"
                              Name 16  "bName"
                              Name 22  "Color"
                              MemberDecorate 14(b) 0 Offset 0
                              Decorate 14(b) Block
                              Decorate 16(bName) DescriptorSet 0
                              Decorate 16(bName) Binding 0
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypeVector 6(float) 4
               8:             TypeInt 32 0
               9:      8(int) Constant 4
              10:             TypeArray 7(fvec4) 9
              11:             TypePointer Output 10
      12(fcolor):     11(ptr) Variable Output
              13:             TypeInt 32 1
           14(b):             TypeStruct 13(int)
              15:             TypePointer Uniform 14(b)
       16(bName):     15(ptr) Variable Uniform
              17:     13(int) Constant 0
              18:             TypePointer Uniform 13(int)
              21:             TypePointer Input 7(fvec4)
       22(Color):     21(ptr) Variable Input
              24:             TypePointer Output 7(fvec4)
         4(main):           2 Function None 3
               5:             Label
              19:     18(ptr) AccessChain 16(bName) 17
              20:     13(int) Load 19
              23:    7(fvec4) Load 22(Color)
              25:     24(ptr) AccessChain 12(fcolor) 20
                              Store 25 23
                              Return
                              FunctionEnd
