spv.set.vert
// Module Version 10000
// Generated by (magic number): 8000a
// Id's are bound by 22

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Vertex 4  "main" 9
                              Source GLSL 450
                              Name 4  "main"
                              Name 9  "color"
                              Name 10  "setBuf"
                              MemberName 10(setBuf) 0  "color"
                              Name 12  "setBufInst"
                              Name 21  "samp2D"
                              Decorate 9(color) Location 0
                              MemberDecorate 10(setBuf) 0 Offset 0
                              Decorate 10(setBuf) BufferBlock
                              Decorate 12(setBufInst) DescriptorSet 0
                              Decorate 12(setBufInst) Binding 8
                              Decorate 21(samp2D) DescriptorSet 4
                              Decorate 21(samp2D) Binding 7
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypeVector 6(float) 4
               8:             TypePointer Output 7(fvec4)
        9(color):      8(ptr) Variable Output
      10(setBuf):             TypeStruct 7(fvec4)
              11:             TypePointer Uniform 10(setBuf)
  12(setBufInst):     11(ptr) Variable Uniform
              13:             TypeInt 32 1
              14:     13(int) Constant 0
              15:             TypePointer Uniform 7(fvec4)
              18:             TypeImage 6(float) 2D sampled format:Unknown
              19:             TypeSampledImage 18
              20:             TypePointer UniformConstant 19
      21(samp2D):     20(ptr) Variable UniformConstant
         4(main):           2 Function None 3
               5:             Label
              16:     15(ptr) AccessChain 12(setBufInst) 14
              17:    7(fvec4) Load 16
                              Store 9(color) 17
                              Return
                              FunctionEnd
