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