1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197
|
spv.longVectorBuiltinsuint8.comp
// Module Version 10300
// Generated by (magic number): 8000b
// Id's are bound by 130
Capability Shader
Capability Int8
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 8 0
7: TypeVector 6(int8_t) 5
8: TypePointer Function 7(i8vec)
11: TypePointer Function 6(int8_t)
38: TypeBool
39: TypeVector 38(bool) 5
40: TypePointer Function 39(bvec)
66(ResType): TypeStruct 7(i8vec) 7(i8vec)
91: TypeInt 8 1
92: TypePointer Function 91(int8_t)
95: TypeInt 32 1
109: TypeVector 91(int8_t) 5
110: TypePointer Function 109(i8vec)
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(i8vec) Load 9(vu)
13: 6(int8_t) Load 12(u)
14: 7(i8vec) CompositeConstruct 13 13 13 13 13
15: 7(i8vec) ExtInst 1(GLSL.std.450) 38(UMin) 10 14
Store 9(vu) 15
16: 7(i8vec) Load 9(vu)
17: 7(i8vec) Load 9(vu)
18: 7(i8vec) ExtInst 1(GLSL.std.450) 38(UMin) 16 17
Store 9(vu) 18
19: 7(i8vec) Load 9(vu)
20: 6(int8_t) Load 12(u)
21: 7(i8vec) CompositeConstruct 20 20 20 20 20
22: 7(i8vec) ExtInst 1(GLSL.std.450) 41(UMax) 19 21
Store 9(vu) 22
23: 7(i8vec) Load 9(vu)
24: 7(i8vec) Load 9(vu)
25: 7(i8vec) ExtInst 1(GLSL.std.450) 41(UMax) 23 24
Store 9(vu) 25
26: 7(i8vec) Load 9(vu)
27: 6(int8_t) Load 12(u)
28: 6(int8_t) Load 12(u)
29: 7(i8vec) CompositeConstruct 27 27 27 27 27
30: 7(i8vec) CompositeConstruct 28 28 28 28 28
31: 7(i8vec) ExtInst 1(GLSL.std.450) 44(UClamp) 26 29 30
Store 9(vu) 31
32: 7(i8vec) Load 9(vu)
33: 7(i8vec) Load 9(vu)
34: 7(i8vec) Load 9(vu)
35: 7(i8vec) ExtInst 1(GLSL.std.450) 44(UClamp) 32 33 34
Store 9(vu) 35
36: 7(i8vec) Load 9(vu)
37: 7(i8vec) Load 9(vu)
42: 39(bvec) Load 41(vb)
43: 7(i8vec) Select 42 37 36
Store 9(vu) 43
44: 7(i8vec) Load 9(vu)
45: 7(i8vec) Load 9(vu)
46: 39(bvec) ULessThan 44 45
Store 41(vb) 46
47: 7(i8vec) Load 9(vu)
48: 7(i8vec) Load 9(vu)
49: 39(bvec) ULessThanEqual 47 48
Store 41(vb) 49
50: 7(i8vec) Load 9(vu)
51: 7(i8vec) Load 9(vu)
52: 39(bvec) UGreaterThan 50 51
Store 41(vb) 52
53: 7(i8vec) Load 9(vu)
54: 7(i8vec) Load 9(vu)
55: 39(bvec) UGreaterThanEqual 53 54
Store 41(vb) 55
56: 7(i8vec) Load 9(vu)
57: 7(i8vec) Load 9(vu)
58: 39(bvec) IEqual 56 57
Store 41(vb) 58
59: 7(i8vec) Load 9(vu)
60: 7(i8vec) Load 9(vu)
61: 39(bvec) INotEqual 59 60
Store 41(vb) 61
63: 7(i8vec) Load 9(vu)
64: 7(i8vec) Load 9(vu)
67: 66(ResType) IAddCarry 63 64
68: 7(i8vec) CompositeExtract 67 1
Store 65(tempArg) 68
69: 7(i8vec) CompositeExtract 67 0
Store 62(tempReturn) 69
70: 7(i8vec) Load 65(tempArg)
Store 9(vu) 70
71: 7(i8vec) Load 62(tempReturn)
Store 9(vu) 71
73: 7(i8vec) Load 9(vu)
74: 7(i8vec) Load 9(vu)
76: 66(ResType) ISubBorrow 73 74
77: 7(i8vec) CompositeExtract 76 1
Store 75(tempArg) 77
78: 7(i8vec) CompositeExtract 76 0
Store 72(tempReturn) 78
79: 7(i8vec) Load 75(tempArg)
Store 9(vu) 79
80: 7(i8vec) Load 72(tempReturn)
Store 9(vu) 80
81: 7(i8vec) Load 9(vu)
82: 7(i8vec) Load 9(vu)
85: 66(ResType) UMulExtended 81 82
86: 7(i8vec) CompositeExtract 85 0
Store 84(tempArg) 86
87: 7(i8vec) CompositeExtract 85 1
Store 83(tempArg) 87
88: 7(i8vec) Load 83(tempArg)
Store 9(vu) 88
89: 7(i8vec) Load 84(tempArg)
Store 9(vu) 89
90: 7(i8vec) Load 9(vu)
94: 91(int8_t) Load 93(i)
96: 95(int) SConvert 94
97: 91(int8_t) Load 93(i)
98: 95(int) SConvert 97
99: 7(i8vec) BitFieldUExtract 90 96 98
Store 9(vu) 99
100: 7(i8vec) Load 9(vu)
101: 7(i8vec) Load 9(vu)
102: 91(int8_t) Load 93(i)
103: 95(int) SConvert 102
104: 91(int8_t) Load 93(i)
105: 95(int) SConvert 104
106: 7(i8vec) BitFieldInsert 100 101 103 105
Store 9(vu) 106
107: 7(i8vec) Load 9(vu)
108: 7(i8vec) BitReverse 107
Store 9(vu) 108
112: 7(i8vec) Load 9(vu)
113: 109(i8vec) BitCount 112
Store 111(vi) 113
114: 7(i8vec) Load 9(vu)
115: 7(i8vec) Load 9(vu)
116: 39(bvec) Load 41(vb)
117: 7(i8vec) 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(i8vec) Load 9(vu)
123: 7(i8vec) Load 9(vu)
124: 7(i8vec) ExpectKHR 122 123
Store 9(vu) 124
Return
FunctionEnd
|