hlsl.conditional.frag
Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:17  Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float)
0:2    Function Parameters: 
0:2      'input' (in 4-component vector of float)
0:?     Sequence
0:3      Sequence
0:3        move second child to first child (temp int)
0:3          'a' (temp int)
0:3          Constant:
0:3            5 (const int)
0:4      Sequence
0:4        move second child to first child (temp int)
0:4          'b' (temp int)
0:4          Constant:
0:4            6 (const int)
0:5      Sequence
0:5        move second child to first child (temp int)
0:5          'c' (temp int)
0:5          Constant:
0:5            7 (const int)
0:6      Sequence
0:6        move second child to first child (temp int)
0:6          'd' (temp int)
0:6          Constant:
0:6            7 (const int)
0:7      Sequence
0:7        move second child to first child (temp 4-component vector of float)
0:7          'ret' (temp 4-component vector of float)
0:9          add (temp 4-component vector of float)
0:8            add (temp 4-component vector of float)
0:7              add (temp 4-component vector of float)
0:7                vector-scale (temp 4-component vector of float)
0:7                  Convert int to float (temp float)
0:7                    'a' (temp int)
0:7                  'input' (in 4-component vector of float)
0:8                vector-scale (temp 4-component vector of float)
0:8                  Convert int to float (temp float)
0:8                    'b' (temp int)
0:8                  'input' (in 4-component vector of float)
0:9              vector-scale (temp 4-component vector of float)
0:9                Convert int to float (temp float)
0:9                  'c' (temp int)
0:9                'input' (in 4-component vector of float)
0:10            vector-scale (temp 4-component vector of float)
0:10              Convert int to float (temp float)
0:10                'd' (temp int)
0:10              'input' (in 4-component vector of float)
0:12      Comma (temp int)
0:12        move second child to first child (temp int)
0:12          'e' (temp int)
0:12          move second child to first child (temp int)
0:12            'a' (temp int)
0:12            Test condition and select (temp int)
0:12              Condition
0:12              'b' (temp int)
0:12              true case
0:12              move second child to first child (temp int)
0:12                'c' (temp int)
0:12                'd' (temp int)
0:12              false case
0:12              Constant:
0:12                10 (const int)
0:12        move second child to first child (temp int)
0:12          'b' (temp int)
0:12          Test condition and select (temp int)
0:12            Condition
0:12            'a' (temp int)
0:12            true case
0:12            move second child to first child (temp int)
0:12              'd' (temp int)
0:12              'c' (temp int)
0:12            false case
0:12            Constant:
0:12              11 (const int)
0:14      move second child to first child (temp 4-component vector of float)
0:14        'f' (temp 4-component vector of float)
0:14        Test condition and select (temp 4-component vector of float)
0:14          Condition
0:14          Compare Less Than (temp bool)
0:14            direct index (temp float)
0:14              'ret' (temp 4-component vector of float)
0:14              Constant:
0:14                0 (const int)
0:14            direct index (temp float)
0:14              'input' (in 4-component vector of float)
0:14              Constant:
0:14                1 (const int)
0:14          true case
0:14          vector-scale (temp 4-component vector of float)
0:14            Convert int to float (temp float)
0:14              'c' (temp int)
0:14            'input' (in 4-component vector of float)
0:14          false case
0:14          vector-scale (temp 4-component vector of float)
0:14            Convert int to float (temp float)
0:14              'd' (temp int)
0:14            'input' (in 4-component vector of float)
0:15      Branch: Return with expression
0:15        add (temp 4-component vector of float)
0:15          vector-scale (temp 4-component vector of float)
0:15            Convert int to float (temp float)
0:15              'e' (temp int)
0:15            'ret' (temp 4-component vector of float)
0:15          'f' (temp 4-component vector of float)
0:?   Linker Objects


