spv.shortCircuit.frag
// Module Version 10000
// Generated by (magic number): 8000a
// Id's are bound by 147

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 12 24 34 113 140 142
                              ExecutionMode 4 OriginUpperLeft
                              Source GLSL 400
                              Name 4  "main"
                              Name 8  "foo("
                              Name 12  "of1"
                              Name 24  "of4"
                              Name 27  "ub"
                              Name 34  "ui"
                              Name 44  "uba"
                              Name 113  "uf"
                              Name 140  "uiv4"
                              Name 142  "uv4"
                              Name 145  "ub41"
                              Name 146  "ub42"
                              Decorate 12(of1) Location 0
                              Decorate 24(of4) Location 1
                              Decorate 34(ui) Flat
                              Decorate 34(ui) Location 3
                              Decorate 113(uf) Location 2
                              Decorate 140(uiv4) Flat
                              Decorate 140(uiv4) Location 0
                              Decorate 142(uv4) Location 1
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeBool
               7:             TypeFunction 6(bool)
              10:             TypeFloat 32
              11:             TypePointer Output 10(float)
         12(of1):     11(ptr) Variable Output
              14:   10(float) Constant 1065353216
              17:   10(float) Constant 1092616192
              21:   10(float) Constant 0
              22:             TypeVector 10(float) 4
              23:             TypePointer Output 22(fvec4)
         24(of4):     23(ptr) Variable Output
              25:   22(fvec4) ConstantComposite 21 21 21 21
              26:             TypePointer Private 6(bool)
          27(ub):     26(ptr) Variable Private
              32:             TypeInt 32 1
              33:             TypePointer Input 32(int)
          34(ui):     33(ptr) Variable Input
              36:     32(int) Constant 2
         44(uba):     26(ptr) Variable Private
             112:             TypePointer Input 10(float)
         113(uf):    112(ptr) Variable Input
             116:   10(float) Constant 1082130432
             138:             TypeVector 32(int) 4
             139:             TypePointer Input 138(ivec4)
       140(uiv4):    139(ptr) Variable Input
             141:             TypePointer Input 22(fvec4)
        142(uv4):    141(ptr) Variable Input
             143:             TypeVector 6(bool) 4
             144:             TypePointer Private 143(bvec4)
       145(ub41):    144(ptr) Variable Private
       146(ub42):    144(ptr) Variable Private
         4(main):           2 Function None 3
               5:             Label
                              Store 12(of1) 21
                              Store 24(of4) 25
              28:     6(bool) Load 27(ub)
              29:     6(bool) LogicalNot 28
                              SelectionMerge 31 None
                              BranchConditional 29 30 31
              30:               Label
              35:     32(int)   Load 34(ui)
              37:     6(bool)   SGreaterThan 35 36
                                Branch 31
              31:             Label
              38:     6(bool) Phi 28 5 37 30
                              SelectionMerge 40 None
                              BranchConditional 38 39 40
              39:               Label
              41:   10(float)   Load 12(of1)
              42:   10(float)   FAdd 41 14
                                Store 12(of1) 42
                                Branch 40
              40:             Label
              43:     6(bool) Load 27(ub)
              45:     6(bool) Load 44(uba)
              46:     6(bool) LogicalNot 45
              47:     6(bool) LogicalAnd 43 46
                              SelectionMerge 49 None
                              BranchConditional 47 48 49
              48:               Label
              50:   10(float)   Load 12(of1)
              51:   10(float)   FAdd 50 14
                                Store 12(of1) 51
                                Branch 49
              49:             Label
              52:     6(bool) Load 27(ub)
              53:     6(bool) LogicalNot 52
                              SelectionMerge 55 None
                              BranchConditional 53 54 55
              54:               Label
              56:     6(bool)   FunctionCall 8(foo()
                                Branch 55
              55:             Label
              57:     6(bool) Phi 52 49 56 54
                              SelectionMerge 59 None
                              BranchConditional 57 58 59
              58:               Label
              60:   10(float)   Load 12(of1)
              61:   10(float)   FAdd 60 14
                                Store 12(of1) 61
                                Branch 59
              59:             Label
              62:     6(bool) Load 27(ub)
                              SelectionMerge 64 None
                              BranchConditional 62 63 64
              63:               Label
              65:     6(bool)   FunctionCall 8(foo()
                                Branch 64
              64:             Label
              66:     6(bool) Phi 62 59 65 63
                              SelectionMerge 68 None
                              BranchConditional 66 67 68
              67:               Label
              69:   10(float)   Load 12(of1)
              70:   10(float)   FAdd 69 14
                                Store 12(of1) 70
                                Branch 68
              68:             Label
              71:     6(bool) FunctionCall 8(foo()
              72:     6(bool) Load 27(ub)
              73:     6(bool) LogicalOr 71 72
                              SelectionMerge 75 None
                              BranchConditional 73 74 75
              74:               Label
              76:   10(float)   Load 12(of1)
              77:   10(float)   FAdd 76 14
                                Store 12(of1) 77
                                Branch 75
              75:             Label
              78:     6(bool) FunctionCall 8(foo()
              79:     6(bool) Load 27(ub)
              80:     6(bool) LogicalAnd 78 79
                              SelectionMerge 82 None
                              BranchConditional 80 81 82
              81:               Label
              83:   10(float)   Load 12(of1)
              84:   10(float)   FAdd 83 14
                                Store 12(of1) 84
                                Branch 82
              82:             Label
              85:     6(bool) Load 27(ub)
              86:     6(bool) LogicalNot 85
                              SelectionMerge 88 None
                              BranchConditional 86 87 88
              87:               Label
              89:   10(float)   Load 12(of1)
              90:   10(float)   FAdd 89 14
                                Store 12(of1) 90
              91:     6(bool)   FOrdGreaterThan 90 14
                                Branch 88
              88:             Label
              92:     6(bool) Phi 85 82 91 87
                              SelectionMerge 94 None
                              BranchConditional 92 93 94
              93:               Label
              95:   22(fvec4)   Load 24(of4)
              96:   22(fvec4)   CompositeConstruct 14 14 14 14
              97:   22(fvec4)   FAdd 95 96
                                Store 24(of4) 97
                                Branch 94
              94:             Label
              98:   10(float) Load 12(of1)
              99:   10(float) FAdd 98 14
                              Store 12(of1) 99
             100:     6(bool) FOrdGreaterThan 99 14
             101:     6(bool) Load 27(ub)
             102:     6(bool) LogicalOr 100 101
                              SelectionMerge 104 None
                              BranchConditional 102 103 104
             103:               Label
             105:   22(fvec4)   Load 24(of4)
             106:   22(fvec4)   CompositeConstruct 14 14 14 14
             107:   22(fvec4)   FAdd 105 106
                                Store 24(of4) 107
                                Branch 104
             104:             Label
             108:     6(bool) Load 27(ub)
             109:     6(bool) LogicalNot 108
                              SelectionMerge 111 None
                              BranchConditional 109 110 111
             110:               Label
             114:   10(float)   Load 113(uf)
             115:   10(float)   ExtInst 1(GLSL.std.450) 13(Sin) 114
             117:   10(float)   FMul 115 116
             118:   10(float)   Load 12(of1)
             119:     6(bool)   FOrdGreaterThan 117 118
                                Branch 111
             111:             Label
             120:     6(bool) Phi 108 104 119 110
                              SelectionMerge 122 None
                              BranchConditional 120 121 122
             121:               Label
             123:   10(float)   Load 12(of1)
             124:   10(float)   FAdd 123 14
                                Store 12(of1) 124
                                Branch 122
             122:             Label
             125:     6(bool) Load 27(ub)
                              SelectionMerge 127 None
                              BranchConditional 125 126 127
             126:               Label
             128:   10(float)   Load 113(uf)
             129:   10(float)   ExtInst 1(GLSL.std.450) 13(Sin) 128
             130:   10(float)   FMul 129 116
             131:   10(float)   Load 12(of1)
             132:     6(bool)   FOrdGreaterThan 130 131
                                Branch 127
             127:             Label
             133:     6(bool) Phi 125 122 132 126
                              SelectionMerge 135 None
                              BranchConditional 133 134 135
             134:               Label
             136:   10(float)   Load 12(of1)
             137:   10(float)   FAdd 136 14
                                Store 12(of1) 137
                                Branch 135
             135:             Label
                              Return
                              FunctionEnd
         8(foo():     6(bool) Function None 7
               9:             Label
              13:   10(float) Load 12(of1)
              15:   10(float) FAdd 13 14
                              Store 12(of1) 15
              16:   10(float) Load 12(of1)
              18:     6(bool) FOrdGreaterThan 16 17
                              ReturnValue 18
                              FunctionEnd
