spv.hlslOffsets.vert
Shader version: 450
0:? Sequence
0:27  Function Definition: main( ( global void)
0:27    Function Parameters: 
0:?   Linker Objects
0:?     'anon@0' (layout( binding=0 column_major std430) buffer block{layout( column_major std430) buffer highp float m0, layout( column_major std430) buffer highp 3-component vector of float m4, layout( column_major std430) buffer highp float m16, layout( column_major std430 offset=20) buffer highp 3-component vector of float m20, layout( column_major std430) buffer highp 3-component vector of float m32, layout( column_major std430) buffer highp 2-component vector of float m48, layout( column_major std430) buffer highp 2-component vector of float m56, layout( column_major std430) buffer highp float m64, layout( column_major std430) buffer highp 2-component vector of float m68, layout( column_major std430) buffer highp float m76, layout( column_major std430) buffer highp float m80, layout( column_major std430 offset=88) buffer highp 2-component vector of float m88, layout( column_major std430) buffer highp 2-component vector of float m96, layout( column_major std430) buffer 2-component vector of double m112})


Linked vertex stage:


Shader version: 450
0:? Sequence
0:27  Function Definition: main( ( global void)
0:27    Function Parameters: 
0:?   Linker Objects
0:?     'anon@0' (layout( binding=0 column_major std430) buffer block{layout( column_major std430) buffer highp float m0, layout( column_major std430) buffer highp 3-component vector of float m4, layout( column_major std430) buffer highp float m16, layout( column_major std430 offset=20) buffer highp 3-component vector of float m20, layout( column_major std430) buffer highp 3-component vector of float m32, layout( column_major std430) buffer highp 2-component vector of float m48, layout( column_major std430) buffer highp 2-component vector of float m56, layout( column_major std430) buffer highp float m64, layout( column_major std430) buffer highp 2-component vector of float m68, layout( column_major std430) buffer highp float m76, layout( column_major std430) buffer highp float m80, layout( column_major std430 offset=88) buffer highp 2-component vector of float m88, layout( column_major std430) buffer highp 2-component vector of float m96, layout( column_major std430) buffer 2-component vector of double m112})

// Module Version 10000
// Generated by (magic number): 80008
// Id's are bound by 14

                              Capability Shader
                              Capability Float64
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Vertex 4  "main"
                              Source GLSL 450
                              Name 4  "main"
                              Name 11  "block"
                              MemberName 11(block) 0  "m0"
                              MemberName 11(block) 1  "m4"
                              MemberName 11(block) 2  "m16"
                              MemberName 11(block) 3  "m20"
                              MemberName 11(block) 4  "m32"
                              MemberName 11(block) 5  "m48"
                              MemberName 11(block) 6  "m56"
                              MemberName 11(block) 7  "m64"
                              MemberName 11(block) 8  "m68"
                              MemberName 11(block) 9  "m76"
                              MemberName 11(block) 10  "m80"
                              MemberName 11(block) 11  "m88"
                              MemberName 11(block) 12  "m96"
                              MemberName 11(block) 13  "m112"
                              Name 13  ""
                              MemberDecorate 11(block) 0 Offset 0
                              MemberDecorate 11(block) 1 Offset 4
                              MemberDecorate 11(block) 2 Offset 16
                              MemberDecorate 11(block) 3 Offset 20
                              MemberDecorate 11(block) 4 Offset 32
                              MemberDecorate 11(block) 5 Offset 48
                              MemberDecorate 11(block) 6 Offset 56
                              MemberDecorate 11(block) 7 Offset 64
                              MemberDecorate 11(block) 8 Offset 68
                              MemberDecorate 11(block) 9 Offset 76
                              MemberDecorate 11(block) 10 Offset 80
                              MemberDecorate 11(block) 11 Offset 88
                              MemberDecorate 11(block) 12 Offset 96
                              MemberDecorate 11(block) 13 Offset 112
                              Decorate 11(block) BufferBlock
                              Decorate 13 DescriptorSet 0
                              Decorate 13 Binding 0
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypeVector 6(float) 3
               8:             TypeVector 6(float) 2
               9:             TypeFloat 64
              10:             TypeVector 9(float64_t) 2
       11(block):             TypeStruct 6(float) 7(fvec3) 6(float) 7(fvec3) 7(fvec3) 8(fvec2) 8(fvec2) 6(float) 8(fvec2) 6(float) 6(float) 8(fvec2) 8(fvec2) 10(f64vec2)
              12:             TypePointer Uniform 11(block)
              13:     12(ptr) Variable Uniform
         4(main):           2 Function None 3
               5:             Label
                              Return
                              FunctionEnd
