spv.intOps.vert
// Module Version 10000
// Generated by (magic number): 8000a
// Id's are bound by 268

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Vertex 4  "main" 9 15 21 26 47 67 83 100 121 142 146 156 173 182 247
                              Source ESSL 310
                              Name 4  "main"
                              Name 9  "iout"
                              Name 15  "uout"
                              Name 21  "fout"
                              Name 26  "u2"
                              Name 30  "u2out"
                              Name 31  "ResType"
                              Name 47  "u1"
                              Name 51  "u1out"
                              Name 52  "ResType"
                              Name 67  "u4"
                              Name 71  "u4outHi"
                              Name 72  "u4outLow"
                              Name 73  "ResType"
                              Name 83  "i4"
                              Name 87  "i4outHi"
                              Name 88  "i4outLow"
                              Name 89  "ResType"
                              Name 100  "v3"
                              Name 104  "i3out"
                              Name 105  "ResType"
                              Name 121  "v1"
                              Name 124  "i1out"
                              Name 125  "ResType"
                              Name 142  "v2"
                              Name 146  "i2"
                              Name 156  "i1"
                              Name 173  "u3"
                              Name 182  "i3"
                              Name 247  "v4"
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeInt 32 1
               7:             TypeVector 6(int) 4
               8:             TypePointer Output 7(ivec4)
         9(iout):      8(ptr) Variable Output
              10:      6(int) Constant 0
              11:    7(ivec4) ConstantComposite 10 10 10 10
              12:             TypeInt 32 0
              13:             TypeVector 12(int) 4
              14:             TypePointer Output 13(ivec4)
        15(uout):     14(ptr) Variable Output
              16:     12(int) Constant 0
              17:   13(ivec4) ConstantComposite 16 16 16 16
              18:             TypeFloat 32
              19:             TypeVector 18(float) 4
              20:             TypePointer Output 19(fvec4)
        21(fout):     20(ptr) Variable Output
              22:   18(float) Constant 0
              23:   19(fvec4) ConstantComposite 22 22 22 22
              24:             TypeVector 12(int) 2
              25:             TypePointer Input 24(ivec2)
          26(u2):     25(ptr) Variable Input
              29:             TypePointer Function 24(ivec2)
     31(ResType):             TypeStruct 24(ivec2) 24(ivec2)
              46:             TypePointer Input 12(int)
          47(u1):     46(ptr) Variable Input
              50:             TypePointer Function 12(int)
     52(ResType):             TypeStruct 12(int) 12(int)
              56:             TypePointer Output 12(int)
              66:             TypePointer Input 13(ivec4)
          67(u4):     66(ptr) Variable Input
              70:             TypePointer Function 13(ivec4)
     73(ResType):             TypeStruct 13(ivec4) 13(ivec4)
              82:             TypePointer Input 7(ivec4)
          83(i4):     82(ptr) Variable Input
              86:             TypePointer Function 7(ivec4)
     89(ResType):             TypeStruct 7(ivec4) 7(ivec4)
              98:             TypeVector 18(float) 3
              99:             TypePointer Input 98(fvec3)
         100(v3):     99(ptr) Variable Input
             102:             TypeVector 6(int) 3
             103:             TypePointer Function 102(ivec3)
    105(ResType):             TypeStruct 98(fvec3) 102(ivec3)
             120:             TypePointer Input 18(float)
         121(v1):    120(ptr) Variable Input
             123:             TypePointer Function 6(int)
    125(ResType):             TypeStruct 18(float) 6(int)
             129:             TypePointer Output 18(float)
             135:             TypePointer Output 6(int)
             140:             TypeVector 18(float) 2
             141:             TypePointer Input 140(fvec2)
         142(v2):    141(ptr) Variable Input
             144:             TypeVector 6(int) 2
             145:             TypePointer Input 144(ivec2)
         146(i2):    145(ptr) Variable Input
             155:             TypePointer Input 6(int)
         156(i1):    155(ptr) Variable Input
             164:      6(int) Constant 4
             165:      6(int) Constant 5
             171:             TypeVector 12(int) 3
             172:             TypePointer Input 171(ivec3)
         173(u3):    172(ptr) Variable Input
             181:             TypePointer Input 102(ivec3)
         182(i3):    181(ptr) Variable Input
             246:             TypePointer Input 19(fvec4)
         247(v4):    246(ptr) Variable Input
         4(main):           2 Function None 3
               5:             Label
       30(u2out):     29(ptr) Variable Function
       51(u1out):     50(ptr) Variable Function
     71(u4outHi):     70(ptr) Variable Function
    72(u4outLow):     70(ptr) Variable Function
     87(i4outHi):     86(ptr) Variable Function
    88(i4outLow):     86(ptr) Variable Function
      104(i3out):    103(ptr) Variable Function
      124(i1out):    123(ptr) Variable Function
                              Store 9(iout) 11
                              Store 15(uout) 17
                              Store 21(fout) 23
              27:   24(ivec2) Load 26(u2)
              28:   24(ivec2) Load 26(u2)
              32: 31(ResType) IAddCarry 27 28
              33:   24(ivec2) CompositeExtract 32 1
                              Store 30(u2out) 33
              34:   24(ivec2) CompositeExtract 32 0
              35:   13(ivec4) Load 15(uout)
              36:   24(ivec2) VectorShuffle 35 35 0 1
              37:   24(ivec2) IAdd 36 34
              38:   13(ivec4) Load 15(uout)
              39:   13(ivec4) VectorShuffle 38 37 4 5 2 3
                              Store 15(uout) 39
              40:   24(ivec2) Load 30(u2out)
              41:   13(ivec4) Load 15(uout)
              42:   24(ivec2) VectorShuffle 41 41 0 1
              43:   24(ivec2) IAdd 42 40
              44:   13(ivec4) Load 15(uout)
              45:   13(ivec4) VectorShuffle 44 43 4 5 2 3
                              Store 15(uout) 45
              48:     12(int) Load 47(u1)
              49:     12(int) Load 47(u1)
              53: 52(ResType) ISubBorrow 48 49
              54:     12(int) CompositeExtract 53 1
                              Store 51(u1out) 54
              55:     12(int) CompositeExtract 53 0
              57:     56(ptr) AccessChain 15(uout) 16
              58:     12(int) Load 57
              59:     12(int) IAdd 58 55
              60:     56(ptr) AccessChain 15(uout) 16
                              Store 60 59
              61:     12(int) Load 51(u1out)
              62:     56(ptr) AccessChain 15(uout) 16
              63:     12(int) Load 62
              64:     12(int) IAdd 63 61
              65:     56(ptr) AccessChain 15(uout) 16
                              Store 65 64
              68:   13(ivec4) Load 67(u4)
              69:   13(ivec4) Load 67(u4)
              74: 73(ResType) UMulExtended 68 69
              75:   13(ivec4) CompositeExtract 74 0
                              Store 72(u4outLow) 75
              76:   13(ivec4) CompositeExtract 74 1
                              Store 71(u4outHi) 76
              77:   13(ivec4) Load 71(u4outHi)
              78:   13(ivec4) Load 72(u4outLow)
              79:   13(ivec4) IAdd 77 78
              80:   13(ivec4) Load 15(uout)
              81:   13(ivec4) IAdd 80 79
                              Store 15(uout) 81
              84:    7(ivec4) Load 83(i4)
              85:    7(ivec4) Load 83(i4)
              90: 89(ResType) SMulExtended 84 85
              91:    7(ivec4) CompositeExtract 90 0
                              Store 88(i4outLow) 91
              92:    7(ivec4) CompositeExtract 90 1
                              Store 87(i4outHi) 92
              93:    7(ivec4) Load 88(i4outLow)
              94:    7(ivec4) Load 87(i4outHi)
              95:    7(ivec4) IAdd 93 94
              96:    7(ivec4) Load 9(iout)
              97:    7(ivec4) IAdd 96 95
                              Store 9(iout) 97
             101:   98(fvec3) Load 100(v3)
             106:105(ResType) ExtInst 1(GLSL.std.450) 52(FrexpStruct) 101
             107:  102(ivec3) CompositeExtract 106 1
                              Store 104(i3out) 107
             108:   98(fvec3) CompositeExtract 106 0
             109:   19(fvec4) Load 21(fout)
             110:   98(fvec3) VectorShuffle 109 109 0 1 2
             111:   98(fvec3) FAdd 110 108
             112:   19(fvec4) Load 21(fout)
             113:   19(fvec4) VectorShuffle 112 111 4 5 6 3
                              Store 21(fout) 113
             114:  102(ivec3) Load 104(i3out)
             115:    7(ivec4) Load 9(iout)
             116:  102(ivec3) VectorShuffle 115 115 0 1 2
             117:  102(ivec3) IAdd 116 114
             118:    7(ivec4) Load 9(iout)
             119:    7(ivec4) VectorShuffle 118 117 4 5 6 3
                              Store 9(iout) 119
             122:   18(float) Load 121(v1)
             126:125(ResType) ExtInst 1(GLSL.std.450) 52(FrexpStruct) 122
             127:      6(int) CompositeExtract 126 1
                              Store 124(i1out) 127
             128:   18(float) CompositeExtract 126 0
             130:    129(ptr) AccessChain 21(fout) 16
             131:   18(float) Load 130
             132:   18(float) FAdd 131 128
             133:    129(ptr) AccessChain 21(fout) 16
                              Store 133 132
             134:      6(int) Load 124(i1out)
             136:    135(ptr) AccessChain 9(iout) 16
             137:      6(int) Load 136
             138:      6(int) IAdd 137 134
             139:    135(ptr) AccessChain 9(iout) 16
                              Store 139 138
             143:  140(fvec2) Load 142(v2)
             147:  144(ivec2) Load 146(i2)
             148:  140(fvec2) ExtInst 1(GLSL.std.450) 53(Ldexp) 143 147
             149:   19(fvec4) Load 21(fout)
             150:  140(fvec2) VectorShuffle 149 149 0 1
             151:  140(fvec2) FAdd 150 148
             152:   19(fvec4) Load 21(fout)
             153:   19(fvec4) VectorShuffle 152 151 4 5 2 3
                              Store 21(fout) 153
             154:   18(float) Load 121(v1)
             157:      6(int) Load 156(i1)
             158:   18(float) ExtInst 1(GLSL.std.450) 53(Ldexp) 154 157
             159:    129(ptr) AccessChain 21(fout) 16
             160:   18(float) Load 159
             161:   18(float) FAdd 160 158
             162:    129(ptr) AccessChain 21(fout) 16
                              Store 162 161
             163:      6(int) Load 156(i1)
             166:      6(int) BitFieldSExtract 163 164 165
             167:    135(ptr) AccessChain 9(iout) 16
             168:      6(int) Load 167
             169:      6(int) IAdd 168 166
             170:    135(ptr) AccessChain 9(iout) 16
                              Store 170 169
             174:  171(ivec3) Load 173(u3)
             175:  171(ivec3) BitFieldUExtract 174 164 165
             176:   13(ivec4) Load 15(uout)
             177:  171(ivec3) VectorShuffle 176 176 0 1 2
             178:  171(ivec3) IAdd 177 175
             179:   13(ivec4) Load 15(uout)
             180:   13(ivec4) VectorShuffle 179 178 4 5 6 3
                              Store 15(uout) 180
             183:  102(ivec3) Load 182(i3)
             184:  102(ivec3) Load 182(i3)
             185:  102(ivec3) BitFieldInsert 183 184 164 165
             186:    7(ivec4) Load 9(iout)
             187:  102(ivec3) VectorShuffle 186 186 0 1 2
             188:  102(ivec3) IAdd 187 185
             189:    7(ivec4) Load 9(iout)
             190:    7(ivec4) VectorShuffle 189 188 4 5 6 3
                              Store 9(iout) 190
             191:     12(int) Load 47(u1)
             192:     12(int) Load 47(u1)
             193:     12(int) BitFieldInsert 191 192 164 165
             194:     56(ptr) AccessChain 15(uout) 16
             195:     12(int) Load 194
             196:     12(int) IAdd 195 193
             197:     56(ptr) AccessChain 15(uout) 16
                              Store 197 196
             198:  144(ivec2) Load 146(i2)
             199:  144(ivec2) BitReverse 198
             200:    7(ivec4) Load 9(iout)
             201:  144(ivec2) VectorShuffle 200 200 0 1
             202:  144(ivec2) IAdd 201 199
             203:    7(ivec4) Load 9(iout)
             204:    7(ivec4) VectorShuffle 203 202 4 5 2 3
                              Store 9(iout) 204
             205:   13(ivec4) Load 67(u4)
             206:   13(ivec4) BitReverse 205
             207:   13(ivec4) Load 15(uout)
             208:   13(ivec4) IAdd 207 206
                              Store 15(uout) 208
             209:      6(int) Load 156(i1)
             210:      6(int) BitCount 209
             211:    135(ptr) AccessChain 9(iout) 16
             212:      6(int) Load 211
             213:      6(int) IAdd 212 210
             214:    135(ptr) AccessChain 9(iout) 16
                              Store 214 213
             215:  171(ivec3) Load 173(u3)
             216:  102(ivec3) BitCount 215
             217:    7(ivec4) Load 9(iout)
             218:  102(ivec3) VectorShuffle 217 217 0 1 2
             219:  102(ivec3) IAdd 218 216
             220:    7(ivec4) Load 9(iout)
             221:    7(ivec4) VectorShuffle 220 219 4 5 6 3
                              Store 9(iout) 221
             222:  144(ivec2) Load 146(i2)
             223:  144(ivec2) ExtInst 1(GLSL.std.450) 73(FindILsb) 222
             224:    7(ivec4) Load 9(iout)
             225:  144(ivec2) VectorShuffle 224 224 0 1
             226:  144(ivec2) IAdd 225 223
             227:    7(ivec4) Load 9(iout)
             228:    7(ivec4) VectorShuffle 227 226 4 5 2 3
                              Store 9(iout) 228
             229:   13(ivec4) Load 67(u4)
             230:    7(ivec4) ExtInst 1(GLSL.std.450) 73(FindILsb) 229
             231:    7(ivec4) Load 9(iout)
             232:    7(ivec4) IAdd 231 230
                              Store 9(iout) 232
             233:      6(int) Load 156(i1)
             234:      6(int) ExtInst 1(GLSL.std.450) 74(FindSMsb) 233
             235:    135(ptr) AccessChain 9(iout) 16
             236:      6(int) Load 235
             237:      6(int) IAdd 236 234
             238:    135(ptr) AccessChain 9(iout) 16
                              Store 238 237
             239:   24(ivec2) Load 26(u2)
             240:  144(ivec2) ExtInst 1(GLSL.std.450) 75(FindUMsb) 239
             241:    7(ivec4) Load 9(iout)
             242:  144(ivec2) VectorShuffle 241 241 0 1
             243:  144(ivec2) IAdd 242 240
             244:    7(ivec4) Load 9(iout)
             245:    7(ivec4) VectorShuffle 244 243 4 5 2 3
                              Store 9(iout) 245
             248:   19(fvec4) Load 247(v4)
             249:     12(int) ExtInst 1(GLSL.std.450) 55(PackUnorm4x8) 248
             250:     56(ptr) AccessChain 15(uout) 16
             251:     12(int) Load 250
             252:     12(int) IAdd 251 249
             253:     56(ptr) AccessChain 15(uout) 16
                              Store 253 252
             254:   19(fvec4) Load 247(v4)
             255:     12(int) ExtInst 1(GLSL.std.450) 54(PackSnorm4x8) 254
             256:     56(ptr) AccessChain 15(uout) 16
             257:     12(int) Load 256
             258:     12(int) IAdd 257 255
             259:     56(ptr) AccessChain 15(uout) 16
                              Store 259 258
             260:     12(int) Load 47(u1)
             261:   19(fvec4) ExtInst 1(GLSL.std.450) 64(UnpackUnorm4x8) 260
             262:   19(fvec4) Load 21(fout)
             263:   19(fvec4) FAdd 262 261
                              Store 21(fout) 263
             264:     12(int) Load 47(u1)
             265:   19(fvec4) ExtInst 1(GLSL.std.450) 63(UnpackSnorm4x8) 264
             266:   19(fvec4) Load 21(fout)
             267:   19(fvec4) FAdd 266 265
                              Store 21(fout) 267
                              Return
                              FunctionEnd
