Home | History | Annotate | Download | only in baseResults
      1 hlsl.implicitBool.frag
      2 Shader version: 500
      3 gl_FragCoord origin is upper left
      4 0:? Sequence
      5 0:7  Function Definition: @main( ( temp 4-component vector of float)
      6 0:7    Function Parameters: 
      7 0:?     Sequence
      8 0:8      Sequence
      9 0:8        move second child to first child ( temp 4-component vector of float)
     10 0:8          'a' ( temp 4-component vector of float)
     11 0:?           Constant:
     12 0:?             2.000000
     13 0:?             2.000000
     14 0:?             2.000000
     15 0:?             2.000000
     16 0:9      Test condition and select ( temp void)
     17 0:9        Condition
     18 0:9        Convert int to bool ( temp bool)
     19 0:9          condi: direct index for structure ( uniform int)
     20 0:9            'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
     21 0:9            Constant:
     22 0:9              1 (const uint)
     23 0:9        true case
     24 0:10        Branch: Return with expression
     25 0:10          add ( temp 4-component vector of float)
     26 0:10            'a' ( temp 4-component vector of float)
     27 0:10            Constant:
     28 0:10              1.000000
     29 0:11      Test condition and select ( temp void)
     30 0:11        Condition
     31 0:11        Convert float to bool ( temp bool)
     32 0:11          condf: direct index for structure ( uniform float)
     33 0:11            'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
     34 0:11            Constant:
     35 0:11              0 (const uint)
     36 0:11        true case
     37 0:12        Branch: Return with expression
     38 0:12          add ( temp 4-component vector of float)
     39 0:12            'a' ( temp 4-component vector of float)
     40 0:12            Constant:
     41 0:12              2.000000
     42 0:13      Test condition and select ( temp void)
     43 0:13        Condition
     44 0:13        Convert float to bool ( temp bool)
     45 0:13          condf1: direct index for structure ( uniform 1-component vector of float)
     46 0:13            'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
     47 0:13            Constant:
     48 0:13              2 (const uint)
     49 0:13        true case
     50 0:14        Branch: Return with expression
     51 0:14          add ( temp 4-component vector of float)
     52 0:14            'a' ( temp 4-component vector of float)
     53 0:14            Constant:
     54 0:14              3.000000
     55 0:15      Test condition and select ( temp void)
     56 0:15        Condition
     57 0:15        Convert int to bool ( temp bool)
     58 0:15          condi1: direct index for structure ( uniform 1-component vector of int)
     59 0:15            'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
     60 0:15            Constant:
     61 0:15              3 (const uint)
     62 0:15        true case
     63 0:16        Branch: Return with expression
     64 0:16          add ( temp 4-component vector of float)
     65 0:16            'a' ( temp 4-component vector of float)
     66 0:16            Constant:
     67 0:16              4.000000
     68 0:17      Test condition and select ( temp void)
     69 0:17        Condition
     70 0:17        logical-or ( temp bool)
     71 0:17          logical-and ( temp bool)
     72 0:17            Convert int to bool ( temp bool)
     73 0:17              condi: direct index for structure ( uniform int)
     74 0:17                'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
     75 0:17                Constant:
     76 0:17                  1 (const uint)
     77 0:17            Convert float to bool ( temp bool)
     78 0:17              condf: direct index for structure ( uniform float)
     79 0:17                'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
     80 0:17                Constant:
     81 0:17                  0 (const uint)
     82 0:17          Convert float to bool ( temp bool)
     83 0:17            condf1: direct index for structure ( uniform 1-component vector of float)
     84 0:17              'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
     85 0:17              Constant:
     86 0:17                2 (const uint)
     87 0:17        true case
     88 0:18        Branch: Return with expression
     89 0:18          add ( temp 4-component vector of float)
     90 0:18            'a' ( temp 4-component vector of float)
     91 0:18            Constant:
     92 0:18              5.000000
     93 0:20      Sequence
     94 0:20        move second child to first child ( temp float)
     95 0:20          'f' ( temp float)
     96 0:20          condf: direct index for structure ( uniform float)
     97 0:20            'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
     98 0:20            Constant:
     99 0:20              0 (const uint)
    100 0:21      Loop with condition tested first
    101 0:21        Loop Condition
    102 0:21        Convert float to bool ( temp bool)
    103 0:21          'f' ( temp float)
    104 0:21        Loop Body
    105 0:?         Sequence
    106 0:21          Pre-Decrement ( temp float)
    107 0:21            'f' ( temp float)
    108 0:23      Sequence
    109 0:23        move second child to first child ( temp int)
    110 0:23          'i' ( temp int)
    111 0:23          condi: direct index for structure ( uniform int)
    112 0:23            'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
    113 0:23            Constant:
    114 0:23              1 (const uint)
    115 0:24      Loop with condition not tested first
    116 0:24        Loop Condition
    117 0:24        Convert int to bool ( temp bool)
    118 0:24          'i' ( temp int)
    119 0:24        Loop Body
    120 0:?         Sequence
    121 0:24          Pre-Decrement ( temp int)
    122 0:24            'i' ( temp int)
    123 0:?       Sequence
    124 0:26        Loop with condition tested first
    125 0:26          Loop Condition
    126 0:26          Convert int to bool ( temp bool)
    127 0:26            'i' ( temp int)
    128 0:26          Loop Body
    129 0:?           Sequence
    130 0:26            Pre-Decrement ( temp int)
    131 0:26              'i' ( temp int)
    132 0:28      Sequence
    133 0:28        move second child to first child ( temp float)
    134 0:28          'g' ( temp float)
    135 0:28          Test condition and select ( temp float): no shortcircuit
    136 0:28            Condition
    137 0:28            Convert float to bool ( temp bool)
    138 0:28              condf: direct index for structure ( uniform float)
    139 0:28                'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
    140 0:28                Constant:
    141 0:28                  0 (const uint)
    142 0:28            true case
    143 0:28            Constant:
    144 0:28              7.000000
    145 0:28            false case
    146 0:28            Constant:
    147 0:28              8.000000
    148 0:29      add second child into first child ( temp 4-component vector of float)
    149 0:29        'a' ( temp 4-component vector of float)
    150 0:29        'g' ( temp float)
    151 0:31      Branch: Return with expression
    152 0:31        subtract ( temp 4-component vector of float)
    153 0:31          'a' ( temp 4-component vector of float)
    154 0:31          Constant:
    155 0:31            1.000000
    156 0:7  Function Definition: main( ( temp void)
    157 0:7    Function Parameters: 
    158 0:?     Sequence
    159 0:7      move second child to first child ( temp 4-component vector of float)
    160 0:?         '@entryPointOutput' (layout( location=0) out 4-component vector of float)
    161 0:7        Function Call: @main( ( temp 4-component vector of float)
    162 0:?   Linker Objects
    163 0:?     'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
    164 0:?     '@entryPointOutput' (layout( location=0) out 4-component vector of float)
    165 
    166 
    167 Linked fragment stage:
    168 
    169 
    170 Shader version: 500
    171 gl_FragCoord origin is upper left
    172 0:? Sequence
    173 0:7  Function Definition: @main( ( temp 4-component vector of float)
    174 0:7    Function Parameters: 
    175 0:?     Sequence
    176 0:8      Sequence
    177 0:8        move second child to first child ( temp 4-component vector of float)
    178 0:8          'a' ( temp 4-component vector of float)
    179 0:?           Constant:
    180 0:?             2.000000
    181 0:?             2.000000
    182 0:?             2.000000
    183 0:?             2.000000
    184 0:9      Test condition and select ( temp void)
    185 0:9        Condition
    186 0:9        Convert int to bool ( temp bool)
    187 0:9          condi: direct index for structure ( uniform int)
    188 0:9            'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
    189 0:9            Constant:
    190 0:9              1 (const uint)
    191 0:9        true case
    192 0:10        Branch: Return with expression
    193 0:10          add ( temp 4-component vector of float)
    194 0:10            'a' ( temp 4-component vector of float)
    195 0:10            Constant:
    196 0:10              1.000000
    197 0:11      Test condition and select ( temp void)
    198 0:11        Condition
    199 0:11        Convert float to bool ( temp bool)
    200 0:11          condf: direct index for structure ( uniform float)
    201 0:11            'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
    202 0:11            Constant:
    203 0:11              0 (const uint)
    204 0:11        true case
    205 0:12        Branch: Return with expression
    206 0:12          add ( temp 4-component vector of float)
    207 0:12            'a' ( temp 4-component vector of float)
    208 0:12            Constant:
    209 0:12              2.000000
    210 0:13      Test condition and select ( temp void)
    211 0:13        Condition
    212 0:13        Convert float to bool ( temp bool)
    213 0:13          condf1: direct index for structure ( uniform 1-component vector of float)
    214 0:13            'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
    215 0:13            Constant:
    216 0:13              2 (const uint)
    217 0:13        true case
    218 0:14        Branch: Return with expression
    219 0:14          add ( temp 4-component vector of float)
    220 0:14            'a' ( temp 4-component vector of float)
    221 0:14            Constant:
    222 0:14              3.000000
    223 0:15      Test condition and select ( temp void)
    224 0:15        Condition
    225 0:15        Convert int to bool ( temp bool)
    226 0:15          condi1: direct index for structure ( uniform 1-component vector of int)
    227 0:15            'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
    228 0:15            Constant:
    229 0:15              3 (const uint)
    230 0:15        true case
    231 0:16        Branch: Return with expression
    232 0:16          add ( temp 4-component vector of float)
    233 0:16            'a' ( temp 4-component vector of float)
    234 0:16            Constant:
    235 0:16              4.000000
    236 0:17      Test condition and select ( temp void)
    237 0:17        Condition
    238 0:17        logical-or ( temp bool)
    239 0:17          logical-and ( temp bool)
    240 0:17            Convert int to bool ( temp bool)
    241 0:17              condi: direct index for structure ( uniform int)
    242 0:17                'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
    243 0:17                Constant:
    244 0:17                  1 (const uint)
    245 0:17            Convert float to bool ( temp bool)
    246 0:17              condf: direct index for structure ( uniform float)
    247 0:17                'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
    248 0:17                Constant:
    249 0:17                  0 (const uint)
    250 0:17          Convert float to bool ( temp bool)
    251 0:17            condf1: direct index for structure ( uniform 1-component vector of float)
    252 0:17              'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
    253 0:17              Constant:
    254 0:17                2 (const uint)
    255 0:17        true case
    256 0:18        Branch: Return with expression
    257 0:18          add ( temp 4-component vector of float)
    258 0:18            'a' ( temp 4-component vector of float)
    259 0:18            Constant:
    260 0:18              5.000000
    261 0:20      Sequence
    262 0:20        move second child to first child ( temp float)
    263 0:20          'f' ( temp float)
    264 0:20          condf: direct index for structure ( uniform float)
    265 0:20            'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
    266 0:20            Constant:
    267 0:20              0 (const uint)
    268 0:21      Loop with condition tested first
    269 0:21        Loop Condition
    270 0:21        Convert float to bool ( temp bool)
    271 0:21          'f' ( temp float)
    272 0:21        Loop Body
    273 0:?         Sequence
    274 0:21          Pre-Decrement ( temp float)
    275 0:21            'f' ( temp float)
    276 0:23      Sequence
    277 0:23        move second child to first child ( temp int)
    278 0:23          'i' ( temp int)
    279 0:23          condi: direct index for structure ( uniform int)
    280 0:23            'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
    281 0:23            Constant:
    282 0:23              1 (const uint)
    283 0:24      Loop with condition not tested first
    284 0:24        Loop Condition
    285 0:24        Convert int to bool ( temp bool)
    286 0:24          'i' ( temp int)
    287 0:24        Loop Body
    288 0:?         Sequence
    289 0:24          Pre-Decrement ( temp int)
    290 0:24            'i' ( temp int)
    291 0:?       Sequence
    292 0:26        Loop with condition tested first
    293 0:26          Loop Condition
    294 0:26          Convert int to bool ( temp bool)
    295 0:26            'i' ( temp int)
    296 0:26          Loop Body
    297 0:?           Sequence
    298 0:26            Pre-Decrement ( temp int)
    299 0:26              'i' ( temp int)
    300 0:28      Sequence
    301 0:28        move second child to first child ( temp float)
    302 0:28          'g' ( temp float)
    303 0:28          Test condition and select ( temp float): no shortcircuit
    304 0:28            Condition
    305 0:28            Convert float to bool ( temp bool)
    306 0:28              condf: direct index for structure ( uniform float)
    307 0:28                'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
    308 0:28                Constant:
    309 0:28                  0 (const uint)
    310 0:28            true case
    311 0:28            Constant:
    312 0:28              7.000000
    313 0:28            false case
    314 0:28            Constant:
    315 0:28              8.000000
    316 0:29      add second child into first child ( temp 4-component vector of float)
    317 0:29        'a' ( temp 4-component vector of float)
    318 0:29        'g' ( temp float)
    319 0:31      Branch: Return with expression
    320 0:31        subtract ( temp 4-component vector of float)
    321 0:31          'a' ( temp 4-component vector of float)
    322 0:31          Constant:
    323 0:31            1.000000
    324 0:7  Function Definition: main( ( temp void)
    325 0:7    Function Parameters: 
    326 0:?     Sequence
    327 0:7      move second child to first child ( temp 4-component vector of float)
    328 0:?         '@entryPointOutput' (layout( location=0) out 4-component vector of float)
    329 0:7        Function Call: @main( ( temp 4-component vector of float)
    330 0:?   Linker Objects
    331 0:?     'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
    332 0:?     '@entryPointOutput' (layout( location=0) out 4-component vector of float)
    333 
    334 // Module Version 10000
    335 // Generated by (magic number): 80007
    336 // Id's are bound by 139
    337 
    338                               Capability Shader
    339                1:             ExtInstImport  "GLSL.std.450"
    340                               MemoryModel Logical GLSL450
    341                               EntryPoint Fragment 4  "main" 137
    342                               ExecutionMode 4 OriginUpperLeft
    343                               Source HLSL 500
    344                               Name 4  "main"
    345                               Name 9  "@main("
    346                               Name 12  "a"
    347                               Name 16  "$Global"
    348                               MemberName 16($Global) 0  "condf"
    349                               MemberName 16($Global) 1  "condi"
    350                               MemberName 16($Global) 2  "condf1"
    351                               MemberName 16($Global) 3  "condi1"
    352                               Name 18  ""
    353                               Name 87  "f"
    354                               Name 100  "i"
    355                               Name 120  "g"
    356                               Name 137  "@entryPointOutput"
    357                               MemberDecorate 16($Global) 0 Offset 0
    358                               MemberDecorate 16($Global) 1 Offset 4
    359                               MemberDecorate 16($Global) 2 Offset 8
    360                               MemberDecorate 16($Global) 3 Offset 12
    361                               Decorate 16($Global) Block
    362                               Decorate 18 DescriptorSet 0
    363                               Decorate 18 Binding 0
    364                               Decorate 137(@entryPointOutput) Location 0
    365                2:             TypeVoid
    366                3:             TypeFunction 2
    367                6:             TypeFloat 32
    368                7:             TypeVector 6(float) 4
    369                8:             TypeFunction 7(fvec4)
    370               11:             TypePointer Function 7(fvec4)
    371               13:    6(float) Constant 1073741824
    372               14:    7(fvec4) ConstantComposite 13 13 13 13
    373               15:             TypeInt 32 1
    374      16($Global):             TypeStruct 6(float) 15(int) 6(float) 15(int)
    375               17:             TypePointer Uniform 16($Global)
    376               18:     17(ptr) Variable Uniform
    377               19:     15(int) Constant 1
    378               20:             TypePointer Uniform 15(int)
    379               23:             TypeBool
    380               24:             TypeInt 32 0
    381               25:     24(int) Constant 0
    382               30:    6(float) Constant 1065353216
    383               34:     15(int) Constant 0
    384               35:             TypePointer Uniform 6(float)
    385               38:    6(float) Constant 0
    386               46:     15(int) Constant 2
    387               53:    6(float) Constant 1077936128
    388               57:     15(int) Constant 3
    389               64:    6(float) Constant 1082130432
    390               82:    6(float) Constant 1084227584
    391               86:             TypePointer Function 6(float)
    392               99:             TypePointer Function 15(int)
    393              124:    6(float) Constant 1088421888
    394              125:    6(float) Constant 1090519040
    395              136:             TypePointer Output 7(fvec4)
    396 137(@entryPointOutput):    136(ptr) Variable Output
    397          4(main):           2 Function None 3
    398                5:             Label
    399              138:    7(fvec4) FunctionCall 9(@main()
    400                               Store 137(@entryPointOutput) 138
    401                               Return
    402                               FunctionEnd
    403        9(@main():    7(fvec4) Function None 8
    404               10:             Label
    405            12(a):     11(ptr) Variable Function
    406            87(f):     86(ptr) Variable Function
    407           100(i):     99(ptr) Variable Function
    408           120(g):     86(ptr) Variable Function
    409                               Store 12(a) 14
    410               21:     20(ptr) AccessChain 18 19
    411               22:     15(int) Load 21
    412               26:    23(bool) INotEqual 22 25
    413                               SelectionMerge 28 None
    414                               BranchConditional 26 27 28
    415               27:               Label
    416               29:    7(fvec4)   Load 12(a)
    417               31:    7(fvec4)   CompositeConstruct 30 30 30 30
    418               32:    7(fvec4)   FAdd 29 31
    419                                 ReturnValue 32
    420               28:             Label
    421               36:     35(ptr) AccessChain 18 34
    422               37:    6(float) Load 36
    423               39:    23(bool) FOrdNotEqual 37 38
    424                               SelectionMerge 41 None
    425                               BranchConditional 39 40 41
    426               40:               Label
    427               42:    7(fvec4)   Load 12(a)
    428               43:    7(fvec4)   CompositeConstruct 13 13 13 13
    429               44:    7(fvec4)   FAdd 42 43
    430                                 ReturnValue 44
    431               41:             Label
    432               47:     35(ptr) AccessChain 18 46
    433               48:    6(float) Load 47
    434               49:    23(bool) FOrdNotEqual 48 38
    435                               SelectionMerge 51 None
    436                               BranchConditional 49 50 51
    437               50:               Label
    438               52:    7(fvec4)   Load 12(a)
    439               54:    7(fvec4)   CompositeConstruct 53 53 53 53
    440               55:    7(fvec4)   FAdd 52 54
    441                                 ReturnValue 55
    442               51:             Label
    443               58:     20(ptr) AccessChain 18 57
    444               59:     15(int) Load 58
    445               60:    23(bool) INotEqual 59 25
    446                               SelectionMerge 62 None
    447                               BranchConditional 60 61 62
    448               61:               Label
    449               63:    7(fvec4)   Load 12(a)
    450               65:    7(fvec4)   CompositeConstruct 64 64 64 64
    451               66:    7(fvec4)   FAdd 63 65
    452                                 ReturnValue 66
    453               62:             Label
    454               68:     20(ptr) AccessChain 18 19
    455               69:     15(int) Load 68
    456               70:    23(bool) INotEqual 69 25
    457               71:     35(ptr) AccessChain 18 34
    458               72:    6(float) Load 71
    459               73:    23(bool) FOrdNotEqual 72 38
    460               74:    23(bool) LogicalAnd 70 73
    461               75:     35(ptr) AccessChain 18 46
    462               76:    6(float) Load 75
    463               77:    23(bool) FOrdNotEqual 76 38
    464               78:    23(bool) LogicalOr 74 77
    465                               SelectionMerge 80 None
    466                               BranchConditional 78 79 80
    467               79:               Label
    468               81:    7(fvec4)   Load 12(a)
    469               83:    7(fvec4)   CompositeConstruct 82 82 82 82
    470               84:    7(fvec4)   FAdd 81 83
    471                                 ReturnValue 84
    472               80:             Label
    473               88:     35(ptr) AccessChain 18 34
    474               89:    6(float) Load 88
    475                               Store 87(f) 89
    476                               Branch 90
    477               90:             Label
    478                               LoopMerge 92 93 None
    479                               Branch 94
    480               94:             Label
    481               95:    6(float) Load 87(f)
    482               96:    23(bool) FOrdNotEqual 95 38
    483                               BranchConditional 96 91 92
    484               91:               Label
    485               97:    6(float)   Load 87(f)
    486               98:    6(float)   FSub 97 30
    487                                 Store 87(f) 98
    488                                 Branch 93
    489               93:               Label
    490                                 Branch 90
    491               92:             Label
    492              101:     20(ptr) AccessChain 18 19
    493              102:     15(int) Load 101
    494                               Store 100(i) 102
    495                               Branch 103
    496              103:             Label
    497                               LoopMerge 105 106 None
    498                               Branch 104
    499              104:             Label
    500              107:     15(int) Load 100(i)
    501              108:     15(int) ISub 107 19
    502                               Store 100(i) 108
    503                               Branch 106
    504              106:             Label
    505              109:     15(int) Load 100(i)
    506              110:    23(bool) INotEqual 109 25
    507                               BranchConditional 110 103 105
    508              105:             Label
    509                               Branch 111
    510              111:             Label
    511                               LoopMerge 113 114 None
    512                               Branch 115
    513              115:             Label
    514              116:     15(int) Load 100(i)
    515              117:    23(bool) INotEqual 116 25
    516                               BranchConditional 117 112 113
    517              112:               Label
    518              118:     15(int)   Load 100(i)
    519              119:     15(int)   ISub 118 19
    520                                 Store 100(i) 119
    521                                 Branch 114
    522              114:               Label
    523                                 Branch 111
    524              113:             Label
    525              121:     35(ptr) AccessChain 18 34
    526              122:    6(float) Load 121
    527              123:    23(bool) FOrdNotEqual 122 38
    528              126:    6(float) Select 123 124 125
    529                               Store 120(g) 126
    530              127:    6(float) Load 120(g)
    531              128:    7(fvec4) Load 12(a)
    532              129:    7(fvec4) CompositeConstruct 127 127 127 127
    533              130:    7(fvec4) FAdd 128 129
    534                               Store 12(a) 130
    535              131:    7(fvec4) Load 12(a)
    536              132:    7(fvec4) CompositeConstruct 30 30 30 30
    537              133:    7(fvec4) FSub 131 132
    538                               ReturnValue 133
    539                               FunctionEnd
    540