| spv.ext.meshShaderRedeclBuiltins.mesh |
| // Module Version 10400 |
| // Generated by (magic number): 8000b |
| // Id's are bound by 128 |
| |
| Capability ClipDistance |
| Capability CullDistance |
| Capability FragmentShadingRateKHR |
| Capability MeshShadingEXT |
| Extension "SPV_EXT_mesh_shader" |
| Extension "SPV_KHR_fragment_shading_rate" |
| 1: ExtInstImport "GLSL.std.450" |
| MemoryModel Logical GLSL450 |
| EntryPoint MeshEXT 4 "main" 11 17 29 81 122 |
| ExecutionMode 4 LocalSize 32 1 1 |
| ExecutionMode 4 OutputVertices 81 |
| ExecutionMode 4 OutputPrimitivesNV 32 |
| ExecutionMode 4 OutputPoints |
| Source GLSL 460 |
| SourceExtension "GL_EXT_mesh_shader" |
| Name 4 "main" |
| Name 8 "iid" |
| Name 11 "gl_LocalInvocationID" |
| Name 16 "gid" |
| Name 17 "gl_WorkGroupID" |
| Name 26 "gl_MeshPerVertexEXT" |
| MemberName 26(gl_MeshPerVertexEXT) 0 "gl_Position" |
| MemberName 26(gl_MeshPerVertexEXT) 1 "gl_PointSize" |
| MemberName 26(gl_MeshPerVertexEXT) 2 "gl_ClipDistance" |
| MemberName 26(gl_MeshPerVertexEXT) 3 "gl_CullDistance" |
| Name 29 "gl_MeshVerticesEXT" |
| Name 78 "gl_MeshPerPrimitiveEXT" |
| MemberName 78(gl_MeshPerPrimitiveEXT) 0 "gl_PrimitiveID" |
| MemberName 78(gl_MeshPerPrimitiveEXT) 1 "gl_Layer" |
| MemberName 78(gl_MeshPerPrimitiveEXT) 2 "gl_ViewportIndex" |
| MemberName 78(gl_MeshPerPrimitiveEXT) 3 "gl_CullPrimitiveEXT" |
| MemberName 78(gl_MeshPerPrimitiveEXT) 4 "gl_PrimitiveShadingRateEXT" |
| Name 81 "gl_MeshPrimitivesEXT" |
| Name 122 "gl_PrimitivePointIndicesEXT" |
| Decorate 11(gl_LocalInvocationID) BuiltIn LocalInvocationId |
| Decorate 17(gl_WorkGroupID) BuiltIn WorkgroupId |
| MemberDecorate 26(gl_MeshPerVertexEXT) 0 BuiltIn Position |
| MemberDecorate 26(gl_MeshPerVertexEXT) 1 BuiltIn PointSize |
| MemberDecorate 26(gl_MeshPerVertexEXT) 2 BuiltIn ClipDistance |
| MemberDecorate 26(gl_MeshPerVertexEXT) 3 BuiltIn CullDistance |
| Decorate 26(gl_MeshPerVertexEXT) Block |
| MemberDecorate 78(gl_MeshPerPrimitiveEXT) 0 PerPrimitiveNV |
| MemberDecorate 78(gl_MeshPerPrimitiveEXT) 0 BuiltIn PrimitiveId |
| MemberDecorate 78(gl_MeshPerPrimitiveEXT) 1 PerPrimitiveNV |
| MemberDecorate 78(gl_MeshPerPrimitiveEXT) 1 BuiltIn Layer |
| MemberDecorate 78(gl_MeshPerPrimitiveEXT) 2 PerPrimitiveNV |
| MemberDecorate 78(gl_MeshPerPrimitiveEXT) 2 BuiltIn ViewportIndex |
| MemberDecorate 78(gl_MeshPerPrimitiveEXT) 3 PerPrimitiveNV |
| MemberDecorate 78(gl_MeshPerPrimitiveEXT) 3 BuiltIn CullPrimitiveEXT |
| MemberDecorate 78(gl_MeshPerPrimitiveEXT) 4 PerPrimitiveNV |
| MemberDecorate 78(gl_MeshPerPrimitiveEXT) 4 BuiltIn PrimitiveShadingRateKHR |
| Decorate 78(gl_MeshPerPrimitiveEXT) Block |
| Decorate 122(gl_PrimitivePointIndicesEXT) BuiltIn PrimitivePointIndicesEXT |
| Decorate 127 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: 6(int) Constant 81 |
| 21: 6(int) Constant 32 |
| 22: TypeFloat 32 |
| 23: TypeVector 22(float) 4 |
| 24: 6(int) Constant 4 |
| 25: TypeArray 22(float) 24 |
| 26(gl_MeshPerVertexEXT): TypeStruct 23(fvec4) 22(float) 25 25 |
| 27: TypeArray 26(gl_MeshPerVertexEXT) 20 |
| 28: TypePointer Output 27 |
| 29(gl_MeshVerticesEXT): 28(ptr) Variable Output |
| 31: TypeInt 32 1 |
| 32: 31(int) Constant 0 |
| 33: 22(float) Constant 1065353216 |
| 34: 23(fvec4) ConstantComposite 33 33 33 33 |
| 35: TypePointer Output 23(fvec4) |
| 38: 31(int) Constant 1 |
| 39: 22(float) Constant 1073741824 |
| 40: TypePointer Output 22(float) |
| 43: 31(int) Constant 2 |
| 44: 31(int) Constant 3 |
| 45: 22(float) Constant 1077936128 |
| 48: 22(float) Constant 1082130432 |
| 50: 6(int) Constant 1 |
| 51: 6(int) Constant 264 |
| 52: 6(int) Constant 2 |
| 77: TypeBool |
| 78(gl_MeshPerPrimitiveEXT): TypeStruct 31(int) 31(int) 31(int) 77(bool) 31(int) |
| 79: TypeArray 78(gl_MeshPerPrimitiveEXT) 21 |
| 80: TypePointer Output 79 |
| 81(gl_MeshPrimitivesEXT): 80(ptr) Variable Output |
| 83: 31(int) Constant 6 |
| 84: TypePointer Output 31(int) |
| 87: 31(int) Constant 7 |
| 90: 31(int) Constant 8 |
| 93: 77(bool) ConstantFalse |
| 94: TypePointer Output 77(bool) |
| 120: TypeArray 6(int) 21 |
| 121: TypePointer Output 120 |
| 122(gl_PrimitivePointIndicesEXT): 121(ptr) Variable Output |
| 123: TypePointer Output 6(int) |
| 125: 31(int) Constant 31 |
| 127: 9(ivec3) ConstantComposite 21 50 50 |
| 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 |
| SetMeshOutputsEXT 20 21 |
| 30: 6(int) Load 8(iid) |
| 36: 35(ptr) AccessChain 29(gl_MeshVerticesEXT) 30 32 |
| Store 36 34 |
| 37: 6(int) Load 8(iid) |
| 41: 40(ptr) AccessChain 29(gl_MeshVerticesEXT) 37 38 |
| Store 41 39 |
| 42: 6(int) Load 8(iid) |
| 46: 40(ptr) AccessChain 29(gl_MeshVerticesEXT) 42 43 44 |
| Store 46 45 |
| 47: 6(int) Load 8(iid) |
| 49: 40(ptr) AccessChain 29(gl_MeshVerticesEXT) 47 44 43 |
| Store 49 48 |
| MemoryBarrier 50 51 |
| ControlBarrier 52 52 51 |
| 53: 6(int) Load 8(iid) |
| 54: 6(int) IAdd 53 50 |
| 55: 6(int) Load 8(iid) |
| 56: 35(ptr) AccessChain 29(gl_MeshVerticesEXT) 55 32 |
| 57: 23(fvec4) Load 56 |
| 58: 35(ptr) AccessChain 29(gl_MeshVerticesEXT) 54 32 |
| Store 58 57 |
| 59: 6(int) Load 8(iid) |
| 60: 6(int) IAdd 59 50 |
| 61: 6(int) Load 8(iid) |
| 62: 40(ptr) AccessChain 29(gl_MeshVerticesEXT) 61 38 |
| 63: 22(float) Load 62 |
| 64: 40(ptr) AccessChain 29(gl_MeshVerticesEXT) 60 38 |
| Store 64 63 |
| 65: 6(int) Load 8(iid) |
| 66: 6(int) IAdd 65 50 |
| 67: 6(int) Load 8(iid) |
| 68: 40(ptr) AccessChain 29(gl_MeshVerticesEXT) 67 43 44 |
| 69: 22(float) Load 68 |
| 70: 40(ptr) AccessChain 29(gl_MeshVerticesEXT) 66 43 44 |
| Store 70 69 |
| 71: 6(int) Load 8(iid) |
| 72: 6(int) IAdd 71 50 |
| 73: 6(int) Load 8(iid) |
| 74: 40(ptr) AccessChain 29(gl_MeshVerticesEXT) 73 44 43 |
| 75: 22(float) Load 74 |
| 76: 40(ptr) AccessChain 29(gl_MeshVerticesEXT) 72 44 43 |
| Store 76 75 |
| MemoryBarrier 50 51 |
| ControlBarrier 52 52 51 |
| 82: 6(int) Load 8(iid) |
| 85: 84(ptr) AccessChain 81(gl_MeshPrimitivesEXT) 82 32 |
| Store 85 83 |
| 86: 6(int) Load 8(iid) |
| 88: 84(ptr) AccessChain 81(gl_MeshPrimitivesEXT) 86 38 |
| Store 88 87 |
| 89: 6(int) Load 8(iid) |
| 91: 84(ptr) AccessChain 81(gl_MeshPrimitivesEXT) 89 43 |
| Store 91 90 |
| 92: 6(int) Load 8(iid) |
| 95: 94(ptr) AccessChain 81(gl_MeshPrimitivesEXT) 92 44 |
| Store 95 93 |
| MemoryBarrier 50 51 |
| ControlBarrier 52 52 51 |
| 96: 6(int) Load 8(iid) |
| 97: 6(int) IAdd 96 50 |
| 98: 6(int) Load 8(iid) |
| 99: 84(ptr) AccessChain 81(gl_MeshPrimitivesEXT) 98 32 |
| 100: 31(int) Load 99 |
| 101: 84(ptr) AccessChain 81(gl_MeshPrimitivesEXT) 97 32 |
| Store 101 100 |
| 102: 6(int) Load 8(iid) |
| 103: 6(int) IAdd 102 50 |
| 104: 6(int) Load 8(iid) |
| 105: 84(ptr) AccessChain 81(gl_MeshPrimitivesEXT) 104 38 |
| 106: 31(int) Load 105 |
| 107: 84(ptr) AccessChain 81(gl_MeshPrimitivesEXT) 103 38 |
| Store 107 106 |
| 108: 6(int) Load 8(iid) |
| 109: 6(int) IAdd 108 50 |
| 110: 6(int) Load 8(iid) |
| 111: 84(ptr) AccessChain 81(gl_MeshPrimitivesEXT) 110 43 |
| 112: 31(int) Load 111 |
| 113: 84(ptr) AccessChain 81(gl_MeshPrimitivesEXT) 109 43 |
| Store 113 112 |
| 114: 6(int) Load 8(iid) |
| 115: 6(int) IAdd 114 50 |
| 116: 6(int) Load 8(iid) |
| 117: 94(ptr) AccessChain 81(gl_MeshPrimitivesEXT) 116 44 |
| 118: 77(bool) Load 117 |
| 119: 94(ptr) AccessChain 81(gl_MeshPrimitivesEXT) 115 44 |
| Store 119 118 |
| MemoryBarrier 50 51 |
| ControlBarrier 52 52 51 |
| 124: 123(ptr) AccessChain 122(gl_PrimitivePointIndicesEXT) 32 |
| Store 124 50 |
| 126: 123(ptr) AccessChain 122(gl_PrimitivePointIndicesEXT) 125 |
| Store 126 52 |
| Return |
| FunctionEnd |