spv.meshShaderUserDefined.mesh
// Module Version 10000
// Generated by (magic number): 80007
// Id's are bound by 138

                              Capability MeshShadingNV
                              Extension  "SPV_NV_mesh_shader"
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint MeshNV 4  "main" 11 17 34 101
                              ExecutionMode 4 LocalSize 32 1 1
                              ExecutionMode 4 OutputVertices 81
                              ExecutionMode 4 OutputPrimitivesNV 32
                              ExecutionMode 4 OutputTrianglesNV
                              Source GLSL 450
                              SourceExtension  "GL_NV_mesh_shader"
                              Name 4  "main"
                              Name 8  "iid"
                              Name 11  "gl_LocalInvocationID"
                              Name 16  "gid"
                              Name 17  "gl_WorkGroupID"
                              Name 30  "myblock"
                              MemberName 30(myblock) 0  "f"
                              MemberName 30(myblock) 1  "fArr"
                              MemberName 30(myblock) 2  "pos"
                              MemberName 30(myblock) 3  "posArr"
                              MemberName 30(myblock) 4  "m"
                              MemberName 30(myblock) 5  "mArr"
                              Name 34  "blk"
                              Name 97  "myblock2"
                              MemberName 97(myblock2) 0  "f"
                              MemberName 97(myblock2) 1  "pos"
                              MemberName 97(myblock2) 2  "m"
                              Name 101  "blk2"
                              Decorate 11(gl_LocalInvocationID) BuiltIn LocalInvocationId
                              Decorate 17(gl_WorkGroupID) BuiltIn WorkgroupId
                              MemberDecorate 30(myblock) 0 PerPrimitiveNV
                              MemberDecorate 30(myblock) 1 PerPrimitiveNV
                              MemberDecorate 30(myblock) 2 PerPrimitiveNV
                              MemberDecorate 30(myblock) 3 PerPrimitiveNV
                              MemberDecorate 30(myblock) 4 PerPrimitiveNV
                              MemberDecorate 30(myblock) 5 PerPrimitiveNV
                              Decorate 30(myblock) Block
                              Decorate 34(blk) Location 0
                              Decorate 97(myblock2) Block
                              Decorate 101(blk2) Location 20
                              Decorate 137 BuiltIn WorkgroupSize
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeInt 32 0
               7:             TypePointer Function 6(int)
               9:             TypeVector 6(int) 3
              10:             TypePointer Input 9(ivec3)
11(gl_LocalInvocationID):     10(ptr) Variable Input
              12:      6(int) Constant 0
              13:             TypePointer Input 6(int)
