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