blob: d78f77ed33180093023d6ab44a4b9bdc98db89f4 [file] [log] [blame]
steve-lunarg5da1f032017-02-12 17:50:28 -07001hlsl.structbuffer.atomics.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:5 Function Definition: @main(u1; ( temp 4-component vector of float)
steve-lunarg5da1f032017-02-12 17:50:28 -070060:5 Function Parameters:
John Kessenich71c100d2017-03-14 19:43:13 -060070:5 'pos' ( in uint)
steve-lunarg5da1f032017-02-12 17:50:28 -070080:? Sequence
danginsburg5a69b672018-04-13 09:51:22 -040090:8 AtomicAdd ( temp uint)
John Kessenich71c100d2017-03-14 19:43:13 -0600100:8 indirect index (layout( row_major std430) buffer uint)
John Kessenich1c3ab272018-03-25 11:46:06 -0600110:8 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
120:8 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
steve-lunarg5da1f032017-02-12 17:50:28 -0700130:8 Constant:
140:8 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -0600150:8 right-shift ( temp int)
steve-lunarg5da1f032017-02-12 17:50:28 -0700160:8 Constant:
170:8 8 (const int)
180:8 Constant:
190:8 2 (const int)
200:8 Constant:
210:8 1 (const int)
John Kessenich71c100d2017-03-14 19:43:13 -0600220:9 move second child to first child ( temp uint)
230:9 'u' ( temp uint)
240:9 AtomicAdd ( temp uint)
250:9 indirect index (layout( row_major std430) buffer uint)
John Kessenich1c3ab272018-03-25 11:46:06 -0600260:9 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
270:9 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
steve-lunarg5da1f032017-02-12 17:50:28 -0700280:9 Constant:
290:9 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -0600300:9 right-shift ( temp int)
steve-lunarg5da1f032017-02-12 17:50:28 -0700310:9 Constant:
320:9 8 (const int)
330:9 Constant:
340:9 2 (const int)
350:9 Constant:
360:9 1 (const int)
danginsburg5a69b672018-04-13 09:51:22 -0400370:10 AtomicAnd ( temp uint)
John Kessenich71c100d2017-03-14 19:43:13 -0600380:10 indirect index (layout( row_major std430) buffer uint)
John Kessenich1c3ab272018-03-25 11:46:06 -0600390:10 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
400:10 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
steve-lunarg5da1f032017-02-12 17:50:28 -0700410:10 Constant:
420:10 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -0600430:10 right-shift ( temp int)
steve-lunarg5da1f032017-02-12 17:50:28 -0700440:10 Constant:
450:10 8 (const int)
460:10 Constant:
470:10 2 (const int)
480:10 Constant:
490:10 1 (const int)
John Kessenich71c100d2017-03-14 19:43:13 -0600500:11 move second child to first child ( temp uint)
510:11 'u' ( temp uint)
520:11 AtomicAnd ( temp uint)
530:11 indirect index (layout( row_major std430) buffer uint)
John Kessenich1c3ab272018-03-25 11:46:06 -0600540:11 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
550:11 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
steve-lunarg5da1f032017-02-12 17:50:28 -0700560:11 Constant:
570:11 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -0600580:11 right-shift ( temp int)
steve-lunarg5da1f032017-02-12 17:50:28 -0700590:11 Constant:
600:11 8 (const int)
610:11 Constant:
620:11 2 (const int)
630:11 Constant:
640:11 1 (const int)
John Kessenich71c100d2017-03-14 19:43:13 -0600650:12 move second child to first child ( temp uint)
660:12 'u' ( temp uint)
670:12 Convert int to uint ( temp uint)
680:12 AtomicCompSwap ( temp int)
690:12 indirect index (layout( row_major std430) buffer uint)
John Kessenich1c3ab272018-03-25 11:46:06 -0600700:12 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
710:12 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
steve-lunarg5da1f032017-02-12 17:50:28 -0700720:12 Constant:
730:12 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -0600740:12 right-shift ( temp int)
steve-lunarg5da1f032017-02-12 17:50:28 -0700750:12 Constant:
760:12 8 (const int)
770:12 Constant:
780:12 2 (const int)
790:12 Constant:
800:12 1 (const int)
810:12 Constant:
820:12 2 (const int)
John Kessenich71c100d2017-03-14 19:43:13 -0600830:14 move second child to first child ( temp uint)
840:14 'u' ( temp uint)
850:14 AtomicExchange ( temp uint)
860:14 indirect index (layout( row_major std430) buffer uint)
John Kessenich1c3ab272018-03-25 11:46:06 -0600870:14 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
880:14 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
steve-lunarg5da1f032017-02-12 17:50:28 -0700890:14 Constant:
900:14 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -0600910:14 right-shift ( temp int)
steve-lunarg5da1f032017-02-12 17:50:28 -0700920:14 Constant:
930:14 8 (const int)
940:14 Constant:
950:14 2 (const int)
960:14 Constant:
970:14 1 (const int)
danginsburg5a69b672018-04-13 09:51:22 -0400980:15 AtomicMax ( temp uint)
John Kessenich71c100d2017-03-14 19:43:13 -0600990:15 indirect index (layout( row_major std430) buffer uint)
John Kessenich1c3ab272018-03-25 11:46:06 -06001000:15 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
1010:15 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
steve-lunarg5da1f032017-02-12 17:50:28 -07001020:15 Constant:
1030:15 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -06001040:15 right-shift ( temp int)
steve-lunarg5da1f032017-02-12 17:50:28 -07001050:15 Constant:
1060:15 8 (const int)
1070:15 Constant:
1080:15 2 (const int)
1090:15 Constant:
1100:15 1 (const int)
John Kessenich71c100d2017-03-14 19:43:13 -06001110:16 move second child to first child ( temp uint)
1120:16 'u' ( temp uint)
1130:16 AtomicMax ( temp uint)
1140:16 indirect index (layout( row_major std430) buffer uint)
John Kessenich1c3ab272018-03-25 11:46:06 -06001150:16 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
1160:16 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
steve-lunarg5da1f032017-02-12 17:50:28 -07001170:16 Constant:
1180:16 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -06001190:16 right-shift ( temp int)
steve-lunarg5da1f032017-02-12 17:50:28 -07001200:16 Constant:
1210:16 8 (const int)
1220:16 Constant:
1230:16 2 (const int)
1240:16 Constant:
1250:16 1 (const int)
danginsburg5a69b672018-04-13 09:51:22 -04001260:17 AtomicMin ( temp uint)
John Kessenich71c100d2017-03-14 19:43:13 -06001270:17 indirect index (layout( row_major std430) buffer uint)
John Kessenich1c3ab272018-03-25 11:46:06 -06001280:17 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
1290:17 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
steve-lunarg5da1f032017-02-12 17:50:28 -07001300:17 Constant:
1310:17 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -06001320:17 right-shift ( temp int)
steve-lunarg5da1f032017-02-12 17:50:28 -07001330:17 Constant:
1340:17 8 (const int)
1350:17 Constant:
1360:17 2 (const int)
1370:17 Constant:
1380:17 1 (const int)
John Kessenich71c100d2017-03-14 19:43:13 -06001390:18 move second child to first child ( temp uint)
1400:18 'u' ( temp uint)
1410:18 AtomicMin ( temp uint)
1420:18 indirect index (layout( row_major std430) buffer uint)
John Kessenich1c3ab272018-03-25 11:46:06 -06001430:18 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
1440:18 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
steve-lunarg5da1f032017-02-12 17:50:28 -07001450:18 Constant:
1460:18 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -06001470:18 right-shift ( temp int)
steve-lunarg5da1f032017-02-12 17:50:28 -07001480:18 Constant:
1490:18 8 (const int)
1500:18 Constant:
1510:18 2 (const int)
1520:18 Constant:
1530:18 1 (const int)
danginsburg5a69b672018-04-13 09:51:22 -04001540:19 AtomicOr ( temp uint)
John Kessenich71c100d2017-03-14 19:43:13 -06001550:19 indirect index (layout( row_major std430) buffer uint)
John Kessenich1c3ab272018-03-25 11:46:06 -06001560:19 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
1570:19 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
steve-lunarg5da1f032017-02-12 17:50:28 -07001580:19 Constant:
1590:19 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -06001600:19 right-shift ( temp int)
steve-lunarg5da1f032017-02-12 17:50:28 -07001610:19 Constant:
1620:19 8 (const int)
1630:19 Constant:
1640:19 2 (const int)
1650:19 Constant:
1660:19 1 (const int)
John Kessenich71c100d2017-03-14 19:43:13 -06001670:20 move second child to first child ( temp uint)
1680:20 'u' ( temp uint)
1690:20 AtomicOr ( temp uint)
1700:20 indirect index (layout( row_major std430) buffer uint)
John Kessenich1c3ab272018-03-25 11:46:06 -06001710:20 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
1720:20 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
steve-lunarg5da1f032017-02-12 17:50:28 -07001730:20 Constant:
1740:20 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -06001750:20 right-shift ( temp int)
steve-lunarg5da1f032017-02-12 17:50:28 -07001760:20 Constant:
1770:20 8 (const int)
1780:20 Constant:
1790:20 2 (const int)
1800:20 Constant:
1810:20 1 (const int)
danginsburg5a69b672018-04-13 09:51:22 -04001820:21 AtomicXor ( temp uint)
John Kessenich71c100d2017-03-14 19:43:13 -06001830:21 indirect index (layout( row_major std430) buffer uint)
John Kessenich1c3ab272018-03-25 11:46:06 -06001840:21 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
1850:21 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
steve-lunarg5da1f032017-02-12 17:50:28 -07001860:21 Constant:
1870:21 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -06001880:21 right-shift ( temp int)
steve-lunarg5da1f032017-02-12 17:50:28 -07001890:21 Constant:
1900:21 8 (const int)
1910:21 Constant:
1920:21 2 (const int)
1930:21 Constant:
1940:21 1 (const int)
John Kessenich71c100d2017-03-14 19:43:13 -06001950:22 move second child to first child ( temp uint)
1960:22 'u' ( temp uint)
1970:22 AtomicXor ( temp uint)
1980:22 indirect index (layout( row_major std430) buffer uint)
John Kessenich1c3ab272018-03-25 11:46:06 -06001990:22 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
2000:22 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
steve-lunarg5da1f032017-02-12 17:50:28 -07002010:22 Constant:
2020:22 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -06002030:22 right-shift ( temp int)
steve-lunarg5da1f032017-02-12 17:50:28 -07002040:22 Constant:
2050:22 8 (const int)
2060:22 Constant:
2070:22 2 (const int)
2080:22 Constant:
2090:22 1 (const int)
2100:24 Branch: Return with expression
John Kessenich71c100d2017-03-14 19:43:13 -06002110:24 Construct vec4 ( temp 4-component vector of float)
2120:24 Convert uint to float ( temp float)
2130:24 indirect index (layout( row_major std430) buffer uint)
John Kessenich1c3ab272018-03-25 11:46:06 -06002140:24 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
2150:24 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
steve-lunarg5da1f032017-02-12 17:50:28 -07002160:24 Constant:
2170:24 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -06002180:24 right-shift ( temp int)
2190:24 'pos' ( in uint)
steve-lunarg5da1f032017-02-12 17:50:28 -07002200:24 Constant:
2210:24 2 (const int)
John Kessenich71c100d2017-03-14 19:43:13 -06002220:5 Function Definition: main( ( temp void)
steve-lunarg5da1f032017-02-12 17:50:28 -07002230:5 Function Parameters:
2240:? Sequence
John Kessenich71c100d2017-03-14 19:43:13 -06002250:5 move second child to first child ( temp uint)
2260:? 'pos' ( temp uint)
John Kessenich54596ff2017-06-20 03:20:59 -06002270:? 'pos' (layout( location=0) flat in uint)
John Kessenich71c100d2017-03-14 19:43:13 -06002280:5 move second child to first child ( temp 4-component vector of float)
2290:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
2300:5 Function Call: @main(u1; ( temp 4-component vector of float)
2310:? 'pos' ( temp uint)
steve-lunarg5da1f032017-02-12 17:50:28 -07002320:? Linker Objects
John Kessenich1c3ab272018-03-25 11:46:06 -06002330:? 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
John Kessenich71c100d2017-03-14 19:43:13 -06002340:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
John Kessenich54596ff2017-06-20 03:20:59 -06002350:? 'pos' (layout( location=0) flat in uint)
steve-lunarg5da1f032017-02-12 17:50:28 -0700236
237
238Linked fragment stage:
239
240
John Kessenich6fa17642017-04-07 15:33:08 -0600241Shader version: 500
steve-lunarg5da1f032017-02-12 17:50:28 -0700242gl_FragCoord origin is upper left
2430:? Sequence
John Kessenich71c100d2017-03-14 19:43:13 -06002440:5 Function Definition: @main(u1; ( temp 4-component vector of float)
steve-lunarg5da1f032017-02-12 17:50:28 -07002450:5 Function Parameters:
John Kessenich71c100d2017-03-14 19:43:13 -06002460:5 'pos' ( in uint)
steve-lunarg5da1f032017-02-12 17:50:28 -07002470:? Sequence
danginsburg5a69b672018-04-13 09:51:22 -04002480:8 AtomicAdd ( temp uint)
John Kessenich71c100d2017-03-14 19:43:13 -06002490:8 indirect index (layout( row_major std430) buffer uint)
John Kessenich1c3ab272018-03-25 11:46:06 -06002500:8 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
2510:8 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
steve-lunarg5da1f032017-02-12 17:50:28 -07002520:8 Constant:
2530:8 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -06002540:8 right-shift ( temp int)
steve-lunarg5da1f032017-02-12 17:50:28 -07002550:8 Constant:
2560:8 8 (const int)
2570:8 Constant:
2580:8 2 (const int)
2590:8 Constant:
2600:8 1 (const int)
John Kessenich71c100d2017-03-14 19:43:13 -06002610:9 move second child to first child ( temp uint)
2620:9 'u' ( temp uint)
2630:9 AtomicAdd ( temp uint)
2640:9 indirect index (layout( row_major std430) buffer uint)
John Kessenich1c3ab272018-03-25 11:46:06 -06002650:9 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
2660:9 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
steve-lunarg5da1f032017-02-12 17:50:28 -07002670:9 Constant:
2680:9 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -06002690:9 right-shift ( temp int)
steve-lunarg5da1f032017-02-12 17:50:28 -07002700:9 Constant:
2710:9 8 (const int)
2720:9 Constant:
2730:9 2 (const int)
2740:9 Constant:
2750:9 1 (const int)
danginsburg5a69b672018-04-13 09:51:22 -04002760:10 AtomicAnd ( temp uint)
John Kessenich71c100d2017-03-14 19:43:13 -06002770:10 indirect index (layout( row_major std430) buffer uint)
John Kessenich1c3ab272018-03-25 11:46:06 -06002780:10 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
2790:10 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
steve-lunarg5da1f032017-02-12 17:50:28 -07002800:10 Constant:
2810:10 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -06002820:10 right-shift ( temp int)
steve-lunarg5da1f032017-02-12 17:50:28 -07002830:10 Constant:
2840:10 8 (const int)
2850:10 Constant:
2860:10 2 (const int)
2870:10 Constant:
2880:10 1 (const int)
John Kessenich71c100d2017-03-14 19:43:13 -06002890:11 move second child to first child ( temp uint)
2900:11 'u' ( temp uint)
2910:11 AtomicAnd ( temp uint)
2920:11 indirect index (layout( row_major std430) buffer uint)
John Kessenich1c3ab272018-03-25 11:46:06 -06002930:11 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
2940:11 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
steve-lunarg5da1f032017-02-12 17:50:28 -07002950:11 Constant:
2960:11 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -06002970:11 right-shift ( temp int)
steve-lunarg5da1f032017-02-12 17:50:28 -07002980:11 Constant:
2990:11 8 (const int)
3000:11 Constant:
3010:11 2 (const int)
3020:11 Constant:
3030:11 1 (const int)
John Kessenich71c100d2017-03-14 19:43:13 -06003040:12 move second child to first child ( temp uint)
3050:12 'u' ( temp uint)
3060:12 Convert int to uint ( temp uint)
3070:12 AtomicCompSwap ( temp int)
3080:12 indirect index (layout( row_major std430) buffer uint)
John Kessenich1c3ab272018-03-25 11:46:06 -06003090:12 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
3100:12 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
steve-lunarg5da1f032017-02-12 17:50:28 -07003110:12 Constant:
3120:12 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -06003130:12 right-shift ( temp int)
steve-lunarg5da1f032017-02-12 17:50:28 -07003140:12 Constant:
3150:12 8 (const int)
3160:12 Constant:
3170:12 2 (const int)
3180:12 Constant:
3190:12 1 (const int)
3200:12 Constant:
3210:12 2 (const int)
John Kessenich71c100d2017-03-14 19:43:13 -06003220:14 move second child to first child ( temp uint)
3230:14 'u' ( temp uint)
3240:14 AtomicExchange ( temp uint)
3250:14 indirect index (layout( row_major std430) buffer uint)
John Kessenich1c3ab272018-03-25 11:46:06 -06003260:14 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
3270:14 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
steve-lunarg5da1f032017-02-12 17:50:28 -07003280:14 Constant:
3290:14 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -06003300:14 right-shift ( temp int)
steve-lunarg5da1f032017-02-12 17:50:28 -07003310:14 Constant:
3320:14 8 (const int)
3330:14 Constant:
3340:14 2 (const int)
3350:14 Constant:
3360:14 1 (const int)
danginsburg5a69b672018-04-13 09:51:22 -04003370:15 AtomicMax ( temp uint)
John Kessenich71c100d2017-03-14 19:43:13 -06003380:15 indirect index (layout( row_major std430) buffer uint)
John Kessenich1c3ab272018-03-25 11:46:06 -06003390:15 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
3400:15 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
steve-lunarg5da1f032017-02-12 17:50:28 -07003410:15 Constant:
3420:15 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -06003430:15 right-shift ( temp int)
steve-lunarg5da1f032017-02-12 17:50:28 -07003440:15 Constant:
3450:15 8 (const int)
3460:15 Constant:
3470:15 2 (const int)
3480:15 Constant:
3490:15 1 (const int)
John Kessenich71c100d2017-03-14 19:43:13 -06003500:16 move second child to first child ( temp uint)
3510:16 'u' ( temp uint)
3520:16 AtomicMax ( temp uint)
3530:16 indirect index (layout( row_major std430) buffer uint)
John Kessenich1c3ab272018-03-25 11:46:06 -06003540:16 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
3550:16 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
steve-lunarg5da1f032017-02-12 17:50:28 -07003560:16 Constant:
3570:16 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -06003580:16 right-shift ( temp int)
steve-lunarg5da1f032017-02-12 17:50:28 -07003590:16 Constant:
3600:16 8 (const int)
3610:16 Constant:
3620:16 2 (const int)
3630:16 Constant:
3640:16 1 (const int)
danginsburg5a69b672018-04-13 09:51:22 -04003650:17 AtomicMin ( temp uint)
John Kessenich71c100d2017-03-14 19:43:13 -06003660:17 indirect index (layout( row_major std430) buffer uint)
John Kessenich1c3ab272018-03-25 11:46:06 -06003670:17 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
3680:17 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
steve-lunarg5da1f032017-02-12 17:50:28 -07003690:17 Constant:
3700:17 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -06003710:17 right-shift ( temp int)
steve-lunarg5da1f032017-02-12 17:50:28 -07003720:17 Constant:
3730:17 8 (const int)
3740:17 Constant:
3750:17 2 (const int)
3760:17 Constant:
3770:17 1 (const int)
John Kessenich71c100d2017-03-14 19:43:13 -06003780:18 move second child to first child ( temp uint)
3790:18 'u' ( temp uint)
3800:18 AtomicMin ( temp uint)
3810:18 indirect index (layout( row_major std430) buffer uint)
John Kessenich1c3ab272018-03-25 11:46:06 -06003820:18 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
3830:18 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
steve-lunarg5da1f032017-02-12 17:50:28 -07003840:18 Constant:
3850:18 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -06003860:18 right-shift ( temp int)
steve-lunarg5da1f032017-02-12 17:50:28 -07003870:18 Constant:
3880:18 8 (const int)
3890:18 Constant:
3900:18 2 (const int)
3910:18 Constant:
3920:18 1 (const int)
danginsburg5a69b672018-04-13 09:51:22 -04003930:19 AtomicOr ( temp uint)
John Kessenich71c100d2017-03-14 19:43:13 -06003940:19 indirect index (layout( row_major std430) buffer uint)
John Kessenich1c3ab272018-03-25 11:46:06 -06003950:19 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
3960:19 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
steve-lunarg5da1f032017-02-12 17:50:28 -07003970:19 Constant:
3980:19 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -06003990:19 right-shift ( temp int)
steve-lunarg5da1f032017-02-12 17:50:28 -07004000:19 Constant:
4010:19 8 (const int)
4020:19 Constant:
4030:19 2 (const int)
4040:19 Constant:
4050:19 1 (const int)
John Kessenich71c100d2017-03-14 19:43:13 -06004060:20 move second child to first child ( temp uint)
4070:20 'u' ( temp uint)
4080:20 AtomicOr ( temp uint)
4090:20 indirect index (layout( row_major std430) buffer uint)
John Kessenich1c3ab272018-03-25 11:46:06 -06004100:20 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
4110:20 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
steve-lunarg5da1f032017-02-12 17:50:28 -07004120:20 Constant:
4130:20 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -06004140:20 right-shift ( temp int)
steve-lunarg5da1f032017-02-12 17:50:28 -07004150:20 Constant:
4160:20 8 (const int)
4170:20 Constant:
4180:20 2 (const int)
4190:20 Constant:
4200:20 1 (const int)
danginsburg5a69b672018-04-13 09:51:22 -04004210:21 AtomicXor ( temp uint)
John Kessenich71c100d2017-03-14 19:43:13 -06004220:21 indirect index (layout( row_major std430) buffer uint)
John Kessenich1c3ab272018-03-25 11:46:06 -06004230:21 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
4240:21 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
steve-lunarg5da1f032017-02-12 17:50:28 -07004250:21 Constant:
4260:21 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -06004270:21 right-shift ( temp int)
steve-lunarg5da1f032017-02-12 17:50:28 -07004280:21 Constant:
4290:21 8 (const int)
4300:21 Constant:
4310:21 2 (const int)
4320:21 Constant:
4330:21 1 (const int)
John Kessenich71c100d2017-03-14 19:43:13 -06004340:22 move second child to first child ( temp uint)
4350:22 'u' ( temp uint)
4360:22 AtomicXor ( temp uint)
4370:22 indirect index (layout( row_major std430) buffer uint)
John Kessenich1c3ab272018-03-25 11:46:06 -06004380:22 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
4390:22 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
steve-lunarg5da1f032017-02-12 17:50:28 -07004400:22 Constant:
4410:22 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -06004420:22 right-shift ( temp int)
steve-lunarg5da1f032017-02-12 17:50:28 -07004430:22 Constant:
4440:22 8 (const int)
4450:22 Constant:
4460:22 2 (const int)
4470:22 Constant:
4480:22 1 (const int)
4490:24 Branch: Return with expression
John Kessenich71c100d2017-03-14 19:43:13 -06004500:24 Construct vec4 ( temp 4-component vector of float)
4510:24 Convert uint to float ( temp float)
4520:24 indirect index (layout( row_major std430) buffer uint)
John Kessenich1c3ab272018-03-25 11:46:06 -06004530:24 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
4540:24 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
steve-lunarg5da1f032017-02-12 17:50:28 -07004550:24 Constant:
4560:24 0 (const uint)
John Kessenich71c100d2017-03-14 19:43:13 -06004570:24 right-shift ( temp int)
4580:24 'pos' ( in uint)
steve-lunarg5da1f032017-02-12 17:50:28 -07004590:24 Constant:
4600:24 2 (const int)
John Kessenich71c100d2017-03-14 19:43:13 -06004610:5 Function Definition: main( ( temp void)
steve-lunarg5da1f032017-02-12 17:50:28 -07004620:5 Function Parameters:
4630:? Sequence
John Kessenich71c100d2017-03-14 19:43:13 -06004640:5 move second child to first child ( temp uint)
4650:? 'pos' ( temp uint)
John Kessenich54596ff2017-06-20 03:20:59 -06004660:? 'pos' (layout( location=0) flat in uint)
John Kessenich71c100d2017-03-14 19:43:13 -06004670:5 move second child to first child ( temp 4-component vector of float)
4680:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
4690:5 Function Call: @main(u1; ( temp 4-component vector of float)
4700:? 'pos' ( temp uint)
steve-lunarg5da1f032017-02-12 17:50:28 -07004710:? Linker Objects
John Kessenich1c3ab272018-03-25 11:46:06 -06004720:? 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
John Kessenich71c100d2017-03-14 19:43:13 -06004730:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
John Kessenich54596ff2017-06-20 03:20:59 -06004740:? 'pos' (layout( location=0) flat in uint)
steve-lunarg5da1f032017-02-12 17:50:28 -0700475
John Kessenich2b5ea9f2018-01-31 18:35:56 -0700476// Module Version 10000
John Kessenichd6c97552018-06-04 15:33:31 -0600477// Generated by (magic number): 80007
steve-lunarg5da1f032017-02-12 17:50:28 -0700478// Id's are bound by 87
479
480 Capability Shader
481 1: ExtInstImport "GLSL.std.450"
482 MemoryModel Logical GLSL450
483 EntryPoint Fragment 4 "main" 80 83
484 ExecutionMode 4 OriginUpperLeft
John Kessenich6fa17642017-04-07 15:33:08 -0600485 Source HLSL 500
steve-lunarg5da1f032017-02-12 17:50:28 -0700486 Name 4 "main"
487 Name 12 "@main(u1;"
488 Name 11 "pos"
489 Name 15 "sbuf"
steve-lunargdd8287a2017-02-23 18:04:12 -0700490 MemberName 15(sbuf) 0 "@data"
491 Name 17 "sbuf"
steve-lunarg5da1f032017-02-12 17:50:28 -0700492 Name 29 "u"
493 Name 78 "pos"
494 Name 80 "pos"
495 Name 83 "@entryPointOutput"
496 Name 84 "param"
497 Decorate 14 ArrayStride 4
498 MemberDecorate 15(sbuf) 0 Offset 0
499 Decorate 15(sbuf) BufferBlock
steve-lunargdd8287a2017-02-23 18:04:12 -0700500 Decorate 17(sbuf) DescriptorSet 0
John Kessenich54596ff2017-06-20 03:20:59 -0600501 Decorate 80(pos) Flat
steve-lunarg5da1f032017-02-12 17:50:28 -0700502 Decorate 80(pos) Location 0
503 Decorate 83(@entryPointOutput) Location 0
504 2: TypeVoid
505 3: TypeFunction 2
506 6: TypeInt 32 0
507 7: TypePointer Function 6(int)
508 8: TypeFloat 32
509 9: TypeVector 8(float) 4
510 10: TypeFunction 9(fvec4) 7(ptr)
511 14: TypeRuntimeArray 6(int)
512 15(sbuf): TypeStruct 14
513 16: TypePointer Uniform 15(sbuf)
steve-lunargdd8287a2017-02-23 18:04:12 -0700514 17(sbuf): 16(ptr) Variable Uniform
steve-lunarg5da1f032017-02-12 17:50:28 -0700515 18: TypeInt 32 1
516 19: 18(int) Constant 0
517 20: 18(int) Constant 8
518 21: 18(int) Constant 2
519 23: TypePointer Uniform 6(int)
520 25: 18(int) Constant 1
521 26: 6(int) Constant 1
522 27: 6(int) Constant 0
523 79: TypePointer Input 6(int)
524 80(pos): 79(ptr) Variable Input
525 82: TypePointer Output 9(fvec4)
52683(@entryPointOutput): 82(ptr) Variable Output
527 4(main): 2 Function None 3
528 5: Label
529 78(pos): 7(ptr) Variable Function
530 84(param): 7(ptr) Variable Function
531 81: 6(int) Load 80(pos)
532 Store 78(pos) 81
533 85: 6(int) Load 78(pos)
534 Store 84(param) 85
535 86: 9(fvec4) FunctionCall 12(@main(u1;) 84(param)
536 Store 83(@entryPointOutput) 86
537 Return
538 FunctionEnd
539 12(@main(u1;): 9(fvec4) Function None 10
540 11(pos): 7(ptr) FunctionParameter
541 13: Label
542 29(u): 7(ptr) Variable Function
543 22: 18(int) ShiftRightArithmetic 20 21
steve-lunargdd8287a2017-02-23 18:04:12 -0700544 24: 23(ptr) AccessChain 17(sbuf) 19 22
danginsburg5a69b672018-04-13 09:51:22 -0400545 28: 6(int) AtomicIAdd 24 26 27 25
steve-lunarg5da1f032017-02-12 17:50:28 -0700546 30: 18(int) ShiftRightArithmetic 20 21
steve-lunargdd8287a2017-02-23 18:04:12 -0700547 31: 23(ptr) AccessChain 17(sbuf) 19 30
steve-lunarg5da1f032017-02-12 17:50:28 -0700548 32: 6(int) AtomicIAdd 31 26 27 25
549 Store 29(u) 32
550 33: 18(int) ShiftRightArithmetic 20 21
steve-lunargdd8287a2017-02-23 18:04:12 -0700551 34: 23(ptr) AccessChain 17(sbuf) 19 33
danginsburg5a69b672018-04-13 09:51:22 -0400552 35: 6(int) AtomicAnd 34 26 27 25
steve-lunarg5da1f032017-02-12 17:50:28 -0700553 36: 18(int) ShiftRightArithmetic 20 21
steve-lunargdd8287a2017-02-23 18:04:12 -0700554 37: 23(ptr) AccessChain 17(sbuf) 19 36
steve-lunarg5da1f032017-02-12 17:50:28 -0700555 38: 6(int) AtomicAnd 37 26 27 25
556 Store 29(u) 38
557 39: 18(int) ShiftRightArithmetic 20 21
steve-lunargdd8287a2017-02-23 18:04:12 -0700558 40: 23(ptr) AccessChain 17(sbuf) 19 39
steve-lunarg5da1f032017-02-12 17:50:28 -0700559 41: 18(int) AtomicCompareExchange 40 26 27 27 21 25
560 42: 6(int) Bitcast 41
561 Store 29(u) 42
562 43: 18(int) ShiftRightArithmetic 20 21
steve-lunargdd8287a2017-02-23 18:04:12 -0700563 44: 23(ptr) AccessChain 17(sbuf) 19 43
steve-lunarg5da1f032017-02-12 17:50:28 -0700564 45: 6(int) AtomicExchange 44 26 27 25
565 Store 29(u) 45
566 46: 18(int) ShiftRightArithmetic 20 21
steve-lunargdd8287a2017-02-23 18:04:12 -0700567 47: 23(ptr) AccessChain 17(sbuf) 19 46
danginsburg5a69b672018-04-13 09:51:22 -0400568 48: 6(int) AtomicUMax 47 26 27 25
steve-lunarg5da1f032017-02-12 17:50:28 -0700569 49: 18(int) ShiftRightArithmetic 20 21
steve-lunargdd8287a2017-02-23 18:04:12 -0700570 50: 23(ptr) AccessChain 17(sbuf) 19 49
steve-lunarg5da1f032017-02-12 17:50:28 -0700571 51: 6(int) AtomicUMax 50 26 27 25
572 Store 29(u) 51
573 52: 18(int) ShiftRightArithmetic 20 21
steve-lunargdd8287a2017-02-23 18:04:12 -0700574 53: 23(ptr) AccessChain 17(sbuf) 19 52
danginsburg5a69b672018-04-13 09:51:22 -0400575 54: 6(int) AtomicUMin 53 26 27 25
steve-lunarg5da1f032017-02-12 17:50:28 -0700576 55: 18(int) ShiftRightArithmetic 20 21
steve-lunargdd8287a2017-02-23 18:04:12 -0700577 56: 23(ptr) AccessChain 17(sbuf) 19 55
steve-lunarg5da1f032017-02-12 17:50:28 -0700578 57: 6(int) AtomicUMin 56 26 27 25
579 Store 29(u) 57
580 58: 18(int) ShiftRightArithmetic 20 21
steve-lunargdd8287a2017-02-23 18:04:12 -0700581 59: 23(ptr) AccessChain 17(sbuf) 19 58
danginsburg5a69b672018-04-13 09:51:22 -0400582 60: 6(int) AtomicOr 59 26 27 25
steve-lunarg5da1f032017-02-12 17:50:28 -0700583 61: 18(int) ShiftRightArithmetic 20 21
steve-lunargdd8287a2017-02-23 18:04:12 -0700584 62: 23(ptr) AccessChain 17(sbuf) 19 61
steve-lunarg5da1f032017-02-12 17:50:28 -0700585 63: 6(int) AtomicOr 62 26 27 25
586 Store 29(u) 63
587 64: 18(int) ShiftRightArithmetic 20 21
steve-lunargdd8287a2017-02-23 18:04:12 -0700588 65: 23(ptr) AccessChain 17(sbuf) 19 64
danginsburg5a69b672018-04-13 09:51:22 -0400589 66: 6(int) AtomicXor 65 26 27 25
steve-lunarg5da1f032017-02-12 17:50:28 -0700590 67: 18(int) ShiftRightArithmetic 20 21
steve-lunargdd8287a2017-02-23 18:04:12 -0700591 68: 23(ptr) AccessChain 17(sbuf) 19 67
steve-lunarg5da1f032017-02-12 17:50:28 -0700592 69: 6(int) AtomicXor 68 26 27 25
593 Store 29(u) 69
594 70: 6(int) Load 11(pos)
595 71: 18(int) ShiftRightLogical 70 21
steve-lunargdd8287a2017-02-23 18:04:12 -0700596 72: 23(ptr) AccessChain 17(sbuf) 19 71
steve-lunarg5da1f032017-02-12 17:50:28 -0700597 73: 6(int) Load 72
598 74: 8(float) ConvertUToF 73
599 75: 9(fvec4) CompositeConstruct 74 74 74 74
600 ReturnValue 75
601 FunctionEnd