17(gl_WorkGroupID):     10(ptr) Variable Input
              20:             TypeFloat 32
              21:      6(int) Constant 4
              22:             TypeArray 20(float) 21
              23:             TypeVector 20(float) 3
              24:             TypeVector 20(float) 4
              25:             TypeArray 24(fvec4) 21
              26:             TypeMatrix 24(fvec4) 4
              27:             TypeMatrix 23(fvec3) 3
              28:      6(int) Constant 2
              29:             TypeArray 27 28
     30(myblock):             TypeStruct 20(float) 22 23(fvec3) 25 26 29
              31:      6(int) Constant 32
              32:             TypeArray 30(myblock) 31
              33:             TypePointer Output 32
         34(blk):     33(ptr) Variable Output
              36:             TypeInt 32 1
              37:     36(int) Constant 0
              38:   20(float) Constant 1093664768
              39:             TypePointer Output 20(float)
              42:      6(int) Constant 1
              44:     36(int) Constant 1
              52:     36(int) Constant 2
              53:   20(float) Constant 1096810496
              54:   20(float) Constant 1097859072
              55:   20(float) Constant 1095761920
              56:   23(fvec3) ConstantComposite 53 54 55
              57:             TypePointer Output 23(fvec3)
              63:     36(int) Constant 3
              68:             TypePointer Output 24(fvec4)
              74:     36(int) Constant 4
              75:   20(float) Constant 1098907648
              76:   24(fvec4) ConstantComposite 55 53 54 75
              81:     36(int) Constant 5
              84:      6(int) Constant 3
              91:   20(float) Constant 1099431936
              92:   20(float) Constant 1099956224
              93:   20(float) Constant 1100480512
              94:   23(fvec3) ConstantComposite 91 92 93
              96:      6(int) Constant 264
    97(myblock2):             TypeStruct 20(float) 24(fvec4) 26
              98:      6(int) Constant 81
              99:             TypeArray 97(myblock2) 98
             100:             TypePointer Output 99
       101(blk2):    100(ptr) Variable Output
             107:   20(float) Constant 1101004800
             111:   20(float) Constant 1101529088
             112:   20(float) Constant 1102053376
             113:   20(float) Constant 1102577664
             114:   20(float) Constant 1103101952
             115:   24(fvec4) ConstantComposite 111 112 113 114
             127:   20(float) Constant 1105723392
             137:    9(ivec3) ConstantComposite 31 42 42
         4(main):           2 Function None 3
               5:             Label
          8(iid):      7(ptr) Variable Function
         16(gid):      7(ptr) Variable Function
              14:     13(ptr) AccessChain 11(gl_LocalInvocationID) 12
              15:      6(int) Load 14
                              Store 8(iid) 15
              18:     13(ptr) AccessChain 17(gl_WorkGroupID) 12
              19:      6(int) Load 18
                              Store 16(gid) 19
              35:      6(int) Load 8(iid)
              40:     39(ptr) AccessChain 34(blk) 35 37
                              Store 40 38
              41:      6(int) Load 8(iid)
              43:      6(int) IAdd 41 42
              45:      6(int) Load 16(gid)
              46:      6(int) Load 8(iid)
              47:     39(ptr) AccessChain 34(blk) 46 37
              48:   20(float) Load 47
              49:     39(ptr) AccessChain 34(blk) 43 44 45
                              Store 49 48
              50:      6(int) Load 8(iid)
              51:      6(int) UDiv 50 28
              58:     57(ptr) AccessChain 34(blk) 51 52
              59:   23(fvec3) Load 58
              60:   23(fvec3) VectorShuffle 59 56 5 3 4
                              Store 58 60
              61:      6(int) Load 8(iid)
              62:      6(int) IMul 61 28
              64:      6(int) Load 8(iid)
              65:      6(int) UDiv 64 28
              66:     57(ptr) AccessChain 34(blk) 65 52
              67:   23(fvec3) Load 66
              69:     68(ptr) AccessChain 34(blk) 62 63 44
              70:   24(fvec4) Load 69
              71:   24(fvec4) VectorShuffle 70 67 0 4 5 6
                              Store 69 71
              72:      6(int) Load 8(iid)
              73:      6(int) UDiv 72 21
              77:     68(ptr) AccessChain 34(blk) 73 74 52
              78:   24(fvec4) Load 77
              79:   24(fvec4) VectorShuffle 78 76 7 6 5 4
                              Store 77 79
              80:      6(int) Load 8(iid)
              82:      6(int) Load 8(iid)
              83:      6(int) UDiv 82 21
              85:     39(ptr) AccessChain 34(blk) 83 74 52 84
              86:   20(float) Load 85
              87:     39(ptr) AccessChain 34(blk) 80 81 37 44 42
                              Store 87 86
              88:      6(int) Load 8(iid)
              89:      6(int) IMul 88 21
              90:      6(int) Load 16(gid)
              95:     57(ptr) AccessChain 34(blk) 89 81 44 90
                              Store 95 94
                              MemoryBarrier 42 96
                              ControlBarrier 28 28 96
             102:      6(int) Load 8(iid)
             103:      6(int) Load 8(iid)
             104:      6(int) ISub 103 42
             105:     39(ptr) AccessChain 101(blk2) 104 37
             106:   20(float) Load 105
             108:   20(float) FAdd 106 107
             109:     39(ptr) AccessChain 101(blk2) 102 37
                              Store 109 108
             110:      6(int) Load 8(iid)
             116:     68(ptr) AccessChain 101(blk2) 110 44
                              Store 116 115
             117:      6(int) Load 8(iid)
             118:      6(int) IAdd 117 42
             119:      6(int) Load 16(gid)
             120:      6(int) Load 8(iid)
             121:     68(ptr) AccessChain 101(blk2) 120 44
             122:   24(fvec4) Load 121
             123:     68(ptr) AccessChain 101(blk2) 118 52 119
                              Store 123 122
             124:      6(int) Load 8(iid)
             125:      6(int) IAdd 124 42
             126:      6(int) Load 16(gid)
             128:     39(ptr) AccessChain 101(blk2) 125 52 126 28
                              Store 128 127
             129:      6(int) Load 8(iid)
             130:      6(int) IAdd 129 28
             131:      6(int) Load 8(iid)
             132:      6(int) IAdd 131 42
             133:      6(int) Load 16(gid)
             134:     68(ptr) AccessChain 101(blk2) 132 52 133
             135:   24(fvec4) Load 134
             136:     68(ptr) AccessChain 101(blk2) 130 52 63
                              Store 136 135
                              MemoryBarrier 42 96
                              ControlBarrier 28 28 96
                              Return
                              FunctionEnd