1spv.intOps.vert 2// Module Version 10000 3// Generated by (magic number): 8000a 4// Id's are bound by 268 5 6 Capability Shader 7 1: ExtInstImport "GLSL.std.450" 8 MemoryModel Logical GLSL450 9 EntryPoint Vertex 4 "main" 9 15 21 26 47 67 83 100 121 142 146 156 173 182 247 10 Source ESSL 310 11 Name 4 "main" 12 Name 9 "iout" 13 Name 15 "uout" 14 Name 21 "fout" 15 Name 26 "u2" 16 Name 30 "u2out" 17 Name 31 "ResType" 18 Name 47 "u1" 19 Name 51 "u1out" 20 Name 52 "ResType" 21 Name 67 "u4" 22 Name 71 "u4outHi" 23 Name 72 "u4outLow" 24 Name 73 "ResType" 25 Name 83 "i4" 26 Name 87 "i4outHi" 27 Name 88 "i4outLow" 28 Name 89 "ResType" 29 Name 100 "v3" 30 Name 104 "i3out" 31 Name 105 "ResType" 32 Name 121 "v1" 33 Name 124 "i1out" 34 Name 125 "ResType" 35 Name 142 "v2" 36 Name 146 "i2" 37 Name 156 "i1" 38 Name 173 "u3" 39 Name 182 "i3" 40 Name 247 "v4" 41 Decorate 9(iout) Location 1 42 Decorate 15(uout) Location 0 43 Decorate 21(fout) Location 2 44 Decorate 26(u2) Location 1 45 Decorate 47(u1) Location 0 46 Decorate 67(u4) Location 3 47 Decorate 83(i4) Location 11 48 Decorate 100(v3) Location 6 49 Decorate 121(v1) Location 4 50 Decorate 142(v2) Location 5 51 Decorate 146(i2) Location 9 52 Decorate 156(i1) Location 8 53 Decorate 173(u3) Location 2 54 Decorate 182(i3) Location 10 55 Decorate 247(v4) Location 7 56 2: TypeVoid 57 3: TypeFunction 2 58 6: TypeInt 32 1 59 7: TypeVector 6(int) 4 60 8: TypePointer Output 7(ivec4) 61 9(iout): 8(ptr) Variable Output 62 10: 6(int) Constant 0 63 11: 7(ivec4) ConstantComposite 10 10 10 10 64 12: TypeInt 32 0 65 13: TypeVector 12(int) 4 66 14: TypePointer Output 13(ivec4) 67 15(uout): 14(ptr) Variable Output 68 16: 12(int) Constant 0 69 17: 13(ivec4) ConstantComposite 16 16 16 16 70 18: TypeFloat 32 71 19: TypeVector 18(float) 4 72 20: TypePointer Output 19(fvec4) 73 21(fout): 20(ptr) Variable Output 74 22: 18(float) Constant 0 75 23: 19(fvec4) ConstantComposite 22 22 22 22 76 24: TypeVector 12(int) 2 77 25: TypePointer Input 24(ivec2) 78 26(u2): 25(ptr) Variable Input 79 29: TypePointer Function 24(ivec2) 80 31(ResType): TypeStruct 24(ivec2) 24(ivec2) 81 46: TypePointer Input 12(int) 82 47(u1): 46(ptr) Variable Input 83 50: TypePointer Function 12(int) 84 52(ResType): TypeStruct 12(int) 12(int) 85 56: TypePointer Output 12(int) 86 66: TypePointer Input 13(ivec4) 87 67(u4): 66(ptr) Variable Input 88 70: TypePointer Function 13(ivec4) 89 73(ResType): TypeStruct 13(ivec4) 13(ivec4) 90 82: TypePointer Input 7(ivec4) 91 83(i4): 82(ptr) Variable Input 92 86: TypePointer Function 7(ivec4) 93 89(ResType): TypeStruct 7(ivec4) 7(ivec4) 94 98: TypeVector 18(float) 3 95 99: TypePointer Input 98(fvec3) 96 100(v3): 99(ptr) Variable Input 97 102: TypeVector 6(int) 3 98 103: TypePointer Function 102(ivec3) 99 105(ResType): TypeStruct 98(fvec3) 102(ivec3) 100 120: TypePointer Input 18(float) 101 121(v1): 120(ptr) Variable Input 102 123: TypePointer Function 6(int) 103 125(ResType): TypeStruct 18(float) 6(int) 104 129: TypePointer Output 18(float) 105 135: TypePointer Output 6(int) 106 140: TypeVector 18(float) 2 107 141: TypePointer Input 140(fvec2) 108 142(v2): 141(ptr) Variable Input 109 144: TypeVector 6(int) 2 110 145: TypePointer Input 144(ivec2) 111 146(i2): 145(ptr) Variable Input 112 155: TypePointer Input 6(int) 113 156(i1): 155(ptr) Variable Input 114 164: 6(int) Constant 4 115 165: 6(int) Constant 5 116 171: TypeVector 12(int) 3 117 172: TypePointer Input 171(ivec3) 118 173(u3): 172(ptr) Variable Input 119 181: TypePointer Input 102(ivec3) 120 182(i3): 181(ptr) Variable Input 121 246: TypePointer Input 19(fvec4) 122 247(v4): 246(ptr) Variable Input 123 4(main): 2 Function None 3 124 5: Label 125 30(u2out): 29(ptr) Variable Function 126 51(u1out): 50(ptr) Variable Function 127 71(u4outHi): 70(ptr) Variable Function 128 72(u4outLow): 70(ptr) Variable Function 129 87(i4outHi): 86(ptr) Variable Function 130 88(i4outLow): 86(ptr) Variable Function 131 104(i3out): 103(ptr) Variable Function 132 124(i1out): 123(ptr) Variable Function 133 Store 9(iout) 11 134 Store 15(uout) 17 135 Store 21(fout) 23 136 27: 24(ivec2) Load 26(u2) 137 28: 24(ivec2) Load 26(u2) 138 32: 31(ResType) IAddCarry 27 28 139 33: 24(ivec2) CompositeExtract 32 1 140 Store 30(u2out) 33 141 34: 24(ivec2) CompositeExtract 32 0 142 35: 13(ivec4) Load 15(uout) 143 36: 24(ivec2) VectorShuffle 35 35 0 1 144 37: 24(ivec2) IAdd 36 34 145 38: 13(ivec4) Load 15(uout) 146 39: 13(ivec4) VectorShuffle 38 37 4 5 2 3 147 Store 15(uout) 39 148 40: 24(ivec2) Load 30(u2out) 149 41: 13(ivec4) Load 15(uout) 150 42: 24(ivec2) VectorShuffle 41 41 0 1 151 43: 24(ivec2) IAdd 42 40 152 44: 13(ivec4) Load 15(uout) 153 45: 13(ivec4) VectorShuffle 44 43 4 5 2 3 154 Store 15(uout) 45 155 48: 12(int) Load 47(u1) 156 49: 12(int) Load 47(u1) 157 53: 52(ResType) ISubBorrow 48 49 158 54: 12(int) CompositeExtract 53 1 159 Store 51(u1out) 54 160 55: 12(int) CompositeExtract 53 0 161 57: 56(ptr) AccessChain 15(uout) 16 162 58: 12(int) Load 57 163 59: 12(int) IAdd 58 55 164 60: 56(ptr) AccessChain 15(uout) 16 165 Store 60 59 166 61: 12(int) Load 51(u1out) 167 62: 56(ptr) AccessChain 15(uout) 16 168 63: 12(int) Load 62 169 64: 12(int) IAdd 63 61 170 65: 56(ptr) AccessChain 15(uout) 16 171 Store 65 64 172 68: 13(ivec4) Load 67(u4) 173 69: 13(ivec4) Load 67(u4) 174 74: 73(ResType) UMulExtended 68 69 175 75: 13(ivec4) CompositeExtract 74 0 176 Store 72(u4outLow) 75 177 76: 13(ivec4) CompositeExtract 74 1 178 Store 71(u4outHi) 76 179 77: 13(ivec4) Load 71(u4outHi) 180 78: 13(ivec4) Load 72(u4outLow) 181 79: 13(ivec4) IAdd 77 78 182 80: 13(ivec4) Load 15(uout) 183 81: 13(ivec4) IAdd 80 79 184 Store 15(uout) 81 185 84: 7(ivec4) Load 83(i4) 186 85: 7(ivec4) Load 83(i4) 187 90: 89(ResType) SMulExtended 84 85 188 91: 7(ivec4) CompositeExtract 90 0 189 Store 88(i4outLow) 91 190 92: 7(ivec4) CompositeExtract 90 1 191 Store 87(i4outHi) 92 192 93: 7(ivec4) Load 88(i4outLow) 193 94: 7(ivec4) Load 87(i4outHi) 194 95: 7(ivec4) IAdd 93 94 195 96: 7(ivec4) Load 9(iout) 196 97: 7(ivec4) IAdd 96 95 197 Store 9(iout) 97 198 101: 98(fvec3) Load 100(v3) 199 106:105(ResType) ExtInst 1(GLSL.std.450) 52(FrexpStruct) 101 200 107: 102(ivec3) CompositeExtract 106 1 201 Store 104(i3out) 107 202 108: 98(fvec3) CompositeExtract 106 0 203 109: 19(fvec4) Load 21(fout) 204 110: 98(fvec3) VectorShuffle 109 109 0 1 2 205 111: 98(fvec3) FAdd 110 108 206 112: 19(fvec4) Load 21(fout) 207 113: 19(fvec4) VectorShuffle 112 111 4 5 6 3 208 Store 21(fout) 113 209 114: 102(ivec3) Load 104(i3out) 210 115: 7(ivec4) Load 9(iout) 211 116: 102(ivec3) VectorShuffle 115 115 0 1 2 212 117: 102(ivec3) IAdd 116 114 213 118: 7(ivec4) Load 9(iout) 214 119: 7(ivec4) VectorShuffle 118 117 4 5 6 3 215 Store 9(iout) 119 216 122: 18(float) Load 121(v1) 217 126:125(ResType) ExtInst 1(GLSL.std.450) 52(FrexpStruct) 122 218 127: 6(int) CompositeExtract 126 1 219 Store 124(i1out) 127 220 128: 18(float) CompositeExtract 126 0 221 130: 129(ptr) AccessChain 21(fout) 16 222 131: 18(float) Load 130 223 132: 18(float) FAdd 131 128 224 133: 129(ptr) AccessChain 21(fout) 16 225 Store 133 132 226 134: 6(int) Load 124(i1out) 227 136: 135(ptr) AccessChain 9(iout) 16 228 137: 6(int) Load 136 229 138: 6(int) IAdd 137 134 230 139: 135(ptr) AccessChain 9(iout) 16 231 Store 139 138 232 143: 140(fvec2) Load 142(v2) 233 147: 144(ivec2) Load 146(i2) 234 148: 140(fvec2) ExtInst 1(GLSL.std.450) 53(Ldexp) 143 147 235 149: 19(fvec4) Load 21(fout) 236 150: 140(fvec2) VectorShuffle 149 149 0 1 237 151: 140(fvec2) FAdd 150 148 238 152: 19(fvec4) Load 21(fout) 239 153: 19(fvec4) VectorShuffle 152 151 4 5 2 3 240 Store 21(fout) 153 241 154: 18(float) Load 121(v1) 242 157: 6(int) Load 156(i1) 243 158: 18(float) ExtInst 1(GLSL.std.450) 53(Ldexp) 154 157 244 159: 129(ptr) AccessChain 21(fout) 16 245 160: 18(float) Load 159 246 161: 18(float) FAdd 160 158 247 162: 129(ptr) AccessChain 21(fout) 16 248 Store 162 161 249 163: 6(int) Load 156(i1) 250 166: 6(int) BitFieldSExtract 163 164 165 251 167: 135(ptr) AccessChain 9(iout) 16 252 168: 6(int) Load 167 253 169: 6(int) IAdd 168 166 254 170: 135(ptr) AccessChain 9(iout) 16 255 Store 170 169 256 174: 171(ivec3) Load 173(u3) 257 175: 171(ivec3) BitFieldUExtract 174 164 165 258 176: 13(ivec4) Load 15(uout) 259 177: 171(ivec3) VectorShuffle 176 176 0 1 2 260 178: 171(ivec3) IAdd 177 175 261 179: 13(ivec4) Load 15(uout) 262 180: 13(ivec4) VectorShuffle 179 178 4 5 6 3 263 Store 15(uout) 180 264 183: 102(ivec3) Load 182(i3) 265 184: 102(ivec3) Load 182(i3) 266 185: 102(ivec3) BitFieldInsert 183 184 164 165 267 186: 7(ivec4) Load 9(iout) 268 187: 102(ivec3) VectorShuffle 186 186 0 1 2 269 188: 102(ivec3) IAdd 187 185 270 189: 7(ivec4) Load 9(iout) 271 190: 7(ivec4) VectorShuffle 189 188 4 5 6 3 272 Store 9(iout) 190 273 191: 12(int) Load 47(u1) 274 192: 12(int) Load 47(u1) 275 193: 12(int) BitFieldInsert 191 192 164 165 276 194: 56(ptr) AccessChain 15(uout) 16 277 195: 12(int) Load 194 278 196: 12(int) IAdd 195 193 279 197: 56(ptr) AccessChain 15(uout) 16 280 Store 197 196 281 198: 144(ivec2) Load 146(i2) 282 199: 144(ivec2) BitReverse 198 283 200: 7(ivec4) Load 9(iout) 284 201: 144(ivec2) VectorShuffle 200 200 0 1 285 202: 144(ivec2) IAdd 201 199 286 203: 7(ivec4) Load 9(iout) 287 204: 7(ivec4) VectorShuffle 203 202 4 5 2 3 288 Store 9(iout) 204 289 205: 13(ivec4) Load 67(u4) 290 206: 13(ivec4) BitReverse 205 291 207: 13(ivec4) Load 15(uout) 292 208: 13(ivec4) IAdd 207 206 293 Store 15(uout) 208 294 209: 6(int) Load 156(i1) 295 210: 6(int) BitCount 209 296 211: 135(ptr) AccessChain 9(iout) 16 297 212: 6(int) Load 211 298 213: 6(int) IAdd 212 210 299 214: 135(ptr) AccessChain 9(iout) 16 300 Store 214 213 301 215: 171(ivec3) Load 173(u3) 302 216: 102(ivec3) BitCount 215 303 217: 7(ivec4) Load 9(iout) 304 218: 102(ivec3) VectorShuffle 217 217 0 1 2 305 219: 102(ivec3) IAdd 218 216 306 220: 7(ivec4) Load 9(iout) 307 221: 7(ivec4) VectorShuffle 220 219 4 5 6 3 308 Store 9(iout) 221 309 222: 144(ivec2) Load 146(i2) 310 223: 144(ivec2) ExtInst 1(GLSL.std.450) 73(FindILsb) 222 311 224: 7(ivec4) Load 9(iout) 312 225: 144(ivec2) VectorShuffle 224 224 0 1 313 226: 144(ivec2) IAdd 225 223 314 227: 7(ivec4) Load 9(iout) 315 228: 7(ivec4) VectorShuffle 227 226 4 5 2 3 316 Store 9(iout) 228 317 229: 13(ivec4) Load 67(u4) 318 230: 7(ivec4) ExtInst 1(GLSL.std.450) 73(FindILsb) 229 319 231: 7(ivec4) Load 9(iout) 320 232: 7(ivec4) IAdd 231 230 321 Store 9(iout) 232 322 233: 6(int) Load 156(i1) 323 234: 6(int) ExtInst 1(GLSL.std.450) 74(FindSMsb) 233 324 235: 135(ptr) AccessChain 9(iout) 16 325 236: 6(int) Load 235 326 237: 6(int) IAdd 236 234 327 238: 135(ptr) AccessChain 9(iout) 16 328 Store 238 237 329 239: 24(ivec2) Load 26(u2) 330 240: 144(ivec2) ExtInst 1(GLSL.std.450) 75(FindUMsb) 239 331 241: 7(ivec4) Load 9(iout) 332 242: 144(ivec2) VectorShuffle 241 241 0 1 333 243: 144(ivec2) IAdd 242 240 334 244: 7(ivec4) Load 9(iout) 335 245: 7(ivec4) VectorShuffle 244 243 4 5 2 3 336 Store 9(iout) 245 337 248: 19(fvec4) Load 247(v4) 338 249: 12(int) ExtInst 1(GLSL.std.450) 55(PackUnorm4x8) 248 339 250: 56(ptr) AccessChain 15(uout) 16 340 251: 12(int) Load 250 341 252: 12(int) IAdd 251 249 342 253: 56(ptr) AccessChain 15(uout) 16 343 Store 253 252 344 254: 19(fvec4) Load 247(v4) 345 255: 12(int) ExtInst 1(GLSL.std.450) 54(PackSnorm4x8) 254 346 256: 56(ptr) AccessChain 15(uout) 16 347 257: 12(int) Load 256 348 258: 12(int) IAdd 257 255 349 259: 56(ptr) AccessChain 15(uout) 16 350 Store 259 258 351 260: 12(int) Load 47(u1) 352 261: 19(fvec4) ExtInst 1(GLSL.std.450) 64(UnpackUnorm4x8) 260 353 262: 19(fvec4) Load 21(fout) 354 263: 19(fvec4) FAdd 262 261 355 Store 21(fout) 263 356 264: 12(int) Load 47(u1) 357 265: 19(fvec4) ExtInst 1(GLSL.std.450) 63(UnpackSnorm4x8) 264 358 266: 19(fvec4) Load 21(fout) 359 267: 19(fvec4) FAdd 266 265 360 Store 21(fout) 267 361 Return 362 FunctionEnd 363