| spv.longVector.comp |
| // Module Version 10300 |
| // Generated by (magic number): 8000b |
| // Id's are bound by 230 |
| |
| Capability Shader |
| Capability Float16 |
| Capability StorageUniformBufferBlock16 |
| Capability StorageBuffer8BitAccess |
| Capability LongVectorEXT |
| Extension "SPV_EXT_long_vector" |
| Extension "SPV_KHR_8bit_storage" |
| 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_long_vector" |
| SourceExtension "GL_EXT_nonuniform_qualifier" |
| SourceExtension "GL_EXT_shader_explicit_arithmetic_types" |
| SourceExtension "GL_KHR_memory_scope_semantics" |
| Name 4 "main" |
| Name 11 "foo(f161<1>;" |
| Name 10 "x" |
| Name 17 "foo(f161<2>;" |
| Name 16 "x" |
| Name 24 "funcvec4(vf4;" |
| Name 23 "a" |
| Name 27 "funcvector4(f1<4>;" |
| Name 26 "a" |
| Name 29 "testfuncs(" |
| Name 33 "v" |
| Name 38 "x" |
| Name 41 "y" |
| Name 44 "v2" |
| Name 53 "v3" |
| Name 55 "x3" |
| Name 60 "y3" |
| Name 65 "v4" |
| Name 78 "v5" |
| Name 81 "v6" |
| Name 107 "f" |
| Name 117 "len" |
| Name 132 "f162" |
| Name 138 "f161" |
| Name 140 "f16" |
| Name 145 "v11" |
| Name 147 "v12" |
| Name 158 "v13" |
| Name 183 "vecA" |
| Name 201 "a" |
| Name 202 "b" |
| Name 205 "param" |
| Name 208 "param" |
| Name 211 "x" |
| Name 212 "param" |
| Name 221 "MatrixBuf" |
| MemberName 221(MatrixBuf) 0 "matrixData" |
| Name 223 "matrixBuf" |
| Name 226 "MatrixBuf2" |
| MemberName 226(MatrixBuf2) 0 "matrixData" |
| Name 228 "matrixBuf2" |
| Name 229 "matrixLayout" |
| Decorate 219 BuiltIn WorkgroupSize |
| Decorate 220 ArrayStride 2 |
| Decorate 221(MatrixBuf) Block |
| MemberDecorate 221(MatrixBuf) 0 Offset 0 |
| Decorate 223(matrixBuf) Binding 0 |
| Decorate 223(matrixBuf) DescriptorSet 0 |
| Decorate 225 ArrayStride 1 |
| Decorate 226(MatrixBuf2) Block |
| MemberDecorate 226(MatrixBuf2) 0 Offset 0 |
| Decorate 228(matrixBuf2) Binding 0 |
| Decorate 228(matrixBuf2) DescriptorSet 0 |
| Decorate 229(matrixLayout) SpecId 0 |
| 2: TypeVoid |
| 3: TypeFunction 2 |
| 6: TypeFloat 16 |
| 7: TypeVector 6(float16_t) 1 |
| 8: TypePointer Function 7(f16vec) |
| 9: TypeFunction 7(f16vec) 8(ptr) |
| 13: TypeVector 6(float16_t) 2 |
| 14: TypePointer Function 13(f16vec2) |
| 15: TypeFunction 13(f16vec2) 14(ptr) |
| 19: TypeFloat 32 |
| 20: TypeVector 19(float) 4 |
| 21: TypePointer Function 20(fvec4) |
| 22: TypeFunction 20(fvec4) 21(ptr) |
| 31: TypeVector 19(float) 5 |
| 32: TypePointer Function 31(fvec) |
| 34: 19(float) Constant 0 |
| 35: 31(fvec) ConstantComposite 34 34 34 34 34 |
| 36: TypeVector 19(float) 3 |
| 37: TypePointer Function 36(fvec3) |
| 39: 19(float) Constant 1065353216 |
| 40: 36(fvec3) ConstantComposite 39 39 39 |
| 42: 19(float) Constant 1073741824 |
| 43: 36(fvec3) ConstantComposite 42 42 42 |
| 54: 31(fvec) ConstantComposite 39 39 39 42 42 |
| 56: 19(float) Constant 1082130432 |
| 57: 19(float) Constant 1084227584 |
| 58: 19(float) Constant 1086324736 |
| 59: 36(fvec3) ConstantComposite 56 57 58 |
| 61: 19(float) Constant 1088421888 |
| 62: 19(float) Constant 1090519040 |
| 63: 19(float) Constant 1091567616 |
| 64: 36(fvec3) ConstantComposite 61 62 63 |
| 76: TypeVector 6(float16_t) 5 |
| 77: TypePointer Function 76(f16vec) |
| 106: TypePointer Function 19(float) |
| 115: TypeInt 32 1 |
| 116: TypePointer Function 115(int) |
| 118: 115(int) Constant 5 |
| 120: 115(int) Constant 0 |
| 123: 115(int) Constant 4 |
| 133: TypeVector 19(float) 20 |
| 134: 115(int) Constant 20 |
| 139: TypePointer Function 6(float16_t) |
| 143: TypeVector 6(float16_t) 7 |
| 144: TypePointer Function 143(f16vec) |
| 185:6(float16_t) Constant 11264 |
| 186: 13(f16vec2) ConstantComposite 185 185 |
| 215: TypeInt 32 0 |
| 216: TypeVector 215(int) 3 |
| 217: 215(int) Constant 64 |
| 218: 215(int) Constant 1 |
| 219: 216(ivec3) ConstantComposite 217 218 218 |
| 220: TypeRuntimeArray 6(float16_t) |
| 221(MatrixBuf): TypeStruct 220 |
| 222: TypePointer StorageBuffer 221(MatrixBuf) |
| 223(matrixBuf): 222(ptr) Variable StorageBuffer |
| 224: TypeInt 8 1 |
| 225: TypeRuntimeArray 224(int8_t) |
| 226(MatrixBuf2): TypeStruct 225 |
| 227: TypePointer StorageBuffer 226(MatrixBuf2) |
| 228(matrixBuf2): 227(ptr) Variable StorageBuffer |
| 229(matrixLayout): 115(int) SpecConstant 1 |
| 4(main): 2 Function None 3 |
| 5: Label |
| 33(v): 32(ptr) Variable Function |
| 38(x): 37(ptr) Variable Function |
| 41(y): 37(ptr) Variable Function |
| 44(v2): 32(ptr) Variable Function |
| 53(v3): 32(ptr) Variable Function |
| 55(x3): 37(ptr) Variable Function |
| 60(y3): 37(ptr) Variable Function |
| 65(v4): 32(ptr) Variable Function |
| 78(v5): 77(ptr) Variable Function |
| 81(v6): 32(ptr) Variable Function |
| 107(f): 106(ptr) Variable Function |
| 117(len): 116(ptr) Variable Function |
| 132(f162): 14(ptr) Variable Function |
| 138(f161): 8(ptr) Variable Function |
| 140(f16): 139(ptr) Variable Function |
| 145(v11): 144(ptr) Variable Function |
| 147(v12): 144(ptr) Variable Function |
| 158(v13): 144(ptr) Variable Function |
| 183(vecA): 14(ptr) Variable Function |
| Store 33(v) 35 |
| Store 38(x) 40 |
| Store 41(y) 43 |
| 45: 36(fvec3) Load 38(x) |
| 46: 36(fvec3) Load 41(y) |
| 47: 19(float) CompositeExtract 45 0 |
| 48: 19(float) CompositeExtract 45 1 |
| 49: 19(float) CompositeExtract 45 2 |
| 50: 19(float) CompositeExtract 46 0 |
| 51: 19(float) CompositeExtract 46 1 |
| 52: 31(fvec) CompositeConstruct 47 48 49 50 51 |
| Store 44(v2) 52 |
| Store 53(v3) 54 |
| Store 55(x3) 59 |
| Store 60(y3) 64 |
| 66: 36(fvec3) Load 55(x3) |
| 67: 36(fvec3) VectorShuffle 66 66 2 1 0 |
| 68: 36(fvec3) Load 60(y3) |
| 69: 36(fvec3) VectorShuffle 68 68 2 2 1 |
| 70: 19(float) CompositeExtract 67 0 |
| 71: 19(float) CompositeExtract 67 1 |
| 72: 19(float) CompositeExtract 67 2 |
| 73: 19(float) CompositeExtract 69 0 |
| 74: 19(float) CompositeExtract 69 1 |
| 75: 31(fvec) CompositeConstruct 70 71 72 73 74 |
| Store 65(v4) 75 |
| 79: 31(fvec) Load 65(v4) |
| 80: 76(f16vec) FConvert 79 |
| Store 78(v5) 80 |
| 82: 31(fvec) Load 33(v) |
| 83: 31(fvec) Load 44(v2) |
| 84: 31(fvec) FAdd 82 83 |
| Store 81(v6) 84 |
| 85: 31(fvec) Load 33(v) |
| 86: 31(fvec) Load 44(v2) |
| 87: 31(fvec) FSub 85 86 |
| Store 81(v6) 87 |
| 88: 31(fvec) Load 33(v) |
| 89: 31(fvec) Load 44(v2) |
| 90: 31(fvec) FMul 88 89 |
| Store 81(v6) 90 |
| 91: 31(fvec) Load 33(v) |
| 92: 31(fvec) Load 44(v2) |
| 93: 31(fvec) FDiv 91 92 |
| Store 81(v6) 93 |
| 94: 31(fvec) Load 33(v) |
| 95: 31(fvec) Load 81(v6) |
| 96: 31(fvec) FAdd 95 94 |
| Store 81(v6) 96 |
| 97: 31(fvec) Load 33(v) |
| 98: 31(fvec) Load 81(v6) |
| 99: 31(fvec) FSub 98 97 |
| Store 81(v6) 99 |
| 100: 31(fvec) Load 33(v) |
| 101: 31(fvec) Load 81(v6) |
| 102: 31(fvec) FMul 101 100 |
| Store 81(v6) 102 |
| 103: 31(fvec) Load 33(v) |
| 104: 31(fvec) Load 81(v6) |
| 105: 31(fvec) FDiv 104 103 |
| Store 81(v6) 105 |
| 108: 19(float) Load 107(f) |
| 109: 31(fvec) Load 81(v6) |
| 110: 31(fvec) CompositeConstruct 108 108 108 108 108 |
| 111: 31(fvec) FMul 109 110 |
| Store 81(v6) 111 |
| 112: 31(fvec) Load 81(v6) |
| 113: 31(fvec) CompositeConstruct 57 57 57 57 57 |
| 114: 31(fvec) FMul 112 113 |
| Store 81(v6) 114 |
| 119: 115(int) Bitcast 118 |
| Store 117(len) 119 |
| 121: 19(float) Load 107(f) |
| 122: 106(ptr) AccessChain 81(v6) 120 |
| Store 122 121 |
| 124: 106(ptr) AccessChain 81(v6) 123 |
| Store 124 57 |
| 125: 31(fvec) Load 33(v) |
| 126: 31(fvec) Load 33(v) |
| 127: 31(fvec) FAdd 126 125 |
| Store 33(v) 127 |
| 128: 19(float) CompositeExtract 127 4 |
| 129: 19(float) Load 107(f) |
| 130: 19(float) FAdd 129 128 |
| Store 107(f) 130 |
| 131: 31(fvec) Load 33(v) |
| Store 81(v6) 131 |
| 135: 115(int) Bitcast 134 |
| 136:6(float16_t) ConvertSToF 135 |
| 137: 13(f16vec2) CompositeConstruct 136 136 |
| Store 132(f162) 137 |
| 141:6(float16_t) Load 140(f16) |
| 142: 7(f16vec) CompositeConstruct 141 |
| Store 138(f161) 142 |
| 146: 143(f16vec) Load 145(v11) |
| 148: 143(f16vec) Load 147(v12) |
| 149: 143(f16vec) ExtInst 1(GLSL.std.450) 40(FMax) 146 148 |
| Store 145(v11) 149 |
| 150: 143(f16vec) Load 145(v11) |
| 151: 143(f16vec) Load 147(v12) |
| 152: 143(f16vec) ExtInst 1(GLSL.std.450) 37(FMin) 150 151 |
| Store 145(v11) 152 |
| 153: 143(f16vec) Load 145(v11) |
| 154: 143(f16vec) Load 147(v12) |
| 155: 143(f16vec) ExtInst 1(GLSL.std.450) 48(Step) 153 154 |
| Store 145(v11) 155 |
| 156: 143(f16vec) Load 145(v11) |
| 157: 143(f16vec) Load 147(v12) |
| 159: 143(f16vec) Load 158(v13) |
| 160: 143(f16vec) ExtInst 1(GLSL.std.450) 43(FClamp) 156 157 159 |
| Store 145(v11) 160 |
| 161: 143(f16vec) Load 145(v11) |
| 162: 143(f16vec) ExtInst 1(GLSL.std.450) 27(Exp) 161 |
| Store 145(v11) 162 |
| 163: 143(f16vec) Load 145(v11) |
| 164: 143(f16vec) ExtInst 1(GLSL.std.450) 28(Log) 163 |
| Store 145(v11) 164 |
| 165: 143(f16vec) Load 145(v11) |
| 166: 143(f16vec) ExtInst 1(GLSL.std.450) 21(Tanh) 165 |
| Store 145(v11) 166 |
| 167: 143(f16vec) Load 145(v11) |
| 168: 143(f16vec) ExtInst 1(GLSL.std.450) 18(Atan) 167 |
| Store 145(v11) 168 |
| 169: 143(f16vec) Load 145(v11) |
| 170: 143(f16vec) Load 147(v12) |
| 171: 143(f16vec) Load 158(v13) |
| 172: 143(f16vec) ExtInst 1(GLSL.std.450) 50(Fma) 169 170 171 |
| Store 145(v11) 172 |
| 173: 31(fvec) Load 33(v) |
| 174: 31(fvec) Load 33(v) |
| 175: 31(fvec) FAdd 174 173 |
| Store 33(v) 175 |
| 176: 115(int) Load 117(len) |
| 177: 19(float) VectorExtractDynamic 175 176 |
| 178: 19(float) Load 107(f) |
| 179: 19(float) FAdd 178 177 |
| Store 107(f) 179 |
| 180: 143(f16vec) Load 158(v13) |
| Store 158(v13) 180 |
| 181: 143(f16vec) Load 158(v13) |
| 182:6(float16_t) CompositeExtract 181 0 |
| Store 140(f16) 182 |
| 184: 13(f16vec2) Load 183(vecA) |
| 187: 13(f16vec2) FMul 184 186 |
| 188: 13(f16vec2) ExtInst 1(GLSL.std.450) 27(Exp) 187 |
| Store 183(vecA) 188 |
| Return |
| FunctionEnd |
| 11(foo(f161<1>;): 7(f16vec) Function None 9 |
| 10(x): 8(ptr) FunctionParameter |
| 12: Label |
| 189: 7(f16vec) Load 10(x) |
| ReturnValue 189 |
| FunctionEnd |
| 17(foo(f161<2>;): 13(f16vec2) Function None 15 |
| 16(x): 14(ptr) FunctionParameter |
| 18: Label |
| 192: 13(f16vec2) Load 16(x) |
| ReturnValue 192 |
| FunctionEnd |
| 24(funcvec4(vf4;): 20(fvec4) Function None 22 |
| 23(a): 21(ptr) FunctionParameter |
| 25: Label |
| 195: 20(fvec4) Load 23(a) |
| ReturnValue 195 |
| FunctionEnd |
| 27(funcvector4(f1<4>;): 20(fvec4) Function None 22 |
| 26(a): 21(ptr) FunctionParameter |
| 28: Label |
| 198: 20(fvec4) Load 26(a) |
| ReturnValue 198 |
| FunctionEnd |
| 29(testfuncs(): 2 Function None 3 |
| 30: Label |
| 201(a): 21(ptr) Variable Function |
| 202(b): 21(ptr) Variable Function |
| 205(param): 21(ptr) Variable Function |
| 208(param): 21(ptr) Variable Function |
| 211(x): 8(ptr) Variable Function |
| 212(param): 8(ptr) Variable Function |
| 203: 20(fvec4) Load 202(b) |
| Store 201(a) 203 |
| 204: 20(fvec4) Load 201(a) |
| Store 202(b) 204 |
| 206: 20(fvec4) Load 202(b) |
| Store 205(param) 206 |
| 207: 20(fvec4) FunctionCall 24(funcvec4(vf4;) 205(param) |
| 209: 20(fvec4) Load 201(a) |
| Store 208(param) 209 |
| 210: 20(fvec4) FunctionCall 27(funcvector4(f1<4>;) 208(param) |
| 213: 7(f16vec) Load 211(x) |
| Store 212(param) 213 |
| 214: 7(f16vec) FunctionCall 11(foo(f161<1>;) 212(param) |
| Store 211(x) 214 |
| Return |
| FunctionEnd |