yum-mirror/glslang

git clone https://git.yummers.dev/yum-mirror/glslang

spencer-lunargFix ShaderDebugInfo having invalid line numbers in 1.0e4c40890

main
43.5 KiB742 linesraw
1spv.debuginfo.hlsl.tese
2// Module Version 10000
3// Generated by (magic number): 8000b
4// Id's are bound by 496
5
6                              Capability Tessellation
7                              Extension  "SPV_KHR_non_semantic_info"
8               1:             ExtInstImport  "NonSemantic.Shader.DebugInfo.100"
9               3:             ExtInstImport  "GLSL.std.450"
10                              MemoryModel Logical GLSL450
11                              EntryPoint TessellationEvaluation 6  "main" 387 402 411 420 427 433 473 477 481 484 487 490 493
12                              ExecutionMode 6 Quads
13               2:             String  "spv.debuginfo.hlsl.tese"
14               9:             String  "float"
15              12:             String  "uint"
16              26:             String  "TessLevelOuter"
17              28:             String  "/*
18The MIT License (MIT)
19
20Copyright (c) 2022 Google LLC
21Copyright (c) 2022 Sascha Willems
22
23Permission is hereby granted, free of charge, to any person obtaining a copy
24of this software and associated documentation files (the "Software"), to deal
25in the Software without restriction, including without limitation the rights
26to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
27copies of the Software, and to permit persons to whom the Software is
28furnished to do so, subject to the following conditions:
29
30The above copyright notice and this permission notice shall be included in all
31copies or substantial portions of the Software.
32
33THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
34IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
35FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
36AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
37LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
38OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
39SOFTWARE.
40*/
41
42struct UBO
43{
44	float4x4 projection;
45	float4x4 modelview;
46	float4 lightPos;
47	float4 frustumPlanes[6];
48	float displacementFactor;
49	float tessellationFactor;
50	float2 viewportDim;
51	float tessellatedEdgeSize;
52};
53cbuffer ubo : register(b0) { UBO ubo; };
54
55Texture2D displacementMapTexture : register(t1);
56SamplerState displacementMapSampler : register(s1);
57
58struct HSOutput
59{
60[[vk::location(2)]]	float4 Pos : SV_POSITION;
61[[vk::location(0)]] float3 Normal : NORMAL0;
62[[vk::location(1)]] float2 UV : TEXCOORD0;
63};
64
65struct ConstantsHSOutput
66{
67    float TessLevelOuter[4] : SV_TessFactor;
68    float TessLevelInner[2] : SV_InsideTessFactor;
69};
70
71struct DSOutput
72{
73	float4 Pos : SV_POSITION;
74[[vk::location(0)]] float3 Normal : NORMAL0;
75[[vk::location(1)]] float2 UV : TEXCOORD0;
76[[vk::location(2)]] float3 ViewVec : TEXCOORD1;
77[[vk::location(3)]] float3 LightVec : TEXCOORD2;
78[[vk::location(4)]] float3 EyePos : POSITION1;
79[[vk::location(5)]] float3 WorldPos : POSITION0;
80};
81
82[domain("quad")]
83DSOutput main(ConstantsHSOutput input, float2 TessCoord : SV_DomainLocation, const OutputPatch<HSOutput, 4> patch)
84{
85	// Interpolate UV coordinates
86	DSOutput output = (DSOutput)0;
87	float2 uv1 = lerp(patch[0].UV, patch[1].UV, TessCoord.x);
88	float2 uv2 = lerp(patch[3].UV, patch[2].UV, TessCoord.x);
89	output.UV = lerp(uv1, uv2, TessCoord.y);
90
91	float3 n1 = lerp(patch[0].Normal, patch[1].Normal, TessCoord.x);
92	float3 n2 = lerp(patch[3].Normal, patch[2].Normal, TessCoord.x);
93	output.Normal = lerp(n1, n2, TessCoord.y);
94
95	// Interpolate positions
96	float4 pos1 = lerp(patch[0].Pos, patch[1].Pos, TessCoord.x);
97	float4 pos2 = lerp(patch[3].Pos, patch[2].Pos, TessCoord.x);
98	float4 pos = lerp(pos1, pos2, TessCoord.y);
99	// Displace
100	pos.y -= displacementMapTexture.SampleLevel(displacementMapSampler, output.UV, 0.0).r * ubo.displacementFactor;
101	// Perspective projection
102	output.Pos = mul(ubo.projection, mul(ubo.modelview, pos));
103
104	// Calculate vectors for lighting based on tessellated position
105	output.ViewVec = -pos.xyz;
106	output.LightVec = normalize(ubo.lightPos.xyz + output.ViewVec);
107	output.WorldPos = pos.xyz;
108	output.EyePos = mul(ubo.modelview, pos).xyz;
109	return output;
110}
111"
112              32:             String  "TessLevelInner"
113              35:             String  "ConstantsHSOutput"
114              53:             String  "Pos"
115              56:             String  "Normal"
116              60:             String  "UV"
117              64:             String  "HSOutput"
118              76:             String  "ViewVec"
119              80:             String  "LightVec"
120              84:             String  "EyePos"
121              87:             String  "WorldPos"
122              90:             String  "DSOutput"
123              98:             String  "@main"
124             101:             String  "input"
125             107:             String  "TessCoord"
126             110:             String  "patch"
127             118:             String  "output"
128             130:             String  "uv1"
129             135:             String  "int"
130             150:             String  "uv2"
131             174:             String  "n1"
132             186:             String  "n2"
133             209:             String  "pos1"
134             221:             String  "pos2"
135             233:             String  "pos"
136             245:             String  "type.2d.image"
137             247:             String  "@type.2d.image"
138             253:             String  "displacementMapTexture"
139             259:             String  "type.sampler"
140             260:             String  "@type.sampler"
141             265:             String  "displacementMapSampler"
142             269:             String  "type.sampled.image"
143             270:             String  "@type.sampled.image"
144             279:             String  "bool"
145             286:             String  "projection"
146             290:             String  "modelview"
147             294:             String  "lightPos"
148             298:             String  "frustumPlanes"
149             301:             String  "displacementFactor"
150             304:             String  "tessellationFactor"
151             307:             String  "viewportDim"
152             310:             String  "tessellatedEdgeSize"
153             313:             String  "UBO"
154             316:             String  "ubo"
155             322:             String  ""
156                              Name 6  "main"
157                              Name 24  "ConstantsHSOutput"
158                              MemberName 24(ConstantsHSOutput) 0  "TessLevelOuter"
159                              MemberName 24(ConstantsHSOutput) 1  "TessLevelInner"
160                              Name 51  "HSOutput"
161                              MemberName 51(HSOutput) 0  "Pos"
162                              MemberName 51(HSOutput) 1  "Normal"
163                              MemberName 51(HSOutput) 2  "UV"
164                              Name 67  "DSOutput"
165                              MemberName 67(DSOutput) 0  "Pos"
166                              MemberName 67(DSOutput) 1  "Normal"
167                              MemberName 67(DSOutput) 2  "UV"
168                              MemberName 67(DSOutput) 3  "ViewVec"
169                              MemberName 67(DSOutput) 4  "LightVec"
170                              MemberName 67(DSOutput) 5  "EyePos"
171                              MemberName 67(DSOutput) 6  "WorldPos"
172                              Name 96  "@main(struct-ConstantsHSOutput-f1[4]-f1[2]1;vf2;struct-HSOutput-vf4-vf3-vf21[4];"
173                              Name 93  "input"
174                              Name 94  "TessCoord"
175                              Name 95  "patch"
176                              Name 116  "output"
177                              Name 128  "uv1"
178                              Name 148  "uv2"
179                              Name 172  "n1"
180                              Name 184  "n2"
181                              Name 207  "pos1"
182                              Name 219  "pos2"
183                              Name 231  "pos"
184                              Name 251  "displacementMapTexture"
185                              Name 263  "displacementMapSampler"
186                              Name 284  "UBO"
187                              MemberName 284(UBO) 0  "projection"
188                              MemberName 284(UBO) 1  "modelview"
189                              MemberName 284(UBO) 2  "lightPos"
190                              MemberName 284(UBO) 3  "frustumPlanes"
191                              MemberName 284(UBO) 4  "displacementFactor"
192                              MemberName 284(UBO) 5  "tessellationFactor"
193                              MemberName 284(UBO) 6  "viewportDim"
194                              MemberName 284(UBO) 7  "tessellatedEdgeSize"
195                              Name 314  "ubo"
196                              MemberName 314(ubo) 0  "ubo"
197                              Name 320  ""
198                              Name 385  "input"
199                              Name 387  "input.TessLevelOuter"
200                              Name 402  "input.TessLevelInner"
201                              Name 409  "TessCoord"
202                              Name 411  "TessCoord"
203                              Name 417  "patch"
204                              Name 420  "patch.Pos"
205                              Name 427  "patch.Normal"
206                              Name 433  "patch.UV"
207                              Name 465  "flattenTemp"
208                              Name 467  "param"
209                              Name 469  "param"
210                              Name 473  "@entryPointOutput.Pos"
211                              Name 477  "@entryPointOutput.Normal"
212                              Name 481  "@entryPointOutput.UV"
213                              Name 484  "@entryPointOutput.ViewVec"
214                              Name 487  "@entryPointOutput.LightVec"
215                              Name 490  "@entryPointOutput.EyePos"
216                              Name 493  "@entryPointOutput.WorldPos"
217                              Decorate 251(displacementMapTexture) Binding 1
218                              Decorate 251(displacementMapTexture) DescriptorSet 0
219                              Decorate 263(displacementMapSampler) Binding 1
220                              Decorate 263(displacementMapSampler) DescriptorSet 0
221                              Decorate 282 ArrayStride 16
222                              MemberDecorate 284(UBO) 0 RowMajor
223                              MemberDecorate 284(UBO) 0 MatrixStride 16
224                              MemberDecorate 284(UBO) 0 Offset 0
225                              MemberDecorate 284(UBO) 1 RowMajor
226                              MemberDecorate 284(UBO) 1 MatrixStride 16
227                              MemberDecorate 284(UBO) 1 Offset 64
228                              MemberDecorate 284(UBO) 2 Offset 128
229                              MemberDecorate 284(UBO) 3 Offset 144
230                              MemberDecorate 284(UBO) 4 Offset 240
231                              MemberDecorate 284(UBO) 5 Offset 244
232                              MemberDecorate 284(UBO) 6 Offset 248
233                              MemberDecorate 284(UBO) 7 Offset 256
234                              Decorate 314(ubo) Block
235                              MemberDecorate 314(ubo) 0 Offset 0
236                              Decorate 320 Binding 0
237                              Decorate 320 DescriptorSet 0
238                              Decorate 387(input.TessLevelOuter) BuiltIn TessLevelOuter
239                              Decorate 387(input.TessLevelOuter) Patch
240                              Decorate 402(input.TessLevelInner) BuiltIn TessLevelInner
241                              Decorate 402(input.TessLevelInner) Patch
242                              Decorate 411(TessCoord) BuiltIn TessCoord
243                              Decorate 411(TessCoord) Patch
244                              Decorate 420(patch.Pos) BuiltIn Position
245                              Decorate 427(patch.Normal) Location 0
246                              Decorate 433(patch.UV) Location 1
247                              Decorate 473(@entryPointOutput.Pos) BuiltIn Position
248                              Decorate 477(@entryPointOutput.Normal) Location 0
249                              Decorate 481(@entryPointOutput.UV) Location 1
250                              Decorate 484(@entryPointOutput.ViewVec) Location 2
251                              Decorate 487(@entryPointOutput.LightVec) Location 3
252                              Decorate 490(@entryPointOutput.EyePos) Location 4
253                              Decorate 493(@entryPointOutput.WorldPos) Location 5
254               4:             TypeVoid
255               5:             TypeFunction 4
256               8:             TypeFloat 32
257              11:             TypeInt 32 0
258              14:     11(int) Constant 32
259              15:     11(int) Constant 6
260              16:     11(int) Constant 0
261              13:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 12 14 15 16
262              17:     11(int) Constant 3
263              10:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 9 14 17 16
264              18:     11(int) Constant 4
265              19:             TypeArray 8(float) 18
266              20:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 10 18
267              21:     11(int) Constant 2
268              22:             TypeArray 8(float) 21
269              23:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 10 21
27024(ConstantsHSOutput):             TypeStruct 19 22
271              27:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 35(DebugSource) 2 28
272              29:     11(int) Constant 51
273              30:     11(int) Constant 25
274              25:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 26 20 27 29 30 16 16 17
275              33:     11(int) Constant 52
276              31:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 32 23 27 33 30 16 16 17
277              36:     11(int) Constant 1
278              37:     11(int) Constant 68
279              39:     11(int) Constant 5
280              38:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 1(DebugCompilationUnit) 36 18 27 39
281              34:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 35 36 27 37 16 38 35 16 17 25 31
282              40:             TypePointer Function 24(ConstantsHSOutput)
283              41:     11(int) Constant 7
284              42:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 34 41 16
285              43:             TypeVector 8(float) 2
286              44:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 10 21
287              45:             TypePointer Function 43(fvec2)
288              46:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 44 41 16
289              47:             TypeVector 8(float) 4
290              48:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 10 18
291              49:             TypeVector 8(float) 3
292              50:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 10 17
293    51(HSOutput):             TypeStruct 47(fvec4) 49(fvec3) 43(fvec2)
294              54:     11(int) Constant 44
295              52:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 53 48 27 54 14 16 16 17
296              57:     11(int) Constant 45
297              58:     11(int) Constant 35
298              55:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 56 50 27 57 58 16 16 17
299              61:     11(int) Constant 46
300              62:     11(int) Constant 31
301              59:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 60 44 27 61 62 16 16 17
302              63:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 64 36 27 37 16 38 64 16 17 52 55 59
303              65:             TypeArray 51(HSOutput) 18
304              66:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 63 18
305    67(DSOutput):             TypeStruct 47(fvec4) 49(fvec3) 43(fvec2) 49(fvec3) 49(fvec3) 49(fvec3) 49(fvec3)
306              69:     11(int) Constant 57
307              70:     11(int) Constant 13
308              68:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 53 48 27 69 70 16 16 17
309              72:     11(int) Constant 58
310              71:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 56 50 27 72 58 16 16 17
311              74:     11(int) Constant 59
312              73:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 60 44 27 74 62 16 16 17
313              77:     11(int) Constant 60
314              78:     11(int) Constant 36
315              75:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 76 50 27 77 78 16 16 17
316              81:     11(int) Constant 61
317              82:     11(int) Constant 37
318              79:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 80 50 27 81 82 16 16 17
319              85:     11(int) Constant 62
320              83:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 84 50 27 85 58 16 16 17
321              88:     11(int) Constant 63
322              86:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 87 50 27 88 82 16 16 17
323              89:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 90 36 27 37 16 38 90 16 17 68 71 73 75 79 83 86
324              91:             TypeFunction 67(DSOutput) 40(ptr) 45(ptr) 65
325              92:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 8(DebugTypeFunction) 17 89 34 44 63
326              99:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 98 92 27 37 16 38 98 17 37
327             100:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 101 34 27 37 16 99 18 36
328             103:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 31(DebugExpression)
329             106:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 107 44 27 37 16 99 18 21
330             109:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 110 63 27 37 16 99 18 17
331             113:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 27 16 16 99
332             114:             TypePointer Function 67(DSOutput)
333             115:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 89 41 16
334             119:     11(int) Constant 70
335             117:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 118 89 27 119 16 113 18
336             123:    8(float) Constant 0
337             124:   47(fvec4) ConstantComposite 123 123 123 123
338             125:   49(fvec3) ConstantComposite 123 123 123
339             126:   43(fvec2) ConstantComposite 123 123
340             127:67(DSOutput) ConstantComposite 124 125 126 125 125 125 125
341             131:     11(int) Constant 71
342             129:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 130 44 27 131 16 113 18
343             134:             TypeInt 32 1
344             136:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 135 14 18 16
345             137:    134(int) Constant 0
346             138:    134(int) Constant 2
347             140:    134(int) Constant 1
348             142:             TypePointer Function 8(float)
349             143:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 10 41 16
350             151:     11(int) Constant 72
351             149:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 150 44 27 151 16 113 18
352             154:    134(int) Constant 3
353             163:     11(int) Constant 73
354             170:             TypePointer Function 49(fvec3)
355             171:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 50 41 16
356             175:     11(int) Constant 75
357             173:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 174 50 27 175 16 113 18
358             187:     11(int) Constant 76
359             185:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 186 50 27 187 16 113 18
360             198:     11(int) Constant 77
361             205:             TypePointer Function 47(fvec4)
362             206:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 48 41 16
363             210:     11(int) Constant 80
364             208:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 209 48 27 210 16 113 18
365             222:     11(int) Constant 81
366             220:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 221 48 27 222 16 113 18
367             234:     11(int) Constant 82
368             232:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 233 48 27 234 16 113 18
369             243:             TypeImage 8(float) 2D sampled format:Unknown
370             246:     11(int) Constant 84
371             248:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 0(DebugInfoNone)
372             244:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 245 36 27 246 16 38 247 248 17
373             249:             TypePointer UniformConstant 243
374             250:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 244 16 16
375251(displacementMapTexture):    249(ptr) Variable UniformConstant
376             254:     11(int) Constant 8
377             252:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 253 244 27 246 16 38 253 251(displacementMapTexture) 254
378             257:             TypeSampler
379             258:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 259 36 27 246 16 38 260 248 17
380             261:             TypePointer UniformConstant 257
381             262:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 258 16 16
382263(displacementMapSampler):    261(ptr) Variable UniformConstant
383             264:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 265 258 27 246 16 38 265 263(displacementMapSampler) 254
384             267:             TypeSampledImage 243
385             268:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 269 36 27 246 16 38 270 248 17
386             276:             TypeMatrix 47(fvec4) 4
387             278:             TypeBool
388             280:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 279 14 21 16
389             281:   278(bool) ConstantTrue
390             277:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 108(DebugTypeMatrix) 48 18 281
391             282:             TypeArray 47(fvec4) 15
392             283:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 48 15
393        284(UBO):             TypeStruct 276 276 47(fvec4) 282 8(float) 8(float) 43(fvec2) 8(float)
394             287:     11(int) Constant 28
395             288:     11(int) Constant 21
396             285:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 286 277 27 287 288 16 16 17
397             291:     11(int) Constant 29
398             292:     11(int) Constant 20
399             289:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 290 277 27 291 292 16 16 17
400             295:     11(int) Constant 30
401             296:     11(int) Constant 17
402             293:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 294 48 27 295 296 16 16 17
403             299:     11(int) Constant 22
404             297:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 298 283 27 62 299 16 16 17
405             302:     11(int) Constant 26
406             300:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 301 10 27 14 302 16 16 17
407             305:     11(int) Constant 33
408             303:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 304 10 27 305 302 16 16 17
409             308:     11(int) Constant 34
410             306:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 307 44 27 308 292 16 16 17
411             311:     11(int) Constant 27
412             309:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 310 10 27 58 311 16 16 17
413             312:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 313 36 27 246 16 38 313 16 17 285 289 293 297 300 303 306 309
414        314(ubo):             TypeStruct 284(UBO)
415             315:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 316 312 27 82 82 16 16 17
416             317:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 316 36 27 246 16 38 316 16 17 315
417             318:             TypePointer Uniform 314(ubo)
418             319:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 317 21 16
419             320:    318(ptr) Variable Uniform
420             321:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 322 317 27 246 16 38 322 320 254
421             323:    134(int) Constant 4
422             324:             TypePointer Uniform 8(float)
423             325:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 10 21 16
424             335:     11(int) Constant 86
425             336:             TypePointer Uniform 276
426             337:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 277 21 16
427             347:     11(int) Constant 89
428             351:             TypePointer Uniform 47(fvec4)
429             352:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 48 21 16
430             355:     11(int) Constant 90
431             363:    134(int) Constant 6
432             366:     11(int) Constant 91
433             369:    134(int) Constant 5
434             372:     11(int) Constant 92
435             380:     11(int) Constant 93
436             386:             TypePointer Input 19
437387(input.TessLevelOuter):    386(ptr) Variable Input
438             388:             TypePointer Input 8(float)
439             401:             TypePointer Input 22
440402(input.TessLevelInner):    401(ptr) Variable Input
441             410:             TypePointer Input 49(fvec3)
442  411(TessCoord):    410(ptr) Variable Input
443             416:             TypePointer Function 65
444             418:             TypeArray 47(fvec4) 18
445             419:             TypePointer Input 418
446  420(patch.Pos):    419(ptr) Variable Input
447             421:             TypePointer Input 47(fvec4)
448             425:             TypeArray 49(fvec3) 18
449             426:             TypePointer Input 425
450427(patch.Normal):    426(ptr) Variable Input
451             431:             TypeArray 43(fvec2) 18
452             432:             TypePointer Input 431
453   433(patch.UV):    432(ptr) Variable Input
454             434:             TypePointer Input 43(fvec2)
455             472:             TypePointer Output 47(fvec4)
456473(@entryPointOutput.Pos):    472(ptr) Variable Output
457             476:             TypePointer Output 49(fvec3)
458477(@entryPointOutput.Normal):    476(ptr) Variable Output
459             480:             TypePointer Output 43(fvec2)
460481(@entryPointOutput.UV):    480(ptr) Variable Output
461484(@entryPointOutput.ViewVec):    476(ptr) Variable Output
462487(@entryPointOutput.LightVec):    476(ptr) Variable Output
463490(@entryPointOutput.EyePos):    476(ptr) Variable Output
464493(@entryPointOutput.WorldPos):    476(ptr) Variable Output
465         6(main):           4 Function None 5
466               7:             Label
467      385(input):     40(ptr) Variable Function
468  409(TessCoord):     45(ptr) Variable Function
469      417(patch):    416(ptr) Variable Function
470465(flattenTemp):    114(ptr) Variable Function
471      467(param):     40(ptr) Variable Function
472      469(param):     45(ptr) Variable Function
473             389:    388(ptr) AccessChain 387(input.TessLevelOuter) 137
474             390:    8(float) Load 389
475             391:    142(ptr) AccessChain 385(input) 137 137
476                              Store 391 390
477             392:    388(ptr) AccessChain 387(input.TessLevelOuter) 140
478             393:    8(float) Load 392
479             394:    142(ptr) AccessChain 385(input) 137 140
480                              Store 394 393
481             395:    388(ptr) AccessChain 387(input.TessLevelOuter) 138
482             396:    8(float) Load 395
483             397:    142(ptr) AccessChain 385(input) 137 138
484                              Store 397 396
485             398:    388(ptr) AccessChain 387(input.TessLevelOuter) 154
486             399:    8(float) Load 398
487             400:    142(ptr) AccessChain 385(input) 137 154
488                              Store 400 399
489             403:    388(ptr) AccessChain 402(input.TessLevelInner) 137
490             404:    8(float) Load 403
491             405:    142(ptr) AccessChain 385(input) 140 137
492                              Store 405 404
493             406:    388(ptr) AccessChain 402(input.TessLevelInner) 140
494             407:    8(float) Load 406
495             408:    142(ptr) AccessChain 385(input) 140 140
496                              Store 408 407
497             412:   49(fvec3) Load 411(TessCoord)
498             413:    8(float) CompositeExtract 412 0
499             414:    8(float) CompositeExtract 412 1
500             415:   43(fvec2) CompositeConstruct 413 414
501                              Store 409(TessCoord) 415
502             422:    421(ptr) AccessChain 420(patch.Pos) 137
503             423:   47(fvec4) Load 422
504             424:    205(ptr) AccessChain 417(patch) 137 137
505                              Store 424 423
506             428:    410(ptr) AccessChain 427(patch.Normal) 137
507             429:   49(fvec3) Load 428
508             430:    170(ptr) AccessChain 417(patch) 137 140
509                              Store 430 429
510             435:    434(ptr) AccessChain 433(patch.UV) 137
511             436:   43(fvec2) Load 435
512             437:     45(ptr) AccessChain 417(patch) 137 138
513                              Store 437 436
514             438:    421(ptr) AccessChain 420(patch.Pos) 140
515             439:   47(fvec4) Load 438
516             440:    205(ptr) AccessChain 417(patch) 140 137
517                              Store 440 439
518             441:    410(ptr) AccessChain 427(patch.Normal) 140
519             442:   49(fvec3) Load 441
520             443:    170(ptr) AccessChain 417(patch) 140 140
521                              Store 443 442
522             444:    434(ptr) AccessChain 433(patch.UV) 140
523             445:   43(fvec2) Load 444
524             446:     45(ptr) AccessChain 417(patch) 140 138
525                              Store 446 445
526             447:    421(ptr) AccessChain 420(patch.Pos) 138
527             448:   47(fvec4) Load 447
528             449:    205(ptr) AccessChain 417(patch) 138 137
529                              Store 449 448
530             450:    410(ptr) AccessChain 427(patch.Normal) 138
531             451:   49(fvec3) Load 450
532             452:    170(ptr) AccessChain 417(patch) 138 140
533                              Store 452 451
534             453:    434(ptr) AccessChain 433(patch.UV) 138
535             454:   43(fvec2) Load 453
536             455:     45(ptr) AccessChain 417(patch) 138 138
537                              Store 455 454
538             456:    421(ptr) AccessChain 420(patch.Pos) 154
539             457:   47(fvec4) Load 456
540             458:    205(ptr) AccessChain 417(patch) 154 137
541                              Store 458 457
542             459:    410(ptr) AccessChain 427(patch.Normal) 154
543             460:   49(fvec3) Load 459
544             461:    170(ptr) AccessChain 417(patch) 154 140
545                              Store 461 460
546             462:    434(ptr) AccessChain 433(patch.UV) 154
547             463:   43(fvec2) Load 462
548             464:     45(ptr) AccessChain 417(patch) 154 138
549                              Store 464 463
550             466:          65 Load 417(patch)
551             468:24(ConstantsHSOutput) Load 385(input)
552                              Store 467(param) 468
553             470:   43(fvec2) Load 409(TessCoord)
554                              Store 469(param) 470
555             471:67(DSOutput) FunctionCall 96(@main(struct-ConstantsHSOutput-f1[4]-f1[2]1;vf2;struct-HSOutput-vf4-vf3-vf21[4];) 467(param) 469(param) 466
556                              Store 465(flattenTemp) 471
557             474:    205(ptr) AccessChain 465(flattenTemp) 137
558             475:   47(fvec4) Load 474
559                              Store 473(@entryPointOutput.Pos) 475
560             478:    170(ptr) AccessChain 465(flattenTemp) 140
561             479:   49(fvec3) Load 478
562                              Store 477(@entryPointOutput.Normal) 479
563             482:     45(ptr) AccessChain 465(flattenTemp) 138
564             483:   43(fvec2) Load 482
565                              Store 481(@entryPointOutput.UV) 483
566             485:    170(ptr) AccessChain 465(flattenTemp) 154
567             486:   49(fvec3) Load 485
568                              Store 484(@entryPointOutput.ViewVec) 486
569             488:    170(ptr) AccessChain 465(flattenTemp) 323
570             489:   49(fvec3) Load 488
571                              Store 487(@entryPointOutput.LightVec) 489
572             491:    170(ptr) AccessChain 465(flattenTemp) 369
573             492:   49(fvec3) Load 491
574                              Store 490(@entryPointOutput.EyePos) 492
575             494:    170(ptr) AccessChain 465(flattenTemp) 363
576             495:   49(fvec3) Load 494
577                              Store 493(@entryPointOutput.WorldPos) 495
578                              Return
579                              FunctionEnd
58096(@main(struct-ConstantsHSOutput-f1[4]-f1[2]1;vf2;struct-HSOutput-vf4-vf3-vf21[4];):67(DSOutput) Function None 91
581       93(input):     40(ptr) FunctionParameter
582   94(TessCoord):     45(ptr) FunctionParameter
583       95(patch):          65 FunctionParameter
584              97:             Label
585     116(output):    114(ptr) Variable Function
586        128(uv1):     45(ptr) Variable Function
587        148(uv2):     45(ptr) Variable Function
588         172(n1):    170(ptr) Variable Function
589         184(n2):    170(ptr) Variable Function
590       207(pos1):    205(ptr) Variable Function
591       219(pos2):    205(ptr) Variable Function
592        231(pos):    205(ptr) Variable Function
593             104:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 99
594             105:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 37 37 16 16
595             102:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 100 93(input) 103
596             108:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 106 94(TessCoord) 103
597             111:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 109 95(patch) 103
598             112:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 99 96(@main(struct-ConstantsHSOutput-f1[4]-f1[2]1;vf2;struct-HSOutput-vf4-vf3-vf21[4];)
599             121:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 113
600             122:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 119 119 16 16
601             120:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 117 116(output) 103
602                              Store 116(output) 127
603             133:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 131 131 16 16
604             132:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 129 128(uv1) 103
605             139:   43(fvec2) CompositeExtract 95(patch) 0 2
606             141:   43(fvec2) CompositeExtract 95(patch) 1 2
607             144:    142(ptr) AccessChain 94(TessCoord) 16
608             145:    8(float) Load 144
609             146:   43(fvec2) CompositeConstruct 145 145
610             147:   43(fvec2) ExtInst 3(GLSL.std.450) 46(FMix) 139 141 146
611                              Store 128(uv1) 147
612             153:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 151 151 16 16
613             152:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 149 148(uv2) 103
614             155:   43(fvec2) CompositeExtract 95(patch) 3 2
615             156:   43(fvec2) CompositeExtract 95(patch) 2 2
616             157:    142(ptr) AccessChain 94(TessCoord) 16
617             158:    8(float) Load 157
618             159:   43(fvec2) CompositeConstruct 158 158
619             160:   43(fvec2) ExtInst 3(GLSL.std.450) 46(FMix) 155 156 159
620                              Store 148(uv2) 160
621             162:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 163 163 16 16
622             161:   43(fvec2) Load 128(uv1)
623             164:   43(fvec2) Load 148(uv2)
624             165:    142(ptr) AccessChain 94(TessCoord) 36
625             166:    8(float) Load 165
626             167:   43(fvec2) CompositeConstruct 166 166
627             168:   43(fvec2) ExtInst 3(GLSL.std.450) 46(FMix) 161 164 167
628             169:     45(ptr) AccessChain 116(output) 138
629                              Store 169 168
630             177:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 175 175 16 16
631             176:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 173 172(n1) 103
632             178:   49(fvec3) CompositeExtract 95(patch) 0 1
633             179:   49(fvec3) CompositeExtract 95(patch) 1 1
634             180:    142(ptr) AccessChain 94(TessCoord) 16
635             181:    8(float) Load 180
636             182:   49(fvec3) CompositeConstruct 181 181 181
637             183:   49(fvec3) ExtInst 3(GLSL.std.450) 46(FMix) 178 179 182
638                              Store 172(n1) 183
639             189:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 187 187 16 16
640             188:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 185 184(n2) 103
641             190:   49(fvec3) CompositeExtract 95(patch) 3 1
642             191:   49(fvec3) CompositeExtract 95(patch) 2 1
643             192:    142(ptr) AccessChain 94(TessCoord) 16
644             193:    8(float) Load 192
645             194:   49(fvec3) CompositeConstruct 193 193 193
646             195:   49(fvec3) ExtInst 3(GLSL.std.450) 46(FMix) 190 191 194
647                              Store 184(n2) 195
648             197:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 198 198 16 16
649             196:   49(fvec3) Load 172(n1)
650             199:   49(fvec3) Load 184(n2)
651             200:    142(ptr) AccessChain 94(TessCoord) 36
652             201:    8(float) Load 200
653             202:   49(fvec3) CompositeConstruct 201 201 201
654             203:   49(fvec3) ExtInst 3(GLSL.std.450) 46(FMix) 196 199 202
655             204:    170(ptr) AccessChain 116(output) 140
656                              Store 204 203
657             212:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 210 210 16 16
658             211:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 208 207(pos1) 103
659             213:   47(fvec4) CompositeExtract 95(patch) 0 0
660             214:   47(fvec4) CompositeExtract 95(patch) 1 0
661             215:    142(ptr) AccessChain 94(TessCoord) 16
662             216:    8(float) Load 215
663             217:   47(fvec4) CompositeConstruct 216 216 216 216
664             218:   47(fvec4) ExtInst 3(GLSL.std.450) 46(FMix) 213 214 217
665                              Store 207(pos1) 218
666             224:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 222 222 16 16
667             223:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 220 219(pos2) 103
668             225:   47(fvec4) CompositeExtract 95(patch) 3 0
669             226:   47(fvec4) CompositeExtract 95(patch) 2 0
670             227:    142(ptr) AccessChain 94(TessCoord) 16
671             228:    8(float) Load 227
672             229:   47(fvec4) CompositeConstruct 228 228 228 228
673             230:   47(fvec4) ExtInst 3(GLSL.std.450) 46(FMix) 225 226 229
674                              Store 219(pos2) 230
675             236:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 234 234 16 16
676             235:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 232 231(pos) 103
677             237:   47(fvec4) Load 207(pos1)
678             238:   47(fvec4) Load 219(pos2)
679             239:    142(ptr) AccessChain 94(TessCoord) 36
680             240:    8(float) Load 239
681             241:   47(fvec4) CompositeConstruct 240 240 240 240
682             242:   47(fvec4) ExtInst 3(GLSL.std.450) 46(FMix) 237 238 241
683                              Store 231(pos) 242
684             256:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 246 246 16 16
685             255:         243 Load 251(displacementMapTexture)
686             266:         257 Load 263(displacementMapSampler)
687             271:         267 SampledImage 255 266
688             272:     45(ptr) AccessChain 116(output) 138
689             273:   43(fvec2) Load 272
690             274:   47(fvec4) ImageSampleExplicitLod 271 273 Lod 123
691             275:    8(float) CompositeExtract 274 0
692             326:    324(ptr) AccessChain 320 137 323
693             327:    8(float) Load 326
694             328:    8(float) FMul 275 327
695             329:    142(ptr) AccessChain 231(pos) 36
696             330:    8(float) Load 329
697             331:    8(float) FSub 330 328
698             332:    142(ptr) AccessChain 231(pos) 36
699                              Store 332 331
700             334:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 335 335 16 16
701             333:   47(fvec4) Load 231(pos)
702             338:    336(ptr) AccessChain 320 137 140
703             339:         276 Load 338
704             340:   47(fvec4) VectorTimesMatrix 333 339
705             341:    336(ptr) AccessChain 320 137 137
706             342:         276 Load 341
707             343:   47(fvec4) VectorTimesMatrix 340 342
708             344:    205(ptr) AccessChain 116(output) 137
709                              Store 344 343
710             346:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 347 347 16 16
711             345:   47(fvec4) Load 231(pos)
712             348:   49(fvec3) VectorShuffle 345 345 0 1 2
713             349:   49(fvec3) FNegate 348
714             350:    170(ptr) AccessChain 116(output) 154
715                              Store 350 349
716             354:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 355 355 16 16
717             353:    351(ptr) AccessChain 320 137 138
718             356:   47(fvec4) Load 353
719             357:   49(fvec3) VectorShuffle 356 356 0 1 2
720             358:    170(ptr) AccessChain 116(output) 154
721             359:   49(fvec3) Load 358
722             360:   49(fvec3) FAdd 357 359
723             361:   49(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 360
724             362:    170(ptr) AccessChain 116(output) 323
725                              Store 362 361
726             365:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 366 366 16 16
727             364:   47(fvec4) Load 231(pos)
728             367:   49(fvec3) VectorShuffle 364 364 0 1 2
729             368:    170(ptr) AccessChain 116(output) 363
730                              Store 368 367
731             371:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 372 372 16 16
732             370:   47(fvec4) Load 231(pos)
733             373:    336(ptr) AccessChain 320 137 140
734             374:         276 Load 373
735             375:   47(fvec4) VectorTimesMatrix 370 374
736             376:   49(fvec3) VectorShuffle 375 375 0 1 2
737             377:    170(ptr) AccessChain 116(output) 369
738                              Store 377 376
739             379:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 380 380 16 16
740             378:67(DSOutput) Load 116(output)
741                              ReturnValue 378
742                              FunctionEnd