1spv.meshShaderUserDefined.mesh 2// Module Version 10000 3// Generated by (magic number): 8000b 4// Id's are bound by 141 5 6 Capability MeshShadingNV 7 Extension "SPV_NV_mesh_shader" 8 1: ExtInstImport "GLSL.std.450" 9 MemoryModel Logical GLSL450 10 EntryPoint MeshNV 4 "main" 11 17 34 104 11 ExecutionMode 4 LocalSize 32 1 1 12 ExecutionMode 4 OutputVertices 81 13 ExecutionMode 4 OutputPrimitivesNV 32 14 ExecutionMode 4 OutputTrianglesNV 15 Source GLSL 450 16 SourceExtension "GL_NV_mesh_shader" 17 Name 4 "main" 18 Name 8 "iid" 19 Name 11 "gl_LocalInvocationID" 20 Name 16 "gid" 21 Name 17 "gl_WorkGroupID" 22 Name 30 "myblock" 23 MemberName 30(myblock) 0 "f" 24 MemberName 30(myblock) 1 "fArr" 25 MemberName 30(myblock) 2 "pos" 26 MemberName 30(myblock) 3 "posArr" 27 MemberName 30(myblock) 4 "m" 28 MemberName 30(myblock) 5 "mArr" 29 Name 34 "blk" 30 Name 100 "myblock2" 31 MemberName 100(myblock2) 0 "f" 32 MemberName 100(myblock2) 1 "pos" 33 MemberName 100(myblock2) 2 "m" 34 Name 104 "blk2" 35 Decorate 11(gl_LocalInvocationID) BuiltIn LocalInvocationId 36 Decorate 17(gl_WorkGroupID) BuiltIn WorkgroupId 37 MemberDecorate 30(myblock) 0 PerPrimitiveNV 38 MemberDecorate 30(myblock) 1 PerPrimitiveNV 39 MemberDecorate 30(myblock) 2 PerPrimitiveNV 40 MemberDecorate 30(myblock) 3 PerPrimitiveNV 41 MemberDecorate 30(myblock) 4 PerPrimitiveNV 42 MemberDecorate 30(myblock) 5 PerPrimitiveNV 43 Decorate 30(myblock) Block 44 Decorate 34(blk) Location 0 45 Decorate 100(myblock2) Block 46 Decorate 104(blk2) Location 20 47 Decorate 140 BuiltIn WorkgroupSize 48 2: TypeVoid 49 3: TypeFunction 2 50 6: TypeInt 32 0 51 7: TypePointer Function 6(int) 52 9: TypeVector 6(int) 3 53 10: TypePointer Input 9(ivec3) 5411(gl_LocalInvocationID): 10(ptr) Variable Input 55 12: 6(int) Constant 0 56 13: TypePointer Input 6(int) 5717(gl_WorkGroupID): 10(ptr) Variable Input 58 20: TypeFloat 32 59 21: 6(int) Constant 4 60 22: TypeArray 20(float) 21 61 23: TypeVector 20(float) 3 62 24: TypeVector 20(float) 4 63 25: TypeArray 24(fvec4) 21 64 26: TypeMatrix 24(fvec4) 4 65 27: TypeMatrix 23(fvec3) 3 66 28: 6(int) Constant 2 67 29: TypeArray 27 28 68 30(myblock): TypeStruct 20(float) 22 23(fvec3) 25 26 29 69 31: 6(int) Constant 32 70 32: TypeArray 30(myblock) 31 71 33: TypePointer Output 32 72 34(blk): 33(ptr) Variable Output 73 36: TypeInt 32 1 74 37: 36(int) Constant 0 75 38: 20(float) Constant 1093664768 76 39: TypePointer Output 20(float) 77 42: 6(int) Constant 1 78 44: 36(int) Constant 1 79 52: 36(int) Constant 2 80 53: 20(float) Constant 1096810496 81 54: 20(float) Constant 1097859072 82 55: 20(float) Constant 1095761920 83 56: 23(fvec3) ConstantComposite 53 54 55 84 57: TypePointer Output 23(fvec3) 85 63: 36(int) Constant 3 86 72: 6(int) Constant 3 87 77: 36(int) Constant 4 88 78: 20(float) Constant 1098907648 89 79: 24(fvec4) ConstantComposite 55 53 54 78 90 80: TypePointer Output 24(fvec4) 91 85: 36(int) Constant 5 92 94: 20(float) Constant 1099431936 93 95: 20(float) Constant 1099956224 94 96: 20(float) Constant 1100480512 95 97: 23(fvec3) ConstantComposite 94 95 96 96 99: 6(int) Constant 264 97 100(myblock2): TypeStruct 20(float) 24(fvec4) 26 98 101: 6(int) Constant 81 99 102: TypeArray 100(myblock2) 101 100 103: TypePointer Output 102 101 104(blk2): 103(ptr) Variable Output 102 110: 20(float) Constant 1101004800 103 114: 20(float) Constant 1101529088 104 115: 20(float) Constant 1102053376 105 116: 20(float) Constant 1102577664 106 117: 20(float) Constant 1103101952 107 118: 24(fvec4) ConstantComposite 114 115 116 117 108 130: 20(float) Constant 1105723392 109 140: 9(ivec3) ConstantComposite 31 42 42 110 4(main): 2 Function None 3 111 5: Label 112 8(iid): 7(ptr) Variable Function 113 16(gid): 7(ptr) Variable Function 114 14: 13(ptr) AccessChain 11(gl_LocalInvocationID) 12 115 15: 6(int) Load 14 116 Store 8(iid) 15 117 18: 13(ptr) AccessChain 17(gl_WorkGroupID) 12 118 19: 6(int) Load 18 119 Store 16(gid) 19 120 35: 6(int) Load 8(iid) 121 40: 39(ptr) AccessChain 34(blk) 35 37 122 Store 40 38 123 41: 6(int) Load 8(iid) 124 43: 6(int) IAdd 41 42 125 45: 6(int) Load 16(gid) 126 46: 6(int) Load 8(iid) 127 47: 39(ptr) AccessChain 34(blk) 46 37 128 48: 20(float) Load 47 129 49: 39(ptr) AccessChain 34(blk) 43 44 45 130 Store 49 48 131 50: 6(int) Load 8(iid) 132 51: 6(int) UDiv 50 28 133 58: 57(ptr) AccessChain 34(blk) 51 52 134 59: 23(fvec3) Load 58 135 60: 23(fvec3) VectorShuffle 59 56 5 3 4 136 Store 58 60 137 61: 6(int) Load 8(iid) 138 62: 6(int) IMul 61 28 139 64: 6(int) Load 8(iid) 140 65: 6(int) UDiv 64 28 141 66: 57(ptr) AccessChain 34(blk) 65 52 142 67: 23(fvec3) Load 66 143 68: 39(ptr) AccessChain 34(blk) 62 63 44 42 144 69: 20(float) CompositeExtract 67 0 145 Store 68 69 146 70: 39(ptr) AccessChain 34(blk) 62 63 44 28 147 71: 20(float) CompositeExtract 67 1 148 Store 70 71 149 73: 39(ptr) AccessChain 34(blk) 62 63 44 72 150 74: 20(float) CompositeExtract 67 2 151 Store 73 74 152 75: 6(int) Load 8(iid) 153 76: 6(int) UDiv 75 21 154 81: 80(ptr) AccessChain 34(blk) 76 77 52 155 82: 24(fvec4) Load 81 156 83: 24(fvec4) VectorShuffle 82 79 7 6 5 4 157 Store 81 83 158 84: 6(int) Load 8(iid) 159 86: 6(int) Load 8(iid) 160 87: 6(int) UDiv 86 21 161 88: 39(ptr) AccessChain 34(blk) 87 77 52 72 162 89: 20(float) Load 88 163 90: 39(ptr) AccessChain 34(blk) 84 85 37 44 42 164 Store 90 89 165 91: 6(int) Load 8(iid) 166 92: 6(int) IMul 91 21 167 93: 6(int) Load 16(gid) 168 98: 57(ptr) AccessChain 34(blk) 92 85 44 93 169 Store 98 97 170 MemoryBarrier 42 99 171 ControlBarrier 28 28 99 172 105: 6(int) Load 8(iid) 173 106: 6(int) Load 8(iid) 174 107: 6(int) ISub 106 42 175 108: 39(ptr) AccessChain 104(blk2) 107 37 176 109: 20(float) Load 108 177 111: 20(float) FAdd 109 110 178 112: 39(ptr) AccessChain 104(blk2) 105 37 179 Store 112 111 180 113: 6(int) Load 8(iid) 181 119: 80(ptr) AccessChain 104(blk2) 113 44 182 Store 119 118 183 120: 6(int) Load 8(iid) 184 121: 6(int) IAdd 120 42 185 122: 6(int) Load 16(gid) 186 123: 6(int) Load 8(iid) 187 124: 80(ptr) AccessChain 104(blk2) 123 44 188 125: 24(fvec4) Load 124 189 126: 80(ptr) AccessChain 104(blk2) 121 52 122 190 Store 126 125 191 127: 6(int) Load 8(iid) 192 128: 6(int) IAdd 127 42 193 129: 6(int) Load 16(gid) 194 131: 39(ptr) AccessChain 104(blk2) 128 52 129 28 195 Store 131 130 196 132: 6(int) Load 8(iid) 197 133: 6(int) IAdd 132 28 198 134: 6(int) Load 8(iid) 199 135: 6(int) IAdd 134 42 200 136: 6(int) Load 16(gid) 201 137: 80(ptr) AccessChain 104(blk2) 135 52 136 202 138: 24(fvec4) Load 137 203 139: 80(ptr) AccessChain 104(blk2) 133 52 63 204 Store 139 138 205 MemoryBarrier 42 99 206 ControlBarrier 28 28 99 207 Return 208 FunctionEnd 209