hlsl.forLoop.frag
Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:2  Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float)
0:2    Function Parameters: 
0:2      'input' (layout(location=0 ) in 4-component vector of float)
0:?     Sequence
0:?       Sequence
0:3        Loop with condition tested first
0:3          No loop condition
0:3          No loop body
0:4      Sequence
0:4        Pre-Increment (temp 4-component vector of float)
0:4          'input' (layout(location=0 ) in 4-component vector of float)
0:4        Loop with condition tested first
0:4          No loop condition
0:4          No loop body
0:?       Sequence
0:5        Loop with condition tested first
0:5          Loop Condition
0:5          Compare Not Equal (temp bool)
0:5            'input' (layout(location=0 ) in 4-component vector of float)
0:5            'input' (layout(location=0 ) in 4-component vector of float)
0:5          No loop body
0:?       Sequence
0:6        Loop with condition tested first
0:6          Loop Condition
0:6          Compare Not Equal (temp bool)
0:6            'input' (layout(location=0 ) in 4-component vector of float)
0:6            'input' (layout(location=0 ) in 4-component vector of float)
0:6          Loop Body
0:?           Sequence
0:6            Sequence
0:6              move second child to first child (temp 4-component vector of float)
0:?                 '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
0:6                Negate value (temp 4-component vector of float)
0:6                  'input' (layout(location=0 ) in 4-component vector of float)
0:6              Branch: Return
0:7      Sequence
0:7        Pre-Decrement (temp 4-component vector of float)
0:7          'input' (layout(location=0 ) in 4-component vector of float)
0:7        Loop with condition tested first
0:7          Loop Condition
0:7          Compare Not Equal (temp bool)
0:7            'input' (layout(location=0 ) in 4-component vector of float)
0:7            'input' (layout(location=0 ) in 4-component vector of float)
0:7          Loop Body
0:?           Sequence
0:7            Sequence
0:7              move second child to first child (temp 4-component vector of float)
0:?                 '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
0:7                Negate value (temp 4-component vector of float)
0:7                  'input' (layout(location=0 ) in 4-component vector of float)
0:7              Branch: Return
0:7          Loop Terminal Expression
0:7          add second child into first child (temp 4-component vector of float)
0:7            'input' (layout(location=0 ) in 4-component vector of float)
0:7            Constant:
0:7              2.000000
0:?       Sequence
0:8        Loop with condition tested first
0:8          No loop condition
0:8          Loop Body
0:8          Test condition and select (temp void)
0:8            Condition
0:8            Compare Greater Than (temp bool)
0:8              direct index (temp float)
0:8                'input' (layout(location=0 ) in 4-component vector of float)
0:8                Constant:
0:8                  0 (const int)
0:8              Constant:
0:8                2.000000
0:8            true case
0:8            Branch: Break
0:?       Sequence
0:9        Loop with condition tested first
0:9          No loop condition
0:9          Loop Body
0:9          Test condition and select (temp void)
0:9            Condition
0:9            Compare Greater Than (temp bool)
0:9              direct index (temp float)
0:9                'input' (layout(location=0 ) in 4-component vector of float)
0:9                Constant:
0:9                  0 (const int)
0:9              Constant:
0:9                2.000000
0:9            true case
0:9            Branch: Continue
0:11      Sequence
0:11        move second child to first child (temp int)
0:11          'ii' (temp int)
0:11          Constant:
0:11            -1 (const int)
0:11        Loop with condition tested first
0:11          Loop Condition
0:11          Compare Less Than (temp bool)
0:11            'ii' (temp int)
0:11            Constant:
0:11              3 (const int)
0:11          Loop Body
0:11          Test condition and select (temp void)
0:11            Condition
0:11            Compare Equal (temp bool)
0:11              'ii' (temp int)
0:11              Constant:
0:11                2 (const int)
0:11            true case
0:11            Branch: Continue
0:11          Loop Terminal Expression
0:11          Pre-Increment (temp int)
0:11            'ii' (temp int)
0:12      Pre-Decrement (temp float)
0:12        'ii' (temp float)
0:?   Linker Objects
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: 450
gl_FragCoord origin is upper left
0:? Sequence
0:2  Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float)
0:2    Function Parameters: 
0:2      'input' (layout(location=0 ) in 4-component vector of float)
0:?     Sequence
0:?       Sequence
0:3        Loop with condition tested first
0:3          No loop condition
0:3          No loop body
0:4      Sequence
0:4        Pre-Increment (temp 4-component vector of float)
0:4          'input' (layout(location=0 ) in 4-component vector of float)
0:4        Loop with condition tested first
0:4          No loop condition
0:4          No loop body
0:?       Sequence
0:5        Loop with condition tested first
0:5          Loop Condition
0:5          Compare Not Equal (temp bool)
0:5            'input' (layout(location=0 ) in 4-component vector of float)
0:5            'input' (layout(location=0 ) in 4-component vector of float)
0:5          No loop body
0:?       Sequence
0:6        Loop with condition tested first
0:6          Loop Condition
0:6          Compare Not Equal (temp bool)
0:6            'input' (layout(location=0 ) in 4-component vector of float)
0:6            'input' (layout(location=0 ) in 4-component vector of float)
0:6          Loop Body
0:?           Sequence
0:6            Sequence
0:6              move second child to first child (temp 4-component vector of float)
0:?                 '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
0:6                Negate value (temp 4-component vector of float)
0:6                  'input' (layout(location=0 ) in 4-component vector of float)
0:6              Branch: Return
0:7      Sequence
0:7        Pre-Decrement (temp 4-component vector of float)
0:7          'input' (layout(location=0 ) in 4-component vector of float)
0:7        Loop with condition tested first
0:7          Loop Condition
0:7          Compare Not Equal (temp bool)
0:7            'input' (layout(location=0 ) in 4-component vector of float)
0:7            'input' (layout(location=0 ) in 4-component vector of float)
0:7          Loop Body
0:?           Sequence
0:7            Sequence
0:7              move second child to first child (temp 4-component vector of float)
0:?                 '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
0:7                Negate value (temp 4-component vector of float)
0:7                  'input' (layout(location=0 ) in 4-component vector of float)
0:7              Branch: Return
0:7          Loop Terminal Expression
0:7          add second child into first child (temp 4-component vector of float)
0:7            'input' (layout(location=0 ) in 4-component vector of float)
0:7            Constant:
0:7              2.000000
0:?       Sequence
0:8        Loop with condition tested first
0:8          No loop condition
0:8          Loop Body
0:8          Test condition and select (temp void)
0:8            Condition
0:8            Compare Greater Than (temp bool)
0:8              direct index (temp float)
0:8                'input' (layout(location=0 ) in 4-component vector of float)
0:8                Constant:
0:8                  0 (const int)
0:8              Constant:
0:8                2.000000
0:8            true case
0:8            Branch: Break
0:?       Sequence
0:9        Loop with condition tested first
0:9          No loop condition
0:9          Loop Body
0:9          Test condition and select (temp void)
0:9            Condition
0:9            Compare Greater Than (temp bool)
0:9              direct index (temp float)
0:9                'input' (layout(location=0 ) in 4-component vector of float)
0:9                Constant:
0:9                  0 (const int)
0:9              Constant:
0:9                2.000000
0:9            true case
0:9            Branch: Continue
0:11      Sequence
0:11        move second child to first child (temp int)
0:11          'ii' (temp int)
0:11          Constant:
0:11            -1 (const int)
0:11        Loop with condition tested first
0:11          Loop Condition
0:11          Compare Less Than (temp bool)
0:11            'ii' (temp int)
0:11            Constant:
0:11              3 (const int)
0:11          Loop Body
0:11          Test condition and select (temp void)
0:11            Condition
0:11            Compare Equal (temp bool)
0:11              'ii' (temp int)
0:11              Constant:
0:11                2 (const int)
0:11            true case
0:11            Branch: Continue
0:11          Loop Terminal Expression
0:11          Pre-Increment (temp int)
0:11            'ii' (temp int)
0:12      Pre-Decrement (temp float)
0:12        'ii' (temp float)
0:?   Linker Objects
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 114

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "PixelShaderFunction" 13 43
                              ExecutionMode 4 OriginUpperLeft
                              Name 4  "PixelShaderFunction"
                              Name 13  "input"
                              Name 43  "@entryPointOutput"
                              Name 91  "ii"
                              Name 111  "ii"
                              Decorate 13(input) Location 0
                              Decorate 43(@entryPointOutput) Location 0
               2:             TypeVoid
               3:             TypeFunction 2
              10:             TypeFloat 32
              11:             TypeVector 10(float) 4
              12:             TypePointer Input 11(fvec4)
       13(input):     12(ptr) Variable Input
              15:   10(float) Constant 1065353216
              29:             TypeBool
              30:             TypeVector 29(bool) 4
              42:             TypePointer Output 11(fvec4)