Linked fragment stage:


Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:17  Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float)
0:2    Function Parameters: 
0:2      'input' (in 4-component vector of float)
0:?     Sequence
0:3      Sequence
0:3        move second child to first child (temp int)
0:3          'a' (temp int)
0:3          Constant:
0:3            5 (const int)
0:4      Sequence
0:4        move second child to first child (temp int)
0:4          'b' (temp int)
0:4          Constant:
0:4            6 (const int)
0:5      Sequence
0:5        move second child to first child (temp int)
0:5          'c' (temp int)
0:5          Constant:
0:5            7 (const int)
0:6      Sequence
0:6        move second child to first child (temp int)
0:6          'd' (temp int)
0:6          Constant:
0:6            7 (const int)
0:7      Sequence
0:7        move second child to first child (temp 4-component vector of float)
0:7          'ret' (temp 4-component vector of float)
0:9          add (temp 4-component vector of float)
0:8            add (temp 4-component vector of float)
0:7              add (temp 4-component vector of float)
0:7                vector-scale (temp 4-component vector of float)
0:7                  Convert int to float (temp float)
0:7                    'a' (temp int)
0:7                  'input' (in 4-component vector of float)
0:8                vector-scale (temp 4-component vector of float)
0:8                  Convert int to float (temp float)
0:8                    'b' (temp int)
0:8                  'input' (in 4-component vector of float)
0:9              vector-scale (temp 4-component vector of float)
0:9                Convert int to float (temp float)
0:9                  'c' (temp int)
0:9                'input' (in 4-component vector of float)
0:10            vector-scale (temp 4-component vector of float)
0:10              Convert int to float (temp float)
0:10                'd' (temp int)
0:10              'input' (in 4-component vector of float)
0:12      Comma (temp int)
0:12        move second child to first child (temp int)
0:12          'e' (temp int)
0:12          move second child to first child (temp int)
0:12            'a' (temp int)
0:12            Test condition and select (temp int)
0:12              Condition
0:12              'b' (temp int)
0:12              true case
0:12              move second child to first child (temp int)
0:12                'c' (temp int)
0:12                'd' (temp int)
0:12              false case
0:12              Constant:
0:12                10 (const int)
0:12        move second child to first child (temp int)
0:12          'b' (temp int)
0:12          Test condition and select (temp int)
0:12            Condition
0:12            'a' (temp int)
0:12            true case
0:12            move second child to first child (temp int)
0:12              'd' (temp int)
0:12              'c' (temp int)
0:12            false case
0:12            Constant:
0:12              11 (const int)
0:14      move second child to first child (temp 4-component vector of float)
0:14        'f' (temp 4-component vector of float)
0:14        Test condition and select (temp 4-component vector of float)
0:14          Condition
0:14          Compare Less Than (temp bool)
0:14            direct index (temp float)
0:14              'ret' (temp 4-component vector of float)
0:14              Constant:
0:14                0 (const int)
0:14            direct index (temp float)
0:14              'input' (in 4-component vector of float)
0:14              Constant:
0:14                1 (const int)
0:14          true case
0:14          vector-scale (temp 4-component vector of float)
0:14            Convert int to float (temp float)
0:14              'c' (temp int)
0:14            'input' (in 4-component vector of float)
0:14          false case
0:14          vector-scale (temp 4-component vector of float)
0:14            Convert int to float (temp float)
0:14              'd' (temp int)
0:14            'input' (in 4-component vector of float)
0:15      Branch: Return with expression
0:15        add (temp 4-component vector of float)
0:15          vector-scale (temp 4-component vector of float)
0:15            Convert int to float (temp float)
0:15              'e' (temp int)
0:15            'ret' (temp 4-component vector of float)
0:15          'f' (temp 4-component vector of float)
0:?   Linker Objects

// Module Version 10000
// Generated by (magic number): 80001
// Id's are bound by 89

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "PixelShaderFunction" 22
                              ExecutionMode 4 OriginUpperLeft
                              Name 4  "PixelShaderFunction"
                              Name 8  "a"
                              Name 10  "b"
                              Name 12  "c"
                              Name 14  "d"
                              Name 18  "ret"
                              Name 22  "input"
                              Name 40  "e"
                              Name 57  "f"
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeInt 32 1
               7:             TypePointer Function 6(int)
               9:      6(int) Constant 5
              11:      6(int) Constant 6
              13:      6(int) Constant 7
              15:             TypeFloat 32
              16:             TypeVector 15(float) 4
              17:             TypePointer Function 16(fvec4)
              21:             TypePointer Input 16(fvec4)
       22(input):     21(ptr) Variable Input
              47:      6(int) Constant 10
              55:      6(int) Constant 11
              59:             TypeInt 32 0
              60:     59(int) Constant 0
              61:             TypePointer Function 15(float)
              64:     59(int) Constant 1
              65:             TypePointer Input 15(float)
              68:             TypeBool
