| spv.intOps.vert |
| Warning, version 310 is not yet complete; most version-specific features are present, but some are missing. |
| |
| |
| Linked vertex stage: |
| |
| |
| // Module Version 10000 |
| // Generated by (magic number): 80001 |
| // Id's are bound by 270 |
| |
| 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 268 269 |
| 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" |
| Name 268 "gl_VertexID" |
| Name 269 "gl_InstanceID" |
| Decorate 268(gl_VertexID) BuiltIn VertexId |
| Decorate 269(gl_InstanceID) BuiltIn InstanceId |
| 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 |
| 268(gl_VertexID): 155(ptr) Variable Input |
| 269(gl_InstanceID): 155(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 |