| spv.longVectorBuiltinsuint16.comp |
| // Module Version 10300 |
| // Generated by (magic number): 8000b |
| // Id's are bound by 130 |
| |
| Capability Shader |
| Capability Int16 |
| 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 "vu" |
| Name 12 "u" |
| Name 41 "vb" |
| Name 62 "tempReturn" |
| Name 65 "tempArg" |
| Name 66 "ResType" |
| Name 72 "tempReturn" |
| Name 75 "tempArg" |
| Name 83 "tempArg" |
| Name 84 "tempArg" |
| Name 93 "i" |
| Name 111 "vi" |
| Decorate 129 BuiltIn WorkgroupSize |
| 2: TypeVoid |
| 3: TypeFunction 2 |
| 6: TypeInt 16 0 |
| 7: TypeVector 6(int16_t) 5 |
| 8: TypePointer Function 7(i16vec) |
| 11: TypePointer Function 6(int16_t) |
| 38: TypeBool |
| 39: TypeVector 38(bool) 5 |
| 40: TypePointer Function 39(bvec) |
| 66(ResType): TypeStruct 7(i16vec) 7(i16vec) |
| 91: TypeInt 16 1 |
| 92: TypePointer Function 91(int16_t) |
| 95: TypeInt 32 1 |
| 109: TypeVector 91(int16_t) 5 |
| 110: TypePointer Function 109(i16vec) |
| 125: TypeInt 32 0 |
| 126: TypeVector 125(int) 3 |
| 127: 125(int) Constant 64 |
| 128: 125(int) Constant 1 |
| 129: 126(ivec3) ConstantComposite 127 128 128 |
| 4(main): 2 Function None 3 |
| 5: Label |
| 9(vu): 8(ptr) Variable Function |
| 12(u): 11(ptr) Variable Function |
| 41(vb): 40(ptr) Variable Function |
| 62(tempReturn): 8(ptr) Variable Function |
| 65(tempArg): 8(ptr) Variable Function |
| 72(tempReturn): 8(ptr) Variable Function |
| 75(tempArg): 8(ptr) Variable Function |
| 83(tempArg): 8(ptr) Variable Function |
| 84(tempArg): 8(ptr) Variable Function |
| 93(i): 92(ptr) Variable Function |
| 111(vi): 110(ptr) Variable Function |
| 10: 7(i16vec) Load 9(vu) |
| 13: 6(int16_t) Load 12(u) |
| 14: 7(i16vec) CompositeConstruct 13 13 13 13 13 |
| 15: 7(i16vec) ExtInst 1(GLSL.std.450) 38(UMin) 10 14 |
| Store 9(vu) 15 |
| 16: 7(i16vec) Load 9(vu) |
| 17: 7(i16vec) Load 9(vu) |
| 18: 7(i16vec) ExtInst 1(GLSL.std.450) 38(UMin) 16 17 |
| Store 9(vu) 18 |
| 19: 7(i16vec) Load 9(vu) |
| 20: 6(int16_t) Load 12(u) |
| 21: 7(i16vec) CompositeConstruct 20 20 20 20 20 |
| 22: 7(i16vec) ExtInst 1(GLSL.std.450) 41(UMax) 19 21 |
| Store 9(vu) 22 |
| 23: 7(i16vec) Load 9(vu) |
| 24: 7(i16vec) Load 9(vu) |
| 25: 7(i16vec) ExtInst 1(GLSL.std.450) 41(UMax) 23 24 |
| Store 9(vu) 25 |
| 26: 7(i16vec) Load 9(vu) |
| 27: 6(int16_t) Load 12(u) |
| 28: 6(int16_t) Load 12(u) |
| 29: 7(i16vec) CompositeConstruct 27 27 27 27 27 |
| 30: 7(i16vec) CompositeConstruct 28 28 28 28 28 |
| 31: 7(i16vec) ExtInst 1(GLSL.std.450) 44(UClamp) 26 29 30 |
| Store 9(vu) 31 |
| 32: 7(i16vec) Load 9(vu) |
| 33: 7(i16vec) Load 9(vu) |
| 34: 7(i16vec) Load 9(vu) |
| 35: 7(i16vec) ExtInst 1(GLSL.std.450) 44(UClamp) 32 33 34 |
| Store 9(vu) 35 |
| 36: 7(i16vec) Load 9(vu) |
| 37: 7(i16vec) Load 9(vu) |
| 42: 39(bvec) Load 41(vb) |
| 43: 7(i16vec) Select 42 37 36 |
| Store 9(vu) 43 |
| 44: 7(i16vec) Load 9(vu) |
| 45: 7(i16vec) Load 9(vu) |
| 46: 39(bvec) ULessThan 44 45 |
| Store 41(vb) 46 |
| 47: 7(i16vec) Load 9(vu) |
| 48: 7(i16vec) Load 9(vu) |
| 49: 39(bvec) ULessThanEqual 47 48 |
| Store 41(vb) 49 |
| 50: 7(i16vec) Load 9(vu) |
| 51: 7(i16vec) Load 9(vu) |
| 52: 39(bvec) UGreaterThan 50 51 |
| Store 41(vb) 52 |
| 53: 7(i16vec) Load 9(vu) |
| 54: 7(i16vec) Load 9(vu) |
| 55: 39(bvec) UGreaterThanEqual 53 54 |
| Store 41(vb) 55 |
| 56: 7(i16vec) Load 9(vu) |
| 57: 7(i16vec) Load 9(vu) |
| 58: 39(bvec) IEqual 56 57 |
| Store 41(vb) 58 |
| 59: 7(i16vec) Load 9(vu) |
| 60: 7(i16vec) Load 9(vu) |
| 61: 39(bvec) INotEqual 59 60 |
| Store 41(vb) 61 |
| 63: 7(i16vec) Load 9(vu) |
| 64: 7(i16vec) Load 9(vu) |
| 67: 66(ResType) IAddCarry 63 64 |
| 68: 7(i16vec) CompositeExtract 67 1 |
| Store 65(tempArg) 68 |
| 69: 7(i16vec) CompositeExtract 67 0 |
| Store 62(tempReturn) 69 |
| 70: 7(i16vec) Load 65(tempArg) |
| Store 9(vu) 70 |
| 71: 7(i16vec) Load 62(tempReturn) |
| Store 9(vu) 71 |
| 73: 7(i16vec) Load 9(vu) |
| 74: 7(i16vec) Load 9(vu) |
| 76: 66(ResType) ISubBorrow 73 74 |
| 77: 7(i16vec) CompositeExtract 76 1 |
| Store 75(tempArg) 77 |
| 78: 7(i16vec) CompositeExtract 76 0 |
| Store 72(tempReturn) 78 |
| 79: 7(i16vec) Load 75(tempArg) |
| Store 9(vu) 79 |
| 80: 7(i16vec) Load 72(tempReturn) |
| Store 9(vu) 80 |
| 81: 7(i16vec) Load 9(vu) |
| 82: 7(i16vec) Load 9(vu) |
| 85: 66(ResType) UMulExtended 81 82 |
| 86: 7(i16vec) CompositeExtract 85 0 |
| Store 84(tempArg) 86 |
| 87: 7(i16vec) CompositeExtract 85 1 |
| Store 83(tempArg) 87 |
| 88: 7(i16vec) Load 83(tempArg) |
| Store 9(vu) 88 |
| 89: 7(i16vec) Load 84(tempArg) |
| Store 9(vu) 89 |
| 90: 7(i16vec) Load 9(vu) |
| 94: 91(int16_t) Load 93(i) |
| 96: 95(int) SConvert 94 |
| 97: 91(int16_t) Load 93(i) |
| 98: 95(int) SConvert 97 |
| 99: 7(i16vec) BitFieldUExtract 90 96 98 |
| Store 9(vu) 99 |
| 100: 7(i16vec) Load 9(vu) |
| 101: 7(i16vec) Load 9(vu) |
| 102: 91(int16_t) Load 93(i) |
| 103: 95(int) SConvert 102 |
| 104: 91(int16_t) Load 93(i) |
| 105: 95(int) SConvert 104 |
| 106: 7(i16vec) BitFieldInsert 100 101 103 105 |
| Store 9(vu) 106 |
| 107: 7(i16vec) Load 9(vu) |
| 108: 7(i16vec) BitReverse 107 |
| Store 9(vu) 108 |
| 112: 7(i16vec) Load 9(vu) |
| 113: 109(i16vec) BitCount 112 |
| Store 111(vi) 113 |
| 114: 7(i16vec) Load 9(vu) |
| 115: 7(i16vec) Load 9(vu) |
| 116: 39(bvec) Load 41(vb) |
| 117: 7(i16vec) Select 116 115 114 |
| Store 9(vu) 117 |
| 118: 39(bvec) Load 41(vb) |
| 119: 39(bvec) Load 41(vb) |
| 120: 39(bvec) Load 41(vb) |
| 121: 39(bvec) Select 120 119 118 |
| Store 41(vb) 121 |
| 122: 7(i16vec) Load 9(vu) |
| 123: 7(i16vec) Load 9(vu) |
| 124: 7(i16vec) ExpectKHR 122 123 |
| Store 9(vu) 124 |
| Return |
| FunctionEnd |