mirror of
https://github.com/KhronosGroup/glslang
synced 2024-11-14 22:01:04 +00:00
1103 lines
56 KiB
Plaintext
1103 lines
56 KiB
Plaintext
hlsl.intrinsics.comp
|
|
Shader version: 500
|
|
local_size = (1, 1, 1)
|
|
0:? Sequence
|
|
0:17 Function Definition: ComputeShaderFunctionS(f1;f1;f1;u1;u1; ( temp float)
|
|
0:17 Function Parameters:
|
|
0:17 'inF0' ( in float)
|
|
0:17 'inF1' ( in float)
|
|
0:17 'inF2' ( in float)
|
|
0:17 'inU0' ( in uint)
|
|
0:17 'inU1' ( in uint)
|
|
0:? Sequence
|
|
0:21 all ( temp bool)
|
|
0:21 Convert float to bool ( temp bool)
|
|
0:21 'inF0' ( in float)
|
|
0:24 AtomicAdd ( temp void)
|
|
0:24 'gs_ua' ( shared uint)
|
|
0:24 'gs_ub' ( shared uint)
|
|
0:25 move second child to first child ( temp uint)
|
|
0:25 'out_u1' ( temp uint)
|
|
0:25 AtomicAdd ( temp uint)
|
|
0:25 'gs_ua' ( shared uint)
|
|
0:25 'gs_ub' ( shared uint)
|
|
0:26 AtomicAnd ( temp void)
|
|
0:26 'gs_ua' ( shared uint)
|
|
0:26 'gs_ub' ( shared uint)
|
|
0:27 move second child to first child ( temp uint)
|
|
0:27 'out_u1' ( temp uint)
|
|
0:27 AtomicAnd ( temp uint)
|
|
0:27 'gs_ua' ( shared uint)
|
|
0:27 'gs_ub' ( shared uint)
|
|
0:28 move second child to first child ( temp uint)
|
|
0:28 'out_u1' ( temp uint)
|
|
0:28 AtomicCompSwap ( temp uint)
|
|
0:28 'gs_ua' ( shared uint)
|
|
0:28 'gs_ub' ( shared uint)
|
|
0:28 'gs_uc' ( shared uint)
|
|
0:29 move second child to first child ( temp uint)
|
|
0:29 'out_u1' ( temp uint)
|
|
0:29 AtomicExchange ( temp uint)
|
|
0:29 'gs_ua' ( shared uint)
|
|
0:29 'gs_ub' ( shared uint)
|
|
0:30 AtomicMax ( temp void)
|
|
0:30 'gs_ua' ( shared uint)
|
|
0:30 'gs_ub' ( shared uint)
|
|
0:31 move second child to first child ( temp uint)
|
|
0:31 'out_u1' ( temp uint)
|
|
0:31 AtomicMax ( temp uint)
|
|
0:31 'gs_ua' ( shared uint)
|
|
0:31 'gs_ub' ( shared uint)
|
|
0:32 AtomicMin ( temp void)
|
|
0:32 'gs_ua' ( shared uint)
|
|
0:32 'gs_ub' ( shared uint)
|
|
0:33 move second child to first child ( temp uint)
|
|
0:33 'out_u1' ( temp uint)
|
|
0:33 AtomicMin ( temp uint)
|
|
0:33 'gs_ua' ( shared uint)
|
|
0:33 'gs_ub' ( shared uint)
|
|
0:34 AtomicOr ( temp void)
|
|
0:34 'gs_ua' ( shared uint)
|
|
0:34 'gs_ub' ( shared uint)
|
|
0:35 move second child to first child ( temp uint)
|
|
0:35 'out_u1' ( temp uint)
|
|
0:35 AtomicOr ( temp uint)
|
|
0:35 'gs_ua' ( shared uint)
|
|
0:35 'gs_ub' ( shared uint)
|
|
0:36 AtomicXor ( temp void)
|
|
0:36 'gs_ua' ( shared uint)
|
|
0:36 'gs_ub' ( shared uint)
|
|
0:37 move second child to first child ( temp uint)
|
|
0:37 'out_u1' ( temp uint)
|
|
0:37 AtomicXor ( temp uint)
|
|
0:37 'gs_ua' ( shared uint)
|
|
0:37 'gs_ub' ( shared uint)
|
|
0:41 Branch: Return with expression
|
|
0:41 Constant:
|
|
0:41 0.000000
|
|
0:45 Function Definition: ComputeShaderFunction1(vf1;vf1;vf1; ( temp 1-component vector of float)
|
|
0:45 Function Parameters:
|
|
0:45 'inF0' ( in 1-component vector of float)
|
|
0:45 'inF1' ( in 1-component vector of float)
|
|
0:45 'inF2' ( in 1-component vector of float)
|
|
0:? Sequence
|
|
0:47 Branch: Return with expression
|
|
0:47 Constant:
|
|
0:47 0.000000
|
|
0:51 Function Definition: ComputeShaderFunction2(vf2;vf2;vf2;vu2;vu2; ( temp 2-component vector of float)
|
|
0:51 Function Parameters:
|
|
0:51 'inF0' ( in 2-component vector of float)
|
|
0:51 'inF1' ( in 2-component vector of float)
|
|
0:51 'inF2' ( in 2-component vector of float)
|
|
0:51 'inU0' ( in 2-component vector of uint)
|
|
0:51 'inU1' ( in 2-component vector of uint)
|
|
0:? Sequence
|
|
0:55 all ( temp bool)
|
|
0:55 Convert float to bool ( temp 2-component vector of bool)
|
|
0:55 'inF0' ( in 2-component vector of float)
|
|
0:58 AtomicAdd ( temp void)
|
|
0:58 'gs_ua2' ( shared 2-component vector of uint)
|
|
0:58 'gs_ub2' ( shared 2-component vector of uint)
|
|
0:59 move second child to first child ( temp 2-component vector of uint)
|
|
0:59 'out_u2' ( temp 2-component vector of uint)
|
|
0:59 AtomicAdd ( temp 2-component vector of uint)
|
|
0:59 'gs_ua2' ( shared 2-component vector of uint)
|
|
0:59 'gs_ub2' ( shared 2-component vector of uint)
|
|
0:60 AtomicAnd ( temp void)
|
|
0:60 'gs_ua2' ( shared 2-component vector of uint)
|
|
0:60 'gs_ub2' ( shared 2-component vector of uint)
|
|
0:61 move second child to first child ( temp 2-component vector of uint)
|
|
0:61 'out_u2' ( temp 2-component vector of uint)
|
|
0:61 AtomicAnd ( temp 2-component vector of uint)
|
|
0:61 'gs_ua2' ( shared 2-component vector of uint)
|
|
0:61 'gs_ub2' ( shared 2-component vector of uint)
|
|
0:62 move second child to first child ( temp 2-component vector of uint)
|
|
0:62 'out_u2' ( temp 2-component vector of uint)
|
|
0:62 AtomicCompSwap ( temp 2-component vector of uint)
|
|
0:62 'gs_ua2' ( shared 2-component vector of uint)
|
|
0:62 'gs_ub2' ( shared 2-component vector of uint)
|
|
0:62 'gs_uc2' ( shared 2-component vector of uint)
|
|
0:63 move second child to first child ( temp 2-component vector of uint)
|
|
0:63 'out_u2' ( temp 2-component vector of uint)
|
|
0:63 AtomicExchange ( temp 2-component vector of uint)
|
|
0:63 'gs_ua2' ( shared 2-component vector of uint)
|
|
0:63 'gs_ub2' ( shared 2-component vector of uint)
|
|
0:64 AtomicMax ( temp void)
|
|
0:64 'gs_ua2' ( shared 2-component vector of uint)
|
|
0:64 'gs_ub2' ( shared 2-component vector of uint)
|
|
0:65 move second child to first child ( temp 2-component vector of uint)
|
|
0:65 'out_u2' ( temp 2-component vector of uint)
|
|
0:65 AtomicMax ( temp 2-component vector of uint)
|
|
0:65 'gs_ua2' ( shared 2-component vector of uint)
|
|
0:65 'gs_ub2' ( shared 2-component vector of uint)
|
|
0:66 AtomicMin ( temp void)
|
|
0:66 'gs_ua2' ( shared 2-component vector of uint)
|
|
0:66 'gs_ub2' ( shared 2-component vector of uint)
|
|
0:67 move second child to first child ( temp 2-component vector of uint)
|
|
0:67 'out_u2' ( temp 2-component vector of uint)
|
|
0:67 AtomicMin ( temp 2-component vector of uint)
|
|
0:67 'gs_ua2' ( shared 2-component vector of uint)
|
|
0:67 'gs_ub2' ( shared 2-component vector of uint)
|
|
0:68 AtomicOr ( temp void)
|
|
0:68 'gs_ua2' ( shared 2-component vector of uint)
|
|
0:68 'gs_ub2' ( shared 2-component vector of uint)
|
|
0:69 move second child to first child ( temp 2-component vector of uint)
|
|
0:69 'out_u2' ( temp 2-component vector of uint)
|
|
0:69 AtomicOr ( temp 2-component vector of uint)
|
|
0:69 'gs_ua2' ( shared 2-component vector of uint)
|
|
0:69 'gs_ub2' ( shared 2-component vector of uint)
|
|
0:70 AtomicXor ( temp void)
|
|
0:70 'gs_ua2' ( shared 2-component vector of uint)
|
|
0:70 'gs_ub2' ( shared 2-component vector of uint)
|
|
0:71 move second child to first child ( temp 2-component vector of uint)
|
|
0:71 'out_u2' ( temp 2-component vector of uint)
|
|
0:71 AtomicXor ( temp 2-component vector of uint)
|
|
0:71 'gs_ua2' ( shared 2-component vector of uint)
|
|
0:71 'gs_ub2' ( shared 2-component vector of uint)
|
|
0:74 Branch: Return with expression
|
|
0:? Constant:
|
|
0:? 1.000000
|
|
0:? 2.000000
|
|
0:78 Function Definition: ComputeShaderFunction3(vf3;vf3;vf3;vu3;vu3; ( temp 3-component vector of float)
|
|
0:78 Function Parameters:
|
|
0:78 'inF0' ( in 3-component vector of float)
|
|
0:78 'inF1' ( in 3-component vector of float)
|
|
0:78 'inF2' ( in 3-component vector of float)
|
|
0:78 'inU0' ( in 3-component vector of uint)
|
|
0:78 'inU1' ( in 3-component vector of uint)
|
|
0:? Sequence
|
|
0:82 all ( temp bool)
|
|
0:82 Convert float to bool ( temp 3-component vector of bool)
|
|
0:82 'inF0' ( in 3-component vector of float)
|
|
0:85 AtomicAdd ( temp void)
|
|
0:85 'gs_ua3' ( shared 3-component vector of uint)
|
|
0:85 'gs_ub3' ( shared 3-component vector of uint)
|
|
0:86 move second child to first child ( temp 3-component vector of uint)
|
|
0:86 'out_u3' ( temp 3-component vector of uint)
|
|
0:86 AtomicAdd ( temp 3-component vector of uint)
|
|
0:86 'gs_ua3' ( shared 3-component vector of uint)
|
|
0:86 'gs_ub3' ( shared 3-component vector of uint)
|
|
0:87 AtomicAnd ( temp void)
|
|
0:87 'gs_ua3' ( shared 3-component vector of uint)
|
|
0:87 'gs_ub3' ( shared 3-component vector of uint)
|
|
0:88 move second child to first child ( temp 3-component vector of uint)
|
|
0:88 'out_u3' ( temp 3-component vector of uint)
|
|
0:88 AtomicAnd ( temp 3-component vector of uint)
|
|
0:88 'gs_ua3' ( shared 3-component vector of uint)
|
|
0:88 'gs_ub3' ( shared 3-component vector of uint)
|
|
0:89 move second child to first child ( temp 3-component vector of uint)
|
|
0:89 'out_u3' ( temp 3-component vector of uint)
|
|
0:89 AtomicCompSwap ( temp 3-component vector of uint)
|
|
0:89 'gs_ua3' ( shared 3-component vector of uint)
|
|
0:89 'gs_ub3' ( shared 3-component vector of uint)
|
|
0:89 'gs_uc3' ( shared 3-component vector of uint)
|
|
0:90 move second child to first child ( temp 3-component vector of uint)
|
|
0:90 'out_u3' ( temp 3-component vector of uint)
|
|
0:90 AtomicExchange ( temp 3-component vector of uint)
|
|
0:90 'gs_ua3' ( shared 3-component vector of uint)
|
|
0:90 'gs_ub3' ( shared 3-component vector of uint)
|
|
0:91 AtomicMax ( temp void)
|
|
0:91 'gs_ua3' ( shared 3-component vector of uint)
|
|
0:91 'gs_ub3' ( shared 3-component vector of uint)
|
|
0:92 move second child to first child ( temp 3-component vector of uint)
|
|
0:92 'out_u3' ( temp 3-component vector of uint)
|
|
0:92 AtomicMax ( temp 3-component vector of uint)
|
|
0:92 'gs_ua3' ( shared 3-component vector of uint)
|
|
0:92 'gs_ub3' ( shared 3-component vector of uint)
|
|
0:93 AtomicMin ( temp void)
|
|
0:93 'gs_ua3' ( shared 3-component vector of uint)
|
|
0:93 'gs_ub3' ( shared 3-component vector of uint)
|
|
0:94 move second child to first child ( temp 3-component vector of uint)
|
|
0:94 'out_u3' ( temp 3-component vector of uint)
|
|
0:94 AtomicMin ( temp 3-component vector of uint)
|
|
0:94 'gs_ua3' ( shared 3-component vector of uint)
|
|
0:94 'gs_ub3' ( shared 3-component vector of uint)
|
|
0:95 AtomicOr ( temp void)
|
|
0:95 'gs_ua3' ( shared 3-component vector of uint)
|
|
0:95 'gs_ub3' ( shared 3-component vector of uint)
|
|
0:96 move second child to first child ( temp 3-component vector of uint)
|
|
0:96 'out_u3' ( temp 3-component vector of uint)
|
|
0:96 AtomicOr ( temp 3-component vector of uint)
|
|
0:96 'gs_ua3' ( shared 3-component vector of uint)
|
|
0:96 'gs_ub3' ( shared 3-component vector of uint)
|
|
0:97 AtomicXor ( temp void)
|
|
0:97 'gs_ua3' ( shared 3-component vector of uint)
|
|
0:97 'gs_ub3' ( shared 3-component vector of uint)
|
|
0:98 move second child to first child ( temp 3-component vector of uint)
|
|
0:98 'out_u3' ( temp 3-component vector of uint)
|
|
0:98 AtomicXor ( temp 3-component vector of uint)
|
|
0:98 'gs_ua3' ( shared 3-component vector of uint)
|
|
0:98 'gs_ub3' ( shared 3-component vector of uint)
|
|
0:101 Branch: Return with expression
|
|
0:? Constant:
|
|
0:? 1.000000
|
|
0:? 2.000000
|
|
0:? 3.000000
|
|
0:105 Function Definition: @ComputeShaderFunction(vf4;vf4;vf4;vu4;vu4; ( temp 4-component vector of float)
|
|
0:105 Function Parameters:
|
|
0:105 'inF0' ( in 4-component vector of float)
|
|
0:105 'inF1' ( in 4-component vector of float)
|
|
0:105 'inF2' ( in 4-component vector of float)
|
|
0:105 'inU0' ( in 4-component vector of uint)
|
|
0:105 'inU1' ( in 4-component vector of uint)
|
|
0:? Sequence
|
|
0:109 all ( temp bool)
|
|
0:109 Convert float to bool ( temp 4-component vector of bool)
|
|
0:109 'inF0' ( in 4-component vector of float)
|
|
0:112 AtomicAdd ( temp void)
|
|
0:112 'gs_ua4' ( shared 4-component vector of uint)
|
|
0:112 'gs_ub4' ( shared 4-component vector of uint)
|
|
0:113 move second child to first child ( temp 4-component vector of uint)
|
|
0:113 'out_u4' ( temp 4-component vector of uint)
|
|
0:113 AtomicAdd ( temp 4-component vector of uint)
|
|
0:113 'gs_ua4' ( shared 4-component vector of uint)
|
|
0:113 'gs_ub4' ( shared 4-component vector of uint)
|
|
0:114 AtomicAnd ( temp void)
|
|
0:114 'gs_ua4' ( shared 4-component vector of uint)
|
|
0:114 'gs_ub4' ( shared 4-component vector of uint)
|
|
0:115 move second child to first child ( temp 4-component vector of uint)
|
|
0:115 'out_u4' ( temp 4-component vector of uint)
|
|
0:115 AtomicAnd ( temp 4-component vector of uint)
|
|
0:115 'gs_ua4' ( shared 4-component vector of uint)
|
|
0:115 'gs_ub4' ( shared 4-component vector of uint)
|
|
0:116 move second child to first child ( temp 4-component vector of uint)
|
|
0:116 'out_u4' ( temp 4-component vector of uint)
|
|
0:116 AtomicCompSwap ( temp 4-component vector of uint)
|
|
0:116 'gs_ua4' ( shared 4-component vector of uint)
|
|
0:116 'gs_ub4' ( shared 4-component vector of uint)
|
|
0:116 'gs_uc4' ( shared 4-component vector of uint)
|
|
0:117 move second child to first child ( temp 4-component vector of uint)
|
|
0:117 'out_u4' ( temp 4-component vector of uint)
|
|
0:117 AtomicExchange ( temp 4-component vector of uint)
|
|
0:117 'gs_ua4' ( shared 4-component vector of uint)
|
|
0:117 'gs_ub4' ( shared 4-component vector of uint)
|
|
0:118 AtomicMax ( temp void)
|
|
0:118 'gs_ua4' ( shared 4-component vector of uint)
|
|
0:118 'gs_ub4' ( shared 4-component vector of uint)
|
|
0:119 move second child to first child ( temp 4-component vector of uint)
|
|
0:119 'out_u4' ( temp 4-component vector of uint)
|
|
0:119 AtomicMax ( temp 4-component vector of uint)
|
|
0:119 'gs_ua4' ( shared 4-component vector of uint)
|
|
0:119 'gs_ub4' ( shared 4-component vector of uint)
|
|
0:120 AtomicMin ( temp void)
|
|
0:120 'gs_ua4' ( shared 4-component vector of uint)
|
|
0:120 'gs_ub4' ( shared 4-component vector of uint)
|
|
0:121 move second child to first child ( temp 4-component vector of uint)
|
|
0:121 'out_u4' ( temp 4-component vector of uint)
|
|
0:121 AtomicMin ( temp 4-component vector of uint)
|
|
0:121 'gs_ua4' ( shared 4-component vector of uint)
|
|
0:121 'gs_ub4' ( shared 4-component vector of uint)
|
|
0:122 AtomicOr ( temp void)
|
|
0:122 'gs_ua4' ( shared 4-component vector of uint)
|
|
0:122 'gs_ub4' ( shared 4-component vector of uint)
|
|
0:123 move second child to first child ( temp 4-component vector of uint)
|
|
0:123 'out_u4' ( temp 4-component vector of uint)
|
|
0:123 AtomicOr ( temp 4-component vector of uint)
|
|
0:123 'gs_ua4' ( shared 4-component vector of uint)
|
|
0:123 'gs_ub4' ( shared 4-component vector of uint)
|
|
0:124 AtomicXor ( temp void)
|
|
0:124 'gs_ua4' ( shared 4-component vector of uint)
|
|
0:124 'gs_ub4' ( shared 4-component vector of uint)
|
|
0:125 move second child to first child ( temp 4-component vector of uint)
|
|
0:125 'out_u4' ( temp 4-component vector of uint)
|
|
0:125 AtomicXor ( temp 4-component vector of uint)
|
|
0:125 'gs_ua4' ( shared 4-component vector of uint)
|
|
0:125 'gs_ub4' ( shared 4-component vector of uint)
|
|
0:128 Branch: Return with expression
|
|
0:? Constant:
|
|
0:? 1.000000
|
|
0:? 2.000000
|
|
0:? 3.000000
|
|
0:? 4.000000
|
|
0:105 Function Definition: ComputeShaderFunction( ( temp void)
|
|
0:105 Function Parameters:
|
|
0:? Sequence
|
|
0:105 move second child to first child ( temp 4-component vector of float)
|
|
0:? 'inF0' ( temp 4-component vector of float)
|
|
0:? 'inF0' (layout( location=0) in 4-component vector of float)
|
|
0:105 move second child to first child ( temp 4-component vector of float)
|
|
0:? 'inF1' ( temp 4-component vector of float)
|
|
0:? 'inF1' (layout( location=1) in 4-component vector of float)
|
|
0:105 move second child to first child ( temp 4-component vector of float)
|
|
0:? 'inF2' ( temp 4-component vector of float)
|
|
0:? 'inF2' (layout( location=2) in 4-component vector of float)
|
|
0:105 move second child to first child ( temp 4-component vector of uint)
|
|
0:? 'inU0' ( temp 4-component vector of uint)
|
|
0:? 'inU0' (layout( location=3) in 4-component vector of uint)
|
|
0:105 move second child to first child ( temp 4-component vector of uint)
|
|
0:? 'inU1' ( temp 4-component vector of uint)
|
|
0:? 'inU1' (layout( location=4) in 4-component vector of uint)
|
|
0:105 move second child to first child ( temp 4-component vector of float)
|
|
0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
|
|
0:105 Function Call: @ComputeShaderFunction(vf4;vf4;vf4;vu4;vu4; ( temp 4-component vector of float)
|
|
0:? 'inF0' ( temp 4-component vector of float)
|
|
0:? 'inF1' ( temp 4-component vector of float)
|
|
0:? 'inF2' ( temp 4-component vector of float)
|
|
0:? 'inU0' ( temp 4-component vector of uint)
|
|
0:? 'inU1' ( temp 4-component vector of uint)
|
|
0:? Linker Objects
|
|
0:? 'gs_ua' ( shared uint)
|
|
0:? 'gs_ub' ( shared uint)
|
|
0:? 'gs_uc' ( shared uint)
|
|
0:? 'gs_ua2' ( shared 2-component vector of uint)
|
|
0:? 'gs_ub2' ( shared 2-component vector of uint)
|
|
0:? 'gs_uc2' ( shared 2-component vector of uint)
|
|
0:? 'gs_ua3' ( shared 3-component vector of uint)
|
|
0:? 'gs_ub3' ( shared 3-component vector of uint)
|
|
0:? 'gs_uc3' ( shared 3-component vector of uint)
|
|
0:? 'gs_ua4' ( shared 4-component vector of uint)
|
|
0:? 'gs_ub4' ( shared 4-component vector of uint)
|
|
0:? 'gs_uc4' ( shared 4-component vector of uint)
|
|
0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
|
|
0:? 'inF0' (layout( location=0) in 4-component vector of float)
|
|
0:? 'inF1' (layout( location=1) in 4-component vector of float)
|
|
0:? 'inF2' (layout( location=2) in 4-component vector of float)
|
|
0:? 'inU0' (layout( location=3) in 4-component vector of uint)
|
|
0:? 'inU1' (layout( location=4) in 4-component vector of uint)
|
|
|
|
|
|
Linked compute stage:
|
|
|
|
|
|
Shader version: 500
|
|
local_size = (1, 1, 1)
|
|
0:? Sequence
|
|
0:17 Function Definition: ComputeShaderFunctionS(f1;f1;f1;u1;u1; ( temp float)
|
|
0:17 Function Parameters:
|
|
0:17 'inF0' ( in float)
|
|
0:17 'inF1' ( in float)
|
|
0:17 'inF2' ( in float)
|
|
0:17 'inU0' ( in uint)
|
|
0:17 'inU1' ( in uint)
|
|
0:? Sequence
|
|
0:21 all ( temp bool)
|
|
0:21 Convert float to bool ( temp bool)
|
|
0:21 'inF0' ( in float)
|
|
0:24 AtomicAdd ( temp void)
|
|
0:24 'gs_ua' ( shared uint)
|
|
0:24 'gs_ub' ( shared uint)
|
|
0:25 move second child to first child ( temp uint)
|
|
0:25 'out_u1' ( temp uint)
|
|
0:25 AtomicAdd ( temp uint)
|
|
0:25 'gs_ua' ( shared uint)
|
|
0:25 'gs_ub' ( shared uint)
|
|
0:26 AtomicAnd ( temp void)
|
|
0:26 'gs_ua' ( shared uint)
|
|
0:26 'gs_ub' ( shared uint)
|
|
0:27 move second child to first child ( temp uint)
|
|
0:27 'out_u1' ( temp uint)
|
|
0:27 AtomicAnd ( temp uint)
|
|
0:27 'gs_ua' ( shared uint)
|
|
0:27 'gs_ub' ( shared uint)
|
|
0:28 move second child to first child ( temp uint)
|
|
0:28 'out_u1' ( temp uint)
|
|
0:28 AtomicCompSwap ( temp uint)
|
|
0:28 'gs_ua' ( shared uint)
|
|
0:28 'gs_ub' ( shared uint)
|
|
0:28 'gs_uc' ( shared uint)
|
|
0:29 move second child to first child ( temp uint)
|
|
0:29 'out_u1' ( temp uint)
|
|
0:29 AtomicExchange ( temp uint)
|
|
0:29 'gs_ua' ( shared uint)
|
|
0:29 'gs_ub' ( shared uint)
|
|
0:30 AtomicMax ( temp void)
|
|
0:30 'gs_ua' ( shared uint)
|
|
0:30 'gs_ub' ( shared uint)
|
|
0:31 move second child to first child ( temp uint)
|
|
0:31 'out_u1' ( temp uint)
|
|
0:31 AtomicMax ( temp uint)
|
|
0:31 'gs_ua' ( shared uint)
|
|
0:31 'gs_ub' ( shared uint)
|
|
0:32 AtomicMin ( temp void)
|
|
0:32 'gs_ua' ( shared uint)
|
|
0:32 'gs_ub' ( shared uint)
|
|
0:33 move second child to first child ( temp uint)
|
|
0:33 'out_u1' ( temp uint)
|
|
0:33 AtomicMin ( temp uint)
|
|
0:33 'gs_ua' ( shared uint)
|
|
0:33 'gs_ub' ( shared uint)
|
|
0:34 AtomicOr ( temp void)
|
|
0:34 'gs_ua' ( shared uint)
|
|
0:34 'gs_ub' ( shared uint)
|
|
0:35 move second child to first child ( temp uint)
|
|
0:35 'out_u1' ( temp uint)
|
|
0:35 AtomicOr ( temp uint)
|
|
0:35 'gs_ua' ( shared uint)
|
|
0:35 'gs_ub' ( shared uint)
|
|
0:36 AtomicXor ( temp void)
|
|
0:36 'gs_ua' ( shared uint)
|
|
0:36 'gs_ub' ( shared uint)
|
|
0:37 move second child to first child ( temp uint)
|
|
0:37 'out_u1' ( temp uint)
|
|
0:37 AtomicXor ( temp uint)
|
|
0:37 'gs_ua' ( shared uint)
|
|
0:37 'gs_ub' ( shared uint)
|
|
0:41 Branch: Return with expression
|
|
0:41 Constant:
|
|
0:41 0.000000
|
|
0:45 Function Definition: ComputeShaderFunction1(vf1;vf1;vf1; ( temp 1-component vector of float)
|
|
0:45 Function Parameters:
|
|
0:45 'inF0' ( in 1-component vector of float)
|
|
0:45 'inF1' ( in 1-component vector of float)
|
|
0:45 'inF2' ( in 1-component vector of float)
|
|
0:? Sequence
|
|
0:47 Branch: Return with expression
|
|
0:47 Constant:
|
|
0:47 0.000000
|
|
0:51 Function Definition: ComputeShaderFunction2(vf2;vf2;vf2;vu2;vu2; ( temp 2-component vector of float)
|
|
0:51 Function Parameters:
|
|
0:51 'inF0' ( in 2-component vector of float)
|
|
0:51 'inF1' ( in 2-component vector of float)
|
|
0:51 'inF2' ( in 2-component vector of float)
|
|
0:51 'inU0' ( in 2-component vector of uint)
|
|
0:51 'inU1' ( in 2-component vector of uint)
|
|
0:? Sequence
|
|
0:55 all ( temp bool)
|
|
0:55 Convert float to bool ( temp 2-component vector of bool)
|
|
0:55 'inF0' ( in 2-component vector of float)
|
|
0:58 AtomicAdd ( temp void)
|
|
0:58 'gs_ua2' ( shared 2-component vector of uint)
|
|
0:58 'gs_ub2' ( shared 2-component vector of uint)
|
|
0:59 move second child to first child ( temp 2-component vector of uint)
|
|
0:59 'out_u2' ( temp 2-component vector of uint)
|
|
0:59 AtomicAdd ( temp 2-component vector of uint)
|
|
0:59 'gs_ua2' ( shared 2-component vector of uint)
|
|
0:59 'gs_ub2' ( shared 2-component vector of uint)
|
|
0:60 AtomicAnd ( temp void)
|
|
0:60 'gs_ua2' ( shared 2-component vector of uint)
|
|
0:60 'gs_ub2' ( shared 2-component vector of uint)
|
|
0:61 move second child to first child ( temp 2-component vector of uint)
|
|
0:61 'out_u2' ( temp 2-component vector of uint)
|
|
0:61 AtomicAnd ( temp 2-component vector of uint)
|
|
0:61 'gs_ua2' ( shared 2-component vector of uint)
|
|
0:61 'gs_ub2' ( shared 2-component vector of uint)
|
|
0:62 move second child to first child ( temp 2-component vector of uint)
|
|
0:62 'out_u2' ( temp 2-component vector of uint)
|
|
0:62 AtomicCompSwap ( temp 2-component vector of uint)
|
|
0:62 'gs_ua2' ( shared 2-component vector of uint)
|
|
0:62 'gs_ub2' ( shared 2-component vector of uint)
|
|
0:62 'gs_uc2' ( shared 2-component vector of uint)
|
|
0:63 move second child to first child ( temp 2-component vector of uint)
|
|
0:63 'out_u2' ( temp 2-component vector of uint)
|
|
0:63 AtomicExchange ( temp 2-component vector of uint)
|
|
0:63 'gs_ua2' ( shared 2-component vector of uint)
|
|
0:63 'gs_ub2' ( shared 2-component vector of uint)
|
|
0:64 AtomicMax ( temp void)
|
|
0:64 'gs_ua2' ( shared 2-component vector of uint)
|
|
0:64 'gs_ub2' ( shared 2-component vector of uint)
|
|
0:65 move second child to first child ( temp 2-component vector of uint)
|
|
0:65 'out_u2' ( temp 2-component vector of uint)
|
|
0:65 AtomicMax ( temp 2-component vector of uint)
|
|
0:65 'gs_ua2' ( shared 2-component vector of uint)
|
|
0:65 'gs_ub2' ( shared 2-component vector of uint)
|
|
0:66 AtomicMin ( temp void)
|
|
0:66 'gs_ua2' ( shared 2-component vector of uint)
|
|
0:66 'gs_ub2' ( shared 2-component vector of uint)
|
|
0:67 move second child to first child ( temp 2-component vector of uint)
|
|
0:67 'out_u2' ( temp 2-component vector of uint)
|
|
0:67 AtomicMin ( temp 2-component vector of uint)
|
|
0:67 'gs_ua2' ( shared 2-component vector of uint)
|
|
0:67 'gs_ub2' ( shared 2-component vector of uint)
|
|
0:68 AtomicOr ( temp void)
|
|
0:68 'gs_ua2' ( shared 2-component vector of uint)
|
|
0:68 'gs_ub2' ( shared 2-component vector of uint)
|
|
0:69 move second child to first child ( temp 2-component vector of uint)
|
|
0:69 'out_u2' ( temp 2-component vector of uint)
|
|
0:69 AtomicOr ( temp 2-component vector of uint)
|
|
0:69 'gs_ua2' ( shared 2-component vector of uint)
|
|
0:69 'gs_ub2' ( shared 2-component vector of uint)
|
|
0:70 AtomicXor ( temp void)
|
|
0:70 'gs_ua2' ( shared 2-component vector of uint)
|
|
0:70 'gs_ub2' ( shared 2-component vector of uint)
|
|
0:71 move second child to first child ( temp 2-component vector of uint)
|
|
0:71 'out_u2' ( temp 2-component vector of uint)
|
|
0:71 AtomicXor ( temp 2-component vector of uint)
|
|
0:71 'gs_ua2' ( shared 2-component vector of uint)
|
|
0:71 'gs_ub2' ( shared 2-component vector of uint)
|
|
0:74 Branch: Return with expression
|
|
0:? Constant:
|
|
0:? 1.000000
|
|
0:? 2.000000
|
|
0:78 Function Definition: ComputeShaderFunction3(vf3;vf3;vf3;vu3;vu3; ( temp 3-component vector of float)
|
|
0:78 Function Parameters:
|
|
0:78 'inF0' ( in 3-component vector of float)
|
|
0:78 'inF1' ( in 3-component vector of float)
|
|
0:78 'inF2' ( in 3-component vector of float)
|
|
0:78 'inU0' ( in 3-component vector of uint)
|
|
0:78 'inU1' ( in 3-component vector of uint)
|
|
0:? Sequence
|
|
0:82 all ( temp bool)
|
|
0:82 Convert float to bool ( temp 3-component vector of bool)
|
|
0:82 'inF0' ( in 3-component vector of float)
|
|
0:85 AtomicAdd ( temp void)
|
|
0:85 'gs_ua3' ( shared 3-component vector of uint)
|
|
0:85 'gs_ub3' ( shared 3-component vector of uint)
|
|
0:86 move second child to first child ( temp 3-component vector of uint)
|
|
0:86 'out_u3' ( temp 3-component vector of uint)
|
|
0:86 AtomicAdd ( temp 3-component vector of uint)
|
|
0:86 'gs_ua3' ( shared 3-component vector of uint)
|
|
0:86 'gs_ub3' ( shared 3-component vector of uint)
|
|
0:87 AtomicAnd ( temp void)
|
|
0:87 'gs_ua3' ( shared 3-component vector of uint)
|
|
0:87 'gs_ub3' ( shared 3-component vector of uint)
|
|
0:88 move second child to first child ( temp 3-component vector of uint)
|
|
0:88 'out_u3' ( temp 3-component vector of uint)
|
|
0:88 AtomicAnd ( temp 3-component vector of uint)
|
|
0:88 'gs_ua3' ( shared 3-component vector of uint)
|
|
0:88 'gs_ub3' ( shared 3-component vector of uint)
|
|
0:89 move second child to first child ( temp 3-component vector of uint)
|
|
0:89 'out_u3' ( temp 3-component vector of uint)
|
|
0:89 AtomicCompSwap ( temp 3-component vector of uint)
|
|
0:89 'gs_ua3' ( shared 3-component vector of uint)
|
|
0:89 'gs_ub3' ( shared 3-component vector of uint)
|
|
0:89 'gs_uc3' ( shared 3-component vector of uint)
|
|
0:90 move second child to first child ( temp 3-component vector of uint)
|
|
0:90 'out_u3' ( temp 3-component vector of uint)
|
|
0:90 AtomicExchange ( temp 3-component vector of uint)
|
|
0:90 'gs_ua3' ( shared 3-component vector of uint)
|
|
0:90 'gs_ub3' ( shared 3-component vector of uint)
|
|
0:91 AtomicMax ( temp void)
|
|
0:91 'gs_ua3' ( shared 3-component vector of uint)
|
|
0:91 'gs_ub3' ( shared 3-component vector of uint)
|
|
0:92 move second child to first child ( temp 3-component vector of uint)
|
|
0:92 'out_u3' ( temp 3-component vector of uint)
|
|
0:92 AtomicMax ( temp 3-component vector of uint)
|
|
0:92 'gs_ua3' ( shared 3-component vector of uint)
|
|
0:92 'gs_ub3' ( shared 3-component vector of uint)
|
|
0:93 AtomicMin ( temp void)
|
|
0:93 'gs_ua3' ( shared 3-component vector of uint)
|
|
0:93 'gs_ub3' ( shared 3-component vector of uint)
|
|
0:94 move second child to first child ( temp 3-component vector of uint)
|
|
0:94 'out_u3' ( temp 3-component vector of uint)
|
|
0:94 AtomicMin ( temp 3-component vector of uint)
|
|
0:94 'gs_ua3' ( shared 3-component vector of uint)
|
|
0:94 'gs_ub3' ( shared 3-component vector of uint)
|
|
0:95 AtomicOr ( temp void)
|
|
0:95 'gs_ua3' ( shared 3-component vector of uint)
|
|
0:95 'gs_ub3' ( shared 3-component vector of uint)
|
|
0:96 move second child to first child ( temp 3-component vector of uint)
|
|
0:96 'out_u3' ( temp 3-component vector of uint)
|
|
0:96 AtomicOr ( temp 3-component vector of uint)
|
|
0:96 'gs_ua3' ( shared 3-component vector of uint)
|
|
0:96 'gs_ub3' ( shared 3-component vector of uint)
|
|
0:97 AtomicXor ( temp void)
|
|
0:97 'gs_ua3' ( shared 3-component vector of uint)
|
|
0:97 'gs_ub3' ( shared 3-component vector of uint)
|
|
0:98 move second child to first child ( temp 3-component vector of uint)
|
|
0:98 'out_u3' ( temp 3-component vector of uint)
|
|
0:98 AtomicXor ( temp 3-component vector of uint)
|
|
0:98 'gs_ua3' ( shared 3-component vector of uint)
|
|
0:98 'gs_ub3' ( shared 3-component vector of uint)
|
|
0:101 Branch: Return with expression
|
|
0:? Constant:
|
|
0:? 1.000000
|
|
0:? 2.000000
|
|
0:? 3.000000
|
|
0:105 Function Definition: @ComputeShaderFunction(vf4;vf4;vf4;vu4;vu4; ( temp 4-component vector of float)
|
|
0:105 Function Parameters:
|
|
0:105 'inF0' ( in 4-component vector of float)
|
|
0:105 'inF1' ( in 4-component vector of float)
|
|
0:105 'inF2' ( in 4-component vector of float)
|
|
0:105 'inU0' ( in 4-component vector of uint)
|
|
0:105 'inU1' ( in 4-component vector of uint)
|
|
0:? Sequence
|
|
0:109 all ( temp bool)
|
|
0:109 Convert float to bool ( temp 4-component vector of bool)
|
|
0:109 'inF0' ( in 4-component vector of float)
|
|
0:112 AtomicAdd ( temp void)
|
|
0:112 'gs_ua4' ( shared 4-component vector of uint)
|
|
0:112 'gs_ub4' ( shared 4-component vector of uint)
|
|
0:113 move second child to first child ( temp 4-component vector of uint)
|
|
0:113 'out_u4' ( temp 4-component vector of uint)
|
|
0:113 AtomicAdd ( temp 4-component vector of uint)
|
|
0:113 'gs_ua4' ( shared 4-component vector of uint)
|
|
0:113 'gs_ub4' ( shared 4-component vector of uint)
|
|
0:114 AtomicAnd ( temp void)
|
|
0:114 'gs_ua4' ( shared 4-component vector of uint)
|
|
0:114 'gs_ub4' ( shared 4-component vector of uint)
|
|
0:115 move second child to first child ( temp 4-component vector of uint)
|
|
0:115 'out_u4' ( temp 4-component vector of uint)
|
|
0:115 AtomicAnd ( temp 4-component vector of uint)
|
|
0:115 'gs_ua4' ( shared 4-component vector of uint)
|
|
0:115 'gs_ub4' ( shared 4-component vector of uint)
|
|
0:116 move second child to first child ( temp 4-component vector of uint)
|
|
0:116 'out_u4' ( temp 4-component vector of uint)
|
|
0:116 AtomicCompSwap ( temp 4-component vector of uint)
|
|
0:116 'gs_ua4' ( shared 4-component vector of uint)
|
|
0:116 'gs_ub4' ( shared 4-component vector of uint)
|
|
0:116 'gs_uc4' ( shared 4-component vector of uint)
|
|
0:117 move second child to first child ( temp 4-component vector of uint)
|
|
0:117 'out_u4' ( temp 4-component vector of uint)
|
|
0:117 AtomicExchange ( temp 4-component vector of uint)
|
|
0:117 'gs_ua4' ( shared 4-component vector of uint)
|
|
0:117 'gs_ub4' ( shared 4-component vector of uint)
|
|
0:118 AtomicMax ( temp void)
|
|
0:118 'gs_ua4' ( shared 4-component vector of uint)
|
|
0:118 'gs_ub4' ( shared 4-component vector of uint)
|
|
0:119 move second child to first child ( temp 4-component vector of uint)
|
|
0:119 'out_u4' ( temp 4-component vector of uint)
|
|
0:119 AtomicMax ( temp 4-component vector of uint)
|
|
0:119 'gs_ua4' ( shared 4-component vector of uint)
|
|
0:119 'gs_ub4' ( shared 4-component vector of uint)
|
|
0:120 AtomicMin ( temp void)
|
|
0:120 'gs_ua4' ( shared 4-component vector of uint)
|
|
0:120 'gs_ub4' ( shared 4-component vector of uint)
|
|
0:121 move second child to first child ( temp 4-component vector of uint)
|
|
0:121 'out_u4' ( temp 4-component vector of uint)
|
|
0:121 AtomicMin ( temp 4-component vector of uint)
|
|
0:121 'gs_ua4' ( shared 4-component vector of uint)
|
|
0:121 'gs_ub4' ( shared 4-component vector of uint)
|
|
0:122 AtomicOr ( temp void)
|
|
0:122 'gs_ua4' ( shared 4-component vector of uint)
|
|
0:122 'gs_ub4' ( shared 4-component vector of uint)
|
|
0:123 move second child to first child ( temp 4-component vector of uint)
|
|
0:123 'out_u4' ( temp 4-component vector of uint)
|
|
0:123 AtomicOr ( temp 4-component vector of uint)
|
|
0:123 'gs_ua4' ( shared 4-component vector of uint)
|
|
0:123 'gs_ub4' ( shared 4-component vector of uint)
|
|
0:124 AtomicXor ( temp void)
|
|
0:124 'gs_ua4' ( shared 4-component vector of uint)
|
|
0:124 'gs_ub4' ( shared 4-component vector of uint)
|
|
0:125 move second child to first child ( temp 4-component vector of uint)
|
|
0:125 'out_u4' ( temp 4-component vector of uint)
|
|
0:125 AtomicXor ( temp 4-component vector of uint)
|
|
0:125 'gs_ua4' ( shared 4-component vector of uint)
|
|
0:125 'gs_ub4' ( shared 4-component vector of uint)
|
|
0:128 Branch: Return with expression
|
|
0:? Constant:
|
|
0:? 1.000000
|
|
0:? 2.000000
|
|
0:? 3.000000
|
|
0:? 4.000000
|
|
0:105 Function Definition: ComputeShaderFunction( ( temp void)
|
|
0:105 Function Parameters:
|
|
0:? Sequence
|
|
0:105 move second child to first child ( temp 4-component vector of float)
|
|
0:? 'inF0' ( temp 4-component vector of float)
|
|
0:? 'inF0' (layout( location=0) in 4-component vector of float)
|
|
0:105 move second child to first child ( temp 4-component vector of float)
|
|
0:? 'inF1' ( temp 4-component vector of float)
|
|
0:? 'inF1' (layout( location=1) in 4-component vector of float)
|
|
0:105 move second child to first child ( temp 4-component vector of float)
|
|
0:? 'inF2' ( temp 4-component vector of float)
|
|
0:? 'inF2' (layout( location=2) in 4-component vector of float)
|
|
0:105 move second child to first child ( temp 4-component vector of uint)
|
|
0:? 'inU0' ( temp 4-component vector of uint)
|
|
0:? 'inU0' (layout( location=3) in 4-component vector of uint)
|
|
0:105 move second child to first child ( temp 4-component vector of uint)
|
|
0:? 'inU1' ( temp 4-component vector of uint)
|
|
0:? 'inU1' (layout( location=4) in 4-component vector of uint)
|
|
0:105 move second child to first child ( temp 4-component vector of float)
|
|
0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
|
|
0:105 Function Call: @ComputeShaderFunction(vf4;vf4;vf4;vu4;vu4; ( temp 4-component vector of float)
|
|
0:? 'inF0' ( temp 4-component vector of float)
|
|
0:? 'inF1' ( temp 4-component vector of float)
|
|
0:? 'inF2' ( temp 4-component vector of float)
|
|
0:? 'inU0' ( temp 4-component vector of uint)
|
|
0:? 'inU1' ( temp 4-component vector of uint)
|
|
0:? Linker Objects
|
|
0:? 'gs_ua' ( shared uint)
|
|
0:? 'gs_ub' ( shared uint)
|
|
0:? 'gs_uc' ( shared uint)
|
|
0:? 'gs_ua2' ( shared 2-component vector of uint)
|
|
0:? 'gs_ub2' ( shared 2-component vector of uint)
|
|
0:? 'gs_uc2' ( shared 2-component vector of uint)
|
|
0:? 'gs_ua3' ( shared 3-component vector of uint)
|
|
0:? 'gs_ub3' ( shared 3-component vector of uint)
|
|
0:? 'gs_uc3' ( shared 3-component vector of uint)
|
|
0:? 'gs_ua4' ( shared 4-component vector of uint)
|
|
0:? 'gs_ub4' ( shared 4-component vector of uint)
|
|
0:? 'gs_uc4' ( shared 4-component vector of uint)
|
|
0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
|
|
0:? 'inF0' (layout( location=0) in 4-component vector of float)
|
|
0:? 'inF1' (layout( location=1) in 4-component vector of float)
|
|
0:? 'inF2' (layout( location=2) in 4-component vector of float)
|
|
0:? 'inU0' (layout( location=3) in 4-component vector of uint)
|
|
0:? 'inU1' (layout( location=4) in 4-component vector of uint)
|
|
|
|
// Module Version 10000
|
|
// Generated by (magic number): 80002
|
|
// Id's are bound by 265
|
|
|
|
Capability Shader
|
|
1: ExtInstImport "GLSL.std.450"
|
|
MemoryModel Logical GLSL450
|
|
EntryPoint GLCompute 4 "ComputeShaderFunction" 237 240 243 247 250 253
|
|
ExecutionMode 4 LocalSize 1 1 1
|
|
Source HLSL 500
|
|
Name 4 "ComputeShaderFunction"
|
|
Name 16 "ComputeShaderFunctionS(f1;f1;f1;u1;u1;"
|
|
Name 11 "inF0"
|
|
Name 12 "inF1"
|
|
Name 13 "inF2"
|
|
Name 14 "inU0"
|
|
Name 15 "inU1"
|
|
Name 22 "ComputeShaderFunction1(vf1;vf1;vf1;"
|
|
Name 19 "inF0"
|
|
Name 20 "inF1"
|
|
Name 21 "inF2"
|
|
Name 34 "ComputeShaderFunction2(vf2;vf2;vf2;vu2;vu2;"
|
|
Name 29 "inF0"
|
|
Name 30 "inF1"
|
|
Name 31 "inF2"
|
|
Name 32 "inU0"
|
|
Name 33 "inU1"
|
|
Name 46 "ComputeShaderFunction3(vf3;vf3;vf3;vu3;vu3;"
|
|
Name 41 "inF0"
|
|
Name 42 "inF1"
|
|
Name 43 "inF2"
|
|
Name 44 "inU0"
|
|
Name 45 "inU1"
|
|
Name 58 "@ComputeShaderFunction(vf4;vf4;vf4;vu4;vu4;"
|
|
Name 53 "inF0"
|
|
Name 54 "inF1"
|
|
Name 55 "inF2"
|
|
Name 56 "inU0"
|
|
Name 57 "inU1"
|
|
Name 66 "gs_ua"
|
|
Name 67 "gs_ub"
|
|
Name 72 "out_u1"
|
|
Name 80 "gs_uc"
|
|
Name 111 "gs_ua2"
|
|
Name 112 "gs_ub2"
|
|
Name 115 "out_u2"
|
|
Name 123 "gs_uc2"
|
|
Name 155 "gs_ua3"
|
|
Name 156 "gs_ub3"
|
|
Name 159 "out_u3"
|
|
Name 167 "gs_uc3"
|
|
Name 198 "gs_ua4"
|
|
Name 199 "gs_ub4"
|
|
Name 202 "out_u4"
|
|
Name 210 "gs_uc4"
|
|
Name 235 "inF0"
|
|
Name 237 "inF0"
|
|
Name 239 "inF1"
|
|
Name 240 "inF1"
|
|
Name 242 "inF2"
|
|
Name 243 "inF2"
|
|
Name 245 "inU0"
|
|
Name 247 "inU0"
|
|
Name 249 "inU1"
|
|
Name 250 "inU1"
|
|
Name 253 "@entryPointOutput"
|
|
Name 254 "param"
|
|
Name 256 "param"
|
|
Name 258 "param"
|
|
Name 260 "param"
|
|
Name 262 "param"
|
|
Decorate 237(inF0) Location 0
|
|
Decorate 240(inF1) Location 1
|
|
Decorate 243(inF2) Location 2
|
|
Decorate 247(inU0) Location 3
|
|
Decorate 250(inU1) Location 4
|
|
Decorate 253(@entryPointOutput) Location 0
|
|
2: TypeVoid
|
|
3: TypeFunction 2
|
|
6: TypeFloat 32
|
|
7: TypePointer Function 6(float)
|
|
8: TypeInt 32 0
|
|
9: TypePointer Function 8(int)
|
|
10: TypeFunction 6(float) 7(ptr) 7(ptr) 7(ptr) 9(ptr) 9(ptr)
|
|
18: TypeFunction 6(float) 7(ptr) 7(ptr) 7(ptr)
|
|
24: TypeVector 6(float) 2
|
|
25: TypePointer Function 24(fvec2)
|
|
26: TypeVector 8(int) 2
|
|
27: TypePointer Function 26(ivec2)
|
|
28: TypeFunction 24(fvec2) 25(ptr) 25(ptr) 25(ptr) 27(ptr) 27(ptr)
|
|
36: TypeVector 6(float) 3
|
|
37: TypePointer Function 36(fvec3)
|
|
38: TypeVector 8(int) 3
|
|
39: TypePointer Function 38(ivec3)
|
|
40: TypeFunction 36(fvec3) 37(ptr) 37(ptr) 37(ptr) 39(ptr) 39(ptr)
|
|
48: TypeVector 6(float) 4
|
|
49: TypePointer Function 48(fvec4)
|
|
50: TypeVector 8(int) 4
|
|
51: TypePointer Function 50(ivec4)
|
|
52: TypeFunction 48(fvec4) 49(ptr) 49(ptr) 49(ptr) 51(ptr) 51(ptr)
|
|
61: TypeBool
|
|
62: 6(float) Constant 0
|
|
65: TypePointer Workgroup 8(int)
|
|
66(gs_ua): 65(ptr) Variable Workgroup
|
|
67(gs_ub): 65(ptr) Variable Workgroup
|
|
69: 8(int) Constant 1
|
|
70: 8(int) Constant 0
|
|
80(gs_uc): 65(ptr) Variable Workgroup
|
|
106: TypeVector 61(bool) 2
|
|
107: 24(fvec2) ConstantComposite 62 62
|
|
110: TypePointer Workgroup 26(ivec2)
|
|
111(gs_ua2): 110(ptr) Variable Workgroup
|
|
112(gs_ub2): 110(ptr) Variable Workgroup
|
|
123(gs_uc2): 110(ptr) Variable Workgroup
|
|
144: 6(float) Constant 1065353216
|
|
145: 6(float) Constant 1073741824
|
|
146: 24(fvec2) ConstantComposite 144 145
|
|
150: TypeVector 61(bool) 3
|
|
151: 36(fvec3) ConstantComposite 62 62 62
|
|
154: TypePointer Workgroup 38(ivec3)
|
|
155(gs_ua3): 154(ptr) Variable Workgroup
|
|
156(gs_ub3): 154(ptr) Variable Workgroup
|
|
167(gs_uc3): 154(ptr) Variable Workgroup
|
|
188: 6(float) Constant 1077936128
|
|
189: 36(fvec3) ConstantComposite 144 145 188
|
|
193: TypeVector 61(bool) 4
|
|
194: 48(fvec4) ConstantComposite 62 62 62 62
|
|
197: TypePointer Workgroup 50(ivec4)
|
|
198(gs_ua4): 197(ptr) Variable Workgroup
|
|
199(gs_ub4): 197(ptr) Variable Workgroup
|
|
210(gs_uc4): 197(ptr) Variable Workgroup
|
|
231: 6(float) Constant 1082130432
|
|
232: 48(fvec4) ConstantComposite 144 145 188 231
|
|
236: TypePointer Input 48(fvec4)
|
|
237(inF0): 236(ptr) Variable Input
|
|
240(inF1): 236(ptr) Variable Input
|
|
243(inF2): 236(ptr) Variable Input
|
|
246: TypePointer Input 50(ivec4)
|
|
247(inU0): 246(ptr) Variable Input
|
|
250(inU1): 246(ptr) Variable Input
|
|
252: TypePointer Output 48(fvec4)
|
|
253(@entryPointOutput): 252(ptr) Variable Output
|
|
4(ComputeShaderFunction): 2 Function None 3
|
|
5: Label
|
|
235(inF0): 49(ptr) Variable Function
|
|
239(inF1): 49(ptr) Variable Function
|
|
242(inF2): 49(ptr) Variable Function
|
|
245(inU0): 51(ptr) Variable Function
|
|
249(inU1): 51(ptr) Variable Function
|
|
254(param): 49(ptr) Variable Function
|
|
256(param): 49(ptr) Variable Function
|
|
258(param): 49(ptr) Variable Function
|
|
260(param): 51(ptr) Variable Function
|
|
262(param): 51(ptr) Variable Function
|
|
238: 48(fvec4) Load 237(inF0)
|
|
Store 235(inF0) 238
|
|
241: 48(fvec4) Load 240(inF1)
|
|
Store 239(inF1) 241
|
|
244: 48(fvec4) Load 243(inF2)
|
|
Store 242(inF2) 244
|
|
248: 50(ivec4) Load 247(inU0)
|
|
Store 245(inU0) 248
|
|
251: 50(ivec4) Load 250(inU1)
|
|
Store 249(inU1) 251
|
|
255: 48(fvec4) Load 235(inF0)
|
|
Store 254(param) 255
|
|
257: 48(fvec4) Load 239(inF1)
|
|
Store 256(param) 257
|
|
259: 48(fvec4) Load 242(inF2)
|
|
Store 258(param) 259
|
|
261: 50(ivec4) Load 245(inU0)
|
|
Store 260(param) 261
|
|
263: 50(ivec4) Load 249(inU1)
|
|
Store 262(param) 263
|
|
264: 48(fvec4) FunctionCall 58(@ComputeShaderFunction(vf4;vf4;vf4;vu4;vu4;) 254(param) 256(param) 258(param) 260(param) 262(param)
|
|
Store 253(@entryPointOutput) 264
|
|
Return
|
|
FunctionEnd
|
|
16(ComputeShaderFunctionS(f1;f1;f1;u1;u1;): 6(float) Function None 10
|
|
11(inF0): 7(ptr) FunctionParameter
|
|
12(inF1): 7(ptr) FunctionParameter
|
|
13(inF2): 7(ptr) FunctionParameter
|
|
14(inU0): 9(ptr) FunctionParameter
|
|
15(inU1): 9(ptr) FunctionParameter
|
|
17: Label
|
|
72(out_u1): 9(ptr) Variable Function
|
|
60: 6(float) Load 11(inF0)
|
|
63: 61(bool) FOrdNotEqual 60 62
|
|
64: 61(bool) All 63
|
|
68: 8(int) Load 67(gs_ub)
|
|
71: 2 AtomicIAdd 66(gs_ua) 69 70 68
|
|
73: 8(int) Load 67(gs_ub)
|
|
74: 8(int) AtomicIAdd 66(gs_ua) 69 70 73
|
|
Store 72(out_u1) 74
|
|
75: 8(int) Load 67(gs_ub)
|
|
76: 2 AtomicAnd 66(gs_ua) 69 70 75
|
|
77: 8(int) Load 67(gs_ub)
|
|
78: 8(int) AtomicAnd 66(gs_ua) 69 70 77
|
|
Store 72(out_u1) 78
|
|
79: 8(int) Load 67(gs_ub)
|
|
81: 8(int) Load 80(gs_uc)
|
|
82: 8(int) AtomicCompareExchange 66(gs_ua) 69 70 70 81 79
|
|
Store 72(out_u1) 82
|
|
83: 8(int) Load 67(gs_ub)
|
|
84: 8(int) AtomicExchange 66(gs_ua) 69 70 83
|
|
Store 72(out_u1) 84
|
|
85: 8(int) Load 67(gs_ub)
|
|
86: 2 AtomicSMax 66(gs_ua) 69 70 85
|
|
87: 8(int) Load 67(gs_ub)
|
|
88: 8(int) AtomicUMax 66(gs_ua) 69 70 87
|
|
Store 72(out_u1) 88
|
|
89: 8(int) Load 67(gs_ub)
|
|
90: 2 AtomicSMin 66(gs_ua) 69 70 89
|
|
91: 8(int) Load 67(gs_ub)
|
|
92: 8(int) AtomicUMin 66(gs_ua) 69 70 91
|
|
Store 72(out_u1) 92
|
|
93: 8(int) Load 67(gs_ub)
|
|
94: 2 AtomicOr 66(gs_ua) 69 70 93
|
|
95: 8(int) Load 67(gs_ub)
|
|
96: 8(int) AtomicOr 66(gs_ua) 69 70 95
|
|
Store 72(out_u1) 96
|
|
97: 8(int) Load 67(gs_ub)
|
|
98: 2 AtomicXor 66(gs_ua) 69 70 97
|
|
99: 8(int) Load 67(gs_ub)
|
|
100: 8(int) AtomicXor 66(gs_ua) 69 70 99
|
|
Store 72(out_u1) 100
|
|
ReturnValue 62
|
|
FunctionEnd
|
|
22(ComputeShaderFunction1(vf1;vf1;vf1;): 6(float) Function None 18
|
|
19(inF0): 7(ptr) FunctionParameter
|
|
20(inF1): 7(ptr) FunctionParameter
|
|
21(inF2): 7(ptr) FunctionParameter
|
|
23: Label
|
|
ReturnValue 62
|
|
FunctionEnd
|
|
34(ComputeShaderFunction2(vf2;vf2;vf2;vu2;vu2;): 24(fvec2) Function None 28
|
|
29(inF0): 25(ptr) FunctionParameter
|
|
30(inF1): 25(ptr) FunctionParameter
|
|
31(inF2): 25(ptr) FunctionParameter
|
|
32(inU0): 27(ptr) FunctionParameter
|
|
33(inU1): 27(ptr) FunctionParameter
|
|
35: Label
|
|
115(out_u2): 27(ptr) Variable Function
|
|
105: 24(fvec2) Load 29(inF0)
|
|
108: 106(bvec2) FOrdNotEqual 105 107
|
|
109: 61(bool) All 108
|
|
113: 26(ivec2) Load 112(gs_ub2)
|
|
114: 2 AtomicIAdd 111(gs_ua2) 69 70 113
|
|
116: 26(ivec2) Load 112(gs_ub2)
|
|
117: 26(ivec2) AtomicIAdd 111(gs_ua2) 69 70 116
|
|
Store 115(out_u2) 117
|
|
118: 26(ivec2) Load 112(gs_ub2)
|
|
119: 2 AtomicAnd 111(gs_ua2) 69 70 118
|
|
120: 26(ivec2) Load 112(gs_ub2)
|
|
121: 26(ivec2) AtomicAnd 111(gs_ua2) 69 70 120
|
|
Store 115(out_u2) 121
|
|
122: 26(ivec2) Load 112(gs_ub2)
|
|
124: 26(ivec2) Load 123(gs_uc2)
|
|
125: 26(ivec2) AtomicCompareExchange 111(gs_ua2) 69 70 70 124 122
|
|
Store 115(out_u2) 125
|
|
126: 26(ivec2) Load 112(gs_ub2)
|
|
127: 26(ivec2) AtomicExchange 111(gs_ua2) 69 70 126
|
|
Store 115(out_u2) 127
|
|
128: 26(ivec2) Load 112(gs_ub2)
|
|
129: 2 AtomicSMax 111(gs_ua2) 69 70 128
|
|
130: 26(ivec2) Load 112(gs_ub2)
|
|
131: 26(ivec2) AtomicUMax 111(gs_ua2) 69 70 130
|
|
Store 115(out_u2) 131
|
|
132: 26(ivec2) Load 112(gs_ub2)
|
|
133: 2 AtomicSMin 111(gs_ua2) 69 70 132
|
|
134: 26(ivec2) Load 112(gs_ub2)
|
|
135: 26(ivec2) AtomicUMin 111(gs_ua2) 69 70 134
|
|
Store 115(out_u2) 135
|
|
136: 26(ivec2) Load 112(gs_ub2)
|
|
137: 2 AtomicOr 111(gs_ua2) 69 70 136
|
|
138: 26(ivec2) Load 112(gs_ub2)
|
|
139: 26(ivec2) AtomicOr 111(gs_ua2) 69 70 138
|
|
Store 115(out_u2) 139
|
|
140: 26(ivec2) Load 112(gs_ub2)
|
|
141: 2 AtomicXor 111(gs_ua2) 69 70 140
|
|
142: 26(ivec2) Load 112(gs_ub2)
|
|
143: 26(ivec2) AtomicXor 111(gs_ua2) 69 70 142
|
|
Store 115(out_u2) 143
|
|
ReturnValue 146
|
|
FunctionEnd
|
|
46(ComputeShaderFunction3(vf3;vf3;vf3;vu3;vu3;): 36(fvec3) Function None 40
|
|
41(inF0): 37(ptr) FunctionParameter
|
|
42(inF1): 37(ptr) FunctionParameter
|
|
43(inF2): 37(ptr) FunctionParameter
|
|
44(inU0): 39(ptr) FunctionParameter
|
|
45(inU1): 39(ptr) FunctionParameter
|
|
47: Label
|
|
159(out_u3): 39(ptr) Variable Function
|
|
149: 36(fvec3) Load 41(inF0)
|
|
152: 150(bvec3) FOrdNotEqual 149 151
|
|
153: 61(bool) All 152
|
|
157: 38(ivec3) Load 156(gs_ub3)
|
|
158: 2 AtomicIAdd 155(gs_ua3) 69 70 157
|
|
160: 38(ivec3) Load 156(gs_ub3)
|
|
161: 38(ivec3) AtomicIAdd 155(gs_ua3) 69 70 160
|
|
Store 159(out_u3) 161
|
|
162: 38(ivec3) Load 156(gs_ub3)
|
|
163: 2 AtomicAnd 155(gs_ua3) 69 70 162
|
|
164: 38(ivec3) Load 156(gs_ub3)
|
|
165: 38(ivec3) AtomicAnd 155(gs_ua3) 69 70 164
|
|
Store 159(out_u3) 165
|
|
166: 38(ivec3) Load 156(gs_ub3)
|
|
168: 38(ivec3) Load 167(gs_uc3)
|
|
169: 38(ivec3) AtomicCompareExchange 155(gs_ua3) 69 70 70 168 166
|
|
Store 159(out_u3) 169
|
|
170: 38(ivec3) Load 156(gs_ub3)
|
|
171: 38(ivec3) AtomicExchange 155(gs_ua3) 69 70 170
|
|
Store 159(out_u3) 171
|
|
172: 38(ivec3) Load 156(gs_ub3)
|
|
173: 2 AtomicSMax 155(gs_ua3) 69 70 172
|
|
174: 38(ivec3) Load 156(gs_ub3)
|
|
175: 38(ivec3) AtomicUMax 155(gs_ua3) 69 70 174
|
|
Store 159(out_u3) 175
|
|
176: 38(ivec3) Load 156(gs_ub3)
|
|
177: 2 AtomicSMin 155(gs_ua3) 69 70 176
|
|
178: 38(ivec3) Load 156(gs_ub3)
|
|
179: 38(ivec3) AtomicUMin 155(gs_ua3) 69 70 178
|
|
Store 159(out_u3) 179
|
|
180: 38(ivec3) Load 156(gs_ub3)
|
|
181: 2 AtomicOr 155(gs_ua3) 69 70 180
|
|
182: 38(ivec3) Load 156(gs_ub3)
|
|
183: 38(ivec3) AtomicOr 155(gs_ua3) 69 70 182
|
|
Store 159(out_u3) 183
|
|
184: 38(ivec3) Load 156(gs_ub3)
|
|
185: 2 AtomicXor 155(gs_ua3) 69 70 184
|
|
186: 38(ivec3) Load 156(gs_ub3)
|
|
187: 38(ivec3) AtomicXor 155(gs_ua3) 69 70 186
|
|
Store 159(out_u3) 187
|
|
ReturnValue 189
|
|
FunctionEnd
|
|
58(@ComputeShaderFunction(vf4;vf4;vf4;vu4;vu4;): 48(fvec4) Function None 52
|
|
53(inF0): 49(ptr) FunctionParameter
|
|
54(inF1): 49(ptr) FunctionParameter
|
|
55(inF2): 49(ptr) FunctionParameter
|
|
56(inU0): 51(ptr) FunctionParameter
|
|
57(inU1): 51(ptr) FunctionParameter
|
|
59: Label
|
|
202(out_u4): 51(ptr) Variable Function
|
|
192: 48(fvec4) Load 53(inF0)
|
|
195: 193(bvec4) FOrdNotEqual 192 194
|
|
196: 61(bool) All 195
|
|
200: 50(ivec4) Load 199(gs_ub4)
|
|
201: 2 AtomicIAdd 198(gs_ua4) 69 70 200
|
|
203: 50(ivec4) Load 199(gs_ub4)
|
|
204: 50(ivec4) AtomicIAdd 198(gs_ua4) 69 70 203
|
|
Store 202(out_u4) 204
|
|
205: 50(ivec4) Load 199(gs_ub4)
|
|
206: 2 AtomicAnd 198(gs_ua4) 69 70 205
|
|
207: 50(ivec4) Load 199(gs_ub4)
|
|
208: 50(ivec4) AtomicAnd 198(gs_ua4) 69 70 207
|
|
Store 202(out_u4) 208
|
|
209: 50(ivec4) Load 199(gs_ub4)
|
|
211: 50(ivec4) Load 210(gs_uc4)
|
|
212: 50(ivec4) AtomicCompareExchange 198(gs_ua4) 69 70 70 211 209
|
|
Store 202(out_u4) 212
|
|
213: 50(ivec4) Load 199(gs_ub4)
|
|
214: 50(ivec4) AtomicExchange 198(gs_ua4) 69 70 213
|
|
Store 202(out_u4) 214
|
|
215: 50(ivec4) Load 199(gs_ub4)
|
|
216: 2 AtomicSMax 198(gs_ua4) 69 70 215
|
|
217: 50(ivec4) Load 199(gs_ub4)
|
|
218: 50(ivec4) AtomicUMax 198(gs_ua4) 69 70 217
|
|
Store 202(out_u4) 218
|
|
219: 50(ivec4) Load 199(gs_ub4)
|
|
220: 2 AtomicSMin 198(gs_ua4) 69 70 219
|
|
221: 50(ivec4) Load 199(gs_ub4)
|
|
222: 50(ivec4) AtomicUMin 198(gs_ua4) 69 70 221
|
|
Store 202(out_u4) 222
|
|
223: 50(ivec4) Load 199(gs_ub4)
|
|
224: 2 AtomicOr 198(gs_ua4) 69 70 223
|
|
225: 50(ivec4) Load 199(gs_ub4)
|
|
226: 50(ivec4) AtomicOr 198(gs_ua4) 69 70 225
|
|
Store 202(out_u4) 226
|
|
227: 50(ivec4) Load 199(gs_ub4)
|
|
228: 2 AtomicXor 198(gs_ua4) 69 70 227
|
|
229: 50(ivec4) Load 199(gs_ub4)
|
|
230: 50(ivec4) AtomicXor 198(gs_ua4) 69 70 229
|
|
Store 202(out_u4) 230
|
|
ReturnValue 232
|
|
FunctionEnd
|