hlsl.ternary.conversion.frag Shader version: 500 gl_FragCoord origin is upper left 0:? Sequence 0:2 Function Definition: @main(i1;i1;vf4;vu4; ( temp 4-component vector of float) 0:2 Function Parameters: 0:2 'a' ( in int) 0:2 'b' ( in int) 0:2 'col0' ( in 4-component vector of float) 0:2 'col1' ( in 4-component vector of uint) 0:? Sequence 0:3 Branch: Return with expression 0:3 Test condition and select ( temp 4-component vector of float): no shortcircuit 0:3 Condition 0:3 Compare Less Than ( temp bool) 0:3 'a' ( in int) 0:3 'b' ( in int) 0:3 true case 0:3 'col0' ( in 4-component vector of float) 0:3 false case 0:3 Convert uint to float ( temp 4-component vector of float) 0:3 'col1' ( in 4-component vector of uint) 0:2 Function Definition: main( ( temp void) 0:2 Function Parameters: 0:? Sequence 0:2 move second child to first child ( temp int) 0:? 'a' ( temp int) 0:? 'a' (layout( location=0) flat in int) 0:2 move second child to first child ( temp int) 0:? 'b' ( temp int) 0:? 'b' (layout( location=1) flat in int) 0:2 move second child to first child ( temp 4-component vector of float) 0:? 'col0' ( temp 4-component vector of float) 0:? 'col0' (layout( location=2) in 4-component vector of float) 0:2 move second child to first child ( temp 4-component vector of uint) 0:? 'col1' ( temp 4-component vector of uint) 0:? 'col1' (layout( location=3) flat in 4-component vector of uint) 0:2 move second child to first child ( temp 4-component vector of float) 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 0:2 Function Call: @main(i1;i1;vf4;vu4; ( temp 4-component vector of float) 0:? 'a' ( temp int) 0:? 'b' ( temp int) 0:? 'col0' ( temp 4-component vector of float) 0:? 'col1' ( temp 4-component vector of uint) 0:? Linker Objects 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 0:? 'a' (layout( location=0) flat in int) 0:? 'b' (layout( location=1) flat in int) 0:? 'col0' (layout( location=2) in 4-component vector of float) 0:? 'col1' (layout( location=3) flat in 4-component vector of uint) Linked fragment stage: Shader version: 500 gl_FragCoord origin is upper left 0:? Sequence 0:2 Function Definition: @main(i1;i1;vf4;vu4; ( temp 4-component vector of float) 0:2 Function Parameters: 0:2 'a' ( in int) 0:2 'b' ( in int) 0:2 'col0' ( in 4-component vector of float) 0:2 'col1' ( in 4-component vector of uint) 0:? Sequence 0:3 Branch: Return with expression 0:3 Test condition and select ( temp 4-component vector of float): no shortcircuit 0:3 Condition 0:3 Compare Less Than ( temp bool) 0:3 'a' ( in int) 0:3 'b' ( in int) 0:3 true case 0:3 'col0' ( in 4-component vector of float) 0:3 false case 0:3 Convert uint to float ( temp 4-component vector of float) 0:3 'col1' ( in 4-component vector of uint) 0:2 Function Definition: main( ( temp void) 0:2 Function Parameters: 0:? Sequence 0:2 move second child to first child ( temp int) 0:? 'a' ( temp int) 0:? 'a' (layout( location=0) flat in int) 0:2 move second child to first child ( temp int) 0:? 'b' ( temp int) 0:? 'b' (layout( location=1) flat in int) 0:2 move second child to first child ( temp 4-component vector of float) 0:? 'col0' ( temp 4-component vector of float) 0:? 'col0' (layout( location=2) in 4-component vector of float) 0:2 move second child to first child ( temp 4-component vector of uint) 0:? 'col1' ( temp 4-component vector of uint) 0:? 'col1' (layout( location=3) flat in 4-component vector of uint) 0:2 move second child to first child ( temp 4-component vector of float) 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 0:2 Function Call: @main(i1;i1;vf4;vu4; ( temp 4-component vector of float) 0:? 'a' ( temp int) 0:? 'b' ( temp int) 0:? 'col0' ( temp 4-component vector of float) 0:? 'col1' ( temp 4-component vector of uint) 0:? Linker Objects 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 0:? 'a' (layout( location=0) flat in int) 0:? 'b' (layout( location=1) flat in int) 0:? 'col0' (layout( location=2) in 4-component vector of float) 0:? 'col1' (layout( location=3) flat in 4-component vector of uint) // Module Version 10000 // Generated by (magic number): 8000b // Id's are bound by 59 Capability Shader 1: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 EntryPoint Fragment 4 "main" 35 38 42 46 49 ExecutionMode 4 OriginUpperLeft Source HLSL 500 Name 4 "main" Name 19 "@main(i1;i1;vf4;vu4;" Name 15 "a" Name 16 "b" Name 17 "col0" Name 18 "col1" Name 33 "a" Name 35 "a" Name 37 "b" Name 38 "b" Name 40 "col0" Name 42 "col0" Name 44 "col1" Name 46 "col1" Name 49 "@entryPointOutput" Name 50 "param" Name 52 "param" Name 54 "param" Name 56 "param" Decorate 35(a) Flat Decorate 35(a) Location 0 Decorate 38(b) Flat Decorate 38(b) Location 1 Decorate 42(col0) Location 2 Decorate 46(col1) Flat Decorate 46(col1) Location 3 Decorate 49(@entryPointOutput) Location 0 2: TypeVoid 3: TypeFunction 2 6: TypeInt 32 1 7: TypePointer Function 6(int) 8: TypeFloat 32 9: TypeVector 8(float) 4 10: TypePointer Function 9(fvec4) 11: TypeInt 32 0 12: TypeVector 11(int) 4 13: TypePointer Function 12(ivec4) 14: TypeFunction 9(fvec4) 7(ptr) 7(ptr) 10(ptr) 13(ptr) 23: TypeBool 28: TypeVector 23(bool) 4 34: TypePointer Input 6(int) 35(a): 34(ptr) Variable Input 38(b): 34(ptr) Variable Input 41: TypePointer Input 9(fvec4) 42(col0): 41(ptr) Variable Input 45: TypePointer Input 12(ivec4) 46(col1): 45(ptr) Variable Input 48: TypePointer Output 9(fvec4) 49(@entryPointOutput): 48(ptr) Variable Output 4(main): 2 Function None 3 5: Label 33(a): 7(ptr) Variable Function 37(b): 7(ptr) Variable Function 40(col0): 10(ptr) Variable Function 44(col1): 13(ptr) Variable Function 50(param): 7(ptr) Variable Function 52(param): 7(ptr) Variable Function 54(param): 10(ptr) Variable Function 56(param): 13(ptr) Variable Function 36: 6(int) Load 35(a) Store 33(a) 36 39: 6(int) Load 38(b) Store 37(b) 39 43: 9(fvec4) Load 42(col0) Store 40(col0) 43 47: 12(ivec4) Load 46(col1) Store 44(col1) 47 51: 6(int) Load 33(a) Store 50(param) 51 53: 6(int) Load 37(b) Store 52(param) 53 55: 9(fvec4) Load 40(col0) Store 54(param) 55 57: 12(ivec4) Load 44(col1) Store 56(param) 57 58: 9(fvec4) FunctionCall 19(@main(i1;i1;vf4;vu4;) 50(param) 52(param) 54(param) 56(param) Store 49(@entryPointOutput) 58 Return FunctionEnd 19(@main(i1;i1;vf4;vu4;): 9(fvec4) Function None 14 15(a): 7(ptr) FunctionParameter 16(b): 7(ptr) FunctionParameter 17(col0): 10(ptr) FunctionParameter 18(col1): 13(ptr) FunctionParameter 20: Label 21: 6(int) Load 15(a) 22: 6(int) Load 16(b) 24: 23(bool) SLessThan 21 22 25: 9(fvec4) Load 17(col0) 26: 12(ivec4) Load 18(col1) 27: 9(fvec4) ConvertUToF 26 29: 28(bvec4) CompositeConstruct 24 24 24 24 30: 9(fvec4) Select 29 25 27 ReturnValue 30 FunctionEnd