spv.forLoop.frag
// Module Version 10000
// Generated by (magic number): 80005
// Id's are bound by 131

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 11 24 28 36 53 104
                              ExecutionMode 4 OriginUpperLeft
                              Source GLSL 140
                              Name 4  "main"
                              Name 9  "color"
                              Name 11  "BaseColor"
                              Name 15  "i"
                              Name 24  "Count"
                              Name 28  "bigColor"
                              Name 36  "gl_FragColor"
                              Name 39  "sum"
                              Name 41  "i"
                              Name 53  "v4"
                              Name 63  "i"
                              Name 71  "tv4"
                              Name 88  "r"
                              Name 94  "i"
                              Name 104  "f"
                              Name 117  "i"
                              Decorate 24(Count) Flat
                              Decorate 36(gl_FragColor) Location 0
                              Decorate 53(v4) Flat
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypeVector 6(float) 4
               8:             TypePointer Function 7(fvec4)
              10:             TypePointer Input 7(fvec4)
   11(BaseColor):     10(ptr) Variable Input
              13:             TypeInt 32 1
              14:             TypePointer Function 13(int)
              16:     13(int) Constant 0
              23:             TypePointer Input 13(int)
       24(Count):     23(ptr) Variable Input
              26:             TypeBool
    28(bigColor):     10(ptr) Variable Input
              33:     13(int) Constant 1
              35:             TypePointer Output 7(fvec4)
36(gl_FragColor):     35(ptr) Variable Output
              38:             TypePointer Function 6(float)
              40:    6(float) Constant 0
              48:     13(int) Constant 4
              50:             TypeInt 32 0
              51:             TypeVector 50(int) 4
              52:             TypePointer Input 51(ivec4)
          53(v4):     52(ptr) Variable Input
              55:             TypePointer Input 50(int)
              76:     50(int) Constant 4
              89:             TypeVector 6(float) 3
             103:             TypePointer Input 6(float)
          104(f):    103(ptr) Variable Input
             106:     50(int) Constant 3
             124:     13(int) Constant 16
         4(main):           2 Function None 3
               5:             Label
        9(color):      8(ptr) Variable Function
           15(i):     14(ptr) Variable Function
         39(sum):     38(ptr) Variable Function
           41(i):     14(ptr) Variable Function
           63(i):     14(ptr) Variable Function
         71(tv4):      8(ptr) Variable Function
           88(r):      8(ptr) Variable Function
           94(i):     14(ptr) Variable Function
          117(i):     14(ptr) Variable Function
              12:    7(fvec4) Load 11(BaseColor)
                              Store 9(color) 12
                              Store 15(i) 16
                              Branch 17
              17:             Label
                              LoopMerge 19 20 None
                              Branch 21
              21:             Label
              22:     13(int) Load 15(i)
              25:     13(int) Load 24(Count)
              27:    26(bool) SLessThan 22 25
                              BranchConditional 27 18 19
              18:               Label
              29:    7(fvec4)   Load 28(bigColor)
              30:    7(fvec4)   Load 9(color)
              31:    7(fvec4)   FAdd 30 29
                                Store 9(color) 31
                                Branch 20
              20:               Label
              32:     13(int)   Load 15(i)
              34:     13(int)   IAdd 32 33
                                Store 15(i) 34
                                Branch 17
              19:             Label
              37:    7(fvec4) Load 9(color)
                              Store 36(gl_FragColor) 37
                              Store 39(sum) 40
                              Store 41(i) 16
                              Branch 42
              42:             Label
                              LoopMerge 44 45 None
                              Branch 46
              46:             Label
              47:     13(int) Load 41(i)
              49:    26(bool) SLessThan 47 48
                              BranchConditional 49 43 44
              43:               Label
              54:     13(int)   Load 41(i)
              56:     55(ptr)   AccessChain 53(v4) 54
              57:     50(int)   Load 56
              58:    6(float)   ConvertUToF 57
              59:    6(float)   Load 39(sum)
              60:    6(float)   FAdd 59 58
                                Store 39(sum) 60
                                Branch 45
              45:               Label
              61:     13(int)   Load 41(i)
              62:     13(int)   IAdd 61 33
                                Store 41(i) 62
                                Branch 42
              44:             Label
                              Store 63(i) 16
                              Branch 64
              64:             Label
                              LoopMerge 66 67 None
                              Branch 68
              68:             Label
              69:     13(int) Load 63(i)
              70:    26(bool) SLessThan 69 48
                              BranchConditional 70 65 66
              65:               Label
              72:     13(int)   Load 63(i)
              73:     13(int)   Load 63(i)
              74:     55(ptr)   AccessChain 53(v4) 73
              75:     50(int)   Load 74
              77:     50(int)   IMul 75 76
              78:    6(float)   ConvertUToF 77
              79:     38(ptr)   AccessChain 71(tv4) 72
                                Store 79 78
                                Branch 67
              67:               Label
              80:     13(int)   Load 63(i)
              81:     13(int)   IAdd 80 33
                                Store 63(i) 81
                                Branch 64
              66:             Label
              82:    6(float) Load 39(sum)
              83:    7(fvec4) CompositeConstruct 82 82 82 82
              84:    7(fvec4) Load 71(tv4)
              85:    7(fvec4) FAdd 83 84
              86:    7(fvec4) Load 36(gl_FragColor)
              87:    7(fvec4) FAdd 86 85
                              Store 36(gl_FragColor) 87
              90:    7(fvec4) Load 11(BaseColor)
              91:   89(fvec3) VectorShuffle 90 90 0 1 2
              92:    7(fvec4) Load 88(r)
              93:    7(fvec4) VectorShuffle 92 91 4 5 6 3
                              Store 88(r) 93
                              Store 94(i) 16
                              Branch 95
              95:             Label
                              LoopMerge 97 98 None
                              Branch 99
              99:             Label
             100:     13(int) Load 94(i)
             101:     13(int) Load 24(Count)
             102:    26(bool) SLessThan 100 101
                              BranchConditional 102 96 97
              96:               Label
             105:    6(float)   Load 104(f)
             107:     38(ptr)   AccessChain 88(r) 106
                                Store 107 105
                                Branch 98
              98:               Label
             108:     13(int)   Load 94(i)
             109:     13(int)   IAdd 108 33
                                Store 94(i) 109
                                Branch 95
              97:             Label
             110:    7(fvec4) Load 88(r)
             111:   89(fvec3) VectorShuffle 110 110 0 1 2
             112:    7(fvec4) Load 36(gl_FragColor)
             113:   89(fvec3) VectorShuffle 112 112 0 1 2
             114:   89(fvec3) FAdd 113 111
             115:    7(fvec4) Load 36(gl_FragColor)
             116:    7(fvec4) VectorShuffle 115 114 4 5 6 3
                              Store 36(gl_FragColor) 116
                              Store 117(i) 16
                              Branch 118
             118:             Label
                              LoopMerge 120 121 None
                              Branch 122
             122:             Label
             123:     13(int) Load 117(i)
             125:    26(bool) SLessThan 123 124
                              BranchConditional 125 119 120
             119:               Label
             126:    6(float)   Load 104(f)
             127:    7(fvec4)   Load 36(gl_FragColor)
             128:    7(fvec4)   VectorTimesScalar 127 126
                                Store 36(gl_FragColor) 128
                                Branch 121
             121:               Label
             129:     13(int)   Load 117(i)
             130:     13(int)   IAdd 129 48
                                Store 117(i) 130
                                Branch 118
             120:             Label
                              Return
                              FunctionEnd
