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:10 Branch: Return with expression 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:14 Function Definition: @PixelShaderFunction(vf4; ( temp 4-component vector of float) 0:14 Function Parameters: 0:14 'input' ( in 4-component vector of float) 0:? Sequence 0:15 Sequence 0:15 move second child to first child ( temp int) 0:15 'a' ( temp int) 0:15 Constant: 0:15 5 (const int) 0:16 Sequence 0:16 move second child to first child ( temp int) 0:16 'b' ( temp int) 0:16 Constant: 0:16 6 (const int) 0:17 Sequence 0:17 move second child to first child ( temp int) 0:17 'c' ( temp int) 0:17 Constant: 0:17 7 (const int) 0:18 Sequence 0:18 move second child to first child ( temp int) 0:18 'd' ( temp int) 0:18 Constant: 0:18 7 (const int) 0:19 Sequence 0:19 move second child to first child ( temp 4-component vector of float) 0:19 'ret' ( temp 4-component vector of float) 0:21 add ( temp 4-component vector of float) 0:20 add ( temp 4-component vector of float) 0:19 add ( temp 4-component vector of float) 0:19 vector-scale ( temp 4-component vector of float) 0:19 Convert int to float ( temp float) 0:19 'a' ( temp int) 0:19 'input' ( in 4-component vector of float) 0:20 vector-scale ( temp 4-component vector of float) 0:20 Convert int to float ( temp float) 0:20 'b' ( temp int) 0:20 'input' ( in 4-component vector of float) 0:21 vector-scale ( temp 4-component vector of float) 0:21 Convert int to float ( temp float) 0:21 'c' ( temp int) 0:21 'input' ( in 4-component vector of float) 0:22 vector-scale ( temp 4-component vector of float) 0:22 Convert int to float ( temp float) 0:22 'd' ( temp int) 0:22 'input' ( in 4-component vector of float) 0:24 Comma ( temp int) 0:24 move second child to first child ( temp int) 0:24 'e' ( temp int) 0:24 move second child to first child ( temp int) 0:24 'a' ( temp int) 0:24 Test condition and select ( temp int) 0:24 Condition 0:24 Convert int to bool ( temp bool) 0:24 'b' ( temp int) 0:24 true case 0:24 move second child to first child ( temp int) 0:24 'c' ( temp int) 0:24 'd' ( temp int) 0:24 false case 0:24 Constant: 0:24 10 (const int) 0:24 move second child to first child ( temp int) 0:24 'b' ( temp int) 0:24 Test condition and select ( temp int) 0:24 Condition 0:24 Convert int to bool ( temp bool) 0:24 'a' ( temp int) 0:24 true case 0:24 move second child to first child ( temp int) 0:24 'd' ( temp int) 0:24 'c' ( temp int) 0:24 false case 0:24 Constant: 0:24 11 (const int) 0:26 move second child to first child ( temp 4-component vector of float) 0:26 'f' ( temp 4-component vector of float) 0:26 Test condition and select ( temp 4-component vector of float) 0:26 Condition 0:26 Compare Less Than ( temp bool) 0:26 direct index ( temp float) 0:26 'ret' ( temp 4-component vector of float) 0:26 Constant: 0:26 0 (const int) 0:26 direct index ( temp float) 0:26 'input' ( in 4-component vector of float) 0:26 Constant: 0:26 1 (const int) 0:26 true case 0:26 vector-scale ( temp 4-component vector of float) 0:26 Convert int to float ( temp float) 0:26 'c' ( temp int) 0:26 'input' ( in 4-component vector of float) 0:26 false case 0:26 vector-scale ( temp 4-component vector of float) 0:26 Convert int to float ( temp float) 0:26 'd' ( temp int) 0:26 'input' ( in 4-component vector of float) 0:27 Branch: Return with expression 0:27 add ( temp 4-component vector of float) 0:27 add ( temp 4-component vector of float) 0:27 vector-scale ( temp 4-component vector of float) 0:27 Convert int to float ( temp float) 0:27 'e' ( temp int) 0:27 'ret' ( temp 4-component vector of float) 0:27 'f' ( temp 4-component vector of float) 0:27 Function Call: vectorCond( ( temp 4-component vector of float) 0:14 Function Definition: PixelShaderFunction( ( temp void) 0:14 Function Parameters: 0:? Sequence 0:14 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:14 move second child to first child ( temp 4-component vector of float) 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 0:14 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:10 Branch: Return with expression 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:14 Function Definition: @PixelShaderFunction(vf4; ( temp 4-component vector of float) 0:14 Function Parameters: 0:14 'input' ( in 4-component vector of float) 0:? Sequence 0:15 Sequence 0:15 move second child to first child ( temp int) 0:15 'a' ( temp int) 0:15 Constant: 0:15 5 (const int) 0:16 Sequence 0:16 move second child to first child ( temp int) 0:16 'b' ( temp int) 0:16 Constant: 0:16 6 (const int) 0:17 Sequence 0:17 move second child to first child ( temp int) 0:17 'c' ( temp int) 0:17 Constant: 0:17 7 (const int) 0:18 Sequence 0:18 move second child to first child ( temp int) 0:18 'd' ( temp int) 0:18 Constant: 0:18 7 (const int) 0:19 Sequence 0:19 move second child to first child ( temp 4-component vector of float) 0:19 'ret' ( temp 4-component vector of float) 0:21 add ( temp 4-component vector of float) 0:20 add ( temp 4-component vector of float) 0:19 add ( temp 4-component vector of float) 0:19 vector-scale ( temp 4-component vector of float) 0:19 Convert int to float ( temp float) 0:19 'a' ( temp int) 0:19 'input' ( in 4-component vector of float) 0:20 vector-scale ( temp 4-component vector of float) 0:20 Convert int to float ( temp float) 0:20 'b' ( temp int) 0:20 'input' ( in 4-component vector of float) 0:21 vector-scale ( temp 4-component vector of float) 0:21 Convert int to float ( temp float) 0:21 'c' ( temp int) 0:21 'input' ( in 4-component vector of float) 0:22 vector-scale ( temp 4-component vector of float) 0:22 Convert int to float ( temp float) 0:22 'd' ( temp int) 0:22 'input' ( in 4-component vector of float) 0:24 Comma ( temp int) 0:24 move second child to first child ( temp int) 0:24 'e' ( temp int) 0:24 move second child to first child ( temp int) 0:24 'a' ( temp int) 0:24 Test condition and select ( temp int) 0:24 Condition 0:24 Convert int to bool ( temp bool) 0:24 'b' ( temp int) 0:24 true case 0:24 move second child to first child ( temp int) 0:24 'c' ( temp int) 0:24 'd' ( temp int) 0:24 false case 0:24 Constant: 0:24 10 (const int) 0:24 move second child to first child ( temp int) 0:24 'b' ( temp int) 0:24 Test condition and select ( temp int) 0:24 Condition 0:24 Convert int to bool ( temp bool) 0:24 'a' ( temp int) 0:24 true case 0:24 move second child to first child ( temp int) 0:24 'd' ( temp int) 0:24 'c' ( temp int) 0:24 false case 0:24 Constant: 0:24 11 (const int) 0:26 move second child to first child ( temp 4-component vector of float) 0:26 'f' ( temp 4-component vector of float) 0:26 Test condition and select ( temp 4-component vector of float) 0:26 Condition 0:26 Compare Less Than ( temp bool) 0:26 direct index ( temp float) 0:26 'ret' ( temp 4-component vector of float) 0:26 Constant: 0:26 0 (const int) 0:26 direct index ( temp float) 0:26 'input' ( in 4-component vector of float) 0:26 Constant: 0:26 1 (const int) 0:26 true case 0:26 vector-scale ( temp 4-component vector of float) 0:26 Convert int to float ( temp float) 0:26 'c' ( temp int) 0:26 'input' ( in 4-component vector of float) 0:26 false case 0:26 vector-scale ( temp 4-component vector of float) 0:26 Convert int to float ( temp float) 0:26 'd' ( temp int) 0:26 'input' ( in 4-component vector of float) 0:27 Branch: Return with expression 0:27 add ( temp 4-component vector of float) 0:27 add ( temp 4-component vector of float) 0:27 vector-scale ( temp 4-component vector of float) 0:27 Convert int to float ( temp float) 0:27 'e' ( temp int) 0:27 'ret' ( temp 4-component vector of float) 0:27 'f' ( temp 4-component vector of float) 0:27 Function Call: vectorCond( ( temp 4-component vector of float) 0:14 Function Definition: PixelShaderFunction( ( temp void) 0:14 Function Parameters: 0:? Sequence 0:14 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:14 move second child to first child ( temp 4-component vector of float) 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 0:14 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): 80001 // Id's are bound by 141 Capability Shader 1: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 EntryPoint Fragment 4 "PixelShaderFunction" 134 137 ExecutionMode 4 OriginUpperLeft Source HLSL 500 Name 4 "PixelShaderFunction" Name 9 "vectorCond(" Name 14 "@PixelShaderFunction(vf4;" Name 13 "input" Name 16 "$Global" MemberName 16($Global) 0 "c4" MemberName 16($Global) 1 "t4" MemberName 16($Global) 2 "f4" MemberName 16($Global) 3 "t" MemberName 16($Global) 4 "f" Name 18 "" Name 53 "a" Name 55 "b" Name 57 "c" Name 59 "d" Name 60 "ret" Name 80 "e" Name 101 "f" Name 132 "input" Name 134 "input" Name 137 "@entryPointOutput" Name 138 "param" MemberDecorate 16($Global) 0 Offset 0 MemberDecorate 16($Global) 1 Offset 16 MemberDecorate 16($Global) 2 Offset 32 MemberDecorate 16($Global) 3 Offset 48 MemberDecorate 16($Global) 4 Offset 52 Decorate 16($Global) Block Decorate 18 DescriptorSet 0 Decorate 134(input) Location 0 Decorate 137(@entryPointOutput) Location 0 2: TypeVoid 3: TypeFunction 2 6: TypeFloat 32 7: TypeVector 6(float) 4 8: TypeFunction 7(fvec4) 11: TypePointer Function 7(fvec4) 12: TypeFunction 7(fvec4) 11(ptr) 16($Global): TypeStruct 7(fvec4) 7(fvec4) 7(fvec4) 6(float) 6(float) 17: TypePointer Uniform 16($Global) 18: 17(ptr) Variable Uniform 19: TypeInt 32 1 20: 19(int) Constant 2 21: TypePointer Uniform 7(fvec4) 24: 19(int) Constant 1 27: 19(int) Constant 0 30: TypeBool 31: TypeVector 30(bool) 4 32: 6(float) Constant 0 33: 7(fvec4) ConstantComposite 32 32 32 32 36: 19(int) Constant 4 37: TypePointer Uniform 6(float) 41: 19(int) Constant 3 52: TypePointer Function 19(int) 54: 19(int) Constant 5 56: 19(int) Constant 6 58: 19(int) Constant 7 83: TypeInt 32 0 84: 83(int) Constant 0 90: 19(int) Constant 10 99: 19(int) Constant 11 103: TypePointer Function 6(float) 106: 83(int) Constant 1 133: TypePointer Input 7(fvec4) 134(input): 133(ptr) Variable Input 136: TypePointer Output 7(fvec4) 137(@entryPointOutput): 136(ptr) Variable Output 4(PixelShaderFunction): 2 Function None 3 5: Label 132(input): 11(ptr) Variable Function 138(param): 11(ptr) Variable Function 135: 7(fvec4) Load 134(input) Store 132(input) 135 139: 7(fvec4) Load 132(input) Store 138(param) 139 140: 7(fvec4) FunctionCall 14(@PixelShaderFunction(vf4;) 138(param) Store 137(@entryPointOutput) 140 Return FunctionEnd 9(vectorCond(): 7(fvec4) Function None 8 10: Label 22: 21(ptr) AccessChain 18 20 23: 7(fvec4) Load 22 25: 21(ptr) AccessChain 18 24 26: 7(fvec4) Load 25 28: 21(ptr) AccessChain 18 27 29: 7(fvec4) Load 28 34: 31(bvec4) FOrdNotEqual 29 33 35: 7(fvec4) Select 34 26 23 38: 37(ptr) AccessChain 18 36 39: 6(float) Load 38 40: 7(fvec4) CompositeConstruct 39 39 39 39 42: 37(ptr) AccessChain 18 41 43: 6(float) Load 42 44: 7(fvec4) CompositeConstruct 43 43 43 43 45: 21(ptr) AccessChain 18 27 46: 7(fvec4) Load 45 47: 31(bvec4) FOrdNotEqual 46 33 48: 7(fvec4) Select 47 44 40 49: 7(fvec4) FAdd 35 48 ReturnValue 49 FunctionEnd 14(@PixelShaderFunction(vf4;): 7(fvec4) Function None 12 13(input): 11(ptr) FunctionParameter 15: Label 53(a): 52(ptr) Variable Function 55(b): 52(ptr) Variable Function 57(c): 52(ptr) Variable Function 59(d): 52(ptr) Variable Function 60(ret): 11(ptr) Variable Function 80(e): 52(ptr) Variable Function 81: 52(ptr) Variable Function 92: 52(ptr) Variable Function 101(f): 11(ptr) Variable Function 102: 11(ptr) Variable Function Store 53(a) 54 Store 55(b) 56 Store 57(c) 58 Store 59(d) 58 61: 19(int) Load 53(a) 62: 6(float) ConvertSToF 61 63: 7(fvec4) Load 13(input) 64: 7(fvec4) VectorTimesScalar 63 62 65: 19(int) Load 55(b) 66: 6(float) ConvertSToF 65 67: 7(fvec4) Load 13(input) 68: 7(fvec4) VectorTimesScalar 67 66 69: 7(fvec4) FAdd 64 68 70: 19(int) Load 57(c) 71: 6(float) ConvertSToF 70 72: 7(fvec4) Load 13(input) 73: 7(fvec4) VectorTimesScalar 72 71 74: 7(fvec4) FAdd 69 73 75: 19(int) Load 59(d) 76: 6(float) ConvertSToF 75 77: 7(fvec4) Load 13(input) 78: 7(fvec4) VectorTimesScalar 77 76 79: 7(fvec4) FAdd 74 78 Store 60(ret) 79 82: 19(int) Load 55(b) 85: 30(bool) INotEqual 82 84 SelectionMerge 87 None BranchConditional 85 86 89 86: Label 88: 19(int) Load 59(d) Store 57(c) 88 Store 81 88 Branch 87 89: Label Store 81 90 Branch 87 87: Label 91: 19(int) Load 81 Store 53(a) 91 Store 80(e) 91 93: 19(int) Load 53(a) 94: 30(bool) INotEqual 93 84 SelectionMerge 96 None BranchConditional 94 95 98 95: Label 97: 19(int) Load 57(c) Store 59(d) 97 Store 92 97 Branch 96 98: Label Store 92 99 Branch 96 96: Label 100: 19(int) Load 92 Store 55(b) 100 104: 103(ptr) AccessChain 60(ret) 84 105: 6(float) Load 104 107: 103(ptr) AccessChain 13(input) 106 108: 6(float) Load 107 109: 30(bool) FOrdLessThan 105 108 SelectionMerge 111 None BranchConditional 109 110 116 110: Label 112: 19(int) Load 57(c) 113: 6(float) ConvertSToF 112 114: 7(fvec4) Load 13(input) 115: 7(fvec4) VectorTimesScalar 114 113 Store 102 115 Branch 111 116: Label 117: 19(int) Load 59(d) 118: 6(float) ConvertSToF 117 119: 7(fvec4) Load 13(input) 120: 7(fvec4) VectorTimesScalar 119 118 Store 102 120 Branch 111 111: Label 121: 7(fvec4) Load 102 Store 101(f) 121 122: 19(int) Load 80(e) 123: 6(float) ConvertSToF 122 124: 7(fvec4) Load 60(ret) 125: 7(fvec4) VectorTimesScalar 124 123 126: 7(fvec4) Load 101(f) 127: 7(fvec4) FAdd 125 126 128: 7(fvec4) FunctionCall 9(vectorCond() 129: 7(fvec4) FAdd 127 128 ReturnValue 129 FunctionEnd