Rationalizes the entire tracking of the linker object nodes, effecting GLSL, HLSL, and SPIR-V, to allow tracked objects to be fully edited before their type snapshot for linker objects. Should only effect things when the rest of the AST contained no reference to the symbol, because normal AST nodes were not stale. Also will only effect such objects when their types were edited.
980 lines
48 KiB
Plaintext
980 lines
48 KiB
Plaintext
hlsl.intrinsics.comp
|
|
Shader version: 450
|
|
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 (global bool)
|
|
0:21 'inF0' (in float)
|
|
0:24 AtomicAdd (global 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 (global 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 (global 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 (global 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 (global 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 (global 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 (global bool)
|
|
0:55 'inF0' (in 2-component vector of float)
|
|
0:58 AtomicAdd (global 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 (global 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 (global 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 (global 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 (global 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 (global 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 (global bool)
|
|
0:82 'inF0' (in 3-component vector of float)
|
|
0:85 AtomicAdd (global 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 (global 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 (global 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 (global 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 (global 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 (global 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' (layout(location=0 ) in 4-component vector of float)
|
|
0:105 'inF1' (layout(location=1 ) in 4-component vector of float)
|
|
0:105 'inF2' (layout(location=2 ) in 4-component vector of float)
|
|
0:105 'inU0' (layout(location=3 ) in 4-component vector of uint)
|
|
0:105 'inU1' (layout(location=4 ) in 4-component vector of uint)
|
|
0:? Sequence
|
|
0:109 all (global bool)
|
|
0:109 'inF0' (layout(location=0 ) in 4-component vector of float)
|
|
0:112 AtomicAdd (global 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 (global 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 (global 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 (global 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 (global 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 (global 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 Sequence
|
|
0:128 move second child to first child (temp 4-component vector of float)
|
|
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
|
|
0:? Constant:
|
|
0:? 1.000000
|
|
0:? 2.000000
|
|
0:? 3.000000
|
|
0:? 4.000000
|
|
0:128 Branch: Return
|
|
0:? Linker Objects
|
|
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)
|
|
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)
|
|
|
|
|
|
Linked compute stage:
|
|
|
|
|
|
Shader version: 450
|
|
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 (global bool)
|
|
0:21 'inF0' (in float)
|
|
0:24 AtomicAdd (global 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 (global 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 (global 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 (global 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 (global 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 (global 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 (global bool)
|
|
0:55 'inF0' (in 2-component vector of float)
|
|
0:58 AtomicAdd (global 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 (global 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 (global 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 (global 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 (global 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 (global 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 (global bool)
|
|
0:82 'inF0' (in 3-component vector of float)
|
|
0:85 AtomicAdd (global 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 (global 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 (global 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 (global 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 (global 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 (global 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' (layout(location=0 ) in 4-component vector of float)
|
|
0:105 'inF1' (layout(location=1 ) in 4-component vector of float)
|
|
0:105 'inF2' (layout(location=2 ) in 4-component vector of float)
|
|
0:105 'inU0' (layout(location=3 ) in 4-component vector of uint)
|
|
0:105 'inU1' (layout(location=4 ) in 4-component vector of uint)
|
|
0:? Sequence
|
|
0:109 all (global bool)
|
|
0:109 'inF0' (layout(location=0 ) in 4-component vector of float)
|
|
0:112 AtomicAdd (global 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 (global 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 (global 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 (global 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 (global 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 (global 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 Sequence
|
|
0:128 move second child to first child (temp 4-component vector of float)
|
|
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
|
|
0:? Constant:
|
|
0:? 1.000000
|
|
0:? 2.000000
|
|
0:? 3.000000
|
|
0:? 4.000000
|
|
0:128 Branch: Return
|
|
0:? Linker Objects
|
|
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)
|
|
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)
|
|
|
|
// Module Version 10000
|
|
// Generated by (magic number): 80001
|
|
// Id's are bound by 224
|
|
|
|
Capability Shader
|
|
1: ExtInstImport "GLSL.std.450"
|
|
MemoryModel Logical GLSL450
|
|
EntryPoint GLCompute 4 "ComputeShaderFunction" 175 215 219 220 222 223
|
|
ExecutionMode 4 LocalSize 1 1 1
|
|
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 52 "gs_ua"
|
|
Name 53 "gs_ub"
|
|
Name 58 "out_u1"
|
|
Name 66 "gs_uc"
|
|
Name 95 "gs_ua2"
|
|
Name 96 "gs_ub2"
|
|
Name 99 "out_u2"
|
|
Name 107 "gs_uc2"
|
|
Name 136 "gs_ua3"
|
|
Name 137 "gs_ub3"
|
|
Name 140 "out_u3"
|
|
Name 148 "gs_uc3"
|
|
Name 175 "inF0"
|
|
Name 180 "gs_ua4"
|
|
Name 181 "gs_ub4"
|
|
Name 185 "out_u4"
|
|
Name 193 "gs_uc4"
|
|
Name 215 "@entryPointOutput"
|
|
Name 219 "inF1"
|
|
Name 220 "inF2"
|
|
Name 222 "inU0"
|
|
Name 223 "inU1"
|
|
Decorate 175(inF0) Location 0
|
|
Decorate 215(@entryPointOutput) Location 0
|
|
Decorate 219(inF1) Location 1
|
|
Decorate 220(inF2) Location 2
|
|
Decorate 222(inU0) Location 3
|
|
Decorate 223(inU1) Location 4
|
|
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)
|
|
49: TypeBool
|
|
51: TypePointer Workgroup 8(int)
|
|
52(gs_ua): 51(ptr) Variable Workgroup
|
|
53(gs_ub): 51(ptr) Variable Workgroup
|
|
55: 8(int) Constant 1
|
|
56: 8(int) Constant 0
|
|
66(gs_uc): 51(ptr) Variable Workgroup
|
|
87: 6(float) Constant 0
|
|
94: TypePointer Workgroup 26(ivec2)
|
|
95(gs_ua2): 94(ptr) Variable Workgroup
|
|
96(gs_ub2): 94(ptr) Variable Workgroup
|
|
107(gs_uc2): 94(ptr) Variable Workgroup
|
|
128: 6(float) Constant 1065353216
|
|
129: 6(float) Constant 1073741824
|
|
130: 24(fvec2) ConstantComposite 128 129
|
|
135: TypePointer Workgroup 38(ivec3)
|
|
136(gs_ua3): 135(ptr) Variable Workgroup
|
|
137(gs_ub3): 135(ptr) Variable Workgroup
|
|
148(gs_uc3): 135(ptr) Variable Workgroup
|
|
169: 6(float) Constant 1077936128
|
|
170: 36(fvec3) ConstantComposite 128 129 169
|
|
173: TypeVector 6(float) 4
|
|
174: TypePointer Input 173(fvec4)
|
|
175(inF0): 174(ptr) Variable Input
|
|
178: TypeVector 8(int) 4
|
|
179: TypePointer Workgroup 178(ivec4)
|
|
180(gs_ua4): 179(ptr) Variable Workgroup
|
|
181(gs_ub4): 179(ptr) Variable Workgroup
|
|
184: TypePointer Function 178(ivec4)
|
|
193(gs_uc4): 179(ptr) Variable Workgroup
|
|
214: TypePointer Output 173(fvec4)
|
|
215(@entryPointOutput): 214(ptr) Variable Output
|
|
216: 6(float) Constant 1082130432
|
|
217: 173(fvec4) ConstantComposite 128 129 169 216
|
|
219(inF1): 174(ptr) Variable Input
|
|
220(inF2): 174(ptr) Variable Input
|
|
221: TypePointer Input 178(ivec4)
|
|
222(inU0): 221(ptr) Variable Input
|
|
223(inU1): 221(ptr) Variable Input
|
|
4(ComputeShaderFunction): 2 Function None 3
|
|
5: Label
|
|
185(out_u4): 184(ptr) Variable Function
|
|
176: 173(fvec4) Load 175(inF0)
|
|
177: 49(bool) All 176
|
|
182: 178(ivec4) Load 181(gs_ub4)
|
|
183: 2 AtomicIAdd 180(gs_ua4) 55 56 182
|
|
186: 178(ivec4) Load 181(gs_ub4)
|
|
187: 178(ivec4) AtomicIAdd 180(gs_ua4) 55 56 186
|
|
Store 185(out_u4) 187
|
|
188: 178(ivec4) Load 181(gs_ub4)
|
|
189: 2 AtomicAnd 180(gs_ua4) 55 56 188
|
|
190: 178(ivec4) Load 181(gs_ub4)
|
|
191: 178(ivec4) AtomicAnd 180(gs_ua4) 55 56 190
|
|
Store 185(out_u4) 191
|
|
192: 178(ivec4) Load 181(gs_ub4)
|
|
194: 178(ivec4) Load 193(gs_uc4)
|
|
195: 178(ivec4) AtomicCompareExchange 180(gs_ua4) 55 56 56 194 192
|
|
Store 185(out_u4) 195
|
|
196: 178(ivec4) Load 181(gs_ub4)
|
|
197: 178(ivec4) AtomicExchange 180(gs_ua4) 55 56 196
|
|
Store 185(out_u4) 197
|
|
198: 178(ivec4) Load 181(gs_ub4)
|
|
199: 2 AtomicSMax 180(gs_ua4) 55 56 198
|
|
200: 178(ivec4) Load 181(gs_ub4)
|
|
201: 178(ivec4) AtomicUMax 180(gs_ua4) 55 56 200
|
|
Store 185(out_u4) 201
|
|
202: 178(ivec4) Load 181(gs_ub4)
|
|
203: 2 AtomicSMin 180(gs_ua4) 55 56 202
|
|
204: 178(ivec4) Load 181(gs_ub4)
|
|
205: 178(ivec4) AtomicUMin 180(gs_ua4) 55 56 204
|
|
Store 185(out_u4) 205
|
|
206: 178(ivec4) Load 181(gs_ub4)
|
|
207: 2 AtomicOr 180(gs_ua4) 55 56 206
|
|
208: 178(ivec4) Load 181(gs_ub4)
|
|
209: 178(ivec4) AtomicOr 180(gs_ua4) 55 56 208
|
|
Store 185(out_u4) 209
|
|
210: 178(ivec4) Load 181(gs_ub4)
|
|
211: 2 AtomicXor 180(gs_ua4) 55 56 210
|
|
212: 178(ivec4) Load 181(gs_ub4)
|
|
213: 178(ivec4) AtomicXor 180(gs_ua4) 55 56 212
|
|
Store 185(out_u4) 213
|
|
Store 215(@entryPointOutput) 217
|
|
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
|
|
58(out_u1): 9(ptr) Variable Function
|
|
48: 6(float) Load 11(inF0)
|
|
50: 49(bool) All 48
|
|
54: 8(int) Load 53(gs_ub)
|
|
57: 2 AtomicIAdd 52(gs_ua) 55 56 54
|
|
59: 8(int) Load 53(gs_ub)
|
|
60: 8(int) AtomicIAdd 52(gs_ua) 55 56 59
|
|
Store 58(out_u1) 60
|
|
61: 8(int) Load 53(gs_ub)
|
|
62: 2 AtomicAnd 52(gs_ua) 55 56 61
|
|
63: 8(int) Load 53(gs_ub)
|
|
64: 8(int) AtomicAnd 52(gs_ua) 55 56 63
|
|
Store 58(out_u1) 64
|
|
65: 8(int) Load 53(gs_ub)
|
|
67: 8(int) Load 66(gs_uc)
|
|
68: 8(int) AtomicCompareExchange 52(gs_ua) 55 56 56 67 65
|
|
Store 58(out_u1) 68
|
|
69: 8(int) Load 53(gs_ub)
|
|
70: 8(int) AtomicExchange 52(gs_ua) 55 56 69
|
|
Store 58(out_u1) 70
|
|
71: 8(int) Load 53(gs_ub)
|
|
72: 2 AtomicSMax 52(gs_ua) 55 56 71
|
|
73: 8(int) Load 53(gs_ub)
|
|
74: 8(int) AtomicUMax 52(gs_ua) 55 56 73
|
|
Store 58(out_u1) 74
|
|
75: 8(int) Load 53(gs_ub)
|
|
76: 2 AtomicSMin 52(gs_ua) 55 56 75
|
|
77: 8(int) Load 53(gs_ub)
|
|
78: 8(int) AtomicUMin 52(gs_ua) 55 56 77
|
|
Store 58(out_u1) 78
|
|
79: 8(int) Load 53(gs_ub)
|
|
80: 2 AtomicOr 52(gs_ua) 55 56 79
|
|
81: 8(int) Load 53(gs_ub)
|
|
82: 8(int) AtomicOr 52(gs_ua) 55 56 81
|
|
Store 58(out_u1) 82
|
|
83: 8(int) Load 53(gs_ub)
|
|
84: 2 AtomicXor 52(gs_ua) 55 56 83
|
|
85: 8(int) Load 53(gs_ub)
|
|
86: 8(int) AtomicXor 52(gs_ua) 55 56 85
|
|
Store 58(out_u1) 86
|
|
ReturnValue 87
|
|
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 87
|
|
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
|
|
99(out_u2): 27(ptr) Variable Function
|
|
92: 24(fvec2) Load 29(inF0)
|
|
93: 49(bool) All 92
|
|
97: 26(ivec2) Load 96(gs_ub2)
|
|
98: 2 AtomicIAdd 95(gs_ua2) 55 56 97
|
|
100: 26(ivec2) Load 96(gs_ub2)
|
|
101: 26(ivec2) AtomicIAdd 95(gs_ua2) 55 56 100
|
|
Store 99(out_u2) 101
|
|
102: 26(ivec2) Load 96(gs_ub2)
|
|
103: 2 AtomicAnd 95(gs_ua2) 55 56 102
|
|
104: 26(ivec2) Load 96(gs_ub2)
|
|
105: 26(ivec2) AtomicAnd 95(gs_ua2) 55 56 104
|
|
Store 99(out_u2) 105
|
|
106: 26(ivec2) Load 96(gs_ub2)
|
|
108: 26(ivec2) Load 107(gs_uc2)
|
|
109: 26(ivec2) AtomicCompareExchange 95(gs_ua2) 55 56 56 108 106
|
|
Store 99(out_u2) 109
|
|
110: 26(ivec2) Load 96(gs_ub2)
|
|
111: 26(ivec2) AtomicExchange 95(gs_ua2) 55 56 110
|
|
Store 99(out_u2) 111
|
|
112: 26(ivec2) Load 96(gs_ub2)
|
|
113: 2 AtomicSMax 95(gs_ua2) 55 56 112
|
|
114: 26(ivec2) Load 96(gs_ub2)
|
|
115: 26(ivec2) AtomicUMax 95(gs_ua2) 55 56 114
|
|
Store 99(out_u2) 115
|
|
116: 26(ivec2) Load 96(gs_ub2)
|
|
117: 2 AtomicSMin 95(gs_ua2) 55 56 116
|
|
118: 26(ivec2) Load 96(gs_ub2)
|
|
119: 26(ivec2) AtomicUMin 95(gs_ua2) 55 56 118
|
|
Store 99(out_u2) 119
|
|
120: 26(ivec2) Load 96(gs_ub2)
|
|
121: 2 AtomicOr 95(gs_ua2) 55 56 120
|
|
122: 26(ivec2) Load 96(gs_ub2)
|
|
123: 26(ivec2) AtomicOr 95(gs_ua2) 55 56 122
|
|
Store 99(out_u2) 123
|
|
124: 26(ivec2) Load 96(gs_ub2)
|
|
125: 2 AtomicXor 95(gs_ua2) 55 56 124
|
|
126: 26(ivec2) Load 96(gs_ub2)
|
|
127: 26(ivec2) AtomicXor 95(gs_ua2) 55 56 126
|
|
Store 99(out_u2) 127
|
|
ReturnValue 130
|
|
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
|
|
140(out_u3): 39(ptr) Variable Function
|
|
133: 36(fvec3) Load 41(inF0)
|
|
134: 49(bool) All 133
|
|
138: 38(ivec3) Load 137(gs_ub3)
|
|
139: 2 AtomicIAdd 136(gs_ua3) 55 56 138
|
|
141: 38(ivec3) Load 137(gs_ub3)
|
|
142: 38(ivec3) AtomicIAdd 136(gs_ua3) 55 56 141
|
|
Store 140(out_u3) 142
|
|
143: 38(ivec3) Load 137(gs_ub3)
|
|
144: 2 AtomicAnd 136(gs_ua3) 55 56 143
|
|
145: 38(ivec3) Load 137(gs_ub3)
|
|
146: 38(ivec3) AtomicAnd 136(gs_ua3) 55 56 145
|
|
Store 140(out_u3) 146
|
|
147: 38(ivec3) Load 137(gs_ub3)
|
|
149: 38(ivec3) Load 148(gs_uc3)
|
|
150: 38(ivec3) AtomicCompareExchange 136(gs_ua3) 55 56 56 149 147
|
|
Store 140(out_u3) 150
|
|
151: 38(ivec3) Load 137(gs_ub3)
|
|
152: 38(ivec3) AtomicExchange 136(gs_ua3) 55 56 151
|
|
Store 140(out_u3) 152
|
|
153: 38(ivec3) Load 137(gs_ub3)
|
|
154: 2 AtomicSMax 136(gs_ua3) 55 56 153
|
|
155: 38(ivec3) Load 137(gs_ub3)
|
|
156: 38(ivec3) AtomicUMax 136(gs_ua3) 55 56 155
|
|
Store 140(out_u3) 156
|
|
157: 38(ivec3) Load 137(gs_ub3)
|
|
158: 2 AtomicSMin 136(gs_ua3) 55 56 157
|
|
159: 38(ivec3) Load 137(gs_ub3)
|
|
160: 38(ivec3) AtomicUMin 136(gs_ua3) 55 56 159
|
|
Store 140(out_u3) 160
|
|
161: 38(ivec3) Load 137(gs_ub3)
|
|
162: 2 AtomicOr 136(gs_ua3) 55 56 161
|
|
163: 38(ivec3) Load 137(gs_ub3)
|
|
164: 38(ivec3) AtomicOr 136(gs_ua3) 55 56 163
|
|
Store 140(out_u3) 164
|
|
165: 38(ivec3) Load 137(gs_ub3)
|
|
166: 2 AtomicXor 136(gs_ua3) 55 56 165
|
|
167: 38(ivec3) Load 137(gs_ub3)
|
|
168: 38(ivec3) AtomicXor 136(gs_ua3) 55 56 167
|
|
Store 140(out_u3) 168
|
|
ReturnValue 170
|
|
FunctionEnd
|