| spv.meshTaskShader.task |
| // Module Version 10000 |
| // Generated by (magic number): 80008 |
| // Id's are bound by 116 |
| |
| Capability StorageImageWriteWithoutFormat |
| Capability MeshShadingNV |
| Extension "SPV_NV_mesh_shader" |
| 1: ExtInstImport "GLSL.std.450" |
| MemoryModel Logical GLSL450 |
| EntryPoint TaskNV 4 "main" 11 17 24 25 90 113 |
| ExecutionMode 4 LocalSize 32 1 1 |
| 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 20 "viewID" |
| Name 24 "gl_MeshViewIndicesNV" |
| Name 25 "gl_MeshViewCountNV" |
| Name 30 "i" |
| Name 44 "mem" |
| Name 47 "block0" |
| MemberName 47(block0) 0 "uni_value" |
| Name 49 "" |
| Name 65 "uni_image" |
| Name 88 "Task" |
| MemberName 88(Task) 0 "dummy" |
| MemberName 88(Task) 1 "submesh" |
| MemberName 88(Task) 2 "viewID" |
| Name 90 "mytask" |
| Name 113 "gl_TaskCountNV" |
| Decorate 11(gl_LocalInvocationID) BuiltIn LocalInvocationId |
| Decorate 17(gl_WorkGroupID) BuiltIn WorkgroupId |
| Decorate 24(gl_MeshViewIndicesNV) BuiltIn MeshViewIndicesNV |
| Decorate 25(gl_MeshViewCountNV) BuiltIn MeshViewCountNV |
| MemberDecorate 47(block0) 0 Offset 0 |
| Decorate 47(block0) Block |
| Decorate 49 DescriptorSet 0 |
| Decorate 49 Binding 0 |
| Decorate 65(uni_image) DescriptorSet 0 |
| Decorate 65(uni_image) Binding 0 |
| Decorate 65(uni_image) NonReadable |
| Decorate 87 ArrayStride 8 |
| MemberDecorate 88(Task) 0 PerTaskNV |
| MemberDecorate 88(Task) 0 Offset 0 |
| MemberDecorate 88(Task) 1 PerTaskNV |
| MemberDecorate 88(Task) 1 Offset 8 |
| MemberDecorate 88(Task) 2 PerTaskNV |
| MemberDecorate 88(Task) 2 Offset 32 |
| Decorate 88(Task) Block |
| Decorate 113(gl_TaskCountNV) BuiltIn TaskCountNV |
| Decorate 115 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 |
| 21: 6(int) Constant 4 |
| 22: TypeArray 6(int) 21 |
| 23: TypePointer Input 22 |
| 24(gl_MeshViewIndicesNV): 23(ptr) Variable Input |
| 25(gl_MeshViewCountNV): 13(ptr) Variable Input |
| 37: 6(int) Constant 10 |
| 38: TypeBool |
| 40: TypeFloat 32 |
| 41: TypeVector 40(float) 4 |
| 42: TypeArray 41(fvec4) 37 |
| 43: TypePointer Workgroup 42 |
| 44(mem): 43(ptr) Variable Workgroup |
| 47(block0): TypeStruct 6(int) |
| 48: TypePointer Uniform 47(block0) |
| 49: 48(ptr) Variable Uniform |
| 50: TypeInt 32 1 |
| 51: 50(int) Constant 0 |
| 52: TypePointer Uniform 6(int) |
| 58: TypePointer Workgroup 41(fvec4) |
| 61: 50(int) Constant 1 |
| 63: TypeImage 40(float) 2D nonsampled format:Unknown |
| 64: TypePointer UniformConstant 63 |
| 65(uni_image): 64(ptr) Variable UniformConstant |
| 69: TypeVector 50(int) 2 |
| 79: 6(int) Constant 1 |
| 83: 6(int) Constant 264 |
| 84: 6(int) Constant 2 |
| 85: TypeVector 40(float) 2 |
| 86: 6(int) Constant 3 |
| 87: TypeArray 85(fvec2) 86 |
| 88(Task): TypeStruct 85(fvec2) 87 6(int) |
| 89: TypePointer Output 88(Task) |
| 90(mytask): 89(ptr) Variable Output |
| 91: 40(float) Constant 1106247680 |
| 92: 40(float) Constant 1106771968 |
| 93: 85(fvec2) ConstantComposite 91 92 |
| 94: TypePointer Output 85(fvec2) |
| 96: 40(float) Constant 1107296256 |
| 97: 40(float) Constant 1107558400 |
| 98: 85(fvec2) ConstantComposite 96 97 |
| 100: 40(float) Constant 1107820544 |
| 101: 40(float) Constant 1108082688 |
| 102: 85(fvec2) ConstantComposite 100 101 |
| 104: 50(int) Constant 2 |
| 111: TypePointer Output 6(int) |
| 113(gl_TaskCountNV): 111(ptr) Variable Output |
| 114: 6(int) Constant 32 |
| 115: 9(ivec3) ConstantComposite 114 79 79 |
| 4(main): 2 Function None 3 |
| 5: Label |
| 8(iid): 7(ptr) Variable Function |
| 16(gid): 7(ptr) Variable Function |
| 20(viewID): 7(ptr) Variable Function |
| 30(i): 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 |
| 26: 6(int) Load 25(gl_MeshViewCountNV) |
| 27: 6(int) UMod 26 21 |
| 28: 13(ptr) AccessChain 24(gl_MeshViewIndicesNV) 27 |
| 29: 6(int) Load 28 |
| Store 20(viewID) 29 |
| Store 30(i) 12 |
| Branch 31 |
| 31: Label |
| LoopMerge 33 34 None |
| Branch 35 |
| 35: Label |
| 36: 6(int) Load 30(i) |
| 39: 38(bool) ULessThan 36 37 |
| BranchConditional 39 32 33 |
| 32: Label |
| 45: 6(int) Load 30(i) |
| 46: 6(int) Load 30(i) |
| 53: 52(ptr) AccessChain 49 51 |
| 54: 6(int) Load 53 |
| 55: 6(int) IAdd 46 54 |
| 56: 40(float) ConvertUToF 55 |
| 57: 41(fvec4) CompositeConstruct 56 56 56 56 |
| 59: 58(ptr) AccessChain 44(mem) 45 |
| Store 59 57 |
| Branch 34 |
| 34: Label |
| 60: 6(int) Load 30(i) |
| 62: 6(int) IAdd 60 61 |
| Store 30(i) 62 |
| Branch 31 |
| 33: Label |
| 66: 63 Load 65(uni_image) |
| 67: 6(int) Load 8(iid) |
| 68: 50(int) Bitcast 67 |
| 70: 69(ivec2) CompositeConstruct 68 68 |
| 71: 6(int) Load 16(gid) |
| 72: 58(ptr) AccessChain 44(mem) 71 |
| 73: 41(fvec4) Load 72 |
| ImageWrite 66 70 73 |
| 74: 63 Load 65(uni_image) |
| 75: 6(int) Load 8(iid) |
| 76: 50(int) Bitcast 75 |
| 77: 69(ivec2) CompositeConstruct 76 76 |
| 78: 6(int) Load 16(gid) |
| 80: 6(int) IAdd 78 79 |
| 81: 58(ptr) AccessChain 44(mem) 80 |
| 82: 41(fvec4) Load 81 |
| ImageWrite 74 77 82 |
| MemoryBarrier 79 83 |
| ControlBarrier 84 84 83 |
| 95: 94(ptr) AccessChain 90(mytask) 51 |
| Store 95 93 |
| 99: 94(ptr) AccessChain 90(mytask) 61 51 |
| Store 99 98 |
| 103: 94(ptr) AccessChain 90(mytask) 61 61 |
| Store 103 102 |
| 105: 6(int) Load 16(gid) |
| 106: 6(int) UMod 105 84 |
| 107: 94(ptr) AccessChain 90(mytask) 61 106 |
| 108: 85(fvec2) Load 107 |
| 109: 94(ptr) AccessChain 90(mytask) 61 104 |
| Store 109 108 |
| 110: 6(int) Load 20(viewID) |
| 112: 111(ptr) AccessChain 90(mytask) 104 |
| Store 112 110 |
| MemoryBarrier 79 83 |
| ControlBarrier 84 84 83 |
| Store 113(gl_TaskCountNV) 86 |
| Return |
| FunctionEnd |