spv.bitCast.frag
Warning, version 450 is not yet complete; most version-specific features are present, but some are missing.

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

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 14 26 37 48 89 98 107 116 122 130 139 148 154
                              ExecutionMode 4 OriginUpperLeft
                              Source GLSL 450
                              Name 4  "main"
                              Name 9  "idata"
                              Name 14  "f1"
                              Name 26  "f2"
                              Name 37  "f3"
                              Name 48  "f4"
                              Name 55  "udata"
                              Name 85  "fdata"
                              Name 89  "i1"
                              Name 98  "i2"
                              Name 107  "i3"
                              Name 116  "i4"
                              Name 122  "u1"
                              Name 130  "u2"
                              Name 139  "u3"
                              Name 148  "u4"
                              Name 154  "fragColor"
                              Decorate 89(i1) Flat
                              Decorate 98(i2) Flat
                              Decorate 107(i3) Flat
                              Decorate 116(i4) Flat
                              Decorate 122(u1) Flat
                              Decorate 130(u2) Flat
                              Decorate 139(u3) Flat
                              Decorate 148(u4) Flat
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeInt 32 1
               7:             TypeVector 6(int) 4
               8:             TypePointer Function 7(ivec4)
              10:      6(int) Constant 0
              11:    7(ivec4) ConstantComposite 10 10 10 10
              12:             TypeFloat 32
              13:             TypePointer Input 12(float)
          14(f1):     13(ptr) Variable Input
              17:             TypeInt 32 0
              18:     17(int) Constant 0
              19:             TypePointer Function 6(int)
              24:             TypeVector 12(float) 2
              25:             TypePointer Input 24(fvec2)
          26(f2):     25(ptr) Variable Input
              28:             TypeVector 6(int) 2
              35:             TypeVector 12(float) 3
              36:             TypePointer Input 35(fvec3)
          37(f3):     36(ptr) Variable Input
              39:             TypeVector 6(int) 3
              46:             TypeVector 12(float) 4
              47:             TypePointer Input 46(fvec4)
          48(f4):     47(ptr) Variable Input
              53:             TypeVector 17(int) 4
              54:             TypePointer Function 53(ivec4)
              56:   53(ivec4) ConstantComposite 18 18 18 18
              59:             TypePointer Function 17(int)
              65:             TypeVector 17(int) 2
              73:             TypeVector 17(int) 3
              84:             TypePointer Function 46(fvec4)
              86:   12(float) Constant 0
              87:   46(fvec4) ConstantComposite 86 86 86 86
              88:             TypePointer Input 6(int)
          89(i1):     88(ptr) Variable Input
              92:             TypePointer Function 12(float)
              97:             TypePointer Input 28(ivec2)
          98(i2):     97(ptr) Variable Input
             106:             TypePointer Input 39(ivec3)
         107(i3):    106(ptr) Variable Input
             115:             TypePointer Input 7(ivec4)
         116(i4):    115(ptr) Variable Input
             121:             TypePointer Input 17(int)
         122(u1):    121(ptr) Variable Input
             129:             TypePointer Input 65(ivec2)
         130(u2):    129(ptr) Variable Input
             138:             TypePointer Input 73(ivec3)
         139(u3):    138(ptr) Variable Input
             147:             TypePointer Input 53(ivec4)
         148(u4):    147(ptr) Variable Input
             153:             TypePointer Output 46(fvec4)
  154(fragColor):    153(ptr) Variable Output
             159:             TypeBool
             160:             TypeVector 159(bool) 4
             168:   12(float) Constant 1045220557
             169:   46(fvec4) ConstantComposite 168 168 168 168
         4(main):           2 Function None 3
               5:             Label
        9(idata):      8(ptr) Variable Function
       55(udata):     54(ptr) Variable Function
       85(fdata):     84(ptr) Variable Function
             155:     84(ptr) Variable Function
                              Store 9(idata) 11
              15:   12(float) Load 14(f1)
              16:      6(int) Bitcast 15
              20:     19(ptr) AccessChain 9(idata) 18
              21:      6(int) Load 20
              22:      6(int) IAdd 21 16
              23:     19(ptr) AccessChain 9(idata) 18
                              Store 23 22
              27:   24(fvec2) Load 26(f2)
              29:   28(ivec2) Bitcast 27
              30:    7(ivec4) Load 9(idata)
              31:   28(ivec2) VectorShuffle 30 30 0 1
              32:   28(ivec2) IAdd 31 29
              33:    7(ivec4) Load 9(idata)
              34:    7(ivec4) VectorShuffle 33 32 4 5 2 3
                              Store 9(idata) 34
              38:   35(fvec3) Load 37(f3)
              40:   39(ivec3) Bitcast 38
              41:    7(ivec4) Load 9(idata)
              42:   39(ivec3) VectorShuffle 41 41 0 1 2
              43:   39(ivec3) IAdd 42 40
              44:    7(ivec4) Load 9(idata)
              45:    7(ivec4) VectorShuffle 44 43 4 5 6 3
                              Store 9(idata) 45
              49:   46(fvec4) Load 48(f4)
              50:    7(ivec4) Bitcast 49
              51:    7(ivec4) Load 9(idata)
              52:    7(ivec4) IAdd 51 50
                              Store 9(idata) 52
                              Store 55(udata) 56
              57:   12(float) Load 14(f1)
              58:     17(int) Bitcast 57
              60:     59(ptr) AccessChain 55(udata) 18
              61:     17(int) Load 60
              62:     17(int) IAdd 61 58
              63:     59(ptr) AccessChain 55(udata) 18
                              Store 63 62
              64:   24(fvec2) Load 26(f2)
              66:   65(ivec2) Bitcast 64
              67:   53(ivec4) Load 55(udata)
              68:   65(ivec2) VectorShuffle 67 67 0 1
              69:   65(ivec2) IAdd 68 66
              70:   53(ivec4) Load 55(udata)
              71:   53(ivec4) VectorShuffle 70 69 4 5 2 3
                              Store 55(udata) 71
              72:   35(fvec3) Load 37(f3)
              74:   73(ivec3) Bitcast 72
              75:   53(ivec4) Load 55(udata)
              76:   73(ivec3) VectorShuffle 75 75 0 1 2
              77:   73(ivec3) IAdd 76 74
              78:   53(ivec4) Load 55(udata)
              79:   53(ivec4) VectorShuffle 78 77 4 5 6 3
                              Store 55(udata) 79
              80:   46(fvec4) Load 48(f4)
              81:   53(ivec4) Bitcast 80
              82:   53(ivec4) Load 55(udata)
              83:   53(ivec4) IAdd 82 81
                              Store 55(udata) 83
                              Store 85(fdata) 87
              90:      6(int) Load 89(i1)
              91:   12(float) Bitcast 90
              93:     92(ptr) AccessChain 85(fdata) 18
              94:   12(float) Load 93
              95:   12(float) FAdd 94 91
              96:     92(ptr) AccessChain 85(fdata) 18
                              Store 96 95
              99:   28(ivec2) Load 98(i2)
             100:   24(fvec2) Bitcast 99
             101:   46(fvec4) Load 85(fdata)
             102:   24(fvec2) VectorShuffle 101 101 0 1
             103:   24(fvec2) FAdd 102 100
             104:   46(fvec4) Load 85(fdata)
             105:   46(fvec4) VectorShuffle 104 103 4 5 2 3
                              Store 85(fdata) 105
             108:   39(ivec3) Load 107(i3)
             109:   35(fvec3) Bitcast 108
             110:   46(fvec4) Load 85(fdata)
             111:   35(fvec3) VectorShuffle 110 110 0 1 2
             112:   35(fvec3) FAdd 111 109
             113:   46(fvec4) Load 85(fdata)
             114:   46(fvec4) VectorShuffle 113 112 4 5 6 3
                              Store 85(fdata) 114
             117:    7(ivec4) Load 116(i4)
             118:   46(fvec4) Bitcast 117
             119:   46(fvec4) Load 85(fdata)
             120:   46(fvec4) FAdd 119 118
                              Store 85(fdata) 120
             123:     17(int) Load 122(u1)
             124:   12(float) Bitcast 123
             125:     92(ptr) AccessChain 85(fdata) 18
             126:   12(float) Load 125
             127:   12(float) FAdd 126 124
             128:     92(ptr) AccessChain 85(fdata) 18
                              Store 128 127
             131:   65(ivec2) Load 130(u2)
             132:   24(fvec2) Bitcast 131
             133:   46(fvec4) Load 85(fdata)
             134:   24(fvec2) VectorShuffle 133 133 0 1
             135:   24(fvec2) FAdd 134 132
             136:   46(fvec4) Load 85(fdata)
             137:   46(fvec4) VectorShuffle 136 135 4 5 2 3
                              Store 85(fdata) 137
             140:   73(ivec3) Load 139(u3)
             141:   35(fvec3) Bitcast 140
             142:   46(fvec4) Load 85(fdata)
             143:   35(fvec3) VectorShuffle 142 142 0 1 2
             144:   35(fvec3) FAdd 143 141
             145:   46(fvec4) Load 85(fdata)
             146:   46(fvec4) VectorShuffle 145 144 4 5 6 3
                              Store 85(fdata) 146
             149:   53(ivec4) Load 148(u4)
             150:   46(fvec4) Bitcast 149
             151:   46(fvec4) Load 85(fdata)
             152:   46(fvec4) FAdd 151 150
                              Store 85(fdata) 152
             156:    7(ivec4) Load 9(idata)
             157:   53(ivec4) Bitcast 156
             158:   53(ivec4) Load 55(udata)
             161:  160(bvec4) IEqual 157 158
             162:   159(bool) All 161
                              SelectionMerge 164 None
                              BranchConditional 162 163 166
             163:               Label
             165:   46(fvec4)   Load 85(fdata)
                                Store 155 165
                                Branch 164
             166:               Label
             167:   46(fvec4)   Load 85(fdata)
             170:   46(fvec4)   FAdd 167 169
                                Store 155 170
                                Branch 164
             164:             Label
             171:   46(fvec4) Load 155
                              Store 154(fragColor) 171
                              Return
                              FunctionEnd