43(@entryPointOutput):     42(ptr) Variable Output
              62:   10(float) Constant 1073741824
              70:             TypeInt 32 0
              71:     70(int) Constant 0
              72:             TypePointer Input 10(float)
              89:             TypeInt 32 1
              90:             TypePointer Function 89(int)
              92:     89(int) Constant 4294967295
              99:     89(int) Constant 3
             102:     89(int) Constant 2
             108:     89(int) Constant 1
             110:             TypePointer Function 10(float)
4(PixelShaderFunction):           2 Function None 3
               5:             Label
          91(ii):     90(ptr) Variable Function
         111(ii):    110(ptr) Variable Function
                              Branch 6
               6:             Label
                              LoopMerge 8 9 None
                              Branch 7
               7:             Label
                              Branch 9
               9:             Label
                              Branch 6
               8:             Label
              14:   11(fvec4) Load 13(input)
              16:   11(fvec4) CompositeConstruct 15 15 15 15
              17:   11(fvec4) FAdd 14 16
                              Store 13(input) 17
                              Branch 18
              18:             Label
                              LoopMerge 20 21 None
                              Branch 19
              19:             Label
                              Branch 21
              21:             Label
                              Branch 18
              20:             Label
                              Branch 22
              22:             Label
                              LoopMerge 24 25 None
                              Branch 26
              26:             Label
              27:   11(fvec4) Load 13(input)
              28:   11(fvec4) Load 13(input)
              31:   30(bvec4) FOrdNotEqual 27 28
              32:    29(bool) Any 31
                              BranchConditional 32 23 24
              23:               Label
                                Branch 25
              25:               Label
                                Branch 22
              24:             Label
                              Branch 33
              33:             Label
                              LoopMerge 35 36 None
                              Branch 37
              37:             Label
              38:   11(fvec4) Load 13(input)
              39:   11(fvec4) Load 13(input)
              40:   30(bvec4) FOrdNotEqual 38 39
              41:    29(bool) Any 40
                              BranchConditional 41 34 35
              34:               Label
              44:   11(fvec4)   Load 13(input)
              45:   11(fvec4)   FNegate 44
                                Store 43(@entryPointOutput) 45
                                Return
              36:               Label
                                Branch 33
              35:             Label
              47:   11(fvec4) Load 13(input)
              48:   11(fvec4) CompositeConstruct 15 15 15 15
              49:   11(fvec4) FSub 47 48
                              Store 13(input) 49
                              Branch 50
              50:             Label
                              LoopMerge 52 53 None
                              Branch 54
              54:             Label
              55:   11(fvec4) Load 13(input)
              56:   11(fvec4) Load 13(input)
              57:   30(bvec4) FOrdNotEqual 55 56
              58:    29(bool) Any 57
                              BranchConditional 58 51 52
              51:               Label
              59:   11(fvec4)   Load 13(input)
              60:   11(fvec4)   FNegate 59
                                Store 43(@entryPointOutput) 60
                                Return
              53:               Label
              63:   11(fvec4)   Load 13(input)
              64:   11(fvec4)   CompositeConstruct 62 62 62 62
              65:   11(fvec4)   FAdd 63 64
                                Store 13(input) 65
                                Branch 50
              52:             Label
                              Branch 66
              66:             Label
                              LoopMerge 68 69 None
                              Branch 67
              67:             Label
              73:     72(ptr) AccessChain 13(input) 71
              74:   10(float) Load 73
              75:    29(bool) FOrdGreaterThan 74 62
                              SelectionMerge 77 None
                              BranchConditional 75 76 77
              76:               Label
                                Branch 68
              77:             Label
                              Branch 69
              69:             Label
                              Branch 66
              68:             Label
                              Branch 79
              79:             Label
                              LoopMerge 81 82 None
                              Branch 80
              80:             Label
              83:     72(ptr) AccessChain 13(input) 71
              84:   10(float) Load 83
              85:    29(bool) FOrdGreaterThan 84 62
                              SelectionMerge 87 None
                              BranchConditional 85 86 87
              86:               Label
                                Branch 82
              87:             Label
                              Branch 82
              82:             Label
                              Branch 79
              81:             Label
                              Store 91(ii) 92
                              Branch 93
              93:             Label
                              LoopMerge 95 96 None
                              Branch 97
              97:             Label
              98:     89(int) Load 91(ii)
             100:    29(bool) SLessThan 98 99
                              BranchConditional 100 94 95
              94:               Label
             101:     89(int)   Load 91(ii)
             103:    29(bool)   IEqual 101 102
                                SelectionMerge 105 None
                                BranchConditional 103 104 105
             104:                 Label
                                  Branch 96
             105:               Label
                                Branch 96
              96:               Label
             107:     89(int)   Load 91(ii)
             109:     89(int)   IAdd 107 108
                                Store 91(ii) 109
                                Branch 93
              95:             Label
             112:   10(float) Load 111(ii)
             113:   10(float) FSub 112 15
                              Store 111(ii) 113
                              Return
                              FunctionEnd
