hlsl.conditional.frag Shader version: 500 gl_FragCoord origin is upper left 0:? Sequence 0:8 Function Definition: vectorCond( ( temp 4-component vector of float) 0:8 Function Parameters: 0:? Sequence 0:12 Branch: Return with expression 0:11 add ( temp 4-component vector of float) 0:10 add ( temp 4-component vector of float) 0:9 add ( temp 4-component vector of float) 0:9 mix ( temp 4-component vector of float) 0:9 f4: direct index for structure ( uniform 4-component vector of float) 0:9 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:9 Constant: 0:9 2 (const uint) 0:9 t4: direct index for structure ( uniform 4-component vector of float) 0:9 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:9 Constant: 0:9 1 (const uint) 0:9 Convert float to bool ( temp 4-component vector of bool) 0:9 c4: direct index for structure ( uniform 4-component vector of float) 0:9 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:9 Constant: 0:9 0 (const uint) 0:10 mix ( temp 4-component vector of float) 0:10 Construct vec4 ( temp 4-component vector of float) 0:10 f: direct index for structure ( uniform float) 0:10 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:10 Constant: 0:10 4 (const uint) 0:10 Construct vec4 ( temp 4-component vector of float) 0:10 t: direct index for structure ( uniform float) 0:10 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:10 Constant: 0:10 3 (const uint) 0:10 Convert float to bool ( temp 4-component vector of bool) 0:10 c4: direct index for structure ( uniform 4-component vector of float) 0:10 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:10 Constant: 0:10 0 (const uint) 0:11 mix ( temp 4-component vector of float) 0:11 f4: direct index for structure ( uniform 4-component vector of float) 0:11 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:11 Constant: 0:11 2 (const uint) 0:11 t4: direct index for structure ( uniform 4-component vector of float) 0:11 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:11 Constant: 0:11 1 (const uint) 0:11 Compare Less Than ( temp 4-component vector of bool) 0:11 t4: direct index for structure ( uniform 4-component vector of float) 0:11 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:11 Constant: 0:11 1 (const uint) 0:11 f4: direct index for structure ( uniform 4-component vector of float) 0:11 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:11 Constant: 0:11 2 (const uint) 0:12 mix ( temp 4-component vector of float) 0:12 f4: direct index for structure ( uniform 4-component vector of float) 0:12 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:12 Constant: 0:12 2 (const uint) 0:12 Construct vec4 ( temp 4-component vector of float) 0:12 t: direct index for structure ( uniform float) 0:12 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:12 Constant: 0:12 3 (const uint) 0:12 Convert float to bool ( temp 4-component vector of bool) 0:12 c4: direct index for structure ( uniform 4-component vector of float) 0:12 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:12 Constant: 0:12 0 (const uint) 0:16 Function Definition: scalarCond( ( temp 4-component vector of float) 0:16 Function Parameters: 0:? Sequence 0:17 Sequence 0:17 move second child to first child ( temp 4-component vector of float) 0:17 'ret' ( temp 4-component vector of float) 0:17 Test condition and select ( temp 4-component vector of float): no shortcircuit 0:17 Condition 0:17 Compare Not Equal ( temp bool) 0:17 t: direct index for structure ( uniform float) 0:17 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:17 Constant: 0:17 3 (const uint) 0:17 f: direct index for structure ( uniform float) 0:17 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:17 Constant: 0:17 4 (const uint) 0:17 true case 0:17 vector-scale ( temp 4-component vector of float) 0:17 t: direct index for structure ( uniform float) 0:17 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:17 Constant: 0:17 3 (const uint) 0:17 f4: direct index for structure ( uniform 4-component vector of float) 0:17 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:17 Constant: 0:17 2 (const uint) 0:17 false case 0:17 Constant: 0:17 1.000000 0:17 1.000000 0:17 1.000000 0:17 1.000000 0:18 Branch: Return with expression 0:18 'ret' ( temp 4-component vector of float) 0:22 Function Definition: fbSelect(vb2;vf2;vf2; ( temp 2-component vector of float) 0:22 Function Parameters: 0:22 'cnd' ( in 2-component vector of bool) 0:22 'src0' ( in 2-component vector of float) 0:22 'src1' ( in 2-component vector of float) 0:? Sequence 0:23 Branch: Return with expression 0:23 mix ( temp 2-component vector of float) 0:23 'src1' ( in 2-component vector of float) 0:23 'src0' ( in 2-component vector of float) 0:23 'cnd' ( in 2-component vector of bool) 0:27 Function Definition: @PixelShaderFunction(vf4; ( temp 4-component vector of float) 0:27 Function Parameters: 0:27 'input' ( in 4-component vector of float) 0:? Sequence 0:28 Sequence 0:28 move second child to first child ( temp int) 0:28 'a' ( temp int) 0:28 Constant: 0:28 5 (const int) 0:29 Sequence 0:29 move second child to first child ( temp int) 0:29 'b' ( temp int) 0:29 Constant: 0:29 6 (const int) 0:30 Sequence 0:30 move second child to first child ( temp int) 0:30 'c' ( temp int) 0:30 Constant: 0:30 7 (const int) 0:31 Sequence 0:31 move second child to first child ( temp int) 0:31 'd' ( temp int) 0:31 Constant: 0:31 7 (const int) 0:32 Sequence 0:32 move second child to first child ( temp 4-component vector of float) 0:32 'ret' ( temp 4-component vector of float) 0:34 add ( temp 4-component vector of float) 0:33 add ( temp 4-component vector of float) 0:32 add ( temp 4-component vector of float) 0:32 vector-scale ( temp 4-component vector of float) 0:32 Convert int to float ( temp float) 0:32 'a' ( temp int) 0:32 'input' ( in 4-component vector of float) 0:33 vector-scale ( temp 4-component vector of float) 0:33 Convert int to float ( temp float) 0:33 'b' ( temp int) 0:33 'input' ( in 4-component vector of float) 0:34 vector-scale ( temp 4-component vector of float) 0:34 Convert int to float ( temp float) 0:34 'c' ( temp int) 0:34 'input' ( in 4-component vector of float) 0:35 vector-scale ( temp 4-component vector of float) 0:35 Convert int to float ( temp float) 0:35 'd' ( temp int) 0:35 'input' ( in 4-component vector of float) 0:37 Comma ( temp int) 0:37 move second child to first child ( temp int) 0:37 'e' ( temp int) 0:37 move second child to first child ( temp int) 0:37 'a' ( temp int) 0:37 Test condition and select ( temp int): no shortcircuit 0:37 Condition 0:37 Convert int to bool ( temp bool) 0:37 'b' ( temp int) 0:37 true case 0:37 move second child to first child ( temp int) 0:37 'c' ( temp int) 0:37 'd' ( temp int) 0:37 false case 0:37 Constant: 0:37 10 (const int) 0:37 move second child to first child ( temp int) 0:37 'b' ( temp int) 0:37 Test condition and select ( temp int): no shortcircuit 0:37 Condition 0:37 Convert int to bool ( temp bool) 0:37 'a' ( temp int) 0:37 true case 0:37 move second child to first child ( temp int) 0:37 'd' ( temp int) 0:37 'c' ( temp int) 0:37 false case 0:37 Constant: 0:37 11 (const int) 0:39 move second child to first child ( temp 4-component vector of float) 0:39 'f' ( temp 4-component vector of float) 0:39 Test condition and select ( temp 4-component vector of float): no shortcircuit 0:39 Condition 0:39 Compare Less Than ( temp bool) 0:39 direct index ( temp float) 0:39 'ret' ( temp 4-component vector of float) 0:39 Constant: 0:39 0 (const int) 0:39 direct index ( temp float) 0:39 'input' ( in 4-component vector of float) 0:39 Constant: 0:39 1 (const int) 0:39 true case 0:39 vector-scale ( temp 4-component vector of float) 0:39 Convert int to float ( temp float) 0:39 'c' ( temp int) 0:39 'input' ( in 4-component vector of float) 0:39 false case 0:39 vector-scale ( temp 4-component vector of float) 0:39 Convert int to float ( temp float) 0:39 'd' ( temp int) 0:39 'input' ( in 4-component vector of float) 0:40 Sequence 0:40 move second child to first child ( temp uint) 0:40 'g' ( temp uint) 0:40 Test condition and select ( temp uint): no shortcircuit 0:40 Condition 0:40 Compare Greater Than ( temp bool) 0:40 Convert int to float ( temp float) 0:40 'd' ( temp int) 0:40 Constant: 0:40 0.000000 0:40 true case 0:40 Constant: 0:40 21 (const uint) 0:40 false case 0:40 Constant: 0:40 0 (const uint) 0:41 Sequence 0:41 move second child to first child ( temp uint) 0:41 'h' ( temp uint) 0:41 Test condition and select ( temp uint): no shortcircuit 0:41 Condition 0:41 Compare Greater Than ( temp bool) 0:41 Convert uint to float ( temp float) 0:41 'g' ( temp uint) 0:41 Constant: 0:41 0.000000 0:41 true case 0:41 Constant: 0:41 63 (const uint) 0:41 false case 0:41 Constant: 0:41 0 (const uint) 0:42 Sequence 0:42 move second child to first child ( temp uint) 0:42 'i' ( temp uint) 0:42 Test condition and select ( temp uint): no shortcircuit 0:42 Condition 0:42 Compare Greater Than ( temp bool) 0:42 Convert uint to float ( temp float) 0:42 'h' ( temp uint) 0:42 Constant: 0:42 0.000000 0:42 true case 0:42 Constant: 0:42 5 (const uint) 0:42 false case 0:42 Constant: 0:42 1 (const uint) 0:43 Sequence 0:43 move second child to first child ( temp uint) 0:43 'j' ( temp uint) 0:43 Convert int to uint ( temp uint) 0:43 Test condition and select ( temp int): no shortcircuit 0:43 Condition 0:43 Compare Greater Than ( temp bool) 0:43 Convert uint to float ( temp float) 0:43 'i' ( temp uint) 0:43 Constant: 0:43 0.000000 0:43 true case 0:43 Constant: 0:43 43981 (const int) 0:43 false case 0:43 Constant: 0:43 48346 (const int) 0:45 Branch: Return with expression 0:44 add ( temp 4-component vector of float) 0:44 add ( temp 4-component vector of float) 0:44 add ( temp 4-component vector of float) 0:44 add ( temp 4-component vector of float) 0:44 vector-scale ( temp 4-component vector of float) 0:44 Convert int to float ( temp float) 0:44 'e' ( temp int) 0:44 'ret' ( temp 4-component vector of float) 0:44 'f' ( temp 4-component vector of float) 0:44 Function Call: vectorCond( ( temp 4-component vector of float) 0:44 Function Call: scalarCond( ( temp 4-component vector of float) 0:45 Construct vec4 ( temp 4-component vector of float) 0:45 Function Call: fbSelect(vb2;vf2;vf2; ( temp 2-component vector of float) 0:45 Constant: 0:45 true (const bool) 0:45 false (const bool) 0:45 Constant: 0:45 1.000000 0:45 2.000000 0:45 Constant: 0:45 3.000000 0:45 4.000000 0:45 Constant: 0:45 10.000000 0:45 Constant: 0:45 10.000000 0:27 Function Definition: PixelShaderFunction( ( temp void) 0:27 Function Parameters: 0:? Sequence 0:27 move second child to first child ( temp 4-component vector of float) 0:? 'input' ( temp 4-component vector of float) 0:? 'input' (layout( location=0) in 4-component vector of float) 0:27 move second child to first child ( temp 4-component vector of float) 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 0:27 Function Call: @PixelShaderFunction(vf4; ( temp 4-component vector of float) 0:? 'input' ( temp 4-component vector of float) 0:? Linker Objects 0:? 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 0:? 'input' (layout( location=0) in 4-component vector of float) Linked fragment stage: Shader version: 500 gl_FragCoord origin is upper left 0:? Sequence 0:8 Function Definition: vectorCond( ( temp 4-component vector of float) 0:8 Function Parameters: 0:? Sequence 0:12 Branch: Return with expression 0:11 add ( temp 4-component vector of float) 0:10 add ( temp 4-component vector of float) 0:9 add ( temp 4-component vector of float) 0:9 mix ( temp 4-component vector of float) 0:9 f4: direct index for structure ( uniform 4-component vector of float) 0:9 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:9 Constant: 0:9 2 (const uint) 0:9 t4: direct index for structure ( uniform 4-component vector of float) 0:9 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:9 Constant: 0:9 1 (const uint) 0:9 Convert float to bool ( temp 4-component vector of bool) 0:9 c4: direct index for structure ( uniform 4-component vector of float) 0:9 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:9 Constant: 0:9 0 (const uint) 0:10 mix ( temp 4-component vector of float) 0:10 Construct vec4 ( temp 4-component vector of float) 0:10 f: direct index for structure ( uniform float) 0:10 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:10 Constant: 0:10 4 (const uint) 0:10 Construct vec4 ( temp 4-component vector of float) 0:10 t: direct index for structure ( uniform float) 0:10 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:10 Constant: 0:10 3 (const uint) 0:10 Convert float to bool ( temp 4-component vector of bool) 0:10 c4: direct index for structure ( uniform 4-component vector of float) 0:10 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:10 Constant: 0:10 0 (const uint) 0:11 mix ( temp 4-component vector of float) 0:11 f4: direct index for structure ( uniform 4-component vector of float) 0:11 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:11 Constant: 0:11 2 (const uint) 0:11 t4: direct index for structure ( uniform 4-component vector of float) 0:11 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:11 Constant: 0:11 1 (const uint) 0:11 Compare Less Than ( temp 4-component vector of bool) 0:11 t4: direct index for structure ( uniform 4-component vector of float) 0:11 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:11 Constant: 0:11 1 (const uint) 0:11 f4: direct index for structure ( uniform 4-component vector of float) 0:11 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:11 Constant: 0:11 2 (const uint) 0:12 mix ( temp 4-component vector of float) 0:12 f4: direct index for structure ( uniform 4-component vector of float) 0:12 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:12 Constant: 0:12 2 (const uint) 0:12 Construct vec4 ( temp 4-component vector of float) 0:12 t: direct index for structure ( uniform float) 0:12 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:12 Constant: 0:12 3 (const uint) 0:12 Convert float to bool ( temp 4-component vector of bool) 0:12 c4: direct index for structure ( uniform 4-component vector of float) 0:12 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:12 Constant: 0:12 0 (const uint) 0:16 Function Definition: scalarCond( ( temp 4-component vector of float) 0:16 Function Parameters: 0:? Sequence 0:17 Sequence 0:17 move second child to first child ( temp 4-component vector of float) 0:17 'ret' ( temp 4-component vector of float) 0:17 Test condition and select ( temp 4-component vector of float): no shortcircuit 0:17 Condition 0:17 Compare Not Equal ( temp bool) 0:17 t: direct index for structure ( uniform float) 0:17 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:17 Constant: 0:17 3 (const uint) 0:17 f: direct index for structure ( uniform float) 0:17 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:17 Constant: 0:17 4 (const uint) 0:17 true case 0:17 vector-scale ( temp 4-component vector of float) 0:17 t: direct index for structure ( uniform float) 0:17 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:17 Constant: 0:17 3 (const uint) 0:17 f4: direct index for structure ( uniform 4-component vector of float) 0:17 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:17 Constant: 0:17 2 (const uint) 0:17 false case 0:17 Constant: 0:17 1.000000 0:17 1.000000 0:17 1.000000 0:17 1.000000 0:18 Branch: Return with expression 0:18 'ret' ( temp 4-component vector of float) 0:22 Function Definition: fbSelect(vb2;vf2;vf2; ( temp 2-component vector of float) 0:22 Function Parameters: 0:22 'cnd' ( in 2-component vector of bool) 0:22 'src0' ( in 2-component vector of float) 0:22 'src1' ( in 2-component vector of float) 0:? Sequence 0:23 Branch: Return with expression 0:23 mix ( temp 2-component vector of float) 0:23 'src1' ( in 2-component vector of float) 0:23 'src0' ( in 2-component vector of float) 0:23 'cnd' ( in 2-component vector of bool) 0:27 Function Definition: @PixelShaderFunction(vf4; ( temp 4-component vector of float) 0:27 Function Parameters: 0:27 'input' ( in 4-component vector of float) 0:? Sequence 0:28 Sequence 0:28 move second child to first child ( temp int) 0:28 'a' ( temp int) 0:28 Constant: 0:28 5 (const int) 0:29 Sequence 0:29 move second child to first child ( temp int) 0:29 'b' ( temp int) 0:29 Constant: 0:29 6 (const int) 0:30 Sequence 0:30 move second child to first child ( temp int) 0:30 'c' ( temp int) 0:30 Constant: 0:30 7 (const int) 0:31 Sequence 0:31 move second child to first child ( temp int) 0:31 'd' ( temp int) 0:31 Constant: 0:31 7 (const int) 0:32 Sequence 0:32 move second child to first child ( temp 4-component vector of float) 0:32 'ret' ( temp 4-component vector of float) 0:34 add ( temp 4-component vector of float) 0:33 add ( temp 4-component vector of float) 0:32 add ( temp 4-component vector of float) 0:32 vector-scale ( temp 4-component vector of float) 0:32 Convert int to float ( temp float) 0:32 'a' ( temp int) 0:32 'input' ( in 4-component vector of float) 0:33 vector-scale ( temp 4-component vector of float) 0:33 Convert int to float ( temp float) 0:33 'b' ( temp int) 0:33 'input' ( in 4-component vector of float) 0:34 vector-scale ( temp 4-component vector of float) 0:34 Convert int to float ( temp float) 0:34 'c' ( temp int) 0:34 'input' ( in 4-component vector of float) 0:35 vector-scale ( temp 4-component vector of float) 0:35 Convert int to float ( temp float) 0:35 'd' ( temp int) 0:35 'input' ( in 4-component vector of float) 0:37 Comma ( temp int) 0:37 move second child to first child ( temp int) 0:37 'e' ( temp int) 0:37 move second child to first child ( temp int) 0:37 'a' ( temp int) 0:37 Test condition and select ( temp int): no shortcircuit 0:37 Condition 0:37 Convert int to bool ( temp bool) 0:37 'b' ( temp int) 0:37 true case 0:37 move second child to first child ( temp int) 0:37 'c' ( temp int) 0:37 'd' ( temp int) 0:37 false case 0:37 Constant: 0:37 10 (const int) 0:37 move second child to first child ( temp int) 0:37 'b' ( temp int) 0:37 Test condition and select ( temp int): no shortcircuit 0:37 Condition 0:37 Convert int to bool ( temp bool) 0:37 'a' ( temp int) 0:37 true case 0:37 move second child to first child ( temp int) 0:37 'd' ( temp int) 0:37 'c' ( temp int) 0:37 false case 0:37 Constant: 0:37 11 (const int) 0:39 move second child to first child ( temp 4-component vector of float) 0:39 'f' ( temp 4-component vector of float) 0:39 Test condition and select ( temp 4-component vector of float): no shortcircuit 0:39 Condition 0:39 Compare Less Than ( temp bool) 0:39 direct index ( temp float) 0:39 'ret' ( temp 4-component vector of float) 0:39 Constant: 0:39 0 (const int) 0:39 direct index ( temp float) 0:39 'input' ( in 4-component vector of float) 0:39 Constant: 0:39 1 (const int) 0:39 true case 0:39 vector-scale ( temp 4-component vector of float) 0:39 Convert int to float ( temp float) 0:39 'c' ( temp int) 0:39 'input' ( in 4-component vector of float) 0:39 false case 0:39 vector-scale ( temp 4-component vector of float) 0:39 Convert int to float ( temp float) 0:39 'd' ( temp int) 0:39 'input' ( in 4-component vector of float) 0:40 Sequence 0:40 move second child to first child ( temp uint) 0:40 'g' ( temp uint) 0:40 Test condition and select ( temp uint): no shortcircuit 0:40 Condition 0:40 Compare Greater Than ( temp bool) 0:40 Convert int to float ( temp float) 0:40 'd' ( temp int) 0:40 Constant: 0:40 0.000000 0:40 true case 0:40 Constant: 0:40 21 (const uint) 0:40 false case 0:40 Constant: 0:40 0 (const uint) 0:41 Sequence 0:41 move second child to first child ( temp uint) 0:41 'h' ( temp uint) 0:41 Test condition and select ( temp uint): no shortcircuit 0:41 Condition 0:41 Compare Greater Than ( temp bool) 0:41 Convert uint to float ( temp float) 0:41 'g' ( temp uint) 0:41 Constant: 0:41 0.000000 0:41 true case 0:41 Constant: 0:41 63 (const uint) 0:41 false case 0:41 Constant: 0:41 0 (const uint) 0:42 Sequence 0:42 move second child to first child ( temp uint) 0:42 'i' ( temp uint) 0:42 Test condition and select ( temp uint): no shortcircuit 0:42 Condition 0:42 Compare Greater Than ( temp bool) 0:42 Convert uint to float ( temp float) 0:42 'h' ( temp uint) 0:42 Constant: 0:42 0.000000 0:42 true case 0:42 Constant: 0:42 5 (const uint) 0:42 false case 0:42 Constant: 0:42 1 (const uint) 0:43 Sequence 0:43 move second child to first child ( temp uint) 0:43 'j' ( temp uint) 0:43 Convert int to uint ( temp uint) 0:43 Test condition and select ( temp int): no shortcircuit 0:43 Condition 0:43 Compare Greater Than ( temp bool) 0:43 Convert uint to float ( temp float) 0:43 'i' ( temp uint) 0:43 Constant: 0:43 0.000000 0:43 true case 0:43 Constant: 0:43 43981 (const int) 0:43 false case 0:43 Constant: 0:43 48346 (const int) 0:45 Branch: Return with expression 0:44 add ( temp 4-component vector of float) 0:44 add ( temp 4-component vector of float) 0:44 add ( temp 4-component vector of float) 0:44 add ( temp 4-component vector of float) 0:44 vector-scale ( temp 4-component vector of float) 0:44 Convert int to float ( temp float) 0:44 'e' ( temp int) 0:44 'ret' ( temp 4-component vector of float) 0:44 'f' ( temp 4-component vector of float) 0:44 Function Call: vectorCond( ( temp 4-component vector of float) 0:44 Function Call: scalarCond( ( temp 4-component vector of float) 0:45 Construct vec4 ( temp 4-component vector of float) 0:45 Function Call: fbSelect(vb2;vf2;vf2; ( temp 2-component vector of float) 0:45 Constant: 0:45 true (const bool) 0:45 false (const bool) 0:45 Constant: 0:45 1.000000 0:45 2.000000 0:45 Constant: 0:45 3.000000 0:45 4.000000 0:45 Constant: 0:45 10.000000 0:45 Constant: 0:45 10.000000 0:27 Function Definition: PixelShaderFunction( ( temp void) 0:27 Function Parameters: 0:? Sequence 0:27 move second child to first child ( temp 4-component vector of float) 0:? 'input' ( temp 4-component vector of float) 0:? 'input' (layout( location=0) in 4-component vector of float) 0:27 move second child to first child ( temp 4-component vector of float) 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 0:27 Function Call: @PixelShaderFunction(vf4; ( temp 4-component vector of float) 0:? 'input' ( temp 4-component vector of float) 0:? Linker Objects 0:? 'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float c4, uniform 4-component vector of float t4, uniform 4-component vector of float f4, uniform float t, uniform float f}) 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 0:? 'input' (layout( location=0) in 4-component vector of float) // Module Version 10000 // Generated by (magic number): 8000b // Id's are bound by 233 Capability Shader 1: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 EntryPoint Fragment 4 "PixelShaderFunction" 226 229 ExecutionMode 4 OriginUpperLeft Source HLSL 500 Name 4 "PixelShaderFunction" Name 9 "vectorCond(" Name 11 "scalarCond(" Name 22 "fbSelect(vb2;vf2;vf2;" Name 19 "cnd" Name 20 "src0" Name 21 "src1" Name 27 "@PixelShaderFunction(vf4;" Name 26 "input" Name 29 "$Global" MemberName 29($Global) 0 "c4" MemberName 29($Global) 1 "t4" MemberName 29($Global) 2 "f4" MemberName 29($Global) 3 "t" MemberName 29($Global) 4 "f" Name 31 "" Name 85 "ret" Name 110 "a" Name 112 "b" Name 114 "c" Name 116 "d" Name 117 "ret" Name 137 "e" Name 150 "f" Name 169 "g" Name 175 "h" Name 181 "i" Name 187 "j" Name 213 "param" Name 214 "param" Name 215 "param" Name 224 "input" Name 226 "input" Name 229 "@entryPointOutput" Name 230 "param" Decorate 29($Global) Block MemberDecorate 29($Global) 0 Offset 0 MemberDecorate 29($Global) 1 Offset 16 MemberDecorate 29($Global) 2 Offset 32 MemberDecorate 29($Global) 3 Offset 48 MemberDecorate 29($Global) 4 Offset 52 Decorate 31 Binding 0 Decorate 31 DescriptorSet 0 Decorate 226(input) Location 0 Decorate 229(@entryPointOutput) Location 0 2: TypeVoid 3: TypeFunction 2 6: TypeFloat 32 7: TypeVector 6(float) 4 8: TypeFunction 7(fvec4) 13: TypeBool 14: TypeVector 13(bool) 2 15: TypePointer Function 14(bvec2) 16: TypeVector 6(float) 2 17: TypePointer Function 16(fvec2) 18: TypeFunction 16(fvec2) 15(ptr) 17(ptr) 17(ptr) 24: TypePointer Function 7(fvec4) 25: TypeFunction 7(fvec4) 24(ptr) 29($Global): TypeStruct 7(fvec4) 7(fvec4) 7(fvec4) 6(float) 6(float) 30: TypePointer Uniform 29($Global) 31: 30(ptr) Variable Uniform 32: TypeInt 32 1 33: 32(int) Constant 2 34: TypePointer Uniform 7(fvec4) 37: 32(int) Constant 1 40: 32(int) Constant 0 43: TypeVector 13(bool) 4 44: 6(float) Constant 0 45: 7(fvec4) ConstantComposite 44 44 44 44 48: 32(int) Constant 4 49: TypePointer Uniform 6(float) 53: 32(int) Constant 3 96: 6(float) Constant 1065353216 97: 7(fvec4) ConstantComposite 96 96 96 96 109: TypePointer Function 32(int) 111: 32(int) Constant 5 113: 32(int) Constant 6 115: 32(int) Constant 7 139: TypeInt 32 0 140: 139(int) Constant 0 143: 32(int) Constant 10 148: 32(int) Constant 11 151: TypePointer Function 6(float) 154: 139(int) Constant 1 168: TypePointer Function 139(int) 173: 139(int) Constant 21 179: 139(int) Constant 63 185: 139(int) Constant 5 191: 32(int) Constant 43981 192: 32(int) Constant 48346 205: 13(bool) ConstantTrue 206: 13(bool) ConstantFalse 207: 14(bvec2) ConstantComposite 205 206 208: 6(float) Constant 1073741824 209: 16(fvec2) ConstantComposite 96 208 210: 6(float) Constant 1077936128 211: 6(float) Constant 1082130432 212: 16(fvec2) ConstantComposite 210 211 217: 6(float) Constant 1092616192 225: TypePointer Input 7(fvec4) 226(input): 225(ptr) Variable Input 228: TypePointer Output 7(fvec4) 229(@entryPointOutput): 228(ptr) Variable Output 4(PixelShaderFunction): 2 Function None 3 5: Label 224(input): 24(ptr) Variable Function 230(param): 24(ptr) Variable Function 227: 7(fvec4) Load 226(input) Store 224(input) 227 231: 7(fvec4) Load 224(input) Store 230(param) 231 232: 7(fvec4) FunctionCall 27(@PixelShaderFunction(vf4;) 230(param) Store 229(@entryPointOutput) 232 Return FunctionEnd 9(vectorCond(): 7(fvec4) Function None 8 10: Label 35: 34(ptr) AccessChain 31 33 36: 7(fvec4) Load 35 38: 34(ptr) AccessChain 31 37 39: 7(fvec4) Load 38 41: 34(ptr) AccessChain 31 40 42: 7(fvec4) Load 41 46: 43(bvec4) FUnordNotEqual 42 45 47: 7(fvec4) Select 46 39 36 50: 49(ptr) AccessChain 31 48 51: 6(float) Load 50 52: 7(fvec4) CompositeConstruct 51 51 51 51 54: 49(ptr) AccessChain 31 53 55: 6(float) Load 54 56: 7(fvec4) CompositeConstruct 55 55 55 55 57: 34(ptr) AccessChain 31 40 58: 7(fvec4) Load 57 59: 43(bvec4) FUnordNotEqual 58 45 60: 7(fvec4) Select 59 56 52 61: 7(fvec4) FAdd 47 60 62: 34(ptr) AccessChain 31 33 63: 7(fvec4) Load 62 64: 34(ptr) AccessChain 31 37 65: 7(fvec4) Load 64 66: 34(ptr) AccessChain 31 37 67: 7(fvec4) Load 66 68: 34(ptr) AccessChain 31 33 69: 7(fvec4) Load 68 70: 43(bvec4) FOrdLessThan 67 69 71: 7(fvec4) Select 70 65 63 72: 7(fvec4) FAdd 61 71 73: 34(ptr) AccessChain 31 33 74: 7(fvec4) Load 73 75: 49(ptr) AccessChain 31 53 76: 6(float) Load 75 77: 7(fvec4) CompositeConstruct 76 76 76 76 78: 34(ptr) AccessChain 31 40 79: 7(fvec4) Load 78 80: 43(bvec4) FUnordNotEqual 79 45 81: 7(fvec4) Select 80 77 74 82: 7(fvec4) FAdd 72 81 ReturnValue 82 FunctionEnd 11(scalarCond(): 7(fvec4) Function None 8 12: Label 85(ret): 24(ptr) Variable Function 86: 49(ptr) AccessChain 31 53 87: 6(float) Load 86 88: 49(ptr) AccessChain 31 48 89: 6(float) Load 88 90: 13(bool) FUnordNotEqual 87 89 91: 49(ptr) AccessChain 31 53 92: 6(float) Load 91 93: 34(ptr) AccessChain 31 33 94: 7(fvec4) Load 93 95: 7(fvec4) VectorTimesScalar 94 92 98: 43(bvec4) CompositeConstruct 90 90 90 90 99: 7(fvec4) Select 98 95 97 Store 85(ret) 99 100: 7(fvec4) Load 85(ret) ReturnValue 100 FunctionEnd 22(fbSelect(vb2;vf2;vf2;): 16(fvec2) Function None 18 19(cnd): 15(ptr) FunctionParameter 20(src0): 17(ptr) FunctionParameter 21(src1): 17(ptr) FunctionParameter 23: Label 103: 16(fvec2) Load 21(src1) 104: 16(fvec2) Load 20(src0) 105: 14(bvec2) Load 19(cnd) 106: 16(fvec2) Select 105 104 103 ReturnValue 106 FunctionEnd 27(@PixelShaderFunction(vf4;): 7(fvec4) Function None 25 26(input): 24(ptr) FunctionParameter 28: Label 110(a): 109(ptr) Variable Function 112(b): 109(ptr) Variable Function 114(c): 109(ptr) Variable Function 116(d): 109(ptr) Variable Function 117(ret): 24(ptr) Variable Function 137(e): 109(ptr) Variable Function 150(f): 24(ptr) Variable Function 169(g): 168(ptr) Variable Function 175(h): 168(ptr) Variable Function 181(i): 168(ptr) Variable Function 187(j): 168(ptr) Variable Function 213(param): 15(ptr) Variable Function 214(param): 17(ptr) Variable Function 215(param): 17(ptr) Variable Function Store 110(a) 111 Store 112(b) 113 Store 114(c) 115 Store 116(d) 115 118: 32(int) Load 110(a) 119: 6(float) ConvertSToF 118 120: 7(fvec4) Load 26(input) 121: 7(fvec4) VectorTimesScalar 120 119 122: 32(int) Load 112(b) 123: 6(float) ConvertSToF 122 124: 7(fvec4) Load 26(input) 125: 7(fvec4) VectorTimesScalar 124 123 126: 7(fvec4) FAdd 121 125 127: 32(int) Load 114(c) 128: 6(float) ConvertSToF 127 129: 7(fvec4) Load 26(input) 130: 7(fvec4) VectorTimesScalar 129 128 131: 7(fvec4) FAdd 126 130 132: 32(int) Load 116(d) 133: 6(float) ConvertSToF 132 134: 7(fvec4) Load 26(input) 135: 7(fvec4) VectorTimesScalar 134 133 136: 7(fvec4) FAdd 131 135 Store 117(ret) 136 138: 32(int) Load 112(b) 141: 13(bool) INotEqual 138 140 142: 32(int) Load 116(d) Store 114(c) 142 144: 32(int) Select 141 142 143 Store 110(a) 144 Store 137(e) 144 145: 32(int) Load 110(a) 146: 13(bool) INotEqual 145 140 147: 32(int) Load 114(c) Store 116(d) 147 149: 32(int) Select 146 147 148 Store 112(b) 149 152: 151(ptr) AccessChain 117(ret) 140 153: 6(float) Load 152 155: 151(ptr) AccessChain 26(input) 154 156: 6(float) Load 155 157: 13(bool) FOrdLessThan 153 156 158: 32(int) Load 114(c) 159: 6(float) ConvertSToF 158 160: 7(fvec4) Load 26(input) 161: 7(fvec4) VectorTimesScalar 160 159 162: 32(int) Load 116(d) 163: 6(float) ConvertSToF 162 164: 7(fvec4) Load 26(input) 165: 7(fvec4) VectorTimesScalar 164 163 166: 43(bvec4) CompositeConstruct 157 157 157 157 167: 7(fvec4) Select 166 161 165 Store 150(f) 167 170: 32(int) Load 116(d) 171: 6(float) ConvertSToF 170 172: 13(bool) FOrdGreaterThan 171 44 174: 139(int) Select 172 173 140 Store 169(g) 174 176: 139(int) Load 169(g) 177: 6(float) ConvertUToF 176 178: 13(bool) FOrdGreaterThan 177 44 180: 139(int) Select 178 179 140 Store 175(h) 180 182: 139(int) Load 175(h) 183: 6(float) ConvertUToF 182 184: 13(bool) FOrdGreaterThan 183 44 186: 139(int) Select 184 185 154 Store 181(i) 186 188: 139(int) Load 181(i) 189: 6(float) ConvertUToF 188 190: 13(bool) FOrdGreaterThan 189 44 193: 32(int) Select 190 191 192 194: 139(int) Bitcast 193 Store 187(j) 194 195: 32(int) Load 137(e) 196: 6(float) ConvertSToF 195 197: 7(fvec4) Load 117(ret) 198: 7(fvec4) VectorTimesScalar 197 196 199: 7(fvec4) Load 150(f) 200: 7(fvec4) FAdd 198 199 201: 7(fvec4) FunctionCall 9(vectorCond() 202: 7(fvec4) FAdd 200 201 203: 7(fvec4) FunctionCall 11(scalarCond() 204: 7(fvec4) FAdd 202 203 Store 213(param) 207 Store 214(param) 209 Store 215(param) 212 216: 16(fvec2) FunctionCall 22(fbSelect(vb2;vf2;vf2;) 213(param) 214(param) 215(param) 218: 6(float) CompositeExtract 216 0 219: 6(float) CompositeExtract 216 1 220: 7(fvec4) CompositeConstruct 218 219 217 217 221: 7(fvec4) FAdd 204 220 ReturnValue 221 FunctionEnd