4(PixelShaderFunction):           2 Function None 3
               5:             Label
            8(a):      7(ptr) Variable Function
           10(b):      7(ptr) Variable Function
           12(c):      7(ptr) Variable Function
           14(d):      7(ptr) Variable Function
         18(ret):     17(ptr) Variable Function
           40(e):      7(ptr) Variable Function
              41:      7(ptr) Variable Function
              49:      7(ptr) Variable Function
           57(f):     17(ptr) Variable Function
              58:     17(ptr) Variable Function
                              Store 8(a) 9
                              Store 10(b) 11
                              Store 12(c) 13
                              Store 14(d) 13
              19:      6(int) Load 8(a)
              20:   15(float) ConvertSToF 19
              23:   16(fvec4) Load 22(input)
              24:   16(fvec4) VectorTimesScalar 23 20
              25:      6(int) Load 10(b)
              26:   15(float) ConvertSToF 25
              27:   16(fvec4) Load 22(input)
              28:   16(fvec4) VectorTimesScalar 27 26
              29:   16(fvec4) FAdd 24 28
              30:      6(int) Load 12(c)
              31:   15(float) ConvertSToF 30
              32:   16(fvec4) Load 22(input)
              33:   16(fvec4) VectorTimesScalar 32 31
              34:   16(fvec4) FAdd 29 33
              35:      6(int) Load 14(d)
              36:   15(float) ConvertSToF 35
              37:   16(fvec4) Load 22(input)
              38:   16(fvec4) VectorTimesScalar 37 36
              39:   16(fvec4) FAdd 34 38
                              Store 18(ret) 39
              42:      6(int) Load 10(b)
                              SelectionMerge 44 None
                              BranchConditional 42 43 46
              43:               Label
              45:      6(int)   Load 14(d)
                                Store 12(c) 45
                                Store 41 45
                                Branch 44
              46:               Label
                                Store 41 47
                                Branch 44
              44:             Label
              48:      6(int) Load 41
                              Store 8(a) 48
                              Store 40(e) 48
              50:      6(int) Load 8(a)
                              SelectionMerge 52 None
                              BranchConditional 50 51 54
              51:               Label
              53:      6(int)   Load 12(c)
                                Store 14(d) 53
                                Store 49 53
                                Branch 52
              54:               Label
                                Store 49 55
                                Branch 52
              52:             Label
              56:      6(int) Load 49
                              Store 10(b) 56
              62:     61(ptr) AccessChain 18(ret) 60
              63:   15(float) Load 62
              66:     65(ptr) AccessChain 22(input) 64
              67:   15(float) Load 66
              69:    68(bool) FOrdLessThan 63 67
                              SelectionMerge 71 None
                              BranchConditional 69 70 76
              70:               Label
              72:      6(int)   Load 12(c)
              73:   15(float)   ConvertSToF 72
              74:   16(fvec4)   Load 22(input)
              75:   16(fvec4)   VectorTimesScalar 74 73
                                Store 58 75
                                Branch 71
              76:               Label
              77:      6(int)   Load 14(d)
              78:   15(float)   ConvertSToF 77
              79:   16(fvec4)   Load 22(input)
              80:   16(fvec4)   VectorTimesScalar 79 78
                                Store 58 80
                                Branch 71
              71:             Label
              81:   16(fvec4) Load 58
                              Store 57(f) 81
              82:      6(int) Load 40(e)
              83:   15(float) ConvertSToF 82
              84:   16(fvec4) Load 18(ret)
              85:   16(fvec4) VectorTimesScalar 84 83
              86:   16(fvec4) Load 57(f)
              87:   16(fvec4) FAdd 85 86
                              ReturnValue 87
                              FunctionEnd
