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