blob: fab95f75ab15ed5bbed3cb93bb45f842e2e2ad5d [file] [log] [blame]
steve-lunarg5da1f032017-02-12 17:50:28 -07001hlsl.structbuffer.coherent.frag
John Kessenich6fa17642017-04-07 15:33:08 -06002Shader version: 500
steve-lunarg5da1f032017-02-12 17:50:28 -07003gl_FragCoord origin is upper left
40:? Sequence
John Kessenich71c100d2017-03-14 19:43:13 -060050:12 Function Definition: @main(u1; ( temp 4-component vector of float)
steve-lunarg5da1f032017-02-12 17:50:28 -070060:12 Function Parameters:
John Kessenich71c100d2017-03-14 19:43:13 -060070:12 'pos' ( in uint)
steve-lunarg5da1f032017-02-12 17:50:28 -070080:? Sequence
John Kessenich71c100d2017-03-14 19:43:13 -060090:13 move second child to first child ( temp float)
100:13 indirect index (layout( row_major std430) buffer float)
110:13 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of float)
120:13 'sbuf2' (layout( row_major std430) coherent buffer block{layout( row_major std430) buffer implicitly-sized array of float @data})
steve-lunarg5da1f032017-02-12 17:50:28 -0700130:13 Constant:
140:13 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -0600150:13 add ( temp uint)
160:13 'pos' ( in uint)
steve-lunarg5da1f032017-02-12 17:50:28 -0700170:13 Constant:
180:13 1 (const uint)
190:13 Constant:
200:13 42.000000
210:17 Sequence
John Kessenich71c100d2017-03-14 19:43:13 -0600220:17 move second child to first child ( temp uint)
230:17 'size' ( temp uint)
240:17 array length ( temp uint)
250:17 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of structure{ temp 3-component vector of float color, temp bool test})
260:17 'sbuf' (layout( row_major std430) coherent buffer block{layout( row_major std430) buffer implicitly-sized array of structure{ temp 3-component vector of float color, temp bool test} @data})
steve-lunarg5da1f032017-02-12 17:50:28 -0700270:17 Constant:
280:17 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -0600290:17 move second child to first child ( temp uint)
300:17 'stride' ( temp uint)
steve-lunarg5da1f032017-02-12 17:50:28 -0700310:17 Constant:
320:17 16 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -0600330:19 Test condition and select ( temp void)
steve-lunarg5da1f032017-02-12 17:50:28 -0700340:19 Condition
John Kessenich71c100d2017-03-14 19:43:13 -0600350:19 test: direct index for structure ( temp bool)
360:19 indirect index (layout( row_major std430) buffer structure{ temp 3-component vector of float color, temp bool test})
370:19 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of structure{ temp 3-component vector of float color, temp bool test})
380:19 'sbuf' (layout( row_major std430) coherent buffer block{layout( row_major std430) buffer implicitly-sized array of structure{ temp 3-component vector of float color, temp bool test} @data})
steve-lunarg5da1f032017-02-12 17:50:28 -0700390:19 Constant:
400:19 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -0600410:19 'pos' ( in uint)
steve-lunarg5da1f032017-02-12 17:50:28 -0700420:19 Constant:
430:19 1 (const int)
440:19 true case
450:20 Branch: Return with expression
John Kessenich71c100d2017-03-14 19:43:13 -0600460:? Construct vec4 ( temp 4-component vector of float)
470:20 add ( temp 3-component vector of float)
480:20 color: direct index for structure ( temp 3-component vector of float)
490:20 indirect index (layout( row_major std430) buffer structure{ temp 3-component vector of float color, temp bool test})
500:20 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of structure{ temp 3-component vector of float color, temp bool test})
510:20 'sbuf' (layout( row_major std430) coherent buffer block{layout( row_major std430) buffer implicitly-sized array of structure{ temp 3-component vector of float color, temp bool test} @data})
steve-lunarg5da1f032017-02-12 17:50:28 -0700520:20 Constant:
530:20 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -0600540:20 'pos' ( in uint)
steve-lunarg5da1f032017-02-12 17:50:28 -0700550:20 Constant:
560:20 0 (const int)
John Kessenich71c100d2017-03-14 19:43:13 -0600570:20 indirect index (layout( row_major std430) buffer float)
580:20 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of float)
590:20 'sbuf2' (layout( row_major std430) coherent buffer block{layout( row_major std430) buffer implicitly-sized array of float @data})
steve-lunarg5da1f032017-02-12 17:50:28 -0700600:20 Constant:
610:20 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -0600620:20 'pos' ( in uint)
steve-lunarg5da1f032017-02-12 17:50:28 -0700630:20 Constant:
640:20 0.000000
650:19 false case
660:22 Branch: Return with expression
John Kessenich71c100d2017-03-14 19:43:13 -0600670:22 Construct vec4 ( temp 4-component vector of float)
680:22 Convert uint to float ( temp float)
690:22 add ( temp uint)
700:22 'size' ( temp uint)
710:22 'stride' ( temp uint)
720:12 Function Definition: main( ( temp void)
steve-lunarg5da1f032017-02-12 17:50:28 -0700730:12 Function Parameters:
740:? Sequence
John Kessenich71c100d2017-03-14 19:43:13 -0600750:12 move second child to first child ( temp uint)
760:? 'pos' ( temp uint)
770:? 'pos' (layout( location=0) in uint)
780:12 move second child to first child ( temp 4-component vector of float)
790:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
800:12 Function Call: @main(u1; ( temp 4-component vector of float)
810:? 'pos' ( temp uint)
steve-lunarg5da1f032017-02-12 17:50:28 -0700820:? Linker Objects
John Kessenich71c100d2017-03-14 19:43:13 -0600830:? 'sbuf' (layout( row_major std430) coherent buffer block{layout( row_major std430) buffer implicitly-sized array of structure{ temp 3-component vector of float color, temp bool test} @data})
840:? 'sbuf2' (layout( row_major std430) coherent buffer block{layout( row_major std430) buffer implicitly-sized array of float @data})
850:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
860:? 'pos' (layout( location=0) in uint)
steve-lunarg5da1f032017-02-12 17:50:28 -070087
88
89Linked fragment stage:
90
91
John Kessenich6fa17642017-04-07 15:33:08 -060092Shader version: 500
steve-lunarg5da1f032017-02-12 17:50:28 -070093gl_FragCoord origin is upper left
940:? Sequence
John Kessenich71c100d2017-03-14 19:43:13 -0600950:12 Function Definition: @main(u1; ( temp 4-component vector of float)
steve-lunarg5da1f032017-02-12 17:50:28 -0700960:12 Function Parameters:
John Kessenich71c100d2017-03-14 19:43:13 -0600970:12 'pos' ( in uint)
steve-lunarg5da1f032017-02-12 17:50:28 -0700980:? Sequence
John Kessenich71c100d2017-03-14 19:43:13 -0600990:13 move second child to first child ( temp float)
1000:13 indirect index (layout( row_major std430) buffer float)
1010:13 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of float)
1020:13 'sbuf2' (layout( row_major std430) coherent buffer block{layout( row_major std430) buffer implicitly-sized array of float @data})
steve-lunarg5da1f032017-02-12 17:50:28 -07001030:13 Constant:
1040:13 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -06001050:13 add ( temp uint)
1060:13 'pos' ( in uint)
steve-lunarg5da1f032017-02-12 17:50:28 -07001070:13 Constant:
1080:13 1 (const uint)
1090:13 Constant:
1100:13 42.000000
1110:17 Sequence
John Kessenich71c100d2017-03-14 19:43:13 -06001120:17 move second child to first child ( temp uint)
1130:17 'size' ( temp uint)
1140:17 array length ( temp uint)
1150:17 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of structure{ temp 3-component vector of float color, temp bool test})
1160:17 'sbuf' (layout( row_major std430) coherent buffer block{layout( row_major std430) buffer implicitly-sized array of structure{ temp 3-component vector of float color, temp bool test} @data})
steve-lunarg5da1f032017-02-12 17:50:28 -07001170:17 Constant:
1180:17 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -06001190:17 move second child to first child ( temp uint)
1200:17 'stride' ( temp uint)
steve-lunarg5da1f032017-02-12 17:50:28 -07001210:17 Constant:
1220:17 16 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -06001230:19 Test condition and select ( temp void)
steve-lunarg5da1f032017-02-12 17:50:28 -07001240:19 Condition
John Kessenich71c100d2017-03-14 19:43:13 -06001250:19 test: direct index for structure ( temp bool)
1260:19 indirect index (layout( row_major std430) buffer structure{ temp 3-component vector of float color, temp bool test})
1270:19 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of structure{ temp 3-component vector of float color, temp bool test})
1280:19 'sbuf' (layout( row_major std430) coherent buffer block{layout( row_major std430) buffer implicitly-sized array of structure{ temp 3-component vector of float color, temp bool test} @data})
steve-lunarg5da1f032017-02-12 17:50:28 -07001290:19 Constant:
1300:19 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -06001310:19 'pos' ( in uint)
steve-lunarg5da1f032017-02-12 17:50:28 -07001320:19 Constant:
1330:19 1 (const int)
1340:19 true case
1350:20 Branch: Return with expression
John Kessenich71c100d2017-03-14 19:43:13 -06001360:? Construct vec4 ( temp 4-component vector of float)
1370:20 add ( temp 3-component vector of float)
1380:20 color: direct index for structure ( temp 3-component vector of float)
1390:20 indirect index (layout( row_major std430) buffer structure{ temp 3-component vector of float color, temp bool test})
1400:20 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of structure{ temp 3-component vector of float color, temp bool test})
1410:20 'sbuf' (layout( row_major std430) coherent buffer block{layout( row_major std430) buffer implicitly-sized array of structure{ temp 3-component vector of float color, temp bool test} @data})
steve-lunarg5da1f032017-02-12 17:50:28 -07001420:20 Constant:
1430:20 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -06001440:20 'pos' ( in uint)
steve-lunarg5da1f032017-02-12 17:50:28 -07001450:20 Constant:
1460:20 0 (const int)
John Kessenich71c100d2017-03-14 19:43:13 -06001470:20 indirect index (layout( row_major std430) buffer float)
1480:20 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of float)
1490:20 'sbuf2' (layout( row_major std430) coherent buffer block{layout( row_major std430) buffer implicitly-sized array of float @data})
steve-lunarg5da1f032017-02-12 17:50:28 -07001500:20 Constant:
1510:20 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -06001520:20 'pos' ( in uint)
steve-lunarg5da1f032017-02-12 17:50:28 -07001530:20 Constant:
1540:20 0.000000
1550:19 false case
1560:22 Branch: Return with expression
John Kessenich71c100d2017-03-14 19:43:13 -06001570:22 Construct vec4 ( temp 4-component vector of float)
1580:22 Convert uint to float ( temp float)
1590:22 add ( temp uint)
1600:22 'size' ( temp uint)
1610:22 'stride' ( temp uint)
1620:12 Function Definition: main( ( temp void)
steve-lunarg5da1f032017-02-12 17:50:28 -07001630:12 Function Parameters:
1640:? Sequence
John Kessenich71c100d2017-03-14 19:43:13 -06001650:12 move second child to first child ( temp uint)
1660:? 'pos' ( temp uint)
1670:? 'pos' (layout( location=0) in uint)
1680:12 move second child to first child ( temp 4-component vector of float)
1690:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
1700:12 Function Call: @main(u1; ( temp 4-component vector of float)
1710:? 'pos' ( temp uint)
steve-lunarg5da1f032017-02-12 17:50:28 -07001720:? Linker Objects
John Kessenich71c100d2017-03-14 19:43:13 -06001730:? 'sbuf' (layout( row_major std430) coherent buffer block{layout( row_major std430) buffer implicitly-sized array of structure{ temp 3-component vector of float color, temp bool test} @data})
1740:? 'sbuf2' (layout( row_major std430) coherent buffer block{layout( row_major std430) buffer implicitly-sized array of float @data})
1750:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
1760:? 'pos' (layout( location=0) in uint)
steve-lunarg5da1f032017-02-12 17:50:28 -0700177
178// Module Version 10000
179// Generated by (magic number): 80001
180// Id's are bound by 78
181
182 Capability Shader
183 1: ExtInstImport "GLSL.std.450"
184 MemoryModel Logical GLSL450
185 EntryPoint Fragment 4 "main" 71 74
186 ExecutionMode 4 OriginUpperLeft
John Kessenich6fa17642017-04-07 15:33:08 -0600187 Source HLSL 500
steve-lunarg5da1f032017-02-12 17:50:28 -0700188 Name 4 "main"
189 Name 12 "@main(u1;"
190 Name 11 "pos"
191 Name 15 "sbuf2"
steve-lunargdd8287a2017-02-23 18:04:12 -0700192 MemberName 15(sbuf2) 0 "@data"
193 Name 17 "sbuf2"
steve-lunarg5da1f032017-02-12 17:50:28 -0700194 Name 26 "size"
195 Name 28 "sb_t"
196 MemberName 28(sb_t) 0 "color"
197 MemberName 28(sb_t) 1 "test"
198 Name 30 "sbuf"
steve-lunargdd8287a2017-02-23 18:04:12 -0700199 MemberName 30(sbuf) 0 "@data"
200 Name 32 "sbuf"
steve-lunarg5da1f032017-02-12 17:50:28 -0700201 Name 34 "stride"
202 Name 69 "pos"
203 Name 71 "pos"
204 Name 74 "@entryPointOutput"
205 Name 75 "param"
206 Decorate 14 ArrayStride 4
207 MemberDecorate 15(sbuf2) 0 Coherent
208 MemberDecorate 15(sbuf2) 0 Offset 0
209 Decorate 15(sbuf2) BufferBlock
steve-lunargdd8287a2017-02-23 18:04:12 -0700210 Decorate 17(sbuf2) DescriptorSet 0
steve-lunarg5da1f032017-02-12 17:50:28 -0700211 MemberDecorate 28(sb_t) 0 Coherent
212 MemberDecorate 28(sb_t) 0 Offset 0
213 MemberDecorate 28(sb_t) 1 Coherent
214 MemberDecorate 28(sb_t) 1 Offset 12
215 Decorate 29 ArrayStride 16
216 MemberDecorate 30(sbuf) 0 Coherent
217 MemberDecorate 30(sbuf) 0 Offset 0
218 Decorate 30(sbuf) BufferBlock
steve-lunargdd8287a2017-02-23 18:04:12 -0700219 Decorate 32(sbuf) DescriptorSet 0
steve-lunarg5da1f032017-02-12 17:50:28 -0700220 Decorate 71(pos) Location 0
221 Decorate 74(@entryPointOutput) Location 0
222 2: TypeVoid
223 3: TypeFunction 2
224 6: TypeInt 32 0
225 7: TypePointer Function 6(int)
226 8: TypeFloat 32
227 9: TypeVector 8(float) 4
228 10: TypeFunction 9(fvec4) 7(ptr)
229 14: TypeRuntimeArray 8(float)
230 15(sbuf2): TypeStruct 14
231 16: TypePointer Uniform 15(sbuf2)
steve-lunargdd8287a2017-02-23 18:04:12 -0700232 17(sbuf2): 16(ptr) Variable Uniform
steve-lunarg5da1f032017-02-12 17:50:28 -0700233 18: TypeInt 32 1
234 19: 18(int) Constant 0
235 21: 6(int) Constant 1
236 23: 8(float) Constant 1109917696
237 24: TypePointer Uniform 8(float)
238 27: TypeVector 8(float) 3
239 28(sb_t): TypeStruct 27(fvec3) 6(int)
240 29: TypeRuntimeArray 28(sb_t)
241 30(sbuf): TypeStruct 29
242 31: TypePointer Uniform 30(sbuf)
steve-lunargdd8287a2017-02-23 18:04:12 -0700243 32(sbuf): 31(ptr) Variable Uniform
steve-lunarg5da1f032017-02-12 17:50:28 -0700244 35: 6(int) Constant 16
245 37: 18(int) Constant 1
246 38: TypePointer Uniform 6(int)
247 41: TypeBool
248 42: 6(int) Constant 0
249 47: TypePointer Uniform 27(fvec3)
250 55: 8(float) Constant 0
251 70: TypePointer Input 6(int)
252 71(pos): 70(ptr) Variable Input
253 73: TypePointer Output 9(fvec4)
25474(@entryPointOutput): 73(ptr) Variable Output
255 4(main): 2 Function None 3
256 5: Label
257 69(pos): 7(ptr) Variable Function
258 75(param): 7(ptr) Variable Function
259 72: 6(int) Load 71(pos)
260 Store 69(pos) 72
261 76: 6(int) Load 69(pos)
262 Store 75(param) 76
263 77: 9(fvec4) FunctionCall 12(@main(u1;) 75(param)
264 Store 74(@entryPointOutput) 77
265 Return
266 FunctionEnd
267 12(@main(u1;): 9(fvec4) Function None 10
268 11(pos): 7(ptr) FunctionParameter
269 13: Label
270 26(size): 7(ptr) Variable Function
271 34(stride): 7(ptr) Variable Function
272 20: 6(int) Load 11(pos)
273 22: 6(int) IAdd 20 21
steve-lunargdd8287a2017-02-23 18:04:12 -0700274 25: 24(ptr) AccessChain 17(sbuf2) 19 22
steve-lunarg5da1f032017-02-12 17:50:28 -0700275 Store 25 23
steve-lunargdd8287a2017-02-23 18:04:12 -0700276 33: 18(int) ArrayLength 32(sbuf) 0
steve-lunarg5da1f032017-02-12 17:50:28 -0700277 Store 26(size) 33
278 Store 34(stride) 35
279 36: 6(int) Load 11(pos)
steve-lunargdd8287a2017-02-23 18:04:12 -0700280 39: 38(ptr) AccessChain 32(sbuf) 19 36 37
steve-lunarg5da1f032017-02-12 17:50:28 -0700281 40: 6(int) Load 39
282 43: 41(bool) INotEqual 40 42
283 SelectionMerge 45 None
284 BranchConditional 43 44 61
285 44: Label
286 46: 6(int) Load 11(pos)
steve-lunargdd8287a2017-02-23 18:04:12 -0700287 48: 47(ptr) AccessChain 32(sbuf) 19 46 19
steve-lunarg5da1f032017-02-12 17:50:28 -0700288 49: 27(fvec3) Load 48
289 50: 6(int) Load 11(pos)
steve-lunargdd8287a2017-02-23 18:04:12 -0700290 51: 24(ptr) AccessChain 17(sbuf2) 19 50
steve-lunarg5da1f032017-02-12 17:50:28 -0700291 52: 8(float) Load 51
292 53: 27(fvec3) CompositeConstruct 52 52 52
293 54: 27(fvec3) FAdd 49 53
294 56: 8(float) CompositeExtract 54 0
295 57: 8(float) CompositeExtract 54 1
296 58: 8(float) CompositeExtract 54 2
297 59: 9(fvec4) CompositeConstruct 56 57 58 55
298 ReturnValue 59
299 61: Label
300 62: 6(int) Load 26(size)
301 63: 6(int) Load 34(stride)
302 64: 6(int) IAdd 62 63
303 65: 8(float) ConvertUToF 64
304 66: 9(fvec4) CompositeConstruct 65 65 65 65
305 ReturnValue 66
306 45: Label
307 68: 9(fvec4) Undef
308 ReturnValue 68
309 FunctionEnd