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