spv.longVectorBuiltins.comp // Module Version 10300 // Generated by (magic number): 8000b // Id's are bound by 320 Capability Shader Capability Float16 Capability LongVectorEXT Capability ExpectAssumeKHR Extension "SPV_EXT_long_vector" Extension "SPV_KHR_expect_assume" 1: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 EntryPoint GLCompute 4 "main" ExecutionMode 4 LocalSize 64 1 1 Source GLSL 450 SourceExtension "GL_EXT_buffer_reference" SourceExtension "GL_EXT_expect_assume" SourceExtension "GL_EXT_long_vector" SourceExtension "GL_EXT_shader_explicit_arithmetic_types" SourceExtension "GL_KHR_memory_scope_semantics" Name 4 "main" Name 9 "vf" Name 14 "f" Name 28 "vf16" Name 102 "tempReturn" Name 104 "tempArg" Name 105 "ResType" Name 149 "vb" Name 176 "vi" Name 182 "vu" Name 194 "ResType" Name 241 "b" Name 248 "tempReturn" Name 251 "tempArg" Name 252 "ResType" Name 258 "tempReturn" Name 261 "tempArg" Name 269 "tempArg" Name 270 "tempArg" Name 278 "tempArg" Name 279 "tempArg" Name 280 "ResType" Name 288 "i" Decorate 319 BuiltIn WorkgroupSize 2: TypeVoid 3: TypeFunction 2 6: TypeFloat 32 7: TypeVector 6(float) 5 8: TypePointer Function 7(fvec) 13: TypePointer Function 6(float) 25: TypeFloat 16 26: TypeVector 25(float16_t) 5 27: TypePointer Function 26(f16vec) 105(ResType): TypeStruct 7(fvec) 7(fvec) 146: TypeBool 147: TypeVector 146(bool) 5 148: TypePointer Function 147(bvec) 173: TypeInt 32 1 174: TypeVector 173(int) 5 175: TypePointer Function 174(ivec) 179: TypeInt 32 0 180: TypeVector 179(int) 5 181: TypePointer Function 180(ivec) 194(ResType): TypeStruct 7(fvec) 174(ivec) 240: TypePointer Function 146(bool) 252(ResType): TypeStruct 180(ivec) 180(ivec) 280(ResType): TypeStruct 174(ivec) 174(ivec) 287: TypePointer Function 173(int) 316: TypeVector 179(int) 3 317: 179(int) Constant 64 318: 179(int) Constant 1 319: 316(ivec3) ConstantComposite 317 318 318 4(main): 2 Function None 3 5: Label 9(vf): 8(ptr) Variable Function 14(f): 13(ptr) Variable Function 28(vf16): 27(ptr) Variable Function 102(tempReturn): 8(ptr) Variable Function 104(tempArg): 8(ptr) Variable Function 149(vb): 148(ptr) Variable Function 176(vi): 175(ptr) Variable Function 182(vu): 181(ptr) Variable Function 241(b): 240(ptr) Variable Function 248(tempReturn): 181(ptr) Variable Function 251(tempArg): 181(ptr) Variable Function 258(tempReturn): 181(ptr) Variable Function 261(tempArg): 181(ptr) Variable Function 269(tempArg): 181(ptr) Variable Function 270(tempArg): 181(ptr) Variable Function 278(tempArg): 175(ptr) Variable Function 279(tempArg): 175(ptr) Variable Function 288(i): 287(ptr) Variable Function 10: 7(fvec) Load 9(vf) 11: 7(fvec) Load 9(vf) 12: 7(fvec) ExtInst 1(GLSL.std.450) 40(FMax) 10 11 Store 9(vf) 12 15: 6(float) Load 14(f) 16: 6(float) Load 14(f) 17: 7(fvec) Load 9(vf) 18: 7(fvec) CompositeConstruct 15 15 15 15 15 19: 7(fvec) CompositeConstruct 16 16 16 16 16 20: 7(fvec) ExtInst 1(GLSL.std.450) 49(SmoothStep) 18 19 17 Store 9(vf) 20 21: 7(fvec) Load 9(vf) 22: 7(fvec) Load 9(vf) 23: 7(fvec) Load 9(vf) 24: 7(fvec) ExtInst 1(GLSL.std.450) 49(SmoothStep) 21 22 23 Store 9(vf) 24 29: 26(f16vec) Load 28(vf16) 30: 26(f16vec) Load 28(vf16) 31: 26(f16vec) Load 28(vf16) 32: 26(f16vec) ExtInst 1(GLSL.std.450) 49(SmoothStep) 29 30 31 Store 28(vf16) 32 33: 7(fvec) Load 9(vf) 34: 7(fvec) ExtInst 1(GLSL.std.450) 11(Radians) 33 Store 9(vf) 34 35: 7(fvec) Load 9(vf) 36: 7(fvec) ExtInst 1(GLSL.std.450) 12(Degrees) 35 Store 9(vf) 36 37: 7(fvec) Load 9(vf) 38: 7(fvec) ExtInst 1(GLSL.std.450) 13(Sin) 37 Store 9(vf) 38 39: 7(fvec) Load 9(vf) 40: 7(fvec) ExtInst 1(GLSL.std.450) 14(Cos) 39 Store 9(vf) 40 41: 7(fvec) Load 9(vf) 42: 7(fvec) ExtInst 1(GLSL.std.450) 15(Tan) 41 Store 9(vf) 42 43: 7(fvec) Load 9(vf) 44: 7(fvec) ExtInst 1(GLSL.std.450) 16(Asin) 43 Store 9(vf) 44 45: 7(fvec) Load 9(vf) 46: 7(fvec) ExtInst 1(GLSL.std.450) 17(Acos) 45 Store 9(vf) 46 47: 7(fvec) Load 9(vf) 48: 7(fvec) ExtInst 1(GLSL.std.450) 18(Atan) 47 Store 9(vf) 48 49: 7(fvec) Load 9(vf) 50: 7(fvec) Load 9(vf) 51: 7(fvec) ExtInst 1(GLSL.std.450) 25(Atan2) 49 50 Store 9(vf) 51 52: 7(fvec) Load 9(vf) 53: 7(fvec) ExtInst 1(GLSL.std.450) 19(Sinh) 52 Store 9(vf) 53 54: 7(fvec) Load 9(vf) 55: 7(fvec) ExtInst 1(GLSL.std.450) 20(Cosh) 54 Store 9(vf) 55 56: 7(fvec) Load 9(vf) 57: 7(fvec) ExtInst 1(GLSL.std.450) 21(Tanh) 56 Store 9(vf) 57 58: 7(fvec) Load 9(vf) 59: 7(fvec) ExtInst 1(GLSL.std.450) 22(Asinh) 58 Store 9(vf) 59 60: 7(fvec) Load 9(vf) 61: 7(fvec) ExtInst 1(GLSL.std.450) 23(Acosh) 60 Store 9(vf) 61 62: 7(fvec) Load 9(vf) 63: 7(fvec) ExtInst 1(GLSL.std.450) 24(Atanh) 62 Store 9(vf) 63 64: 7(fvec) Load 9(vf) 65: 7(fvec) Load 9(vf) 66: 7(fvec) ExtInst 1(GLSL.std.450) 26(Pow) 64 65 Store 9(vf) 66 67: 7(fvec) Load 9(vf) 68: 7(fvec) ExtInst 1(GLSL.std.450) 27(Exp) 67 Store 9(vf) 68 69: 7(fvec) Load 9(vf) 70: 7(fvec) ExtInst 1(GLSL.std.450) 28(Log) 69 Store 9(vf) 70 71: 7(fvec) Load 9(vf) 72: 7(fvec) ExtInst 1(GLSL.std.450) 29(Exp2) 71 Store 9(vf) 72 73: 7(fvec) Load 9(vf) 74: 7(fvec) ExtInst 1(GLSL.std.450) 30(Log2) 73 Store 9(vf) 74 75: 7(fvec) Load 9(vf) 76: 7(fvec) ExtInst 1(GLSL.std.450) 31(Sqrt) 75 Store 9(vf) 76 77: 7(fvec) Load 9(vf) 78: 7(fvec) ExtInst 1(GLSL.std.450) 32(InverseSqrt) 77 Store 9(vf) 78 79: 7(fvec) Load 9(vf) 80: 7(fvec) ExtInst 1(GLSL.std.450) 4(FAbs) 79 Store 9(vf) 80 81: 7(fvec) Load 9(vf) 82: 7(fvec) ExtInst 1(GLSL.std.450) 6(FSign) 81 Store 9(vf) 82 83: 7(fvec) Load 9(vf) 84: 7(fvec) ExtInst 1(GLSL.std.450) 8(Floor) 83 Store 9(vf) 84 85: 7(fvec) Load 9(vf) 86: 7(fvec) ExtInst 1(GLSL.std.450) 3(Trunc) 85 Store 9(vf) 86 87: 7(fvec) Load 9(vf) 88: 7(fvec) ExtInst 1(GLSL.std.450) 1(Round) 87 Store 9(vf) 88 89: 7(fvec) Load 9(vf) 90: 7(fvec) ExtInst 1(GLSL.std.450) 2(RoundEven) 89 Store 9(vf) 90 91: 7(fvec) Load 9(vf) 92: 7(fvec) ExtInst 1(GLSL.std.450) 9(Ceil) 91 Store 9(vf) 92 93: 7(fvec) Load 9(vf) 94: 7(fvec) ExtInst 1(GLSL.std.450) 10(Fract) 93 Store 9(vf) 94 95: 7(fvec) Load 9(vf) 96: 6(float) Load 14(f) 97: 7(fvec) CompositeConstruct 96 96 96 96 96 98: 7(fvec) FMod 95 97 Store 9(vf) 98 99: 7(fvec) Load 9(vf) 100: 7(fvec) Load 9(vf) 101: 7(fvec) FMod 99 100 Store 9(vf) 101 103: 7(fvec) Load 9(vf) 106:105(ResType) ExtInst 1(GLSL.std.450) 36(ModfStruct) 103 107: 7(fvec) CompositeExtract 106 1 Store 104(tempArg) 107 108: 7(fvec) CompositeExtract 106 0 Store 102(tempReturn) 108 109: 7(fvec) Load 104(tempArg) Store 9(vf) 109 110: 7(fvec) Load 102(tempReturn) Store 9(vf) 110 111: 7(fvec) Load 9(vf) 112: 6(float) Load 14(f) 113: 7(fvec) CompositeConstruct 112 112 112 112 112 114: 7(fvec) ExtInst 1(GLSL.std.450) 37(FMin) 111 113 Store 9(vf) 114 115: 7(fvec) Load 9(vf) 116: 7(fvec) Load 9(vf) 117: 7(fvec) ExtInst 1(GLSL.std.450) 37(FMin) 115 116 Store 9(vf) 117 118: 7(fvec) Load 9(vf) 119: 6(float) Load 14(f) 120: 7(fvec) CompositeConstruct 119 119 119 119 119 121: 7(fvec) ExtInst 1(GLSL.std.450) 40(FMax) 118 120 Store 9(vf) 121 122: 7(fvec) Load 9(vf) 123: 7(fvec) Load 9(vf) 124: 7(fvec) ExtInst 1(GLSL.std.450) 40(FMax) 122 123 Store 9(vf) 124 125: 7(fvec) Load 9(vf) 126: 6(float) Load 14(f) 127: 6(float) Load 14(f) 128: 7(fvec) CompositeConstruct 126 126 126 126 126 129: 7(fvec) CompositeConstruct 127 127 127 127 127 130: 7(fvec) ExtInst 1(GLSL.std.450) 43(FClamp) 125 128 129 Store 9(vf) 130 131: 7(fvec) Load 9(vf) 132: 7(fvec) Load 9(vf) 133: 7(fvec) Load 9(vf) 134: 7(fvec) ExtInst 1(GLSL.std.450) 43(FClamp) 131 132 133 Store 9(vf) 134 135: 7(fvec) Load 9(vf) 136: 7(fvec) Load 9(vf) 137: 6(float) Load 14(f) 138: 7(fvec) CompositeConstruct 137 137 137 137 137 139: 7(fvec) ExtInst 1(GLSL.std.450) 46(FMix) 135 136 138 Store 9(vf) 139 140: 7(fvec) Load 9(vf) 141: 7(fvec) Load 9(vf) 142: 7(fvec) Load 9(vf) 143: 7(fvec) ExtInst 1(GLSL.std.450) 46(FMix) 140 141 142 Store 9(vf) 143 144: 7(fvec) Load 9(vf) 145: 7(fvec) Load 9(vf) 150: 147(bvec) Load 149(vb) 151: 7(fvec) Select 150 145 144 Store 9(vf) 151 152: 7(fvec) Load 9(vf) 153: 7(fvec) Load 9(vf) 154: 7(fvec) ExtInst 1(GLSL.std.450) 48(Step) 152 153 Store 9(vf) 154 155: 6(float) Load 14(f) 156: 7(fvec) Load 9(vf) 157: 7(fvec) CompositeConstruct 155 155 155 155 155 158: 7(fvec) ExtInst 1(GLSL.std.450) 48(Step) 157 156 Store 9(vf) 158 159: 7(fvec) Load 9(vf) 160: 7(fvec) Load 9(vf) 161: 7(fvec) Load 9(vf) 162: 7(fvec) ExtInst 1(GLSL.std.450) 49(SmoothStep) 159 160 161 Store 9(vf) 162 163: 6(float) Load 14(f) 164: 6(float) Load 14(f) 165: 7(fvec) Load 9(vf) 166: 7(fvec) CompositeConstruct 163 163 163 163 163 167: 7(fvec) CompositeConstruct 164 164 164 164 164 168: 7(fvec) ExtInst 1(GLSL.std.450) 49(SmoothStep) 166 167 165 Store 9(vf) 168 169: 7(fvec) Load 9(vf) 170: 147(bvec) IsNan 169 Store 149(vb) 170 171: 7(fvec) Load 9(vf) 172: 147(bvec) IsInf 171 Store 149(vb) 172 177: 7(fvec) Load 9(vf) 178: 174(ivec) Bitcast 177 Store 176(vi) 178 183: 7(fvec) Load 9(vf) 184: 180(ivec) Bitcast 183 Store 182(vu) 184 185: 174(ivec) Load 176(vi) 186: 7(fvec) Bitcast 185 Store 9(vf) 186 187: 180(ivec) Load 182(vu) 188: 7(fvec) Bitcast 187 Store 9(vf) 188 189: 7(fvec) Load 9(vf) 190: 7(fvec) Load 9(vf) 191: 7(fvec) Load 9(vf) 192: 7(fvec) ExtInst 1(GLSL.std.450) 50(Fma) 189 190 191 Store 9(vf) 192 193: 7(fvec) Load 9(vf) 195:194(ResType) ExtInst 1(GLSL.std.450) 52(FrexpStruct) 193 196: 174(ivec) CompositeExtract 195 1 Store 176(vi) 196 197: 7(fvec) CompositeExtract 195 0 Store 9(vf) 197 198: 7(fvec) Load 9(vf) 199: 174(ivec) Load 176(vi) 200: 7(fvec) ExtInst 1(GLSL.std.450) 53(Ldexp) 198 199 Store 9(vf) 200 201: 7(fvec) Load 9(vf) 202: 6(float) ExtInst 1(GLSL.std.450) 66(Length) 201 Store 14(f) 202 203: 7(fvec) Load 9(vf) 204: 7(fvec) Load 9(vf) 205: 6(float) ExtInst 1(GLSL.std.450) 67(Distance) 203 204 Store 14(f) 205 206: 7(fvec) Load 9(vf) 207: 7(fvec) Load 9(vf) 208: 6(float) Dot 206 207 Store 14(f) 208 209: 7(fvec) Load 9(vf) 210: 7(fvec) ExtInst 1(GLSL.std.450) 69(Normalize) 209 Store 9(vf) 210 211: 7(fvec) Load 9(vf) 212: 7(fvec) Load 9(vf) 213: 7(fvec) Load 9(vf) 214: 7(fvec) ExtInst 1(GLSL.std.450) 70(FaceForward) 211 212 213 Store 9(vf) 214 215: 7(fvec) Load 9(vf) 216: 7(fvec) Load 9(vf) 217: 7(fvec) ExtInst 1(GLSL.std.450) 71(Reflect) 215 216 Store 9(vf) 217 218: 7(fvec) Load 9(vf) 219: 7(fvec) Load 9(vf) 220: 6(float) Load 14(f) 221: 7(fvec) ExtInst 1(GLSL.std.450) 72(Refract) 218 219 220 Store 9(vf) 221 222: 7(fvec) Load 9(vf) 223: 7(fvec) Load 9(vf) 224: 147(bvec) FOrdLessThan 222 223 Store 149(vb) 224 225: 7(fvec) Load 9(vf) 226: 7(fvec) Load 9(vf) 227: 147(bvec) FOrdLessThanEqual 225 226 Store 149(vb) 227 228: 7(fvec) Load 9(vf) 229: 7(fvec) Load 9(vf) 230: 147(bvec) FOrdGreaterThan 228 229 Store 149(vb) 230 231: 7(fvec) Load 9(vf) 232: 7(fvec) Load 9(vf) 233: 147(bvec) FOrdGreaterThanEqual 231 232 Store 149(vb) 233 234: 7(fvec) Load 9(vf) 235: 7(fvec) Load 9(vf) 236: 147(bvec) FOrdEqual 234 235 Store 149(vb) 236 237: 7(fvec) Load 9(vf) 238: 7(fvec) Load 9(vf) 239: 147(bvec) FUnordNotEqual 237 238 Store 149(vb) 239 242: 147(bvec) Load 149(vb) 243: 146(bool) Any 242 Store 241(b) 243 244: 147(bvec) Load 149(vb) 245: 146(bool) All 244 Store 241(b) 245 246: 147(bvec) Load 149(vb) 247: 147(bvec) LogicalNot 246 Store 149(vb) 247 249: 180(ivec) Load 182(vu) 250: 180(ivec) Load 182(vu) 253:252(ResType) IAddCarry 249 250 254: 180(ivec) CompositeExtract 253 1 Store 251(tempArg) 254 255: 180(ivec) CompositeExtract 253 0 Store 248(tempReturn) 255 256: 180(ivec) Load 251(tempArg) Store 182(vu) 256 257: 180(ivec) Load 248(tempReturn) Store 182(vu) 257 259: 180(ivec) Load 182(vu) 260: 180(ivec) Load 182(vu) 262:252(ResType) ISubBorrow 259 260 263: 180(ivec) CompositeExtract 262 1 Store 261(tempArg) 263 264: 180(ivec) CompositeExtract 262 0 Store 258(tempReturn) 264 265: 180(ivec) Load 261(tempArg) Store 182(vu) 265 266: 180(ivec) Load 258(tempReturn) Store 182(vu) 266 267: 180(ivec) Load 182(vu) 268: 180(ivec) Load 182(vu) 271:252(ResType) UMulExtended 267 268 272: 180(ivec) CompositeExtract 271 0 Store 270(tempArg) 272 273: 180(ivec) CompositeExtract 271 1 Store 269(tempArg) 273 274: 180(ivec) Load 269(tempArg) Store 182(vu) 274 275: 180(ivec) Load 270(tempArg) Store 182(vu) 275 276: 174(ivec) Load 176(vi) 277: 174(ivec) Load 176(vi) 281:280(ResType) SMulExtended 276 277 282: 174(ivec) CompositeExtract 281 0 Store 279(tempArg) 282 283: 174(ivec) CompositeExtract 281 1 Store 278(tempArg) 283 284: 174(ivec) Load 278(tempArg) Store 176(vi) 284 285: 174(ivec) Load 279(tempArg) Store 176(vi) 285 286: 180(ivec) Load 182(vu) 289: 173(int) Load 288(i) 290: 173(int) Load 288(i) 291: 180(ivec) BitFieldUExtract 286 289 290 Store 182(vu) 291 292: 180(ivec) Load 182(vu) 293: 180(ivec) Load 182(vu) 294: 173(int) Load 288(i) 295: 173(int) Load 288(i) 296: 180(ivec) BitFieldInsert 292 293 294 295 Store 182(vu) 296 297: 180(ivec) Load 182(vu) 298: 180(ivec) BitReverse 297 Store 182(vu) 298 299: 180(ivec) Load 182(vu) 300: 174(ivec) BitCount 299 Store 176(vi) 300 301: 180(ivec) Load 182(vu) 302: 174(ivec) ExtInst 1(GLSL.std.450) 73(FindILsb) 301 Store 176(vi) 302 303: 180(ivec) Load 182(vu) 304: 174(ivec) ExtInst 1(GLSL.std.450) 75(FindUMsb) 303 Store 176(vi) 304 305: 180(ivec) Load 182(vu) 306: 180(ivec) Load 182(vu) 307: 147(bvec) Load 149(vb) 308: 180(ivec) Select 307 306 305 Store 182(vu) 308 309: 147(bvec) Load 149(vb) 310: 147(bvec) Load 149(vb) 311: 147(bvec) Load 149(vb) 312: 147(bvec) Select 311 310 309 Store 149(vb) 312 313: 180(ivec) Load 182(vu) 314: 180(ivec) Load 182(vu) 315: 180(ivec) ExpectKHR 313 314 Store 182(vu) 315 Return FunctionEnd