Force generateDebugInfo when non-semantic debug info is enabled

From the command line, the debug options "stack", with -gVS enabling all
of generateDebugInfo, emitNonSemanticShaderDebugInfo and
emitNonSemanticShaderDebugSource, however the programmatic interface
allows setting the latter options without the former. In this case, the
string corresponding to the source filename never gets emitted and some
debuginfo instructions end up with zero ID operands, resulting in
invalid SPIR-V.

Fixes #3240
This commit is contained in:
Arcady Goldmints-Orlov 2023-06-22 16:06:41 -04:00 committed by arcady-lunarg
parent 9575e33186
commit d89c0b1d13
14 changed files with 9392 additions and 8284 deletions

View file

@ -1,421 +1,445 @@
spv.debuginfo.glsl.tese
Validation failed
// Module Version 10000
// Generated by (magic number): 8000b
// Id's are bound by 315
// Id's are bound by 332
Capability Tessellation
Extension "SPV_KHR_non_semantic_info"
1: ExtInstImport "NonSemantic.Shader.DebugInfo.100"
2: ExtInstImport "GLSL.std.450"
2: ExtInstImport "NonSemantic.Shader.DebugInfo.100"
3: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint TessellationEvaluation 13 "main" 39 56 80 99 124 160 267 279 286 297 303
ExecutionMode 13 Quads
ExecutionMode 13 SpacingEqual
ExecutionMode 13 VertexOrderCw
8: String "uint"
14: String "main"
17: String ""
25: String "float"
32: String "uv1"
41: String "inUV"
44: String "int"
58: String "gl_TessCoord"
66: String "uv2"
82: String "outUV"
93: String "n1"
101: String "inNormal"
112: String "n2"
126: String "outNormal"
139: String "pos1"
146: String "gl_Position"
149: String "gl_PointSize"
152: String "gl_CullDistance"
156: String "gl_PerVertex"
162: String "gl_in"
174: String "pos2"
187: String "pos"
198: String "type.2d.image"
200: String "@type.2d.image"
204: String "type.sampled.image"
205: String "@type.sampled.image"
209: String "displacementMap"
223: String "modelview"
228: String "lightPos"
231: String "frustumPlanes"
233: String "tessellatedEdgeSize"
237: String "viewportDim"
241: String "UBO"
245: String "ubo"
281: String "outViewVec"
288: String "outLightVec"
299: String "outWorldPos"
305: String "outEyePos"
Name 13 "main"
Name 30 "uv1"
Name 39 "inUV"
Name 56 "gl_TessCoord"
Name 64 "uv2"
Name 80 "outUV"
Name 91 "n1"
Name 99 "inNormal"
Name 110 "n2"
Name 124 "outNormal"
Name 137 "pos1"
Name 144 "gl_PerVertex"
MemberName 144(gl_PerVertex) 0 "gl_Position"
MemberName 144(gl_PerVertex) 1 "gl_PointSize"
MemberName 144(gl_PerVertex) 2 "gl_ClipDistance"
MemberName 144(gl_PerVertex) 3 "gl_CullDistance"
Name 160 "gl_in"
Name 172 "pos2"
Name 185 "pos"
Name 207 "displacementMap"
Name 221 "UBO"
MemberName 221(UBO) 0 "projection"
MemberName 221(UBO) 1 "modelview"
MemberName 221(UBO) 2 "lightPos"
MemberName 221(UBO) 3 "frustumPlanes"
MemberName 221(UBO) 4 "displacementFactor"
MemberName 221(UBO) 5 "tessellationFactor"
MemberName 221(UBO) 6 "viewportDim"
MemberName 221(UBO) 7 "tessellatedEdgeSize"
Name 243 "ubo"
Name 256 "gl_PerVertex"
MemberName 256(gl_PerVertex) 0 "gl_Position"
MemberName 256(gl_PerVertex) 1 "gl_PointSize"
MemberName 256(gl_PerVertex) 2 "gl_ClipDistance"
MemberName 256(gl_PerVertex) 3 "gl_CullDistance"
Name 267 ""
Name 279 "outViewVec"
Name 286 "outLightVec"
Name 297 "outWorldPos"
Name 303 "outEyePos"
Decorate 39(inUV) Location 1
Decorate 56(gl_TessCoord) BuiltIn TessCoord
Decorate 80(outUV) Location 1
Decorate 99(inNormal) Location 0
Decorate 124(outNormal) Location 0
MemberDecorate 144(gl_PerVertex) 0 BuiltIn Position
MemberDecorate 144(gl_PerVertex) 1 BuiltIn PointSize
MemberDecorate 144(gl_PerVertex) 2 BuiltIn ClipDistance
MemberDecorate 144(gl_PerVertex) 3 BuiltIn CullDistance
Decorate 144(gl_PerVertex) Block
Decorate 207(displacementMap) DescriptorSet 0
Decorate 207(displacementMap) Binding 1
Decorate 219 ArrayStride 16
MemberDecorate 221(UBO) 0 ColMajor
MemberDecorate 221(UBO) 0 Offset 0
MemberDecorate 221(UBO) 0 MatrixStride 16
MemberDecorate 221(UBO) 1 ColMajor
MemberDecorate 221(UBO) 1 Offset 64
MemberDecorate 221(UBO) 1 MatrixStride 16
MemberDecorate 221(UBO) 2 Offset 128
MemberDecorate 221(UBO) 3 Offset 144
MemberDecorate 221(UBO) 4 Offset 240
MemberDecorate 221(UBO) 5 Offset 244
MemberDecorate 221(UBO) 6 Offset 248
MemberDecorate 221(UBO) 7 Offset 256
Decorate 221(UBO) Block
Decorate 243(ubo) DescriptorSet 0
Decorate 243(ubo) Binding 0
MemberDecorate 256(gl_PerVertex) 0 BuiltIn Position
MemberDecorate 256(gl_PerVertex) 1 BuiltIn PointSize
MemberDecorate 256(gl_PerVertex) 2 BuiltIn ClipDistance
MemberDecorate 256(gl_PerVertex) 3 BuiltIn CullDistance
Decorate 256(gl_PerVertex) Block
Decorate 279(outViewVec) Location 2
Decorate 286(outLightVec) Location 3
Decorate 297(outWorldPos) Location 5
Decorate 303(outEyePos) Location 4
3: TypeVoid
4: TypeFunction 3
6: TypeInt 32 0
9: 6(int) Constant 32
10: 6(int) Constant 6
11: 6(int) Constant 0
7: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 8 9 10 11
12: 6(int) Constant 3
5: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 8(DebugTypeFunction) 12 3
16: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 35(DebugSource) 0 17
19: 6(int) Constant 1
20: 6(int) Constant 4
21: 6(int) Constant 2
18: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 1(DebugCompilationUnit) 19 20 16 21
15: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 14 5 16 11 11 18 14 12 11
24: TypeFloat 32
26: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 25 9 12 11
27: TypeVector 24(float) 2
28: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 26 21
29: TypePointer Function 27(fvec2)
33: 6(int) Constant 56
31: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 32 28 16 33 11 15 20
35: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 31(DebugExpression)
36: TypeArray 27(fvec2) 9
37: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 28 9
38: TypePointer Input 36
39(inUV): 38(ptr) Variable Input
42: 6(int) Constant 8
40: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 41 37 16 33 11 18 41 39(inUV) 42
43: TypeInt 32 1
45: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 44 9 20 11
46: 43(int) Constant 0
47: TypePointer Input 27(fvec2)
50: 43(int) Constant 1
53: TypeVector 24(float) 3
54: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 26 12
55: TypePointer Input 53(fvec3)
56(gl_TessCoord): 55(ptr) Variable Input
57: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 58 54 16 33 11 18 58 56(gl_TessCoord) 42
59: TypePointer Input 24(float)
67: 6(int) Constant 57
65: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 66 28 16 67 11 15 20
69: 43(int) Constant 3
72: 43(int) Constant 2
79: TypePointer Output 27(fvec2)
80(outUV): 79(ptr) Variable Output
83: 6(int) Constant 58
81: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 82 28 16 83 11 18 82 80(outUV) 42
90: TypePointer Function 53(fvec3)
94: 6(int) Constant 60
92: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 93 54 16 94 11 15 20
96: TypeArray 53(fvec3) 9
97: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 54 9
98: TypePointer Input 96
99(inNormal): 98(ptr) Variable Input
100: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 101 97 16 94 11 18 101 99(inNormal) 42
113: 6(int) Constant 61
111: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 112 54 16 113 11 15 20
123: TypePointer Output 53(fvec3)
124(outNormal): 123(ptr) Variable Output
127: 6(int) Constant 62
125: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 126 54 16 127 11 18 126 124(outNormal) 42
134: TypeVector 24(float) 4
135: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 26 20
136: TypePointer Function 134(fvec4)
140: 6(int) Constant 65
138: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 139 135 16 140 11 15 20
142: TypeArray 24(float) 19
143: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 26 19
144(gl_PerVertex): TypeStruct 134(fvec4) 24(float) 142 142
147: 6(int) Constant 1756
145: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 146 135 16 19 147 11 11 12
150: 6(int) Constant 1774
148: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 149 26 16 19 150 11 11 12
153: 6(int) Constant 1817
151: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 152 143 16 19 153 11 11 12
154: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 152 143 16 19 153 11 11 12
155: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 156 19 16 140 11 18 156 11 12 145 148 151 154
157: TypeArray 144(gl_PerVertex) 9
158: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 155 9
159: TypePointer Input 157
160(gl_in): 159(ptr) Variable Input
161: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 162 158 16 140 11 18 162 160(gl_in) 42
163: TypePointer Input 134(fvec4)
175: 6(int) Constant 66
173: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 174 135 16 175 11 15 20
188: 6(int) Constant 67
186: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 187 135 16 188 11 15 20
196: TypeImage 24(float) 2D sampled format:Unknown
199: 6(int) Constant 69
201: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 0(DebugInfoNone)
197: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 198 11 16 199 11 18 200 201 12
202: TypeSampledImage 196
203: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 204 11 16 199 11 18 205 201 12
206: TypePointer UniformConstant 202
207(displacementMap): 206(ptr) Variable UniformConstant
208: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 209 203 16 199 11 18 209 207(displacementMap) 42
212: 24(float) Constant 0
215: TypeMatrix 134(fvec4) 4
217: TypeBool
218: 217(bool) ConstantTrue
216: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 108(DebugTypeMatrix) 135 20 218
219: TypeArray 134(fvec4) 10
220: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 135 10
221(UBO): TypeStruct 215 215 134(fvec4) 219 24(float) 24(float) 27(fvec2) 24(float)
224: 6(int) Constant 30
225: 6(int) Constant 7
222: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 223 216 16 224 225 11 11 12
226: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 223 216 16 224 225 11 11 12
229: 6(int) Constant 31
227: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 228 135 16 229 225 11 11 12
230: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 231 220 16 9 225 11 11 12
234: 6(int) Constant 36
232: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 233 26 16 234 42 11 11 12
235: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 233 26 16 234 42 11 11 12
238: 6(int) Constant 35
236: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 237 28 16 238 225 11 11 12
239: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 233 26 16 234 42 11 11 12
240: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 241 19 16 199 11 18 241 11 12 222 226 227 230 232 235 236 239
242: TypePointer Uniform 221(UBO)
243(ubo): 242(ptr) Variable Uniform
244: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 245 240 16 199 11 18 245 243(ubo) 42
246: 43(int) Constant 4
247: TypePointer Uniform 24(float)
251: TypePointer Function 24(float)
256(gl_PerVertex): TypeStruct 134(fvec4) 24(float) 142 142
258: 6(int) Constant 165
257: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 146 135 16 19 258 11 11 12
260: 6(int) Constant 183
259: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 149 26 16 19 260 11 11 12
262: 6(int) Constant 226
261: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 152 143 16 19 262 11 11 12
263: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 152 143 16 19 262 11 11 12
265: 6(int) Constant 71
264: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 156 19 16 265 11 18 156 11 12 257 259 261 263
266: TypePointer Output 256(gl_PerVertex)
267: 266(ptr) Variable Output
268: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 17 264 16 265 11 18 17 267 42
269: TypePointer Uniform 215
277: TypePointer Output 134(fvec4)
279(outViewVec): 123(ptr) Variable Output
282: 6(int) Constant 74
280: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 281 54 16 282 11 18 281 279(outViewVec) 42
286(outLightVec): 123(ptr) Variable Output
289: 6(int) Constant 75
287: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 288 54 16 289 11 18 288 286(outLightVec) 42
290: TypePointer Uniform 134(fvec4)
297(outWorldPos): 123(ptr) Variable Output
300: 6(int) Constant 76
298: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 299 54 16 300 11 18 299 297(outWorldPos) 42
303(outEyePos): 123(ptr) Variable Output
306: 6(int) Constant 77
304: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 305 54 16 306 11 18 305 303(outEyePos) 42
13(main): 3 Function None 4
22: Label
30(uv1): 29(ptr) Variable Function
64(uv2): 29(ptr) Variable Function
91(n1): 90(ptr) Variable Function
110(n2): 90(ptr) Variable Function
137(pos1): 136(ptr) Variable Function
172(pos2): 136(ptr) Variable Function
185(pos): 136(ptr) Variable Function
23: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 15 13(main)
34: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 31 30(uv1) 35
48: 47(ptr) AccessChain 39(inUV) 46
49: 27(fvec2) Load 48
51: 47(ptr) AccessChain 39(inUV) 50
52: 27(fvec2) Load 51
60: 59(ptr) AccessChain 56(gl_TessCoord) 11
61: 24(float) Load 60
62: 27(fvec2) CompositeConstruct 61 61
63: 27(fvec2) ExtInst 2(GLSL.std.450) 46(FMix) 49 52 62
Store 30(uv1) 63
68: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 65 64(uv2) 35
70: 47(ptr) AccessChain 39(inUV) 69
71: 27(fvec2) Load 70
73: 47(ptr) AccessChain 39(inUV) 72
74: 27(fvec2) Load 73
75: 59(ptr) AccessChain 56(gl_TessCoord) 11
76: 24(float) Load 75
77: 27(fvec2) CompositeConstruct 76 76
78: 27(fvec2) ExtInst 2(GLSL.std.450) 46(FMix) 71 74 77
Store 64(uv2) 78
84: 27(fvec2) Load 30(uv1)
85: 27(fvec2) Load 64(uv2)
86: 59(ptr) AccessChain 56(gl_TessCoord) 19
87: 24(float) Load 86
88: 27(fvec2) CompositeConstruct 87 87
89: 27(fvec2) ExtInst 2(GLSL.std.450) 46(FMix) 84 85 88
Store 80(outUV) 89
95: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 92 91(n1) 35
102: 55(ptr) AccessChain 99(inNormal) 46
103: 53(fvec3) Load 102
104: 55(ptr) AccessChain 99(inNormal) 50
105: 53(fvec3) Load 104
106: 59(ptr) AccessChain 56(gl_TessCoord) 11
107: 24(float) Load 106
108: 53(fvec3) CompositeConstruct 107 107 107
109: 53(fvec3) ExtInst 2(GLSL.std.450) 46(FMix) 103 105 108
Store 91(n1) 109
114: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 111 110(n2) 35
115: 55(ptr) AccessChain 99(inNormal) 69
116: 53(fvec3) Load 115
117: 55(ptr) AccessChain 99(inNormal) 72
118: 53(fvec3) Load 117
119: 59(ptr) AccessChain 56(gl_TessCoord) 11
120: 24(float) Load 119
121: 53(fvec3) CompositeConstruct 120 120 120
122: 53(fvec3) ExtInst 2(GLSL.std.450) 46(FMix) 116 118 121
Store 110(n2) 122
128: 53(fvec3) Load 91(n1)
129: 53(fvec3) Load 110(n2)
130: 59(ptr) AccessChain 56(gl_TessCoord) 19
131: 24(float) Load 130
132: 53(fvec3) CompositeConstruct 131 131 131
133: 53(fvec3) ExtInst 2(GLSL.std.450) 46(FMix) 128 129 132
Store 124(outNormal) 133
141: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 138 137(pos1) 35
164: 163(ptr) AccessChain 160(gl_in) 46 46
165: 134(fvec4) Load 164
166: 163(ptr) AccessChain 160(gl_in) 50 46
167: 134(fvec4) Load 166
168: 59(ptr) AccessChain 56(gl_TessCoord) 11
169: 24(float) Load 168
170: 134(fvec4) CompositeConstruct 169 169 169 169
171: 134(fvec4) ExtInst 2(GLSL.std.450) 46(FMix) 165 167 170
Store 137(pos1) 171
176: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 173 172(pos2) 35
177: 163(ptr) AccessChain 160(gl_in) 69 46
178: 134(fvec4) Load 177
179: 163(ptr) AccessChain 160(gl_in) 72 46
180: 134(fvec4) Load 179
181: 59(ptr) AccessChain 56(gl_TessCoord) 11
182: 24(float) Load 181
183: 134(fvec4) CompositeConstruct 182 182 182 182
184: 134(fvec4) ExtInst 2(GLSL.std.450) 46(FMix) 178 180 183
Store 172(pos2) 184
189: 3 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 186 185(pos) 35
190: 134(fvec4) Load 137(pos1)
191: 134(fvec4) Load 172(pos2)
192: 59(ptr) AccessChain 56(gl_TessCoord) 19
193: 24(float) Load 192
194: 134(fvec4) CompositeConstruct 193 193 193 193
195: 134(fvec4) ExtInst 2(GLSL.std.450) 46(FMix) 190 191 194
Store 185(pos) 195
210: 202 Load 207(displacementMap)
211: 27(fvec2) Load 80(outUV)
213: 134(fvec4) ImageSampleExplicitLod 210 211 Lod 212
214: 24(float) CompositeExtract 213 0
248: 247(ptr) AccessChain 243(ubo) 246
249: 24(float) Load 248
250: 24(float) FMul 214 249
252: 251(ptr) AccessChain 185(pos) 19
253: 24(float) Load 252
254: 24(float) FSub 253 250
255: 251(ptr) AccessChain 185(pos) 19
Store 255 254
270: 269(ptr) AccessChain 243(ubo) 46
271: 215 Load 270
272: 269(ptr) AccessChain 243(ubo) 50
273: 215 Load 272
274: 215 MatrixTimesMatrix 271 273
275: 134(fvec4) Load 185(pos)
276: 134(fvec4) MatrixTimesVector 274 275
278: 277(ptr) AccessChain 267 46
Store 278 276
283: 134(fvec4) Load 185(pos)
284: 53(fvec3) VectorShuffle 283 283 0 1 2
285: 53(fvec3) FNegate 284
Store 279(outViewVec) 285
291: 290(ptr) AccessChain 243(ubo) 72
292: 134(fvec4) Load 291
293: 53(fvec3) VectorShuffle 292 292 0 1 2
294: 53(fvec3) Load 279(outViewVec)
295: 53(fvec3) FAdd 293 294
296: 53(fvec3) ExtInst 2(GLSL.std.450) 69(Normalize) 295
Store 286(outLightVec) 296
301: 134(fvec4) Load 185(pos)
302: 53(fvec3) VectorShuffle 301 301 0 1 2
Store 297(outWorldPos) 302
307: 269(ptr) AccessChain 243(ubo) 50
308: 215 Load 307
309: 134(fvec4) Load 185(pos)
310: 134(fvec4) MatrixTimesVector 308 309
311: 24(float) CompositeExtract 310 0
312: 24(float) CompositeExtract 310 1
313: 24(float) CompositeExtract 310 2
314: 53(fvec3) CompositeConstruct 311 312 313
Store 303(outEyePos) 314
EntryPoint TessellationEvaluation 14 "main" 42 59 86 105 133 169 280 294 302 314 321
ExecutionMode 14 Quads
ExecutionMode 14 SpacingEqual
ExecutionMode 14 VertexOrderCw
1: String ""
9: String "uint"
15: String "main"
18: String "// OpModuleProcessed auto-map-locations
// OpModuleProcessed auto-map-bindings
// OpModuleProcessed client vulkan100
// OpModuleProcessed target-env vulkan1.0
// OpModuleProcessed keep-uncalled
// OpModuleProcessed entry-point main
#line 1
"
29: String "float"
36: String "uv1"
44: String "inUV"
47: String "int"
61: String "gl_TessCoord"
71: String "uv2"
88: String "outUV"
100: String "n1"
107: String "inNormal"
120: String "n2"
135: String "outNormal"
149: String "pos1"
155: String "gl_Position"
158: String "gl_PointSize"
161: String "gl_CullDistance"
165: String "gl_PerVertex"
171: String "gl_in"
185: String "pos2"
199: String "pos"
211: String "type.2d.image"
212: String "@type.2d.image"
216: String "type.sampled.image"
217: String "@type.sampled.image"
221: String "displacementMap"
235: String "modelview"
240: String "lightPos"
243: String "frustumPlanes"
245: String "tessellatedEdgeSize"
249: String "viewportDim"
253: String "UBO"
257: String "ubo"
296: String "outViewVec"
304: String "outLightVec"
316: String "outWorldPos"
323: String "outEyePos"
Name 14 "main"
Name 34 "uv1"
Name 42 "inUV"
Name 59 "gl_TessCoord"
Name 69 "uv2"
Name 86 "outUV"
Name 98 "n1"
Name 105 "inNormal"
Name 118 "n2"
Name 133 "outNormal"
Name 147 "pos1"
Name 153 "gl_PerVertex"
MemberName 153(gl_PerVertex) 0 "gl_Position"
MemberName 153(gl_PerVertex) 1 "gl_PointSize"
MemberName 153(gl_PerVertex) 2 "gl_ClipDistance"
MemberName 153(gl_PerVertex) 3 "gl_CullDistance"
Name 169 "gl_in"
Name 183 "pos2"
Name 197 "pos"
Name 219 "displacementMap"
Name 233 "UBO"
MemberName 233(UBO) 0 "projection"
MemberName 233(UBO) 1 "modelview"
MemberName 233(UBO) 2 "lightPos"
MemberName 233(UBO) 3 "frustumPlanes"
MemberName 233(UBO) 4 "displacementFactor"
MemberName 233(UBO) 5 "tessellationFactor"
MemberName 233(UBO) 6 "viewportDim"
MemberName 233(UBO) 7 "tessellatedEdgeSize"
Name 255 "ubo"
Name 270 "gl_PerVertex"
MemberName 270(gl_PerVertex) 0 "gl_Position"
MemberName 270(gl_PerVertex) 1 "gl_PointSize"
MemberName 270(gl_PerVertex) 2 "gl_ClipDistance"
MemberName 270(gl_PerVertex) 3 "gl_CullDistance"
Name 280 ""
Name 294 "outViewVec"
Name 302 "outLightVec"
Name 314 "outWorldPos"
Name 321 "outEyePos"
Decorate 42(inUV) Location 1
Decorate 59(gl_TessCoord) BuiltIn TessCoord
Decorate 86(outUV) Location 1
Decorate 105(inNormal) Location 0
Decorate 133(outNormal) Location 0
MemberDecorate 153(gl_PerVertex) 0 BuiltIn Position
MemberDecorate 153(gl_PerVertex) 1 BuiltIn PointSize
MemberDecorate 153(gl_PerVertex) 2 BuiltIn ClipDistance
MemberDecorate 153(gl_PerVertex) 3 BuiltIn CullDistance
Decorate 153(gl_PerVertex) Block
Decorate 219(displacementMap) DescriptorSet 0
Decorate 219(displacementMap) Binding 1
Decorate 231 ArrayStride 16
MemberDecorate 233(UBO) 0 ColMajor
MemberDecorate 233(UBO) 0 Offset 0
MemberDecorate 233(UBO) 0 MatrixStride 16
MemberDecorate 233(UBO) 1 ColMajor
MemberDecorate 233(UBO) 1 Offset 64
MemberDecorate 233(UBO) 1 MatrixStride 16
MemberDecorate 233(UBO) 2 Offset 128
MemberDecorate 233(UBO) 3 Offset 144
MemberDecorate 233(UBO) 4 Offset 240
MemberDecorate 233(UBO) 5 Offset 244
MemberDecorate 233(UBO) 6 Offset 248
MemberDecorate 233(UBO) 7 Offset 256
Decorate 233(UBO) Block
Decorate 255(ubo) DescriptorSet 0
Decorate 255(ubo) Binding 0
MemberDecorate 270(gl_PerVertex) 0 BuiltIn Position
MemberDecorate 270(gl_PerVertex) 1 BuiltIn PointSize
MemberDecorate 270(gl_PerVertex) 2 BuiltIn ClipDistance
MemberDecorate 270(gl_PerVertex) 3 BuiltIn CullDistance
Decorate 270(gl_PerVertex) Block
Decorate 294(outViewVec) Location 2
Decorate 302(outLightVec) Location 3
Decorate 314(outWorldPos) Location 5
Decorate 321(outEyePos) Location 4
4: TypeVoid
5: TypeFunction 4
7: TypeInt 32 0
10: 7(int) Constant 32
11: 7(int) Constant 6
12: 7(int) Constant 0
8: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 9 10 11 12
13: 7(int) Constant 3
6: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 8(DebugTypeFunction) 13 4
17: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 35(DebugSource) 1 18
20: 7(int) Constant 1
21: 7(int) Constant 4
22: 7(int) Constant 2
19: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 1(DebugCompilationUnit) 20 21 17 22
16: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 15 6 17 12 12 19 15 13 12
27: 7(int) Constant 56
28: TypeFloat 32
30: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 29 10 13 12
31: TypeVector 28(float) 2
32: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 30 22
33: TypePointer Function 31(fvec2)
35: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 36 32 17 27 12 16 21
38: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 31(DebugExpression)
39: TypeArray 31(fvec2) 10
40: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 32 10
41: TypePointer Input 39
42(inUV): 41(ptr) Variable Input
45: 7(int) Constant 8
43: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 44 40 17 27 12 19 44 42(inUV) 45
46: TypeInt 32 1
48: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 47 10 21 12
49: 46(int) Constant 0
50: TypePointer Input 31(fvec2)
53: 46(int) Constant 1
56: TypeVector 28(float) 3
57: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 30 13
58: TypePointer Input 56(fvec3)
59(gl_TessCoord): 58(ptr) Variable Input
60: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 61 57 17 27 12 19 61 59(gl_TessCoord) 45
62: TypePointer Input 28(float)
68: 7(int) Constant 57
70: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 71 32 17 68 12 16 21
73: 46(int) Constant 3
76: 46(int) Constant 2
84: 7(int) Constant 58
85: TypePointer Output 31(fvec2)
86(outUV): 85(ptr) Variable Output
87: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 88 32 17 84 12 19 88 86(outUV) 45
96: 7(int) Constant 60
97: TypePointer Function 56(fvec3)
99: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 100 57 17 96 12 16 21
102: TypeArray 56(fvec3) 10
103: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 57 10
104: TypePointer Input 102
105(inNormal): 104(ptr) Variable Input
106: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 107 103 17 96 12 19 107 105(inNormal) 45
117: 7(int) Constant 61
119: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 120 57 17 117 12 16 21
131: 7(int) Constant 62
132: TypePointer Output 56(fvec3)
133(outNormal): 132(ptr) Variable Output
134: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 135 57 17 131 12 19 135 133(outNormal) 45
143: 7(int) Constant 65
144: TypeVector 28(float) 4
145: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 30 21
146: TypePointer Function 144(fvec4)
148: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 149 145 17 143 12 16 21
151: TypeArray 28(float) 20
152: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 30 20
153(gl_PerVertex): TypeStruct 144(fvec4) 28(float) 151 151
156: 7(int) Constant 1756
154: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 155 145 17 20 156 12 12 13
159: 7(int) Constant 1774
157: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 158 30 17 20 159 12 12 13
162: 7(int) Constant 1817
160: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 161 152 17 20 162 12 12 13
163: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 161 152 17 20 162 12 12 13
164: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 165 20 17 143 12 19 165 12 13 154 157 160 163
166: TypeArray 153(gl_PerVertex) 10
167: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 164 10
168: TypePointer Input 166
169(gl_in): 168(ptr) Variable Input
170: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 171 167 17 143 12 19 171 169(gl_in) 45
172: TypePointer Input 144(fvec4)
182: 7(int) Constant 66
184: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 185 145 17 182 12 16 21
196: 7(int) Constant 67
198: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 199 145 17 196 12 16 21
208: 7(int) Constant 69
209: TypeImage 28(float) 2D sampled format:Unknown
213: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 0(DebugInfoNone)
210: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 211 12 17 208 12 19 212 213 13
214: TypeSampledImage 209
215: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 216 12 17 208 12 19 217 213 13
218: TypePointer UniformConstant 214
219(displacementMap): 218(ptr) Variable UniformConstant
220: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 221 215 17 208 12 19 221 219(displacementMap) 45
224: 28(float) Constant 0
227: TypeMatrix 144(fvec4) 4
229: TypeBool
230: 229(bool) ConstantTrue
228: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 108(DebugTypeMatrix) 145 21 230
231: TypeArray 144(fvec4) 11
232: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 145 11
233(UBO): TypeStruct 227 227 144(fvec4) 231 28(float) 28(float) 31(fvec2) 28(float)
236: 7(int) Constant 30
237: 7(int) Constant 7
234: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 235 228 17 236 237 12 12 13
238: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 235 228 17 236 237 12 12 13
241: 7(int) Constant 31
239: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 240 145 17 241 237 12 12 13
242: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 243 232 17 10 237 12 12 13
246: 7(int) Constant 36
244: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 245 30 17 246 45 12 12 13
247: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 245 30 17 246 45 12 12 13
250: 7(int) Constant 35
248: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 249 32 17 250 237 12 12 13
251: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 245 30 17 246 45 12 12 13
252: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 253 20 17 208 12 19 253 12 13 234 238 239 242 244 247 248 251
254: TypePointer Uniform 233(UBO)
255(ubo): 254(ptr) Variable Uniform
256: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 257 252 17 208 12 19 257 255(ubo) 45
258: 46(int) Constant 4
259: TypePointer Uniform 28(float)
263: TypePointer Function 28(float)
269: 7(int) Constant 71
270(gl_PerVertex): TypeStruct 144(fvec4) 28(float) 151 151
272: 7(int) Constant 165
271: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 155 145 17 20 272 12 12 13
274: 7(int) Constant 183
273: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 158 30 17 20 274 12 12 13
276: 7(int) Constant 226
275: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 161 152 17 20 276 12 12 13
277: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 161 152 17 20 276 12 12 13
278: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 165 20 17 269 12 19 165 12 13 271 273 275 277
279: TypePointer Output 270(gl_PerVertex)
280: 279(ptr) Variable Output
281: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 1 278 17 269 12 19 1 280 45
282: TypePointer Uniform 227
290: TypePointer Output 144(fvec4)
293: 7(int) Constant 74
294(outViewVec): 132(ptr) Variable Output
295: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 296 57 17 293 12 19 296 294(outViewVec) 45
301: 7(int) Constant 75
302(outLightVec): 132(ptr) Variable Output
303: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 304 57 17 301 12 19 304 302(outLightVec) 45
305: TypePointer Uniform 144(fvec4)
313: 7(int) Constant 76
314(outWorldPos): 132(ptr) Variable Output
315: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 316 57 17 313 12 19 316 314(outWorldPos) 45
320: 7(int) Constant 77
321(outEyePos): 132(ptr) Variable Output
322: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 323 57 17 320 12 19 323 321(outEyePos) 45
Line 1 53 11
14(main): 4 Function None 5
23: Label
34(uv1): 33(ptr) Variable Function
69(uv2): 33(ptr) Variable Function
98(n1): 97(ptr) Variable Function
118(n2): 97(ptr) Variable Function
147(pos1): 146(ptr) Variable Function
183(pos2): 146(ptr) Variable Function
197(pos): 146(ptr) Variable Function
24: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 16 14(main)
25: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 16
26: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 17 27 27 12 12
37: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 35 34(uv1) 38
51: 50(ptr) AccessChain 42(inUV) 49
52: 31(fvec2) Load 51
54: 50(ptr) AccessChain 42(inUV) 53
55: 31(fvec2) Load 54
63: 62(ptr) AccessChain 59(gl_TessCoord) 12
64: 28(float) Load 63
65: 31(fvec2) CompositeConstruct 64 64
66: 31(fvec2) ExtInst 3(GLSL.std.450) 46(FMix) 52 55 65
Store 34(uv1) 66
67: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 17 68 68 12 12
72: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 70 69(uv2) 38
74: 50(ptr) AccessChain 42(inUV) 73
75: 31(fvec2) Load 74
77: 50(ptr) AccessChain 42(inUV) 76
78: 31(fvec2) Load 77
79: 62(ptr) AccessChain 59(gl_TessCoord) 12
80: 28(float) Load 79
81: 31(fvec2) CompositeConstruct 80 80
82: 31(fvec2) ExtInst 3(GLSL.std.450) 46(FMix) 75 78 81
Store 69(uv2) 82
83: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 17 84 84 12 12
89: 31(fvec2) Load 34(uv1)
90: 31(fvec2) Load 69(uv2)
91: 62(ptr) AccessChain 59(gl_TessCoord) 20
92: 28(float) Load 91
93: 31(fvec2) CompositeConstruct 92 92
94: 31(fvec2) ExtInst 3(GLSL.std.450) 46(FMix) 89 90 93
Store 86(outUV) 94
95: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 17 96 96 12 12
101: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 99 98(n1) 38
108: 58(ptr) AccessChain 105(inNormal) 49
109: 56(fvec3) Load 108
110: 58(ptr) AccessChain 105(inNormal) 53
111: 56(fvec3) Load 110
112: 62(ptr) AccessChain 59(gl_TessCoord) 12
113: 28(float) Load 112
114: 56(fvec3) CompositeConstruct 113 113 113
115: 56(fvec3) ExtInst 3(GLSL.std.450) 46(FMix) 109 111 114
Store 98(n1) 115
116: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 17 117 117 12 12
121: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 119 118(n2) 38
122: 58(ptr) AccessChain 105(inNormal) 73
123: 56(fvec3) Load 122
124: 58(ptr) AccessChain 105(inNormal) 76
125: 56(fvec3) Load 124
126: 62(ptr) AccessChain 59(gl_TessCoord) 12
127: 28(float) Load 126
128: 56(fvec3) CompositeConstruct 127 127 127
129: 56(fvec3) ExtInst 3(GLSL.std.450) 46(FMix) 123 125 128
Store 118(n2) 129
130: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 17 131 131 12 12
136: 56(fvec3) Load 98(n1)
137: 56(fvec3) Load 118(n2)
138: 62(ptr) AccessChain 59(gl_TessCoord) 20
139: 28(float) Load 138
140: 56(fvec3) CompositeConstruct 139 139 139
141: 56(fvec3) ExtInst 3(GLSL.std.450) 46(FMix) 136 137 140
Store 133(outNormal) 141
142: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 17 143 143 12 12
150: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 148 147(pos1) 38
173: 172(ptr) AccessChain 169(gl_in) 49 49
174: 144(fvec4) Load 173
175: 172(ptr) AccessChain 169(gl_in) 53 49
176: 144(fvec4) Load 175
177: 62(ptr) AccessChain 59(gl_TessCoord) 12
178: 28(float) Load 177
179: 144(fvec4) CompositeConstruct 178 178 178 178
180: 144(fvec4) ExtInst 3(GLSL.std.450) 46(FMix) 174 176 179
Store 147(pos1) 180
181: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 17 182 182 12 12
186: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 184 183(pos2) 38
187: 172(ptr) AccessChain 169(gl_in) 73 49
188: 144(fvec4) Load 187
189: 172(ptr) AccessChain 169(gl_in) 76 49
190: 144(fvec4) Load 189
191: 62(ptr) AccessChain 59(gl_TessCoord) 12
192: 28(float) Load 191
193: 144(fvec4) CompositeConstruct 192 192 192 192
194: 144(fvec4) ExtInst 3(GLSL.std.450) 46(FMix) 188 190 193
Store 183(pos2) 194
195: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 17 196 196 12 12
200: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 198 197(pos) 38
201: 144(fvec4) Load 147(pos1)
202: 144(fvec4) Load 183(pos2)
203: 62(ptr) AccessChain 59(gl_TessCoord) 20
204: 28(float) Load 203
205: 144(fvec4) CompositeConstruct 204 204 204 204
206: 144(fvec4) ExtInst 3(GLSL.std.450) 46(FMix) 201 202 205
Store 197(pos) 206
207: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 17 208 208 12 12
222: 214 Load 219(displacementMap)
223: 31(fvec2) Load 86(outUV)
225: 144(fvec4) ImageSampleExplicitLod 222 223 Lod 224
226: 28(float) CompositeExtract 225 0
260: 259(ptr) AccessChain 255(ubo) 258
261: 28(float) Load 260
262: 28(float) FMul 226 261
264: 263(ptr) AccessChain 197(pos) 20
265: 28(float) Load 264
266: 28(float) FSub 265 262
267: 263(ptr) AccessChain 197(pos) 20
Store 267 266
268: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 17 269 269 12 12
283: 282(ptr) AccessChain 255(ubo) 49
284: 227 Load 283
285: 282(ptr) AccessChain 255(ubo) 53
286: 227 Load 285
287: 227 MatrixTimesMatrix 284 286
288: 144(fvec4) Load 197(pos)
289: 144(fvec4) MatrixTimesVector 287 288
291: 290(ptr) AccessChain 280 49
Store 291 289
292: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 17 293 293 12 12
297: 144(fvec4) Load 197(pos)
298: 56(fvec3) VectorShuffle 297 297 0 1 2
299: 56(fvec3) FNegate 298
Store 294(outViewVec) 299
300: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 17 301 301 12 12
306: 305(ptr) AccessChain 255(ubo) 76
307: 144(fvec4) Load 306
308: 56(fvec3) VectorShuffle 307 307 0 1 2
309: 56(fvec3) Load 294(outViewVec)
310: 56(fvec3) FAdd 308 309
311: 56(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 310
Store 302(outLightVec) 311
312: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 17 313 313 12 12
317: 144(fvec4) Load 197(pos)
318: 56(fvec3) VectorShuffle 317 317 0 1 2
Store 314(outWorldPos) 318
319: 4 ExtInst 2(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 17 320 320 12 12
324: 282(ptr) AccessChain 255(ubo) 53
325: 227 Load 324
326: 144(fvec4) Load 197(pos)
327: 144(fvec4) MatrixTimesVector 325 326
328: 28(float) CompositeExtract 327 0
329: 28(float) CompositeExtract 327 1
330: 28(float) CompositeExtract 327 2
331: 56(fvec3) CompositeConstruct 328 329 330
Store 321(outEyePos) 331
Return
FunctionEnd