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