Full vector and fully specified vector swizzle stores are not affected by this change, only partial swizzles ie swizzles with fewer components than the vector being stored to. Previously the vector being stored to loaded and any components not specified in the swizzle were used to create a full store to the vector. While this change generates more SPIR-V instructions, it is necessary for correctness. Fixes #2518.
760 lines
36 KiB
Plaintext
760 lines
36 KiB
Plaintext
spv.vulkan110.int16.frag
|
|
// Module Version 10300
|
|
// Generated by (magic number): 8000a
|
|
// Id's are bound by 535
|
|
|
|
Capability Shader
|
|
Capability Float16
|
|
Capability Float64
|
|
Capability Int64
|
|
Capability Int16
|
|
Capability Int8
|
|
Capability StorageUniform16
|
|
1: ExtInstImport "GLSL.std.450"
|
|
MemoryModel Logical GLSL450
|
|
EntryPoint Fragment 4 "main"
|
|
ExecutionMode 4 OriginUpperLeft
|
|
Source GLSL 450
|
|
SourceExtension "GL_EXT_shader_explicit_arithmetic_types"
|
|
SourceExtension "GL_EXT_shader_explicit_arithmetic_types_float16"
|
|
SourceExtension "GL_EXT_shader_explicit_arithmetic_types_float32"
|
|
SourceExtension "GL_EXT_shader_explicit_arithmetic_types_float64"
|
|
SourceExtension "GL_EXT_shader_explicit_arithmetic_types_int16"
|
|
SourceExtension "GL_EXT_shader_explicit_arithmetic_types_int32"
|
|
SourceExtension "GL_EXT_shader_explicit_arithmetic_types_int64"
|
|
SourceExtension "GL_EXT_shader_explicit_arithmetic_types_int8"
|
|
Name 4 "main"
|
|
Name 6 "literal("
|
|
Name 8 "typeCast16("
|
|
Name 10 "operators("
|
|
Name 12 "builtinFuncs("
|
|
Name 16 "i16"
|
|
Name 24 "Uniforms"
|
|
MemberName 24(Uniforms) 0 "index"
|
|
Name 26 ""
|
|
Name 33 "indexable"
|
|
Name 38 "u16"
|
|
Name 46 "indexable"
|
|
Name 51 "i32v"
|
|
Name 54 "i16v"
|
|
Name 59 "u16v"
|
|
Name 67 "u32v"
|
|
Name 74 "i64v"
|
|
Name 80 "u64v"
|
|
Name 94 "f16v"
|
|
Name 100 "f32v"
|
|
Name 106 "f64v"
|
|
Name 154 "i8v"
|
|
Name 163 "u8v"
|
|
Name 176 "bv"
|
|
Name 195 "u16v"
|
|
Name 200 "i16"
|
|
Name 220 "i"
|
|
Name 227 "uv"
|
|
Name 243 "i64"
|
|
Name 281 "b"
|
|
Name 343 "i16v"
|
|
Name 346 "i16"
|
|
Name 356 "u16v"
|
|
Name 358 "u16"
|
|
Name 428 "i32"
|
|
Name 431 "i64"
|
|
Name 434 "i16v4"
|
|
Name 437 "u32"
|
|
Name 438 "u16v2"
|
|
Name 442 "u64"
|
|
Name 445 "u16v4"
|
|
Name 457 "bv"
|
|
Name 530 "Block"
|
|
MemberName 530(Block) 0 "i16"
|
|
MemberName 530(Block) 1 "i16v2"
|
|
MemberName 530(Block) 2 "i16v3"
|
|
MemberName 530(Block) 3 "i16v4"
|
|
MemberName 530(Block) 4 "u16"
|
|
MemberName 530(Block) 5 "u16v2"
|
|
MemberName 530(Block) 6 "u16v3"
|
|
MemberName 530(Block) 7 "u16v4"
|
|
Name 532 "block"
|
|
Name 533 "si16"
|
|
Name 534 "su16"
|
|
MemberDecorate 24(Uniforms) 0 Offset 0
|
|
Decorate 24(Uniforms) Block
|
|
Decorate 26 DescriptorSet 0
|
|
Decorate 26 Binding 0
|
|
MemberDecorate 530(Block) 0 Offset 0
|
|
MemberDecorate 530(Block) 1 Offset 4
|
|
MemberDecorate 530(Block) 2 Offset 8
|
|
MemberDecorate 530(Block) 3 Offset 16
|
|
MemberDecorate 530(Block) 4 Offset 24
|
|
MemberDecorate 530(Block) 5 Offset 28
|
|
MemberDecorate 530(Block) 6 Offset 32
|
|
MemberDecorate 530(Block) 7 Offset 40
|
|
Decorate 530(Block) Block
|
|
Decorate 532(block) DescriptorSet 0
|
|
Decorate 532(block) Binding 1
|
|
Decorate 533(si16) SpecId 100
|
|
Decorate 534(su16) SpecId 101
|
|
2: TypeVoid
|
|
3: TypeFunction 2
|
|
14: TypeInt 16 1
|
|
15: TypePointer Function 14(int16_t)
|
|
17: TypeInt 32 0
|
|
18: 17(int) Constant 3
|
|
19: TypeArray 14(int16_t) 18
|
|
20: 14(int16_t) Constant 4294962927
|
|
21: 14(int16_t) Constant 4294967295
|
|
22: 14(int16_t) Constant 16384
|
|
23: 19 ConstantComposite 20 21 22
|
|
24(Uniforms): TypeStruct 17(int)
|
|
25: TypePointer Uniform 24(Uniforms)
|
|
26: 25(ptr) Variable Uniform
|
|
27: TypeInt 32 1
|
|
28: 27(int) Constant 0
|
|
29: TypePointer Uniform 17(int)
|
|
32: TypePointer Function 19
|
|
36: TypeInt 16 0
|
|
37: TypePointer Function 36(int16_t)
|
|
39: TypeArray 36(int16_t) 18
|
|
40: 36(int16_t) Constant 65535
|
|
41: 36(int16_t) Constant 32767
|
|
42: 39 ConstantComposite 40 40 41
|
|
45: TypePointer Function 39
|
|
49: TypeVector 27(int) 2
|
|
50: TypePointer Function 49(ivec2)
|
|
52: TypeVector 14(int16_t) 2
|
|
53: TypePointer Function 52(i16vec2)
|
|
57: TypeVector 36(int16_t) 2
|
|
58: TypePointer Function 57(i16vec2)
|
|
61: TypeVector 17(int) 2
|
|
66: TypePointer Function 61(ivec2)
|
|
71: TypeInt 64 1
|
|
72: TypeVector 71(int64_t) 2
|
|
73: TypePointer Function 72(i64vec2)
|
|
77: TypeInt 64 0
|
|
78: TypeVector 77(int64_t) 2
|
|
79: TypePointer Function 78(i64vec2)
|
|
91: TypeFloat 16
|
|
92: TypeVector 91(float16_t) 2
|
|
93: TypePointer Function 92(f16vec2)
|
|
97: TypeFloat 32
|
|
98: TypeVector 97(float) 2
|
|
99: TypePointer Function 98(fvec2)
|
|
103: TypeFloat 64
|
|
104: TypeVector 103(float64_t) 2
|
|
105: TypePointer Function 104(f64vec2)
|
|
151: TypeInt 8 1
|
|
152: TypeVector 151(int8_t) 2
|
|
153: TypePointer Function 152(i8vec2)
|
|
158: TypeInt 8 0
|
|
159: TypeVector 158(int8_t) 2
|
|
162: TypePointer Function 159(i8vec2)
|
|
173: TypeBool
|
|
174: TypeVector 173(bool) 2
|
|
175: TypePointer Function 174(bvec2)
|
|
178: 14(int16_t) Constant 0
|
|
179: 14(int16_t) Constant 1
|
|
180: 52(i16vec2) ConstantComposite 178 178
|
|
181: 52(i16vec2) ConstantComposite 179 179
|
|
184: 36(int16_t) Constant 0
|
|
185: 36(int16_t) Constant 1
|
|
186: 57(i16vec2) ConstantComposite 184 184
|
|
187: 57(i16vec2) ConstantComposite 185 185
|
|
193: TypeVector 36(int16_t) 3
|
|
194: TypePointer Function 193(i16vec3)
|
|
197: TypeVector 14(int16_t) 3
|
|
219: TypePointer Function 27(int)
|
|
225: TypeVector 17(int) 3
|
|
226: TypePointer Function 225(ivec3)
|
|
242: TypePointer Function 71(int64_t)
|
|
264: 17(int) Constant 1
|
|
270: 17(int) Constant 2
|
|
276: TypeVector 27(int) 3
|
|
280: TypePointer Function 173(bool)
|
|
282: 17(int) Constant 0
|
|
296: TypePointer Function 17(int)
|
|
354: 52(i16vec2) ConstantComposite 21 21
|
|
363:193(i16vec3) ConstantComposite 184 184 184
|
|
405: 173(bool) ConstantTrue
|
|
412: 173(bool) ConstantFalse
|
|
413: 174(bvec2) ConstantComposite 412 412
|
|
425: TypeVector 173(bool) 3
|
|
426: 425(bvec3) ConstantComposite 412 412 412
|
|
432: TypeVector 14(int16_t) 4
|
|
433: TypePointer Function 432(i16vec4)
|
|
441: TypePointer Function 77(int64_t)
|
|
443: TypeVector 36(int16_t) 4
|
|
444: TypePointer Function 443(i16vec4)
|
|
456: TypePointer Function 425(bvec3)
|
|
530(Block): TypeStruct 14(int16_t) 52(i16vec2) 197(i16vec3) 432(i16vec4) 36(int16_t) 57(i16vec2) 193(i16vec3) 443(i16vec4)
|
|
531: TypePointer Uniform 530(Block)
|
|
532(block): 531(ptr) Variable Uniform
|
|
533(si16): 14(int16_t) SpecConstant 4294967286
|
|
534(su16): 36(int16_t) SpecConstant 20
|
|
4(main): 2 Function None 3
|
|
5: Label
|
|
Return
|
|
FunctionEnd
|
|
6(literal(): 2 Function None 3
|
|
7: Label
|
|
16(i16): 15(ptr) Variable Function
|
|
33(indexable): 32(ptr) Variable Function
|
|
38(u16): 37(ptr) Variable Function
|
|
46(indexable): 45(ptr) Variable Function
|
|
30: 29(ptr) AccessChain 26 28
|
|
31: 17(int) Load 30
|
|
Store 33(indexable) 23
|
|
34: 15(ptr) AccessChain 33(indexable) 31
|
|
35: 14(int16_t) Load 34
|
|
Store 16(i16) 35
|
|
43: 29(ptr) AccessChain 26 28
|
|
44: 17(int) Load 43
|
|
Store 46(indexable) 42
|
|
47: 37(ptr) AccessChain 46(indexable) 44
|
|
48: 36(int16_t) Load 47
|
|
Store 38(u16) 48
|
|
Return
|
|
FunctionEnd
|
|
8(typeCast16(): 2 Function None 3
|
|
9: Label
|
|
51(i32v): 50(ptr) Variable Function
|
|
54(i16v): 53(ptr) Variable Function
|
|
59(u16v): 58(ptr) Variable Function
|
|
67(u32v): 66(ptr) Variable Function
|
|
74(i64v): 73(ptr) Variable Function
|
|
80(u64v): 79(ptr) Variable Function
|
|
94(f16v): 93(ptr) Variable Function
|
|
100(f32v): 99(ptr) Variable Function
|
|
106(f64v): 105(ptr) Variable Function
|
|
154(i8v): 153(ptr) Variable Function
|
|
163(u8v): 162(ptr) Variable Function
|
|
176(bv): 175(ptr) Variable Function
|
|
55: 52(i16vec2) Load 54(i16v)
|
|
56: 49(ivec2) SConvert 55
|
|
Store 51(i32v) 56
|
|
60: 57(i16vec2) Load 59(u16v)
|
|
62: 61(ivec2) UConvert 60
|
|
63: 49(ivec2) Bitcast 62
|
|
Store 51(i32v) 63
|
|
64: 52(i16vec2) Load 54(i16v)
|
|
65: 57(i16vec2) Bitcast 64
|
|
Store 59(u16v) 65
|
|
68: 52(i16vec2) Load 54(i16v)
|
|
69: 49(ivec2) SConvert 68
|
|
70: 61(ivec2) Bitcast 69
|
|
Store 67(u32v) 70
|
|
75: 52(i16vec2) Load 54(i16v)
|
|
76: 72(i64vec2) SConvert 75
|
|
Store 74(i64v) 76
|
|
81: 52(i16vec2) Load 54(i16v)
|
|
82: 72(i64vec2) SConvert 81
|
|
83: 78(i64vec2) Bitcast 82
|
|
Store 80(u64v) 83
|
|
84: 57(i16vec2) Load 59(u16v)
|
|
85: 61(ivec2) UConvert 84
|
|
Store 67(u32v) 85
|
|
86: 57(i16vec2) Load 59(u16v)
|
|
87: 78(i64vec2) UConvert 86
|
|
88: 72(i64vec2) Bitcast 87
|
|
Store 74(i64v) 88
|
|
89: 57(i16vec2) Load 59(u16v)
|
|
90: 78(i64vec2) UConvert 89
|
|
Store 80(u64v) 90
|
|
95: 52(i16vec2) Load 54(i16v)
|
|
96: 92(f16vec2) ConvertSToF 95
|
|
Store 94(f16v) 96
|
|
101: 52(i16vec2) Load 54(i16v)
|
|
102: 98(fvec2) ConvertSToF 101
|
|
Store 100(f32v) 102
|
|
107: 52(i16vec2) Load 54(i16v)
|
|
108:104(f64vec2) ConvertSToF 107
|
|
Store 106(f64v) 108
|
|
109: 57(i16vec2) Load 59(u16v)
|
|
110: 92(f16vec2) ConvertUToF 109
|
|
Store 94(f16v) 110
|
|
111: 57(i16vec2) Load 59(u16v)
|
|
112: 98(fvec2) ConvertUToF 111
|
|
Store 100(f32v) 112
|
|
113: 57(i16vec2) Load 59(u16v)
|
|
114:104(f64vec2) ConvertUToF 113
|
|
Store 106(f64v) 114
|
|
115: 52(i16vec2) Load 54(i16v)
|
|
116: 49(ivec2) SConvert 115
|
|
Store 51(i32v) 116
|
|
117: 57(i16vec2) Load 59(u16v)
|
|
118: 61(ivec2) UConvert 117
|
|
119: 49(ivec2) Bitcast 118
|
|
Store 51(i32v) 119
|
|
120: 52(i16vec2) Load 54(i16v)
|
|
121: 57(i16vec2) Bitcast 120
|
|
Store 59(u16v) 121
|
|
122: 52(i16vec2) Load 54(i16v)
|
|
123: 49(ivec2) SConvert 122
|
|
124: 61(ivec2) Bitcast 123
|
|
Store 67(u32v) 124
|
|
125: 52(i16vec2) Load 54(i16v)
|
|
126: 72(i64vec2) SConvert 125
|
|
Store 74(i64v) 126
|
|
127: 52(i16vec2) Load 54(i16v)
|
|
128: 72(i64vec2) SConvert 127
|
|
129: 78(i64vec2) Bitcast 128
|
|
Store 80(u64v) 129
|
|
130: 57(i16vec2) Load 59(u16v)
|
|
131: 61(ivec2) UConvert 130
|
|
Store 67(u32v) 131
|
|
132: 57(i16vec2) Load 59(u16v)
|
|
133: 78(i64vec2) UConvert 132
|
|
134: 72(i64vec2) Bitcast 133
|
|
Store 74(i64v) 134
|
|
135: 57(i16vec2) Load 59(u16v)
|
|
136: 78(i64vec2) UConvert 135
|
|
137: 72(i64vec2) Bitcast 136
|
|
138: 78(i64vec2) Bitcast 137
|
|
Store 80(u64v) 138
|
|
139: 52(i16vec2) Load 54(i16v)
|
|
140: 92(f16vec2) ConvertSToF 139
|
|
Store 94(f16v) 140
|
|
141: 52(i16vec2) Load 54(i16v)
|
|
142: 98(fvec2) ConvertSToF 141
|
|
Store 100(f32v) 142
|
|
143: 52(i16vec2) Load 54(i16v)
|
|
144:104(f64vec2) ConvertSToF 143
|
|
Store 106(f64v) 144
|
|
145: 57(i16vec2) Load 59(u16v)
|
|
146: 92(f16vec2) ConvertUToF 145
|
|
Store 94(f16v) 146
|
|
147: 57(i16vec2) Load 59(u16v)
|
|
148: 98(fvec2) ConvertUToF 147
|
|
Store 100(f32v) 148
|
|
149: 57(i16vec2) Load 59(u16v)
|
|
150:104(f64vec2) ConvertUToF 149
|
|
Store 106(f64v) 150
|
|
155: 52(i16vec2) Load 54(i16v)
|
|
156: 152(i8vec2) SConvert 155
|
|
Store 154(i8v) 156
|
|
157: 57(i16vec2) Load 59(u16v)
|
|
160: 159(i8vec2) UConvert 157
|
|
161: 152(i8vec2) Bitcast 160
|
|
Store 154(i8v) 161
|
|
164: 52(i16vec2) Load 54(i16v)
|
|
165: 152(i8vec2) SConvert 164
|
|
166: 159(i8vec2) Bitcast 165
|
|
Store 163(u8v) 166
|
|
167: 57(i16vec2) Load 59(u16v)
|
|
168: 159(i8vec2) UConvert 167
|
|
Store 163(u8v) 168
|
|
169: 57(i16vec2) Load 59(u16v)
|
|
170: 159(i8vec2) UConvert 169
|
|
171: 57(i16vec2) UConvert 170
|
|
172: 52(i16vec2) Bitcast 171
|
|
Store 54(i16v) 172
|
|
177: 174(bvec2) Load 176(bv)
|
|
182: 52(i16vec2) Select 177 181 180
|
|
Store 54(i16v) 182
|
|
183: 174(bvec2) Load 176(bv)
|
|
188: 57(i16vec2) Select 183 187 186
|
|
Store 59(u16v) 188
|
|
189: 52(i16vec2) Load 54(i16v)
|
|
190: 174(bvec2) INotEqual 189 186
|
|
Store 176(bv) 190
|
|
191: 57(i16vec2) Load 59(u16v)
|
|
192: 174(bvec2) INotEqual 191 186
|
|
Store 176(bv) 192
|
|
Return
|
|
FunctionEnd
|
|
10(operators(): 2 Function None 3
|
|
11: Label
|
|
195(u16v): 194(ptr) Variable Function
|
|
200(i16): 15(ptr) Variable Function
|
|
220(i): 219(ptr) Variable Function
|
|
227(uv): 226(ptr) Variable Function
|
|
243(i64): 242(ptr) Variable Function
|
|
281(b): 280(ptr) Variable Function
|
|
196:193(i16vec3) Load 195(u16v)
|
|
198:197(i16vec3) CompositeConstruct 179 179 179
|
|
199:193(i16vec3) IAdd 196 198
|
|
Store 195(u16v) 199
|
|
201: 14(int16_t) Load 200(i16)
|
|
202: 14(int16_t) ISub 201 179
|
|
Store 200(i16) 202
|
|
203: 14(int16_t) Load 200(i16)
|
|
204: 14(int16_t) IAdd 203 179
|
|
Store 200(i16) 204
|
|
205:193(i16vec3) Load 195(u16v)
|
|
206:197(i16vec3) CompositeConstruct 179 179 179
|
|
207:193(i16vec3) ISub 205 206
|
|
Store 195(u16v) 207
|
|
208:193(i16vec3) Load 195(u16v)
|
|
209:193(i16vec3) Not 208
|
|
Store 195(u16v) 209
|
|
210: 14(int16_t) Load 200(i16)
|
|
Store 200(i16) 210
|
|
211:193(i16vec3) Load 195(u16v)
|
|
212:193(i16vec3) SNegate 211
|
|
Store 195(u16v) 212
|
|
213: 14(int16_t) Load 200(i16)
|
|
214: 14(int16_t) Load 200(i16)
|
|
215: 14(int16_t) IAdd 214 213
|
|
Store 200(i16) 215
|
|
216:193(i16vec3) Load 195(u16v)
|
|
217:193(i16vec3) Load 195(u16v)
|
|
218:193(i16vec3) ISub 217 216
|
|
Store 195(u16v) 218
|
|
221: 14(int16_t) Load 200(i16)
|
|
222: 27(int) SConvert 221
|
|
223: 27(int) Load 220(i)
|
|
224: 27(int) IMul 223 222
|
|
Store 220(i) 224
|
|
228:193(i16vec3) Load 195(u16v)
|
|
229: 225(ivec3) UConvert 228
|
|
230: 225(ivec3) Load 227(uv)
|
|
231: 225(ivec3) UDiv 230 229
|
|
Store 227(uv) 231
|
|
232: 14(int16_t) Load 200(i16)
|
|
233: 27(int) SConvert 232
|
|
234: 17(int) Bitcast 233
|
|
235: 225(ivec3) Load 227(uv)
|
|
236: 225(ivec3) CompositeConstruct 234 234 234
|
|
237: 225(ivec3) UMod 235 236
|
|
Store 227(uv) 237
|
|
238:193(i16vec3) Load 195(u16v)
|
|
239: 225(ivec3) UConvert 238
|
|
240: 225(ivec3) Load 227(uv)
|
|
241: 225(ivec3) IAdd 239 240
|
|
Store 227(uv) 241
|
|
244: 14(int16_t) Load 200(i16)
|
|
245: 71(int64_t) SConvert 244
|
|
246: 71(int64_t) Load 243(i64)
|
|
247: 71(int64_t) ISub 245 246
|
|
Store 243(i64) 247
|
|
248:193(i16vec3) Load 195(u16v)
|
|
249: 225(ivec3) UConvert 248
|
|
250: 225(ivec3) Load 227(uv)
|
|
251: 225(ivec3) IMul 249 250
|
|
Store 227(uv) 251
|
|
252: 14(int16_t) Load 200(i16)
|
|
253: 71(int64_t) SConvert 252
|
|
254: 71(int64_t) Load 243(i64)
|
|
255: 71(int64_t) IMul 253 254
|
|
Store 243(i64) 255
|
|
256: 14(int16_t) Load 200(i16)
|
|
257: 27(int) SConvert 256
|
|
258: 27(int) Load 220(i)
|
|
259: 27(int) SMod 257 258
|
|
Store 220(i) 259
|
|
260: 14(int16_t) Load 200(i16)
|
|
261:193(i16vec3) Load 195(u16v)
|
|
262:197(i16vec3) CompositeConstruct 260 260 260
|
|
263:193(i16vec3) ShiftLeftLogical 261 262
|
|
Store 195(u16v) 263
|
|
265: 37(ptr) AccessChain 195(u16v) 264
|
|
266: 36(int16_t) Load 265
|
|
267: 14(int16_t) Load 200(i16)
|
|
268: 14(int16_t) ShiftRightArithmetic 267 266
|
|
Store 200(i16) 268
|
|
269: 14(int16_t) Load 200(i16)
|
|
271: 37(ptr) AccessChain 195(u16v) 270
|
|
272: 36(int16_t) Load 271
|
|
273: 14(int16_t) ShiftLeftLogical 269 272
|
|
Store 200(i16) 273
|
|
274:193(i16vec3) Load 195(u16v)
|
|
275: 27(int) Load 220(i)
|
|
277: 276(ivec3) CompositeConstruct 275 275 275
|
|
278:193(i16vec3) ShiftLeftLogical 274 277
|
|
279: 225(ivec3) UConvert 278
|
|
Store 227(uv) 279
|
|
283: 37(ptr) AccessChain 195(u16v) 282
|
|
284: 36(int16_t) Load 283
|
|
285: 14(int16_t) Load 200(i16)
|
|
286: 36(int16_t) Bitcast 285
|
|
287: 173(bool) INotEqual 284 286
|
|
Store 281(b) 287
|
|
288: 14(int16_t) Load 200(i16)
|
|
289: 36(int16_t) Bitcast 288
|
|
290: 37(ptr) AccessChain 195(u16v) 282
|
|
291: 36(int16_t) Load 290
|
|
292: 173(bool) IEqual 289 291
|
|
Store 281(b) 292
|
|
293: 37(ptr) AccessChain 195(u16v) 282
|
|
294: 36(int16_t) Load 293
|
|
295: 17(int) UConvert 294
|
|
297: 296(ptr) AccessChain 227(uv) 264
|
|
298: 17(int) Load 297
|
|
299: 173(bool) UGreaterThan 295 298
|
|
Store 281(b) 299
|
|
300: 14(int16_t) Load 200(i16)
|
|
301: 27(int) SConvert 300
|
|
302: 27(int) Load 220(i)
|
|
303: 173(bool) SLessThan 301 302
|
|
Store 281(b) 303
|
|
304: 37(ptr) AccessChain 195(u16v) 264
|
|
305: 36(int16_t) Load 304
|
|
306: 17(int) UConvert 305
|
|
307: 296(ptr) AccessChain 227(uv) 282
|
|
308: 17(int) Load 307
|
|
309: 173(bool) UGreaterThanEqual 306 308
|
|
Store 281(b) 309
|
|
310: 14(int16_t) Load 200(i16)
|
|
311: 27(int) SConvert 310
|
|
312: 27(int) Load 220(i)
|
|
313: 173(bool) SLessThanEqual 311 312
|
|
Store 281(b) 313
|
|
314: 14(int16_t) Load 200(i16)
|
|
315: 27(int) SConvert 314
|
|
316: 17(int) Bitcast 315
|
|
317: 225(ivec3) Load 227(uv)
|
|
318: 225(ivec3) CompositeConstruct 316 316 316
|
|
319: 225(ivec3) BitwiseOr 317 318
|
|
Store 227(uv) 319
|
|
320: 14(int16_t) Load 200(i16)
|
|
321: 27(int) SConvert 320
|
|
322: 27(int) Load 220(i)
|
|
323: 27(int) BitwiseOr 321 322
|
|
Store 220(i) 323
|
|
324: 14(int16_t) Load 200(i16)
|
|
325: 71(int64_t) SConvert 324
|
|
326: 71(int64_t) Load 243(i64)
|
|
327: 71(int64_t) BitwiseAnd 326 325
|
|
Store 243(i64) 327
|
|
328:193(i16vec3) Load 195(u16v)
|
|
329: 225(ivec3) UConvert 328
|
|
330: 225(ivec3) Load 227(uv)
|
|
331: 225(ivec3) BitwiseAnd 329 330
|
|
Store 227(uv) 331
|
|
332: 14(int16_t) Load 200(i16)
|
|
333: 27(int) SConvert 332
|
|
334: 17(int) Bitcast 333
|
|
335: 225(ivec3) Load 227(uv)
|
|
336: 225(ivec3) CompositeConstruct 334 334 334
|
|
337: 225(ivec3) BitwiseXor 335 336
|
|
Store 227(uv) 337
|
|
338:193(i16vec3) Load 195(u16v)
|
|
339: 14(int16_t) Load 200(i16)
|
|
340: 36(int16_t) Bitcast 339
|
|
341:193(i16vec3) CompositeConstruct 340 340 340
|
|
342:193(i16vec3) BitwiseXor 338 341
|
|
Store 195(u16v) 342
|
|
Return
|
|
FunctionEnd
|
|
12(builtinFuncs(): 2 Function None 3
|
|
13: Label
|
|
343(i16v): 53(ptr) Variable Function
|
|
346(i16): 15(ptr) Variable Function
|
|
356(u16v): 194(ptr) Variable Function
|
|
358(u16): 37(ptr) Variable Function
|
|
428(i32): 219(ptr) Variable Function
|
|
431(i64): 242(ptr) Variable Function
|
|
434(i16v4): 433(ptr) Variable Function
|
|
437(u32): 296(ptr) Variable Function
|
|
438(u16v2): 58(ptr) Variable Function
|
|
442(u64): 441(ptr) Variable Function
|
|
445(u16v4): 444(ptr) Variable Function
|
|
457(bv): 456(ptr) Variable Function
|
|
344: 52(i16vec2) Load 343(i16v)
|
|
345: 52(i16vec2) ExtInst 1(GLSL.std.450) 5(SAbs) 344
|
|
Store 343(i16v) 345
|
|
347: 14(int16_t) Load 346(i16)
|
|
348: 14(int16_t) ExtInst 1(GLSL.std.450) 7(SSign) 347
|
|
Store 346(i16) 348
|
|
349: 52(i16vec2) Load 343(i16v)
|
|
350: 14(int16_t) Load 346(i16)
|
|
351: 52(i16vec2) CompositeConstruct 350 350
|
|
352: 52(i16vec2) ExtInst 1(GLSL.std.450) 39(SMin) 349 351
|
|
Store 343(i16v) 352
|
|
353: 52(i16vec2) Load 343(i16v)
|
|
355: 52(i16vec2) ExtInst 1(GLSL.std.450) 39(SMin) 353 354
|
|
Store 343(i16v) 355
|
|
357:193(i16vec3) Load 356(u16v)
|
|
359: 36(int16_t) Load 358(u16)
|
|
360:193(i16vec3) CompositeConstruct 359 359 359
|
|
361:193(i16vec3) ExtInst 1(GLSL.std.450) 38(UMin) 357 360
|
|
Store 356(u16v) 361
|
|
362:193(i16vec3) Load 356(u16v)
|
|
364:193(i16vec3) ExtInst 1(GLSL.std.450) 38(UMin) 362 363
|
|
Store 356(u16v) 364
|
|
365: 52(i16vec2) Load 343(i16v)
|
|
366: 14(int16_t) Load 346(i16)
|
|
367: 52(i16vec2) CompositeConstruct 366 366
|
|
368: 52(i16vec2) ExtInst 1(GLSL.std.450) 42(SMax) 365 367
|
|
Store 343(i16v) 368
|
|
369: 52(i16vec2) Load 343(i16v)
|
|
370: 52(i16vec2) ExtInst 1(GLSL.std.450) 42(SMax) 369 354
|
|
Store 343(i16v) 370
|
|
371:193(i16vec3) Load 356(u16v)
|
|
372: 36(int16_t) Load 358(u16)
|
|
373:193(i16vec3) CompositeConstruct 372 372 372
|
|
374:193(i16vec3) ExtInst 1(GLSL.std.450) 41(UMax) 371 373
|
|
Store 356(u16v) 374
|
|
375:193(i16vec3) Load 356(u16v)
|
|
376:193(i16vec3) ExtInst 1(GLSL.std.450) 41(UMax) 375 363
|
|
Store 356(u16v) 376
|
|
377: 52(i16vec2) Load 343(i16v)
|
|
378: 14(int16_t) Load 346(i16)
|
|
379: 14(int16_t) SNegate 378
|
|
380: 14(int16_t) Load 346(i16)
|
|
381: 52(i16vec2) CompositeConstruct 379 379
|
|
382: 52(i16vec2) CompositeConstruct 380 380
|
|
383: 52(i16vec2) ExtInst 1(GLSL.std.450) 45(SClamp) 377 381 382
|
|
Store 343(i16v) 383
|
|
384: 52(i16vec2) Load 343(i16v)
|
|
385: 52(i16vec2) Load 343(i16v)
|
|
386: 52(i16vec2) SNegate 385
|
|
387: 52(i16vec2) Load 343(i16v)
|
|
388: 52(i16vec2) ExtInst 1(GLSL.std.450) 45(SClamp) 384 386 387
|
|
Store 343(i16v) 388
|
|
389:193(i16vec3) Load 356(u16v)
|
|
390: 36(int16_t) Load 358(u16)
|
|
391: 36(int16_t) SNegate 390
|
|
392: 36(int16_t) Load 358(u16)
|
|
393:193(i16vec3) CompositeConstruct 391 391 391
|
|
394:193(i16vec3) CompositeConstruct 392 392 392
|
|
395:193(i16vec3) ExtInst 1(GLSL.std.450) 44(UClamp) 389 393 394
|
|
Store 356(u16v) 395
|
|
396:193(i16vec3) Load 356(u16v)
|
|
397:193(i16vec3) Load 356(u16v)
|
|
398:193(i16vec3) SNegate 397
|
|
399:193(i16vec3) Load 356(u16v)
|
|
400:193(i16vec3) ExtInst 1(GLSL.std.450) 44(UClamp) 396 398 399
|
|
Store 356(u16v) 400
|
|
401: 15(ptr) AccessChain 343(i16v) 282
|
|
402: 14(int16_t) Load 401
|
|
403: 15(ptr) AccessChain 343(i16v) 264
|
|
404: 14(int16_t) Load 403
|
|
406: 14(int16_t) Select 405 404 402
|
|
Store 346(i16) 406
|
|
407: 14(int16_t) Load 346(i16)
|
|
408: 52(i16vec2) CompositeConstruct 407 407
|
|
409: 14(int16_t) Load 346(i16)
|
|
410: 14(int16_t) SNegate 409
|
|
411: 52(i16vec2) CompositeConstruct 410 410
|
|
414: 52(i16vec2) Select 413 411 408
|
|
Store 343(i16v) 414
|
|
415: 37(ptr) AccessChain 356(u16v) 282
|
|
416: 36(int16_t) Load 415
|
|
417: 37(ptr) AccessChain 356(u16v) 264
|
|
418: 36(int16_t) Load 417
|
|
419: 36(int16_t) Select 405 418 416
|
|
Store 358(u16) 419
|
|
420: 36(int16_t) Load 358(u16)
|
|
421:193(i16vec3) CompositeConstruct 420 420 420
|
|
422: 36(int16_t) Load 358(u16)
|
|
423: 36(int16_t) SNegate 422
|
|
424:193(i16vec3) CompositeConstruct 423 423 423
|
|
427:193(i16vec3) Select 426 424 421
|
|
Store 356(u16v) 427
|
|
429: 52(i16vec2) Load 343(i16v)
|
|
430: 27(int) Bitcast 429
|
|
Store 428(i32) 430
|
|
435:432(i16vec4) Load 434(i16v4)
|
|
436: 71(int64_t) Bitcast 435
|
|
Store 431(i64) 436
|
|
439: 57(i16vec2) Load 438(u16v2)
|
|
440: 17(int) Bitcast 439
|
|
Store 437(u32) 440
|
|
446:443(i16vec4) Load 445(u16v4)
|
|
447: 77(int64_t) Bitcast 446
|
|
Store 442(u64) 447
|
|
448: 27(int) Load 428(i32)
|
|
449: 52(i16vec2) Bitcast 448
|
|
Store 343(i16v) 449
|
|
450: 71(int64_t) Load 431(i64)
|
|
451:432(i16vec4) Bitcast 450
|
|
Store 434(i16v4) 451
|
|
452: 17(int) Load 437(u32)
|
|
453: 57(i16vec2) Bitcast 452
|
|
Store 438(u16v2) 453
|
|
454: 77(int64_t) Load 442(u64)
|
|
455:443(i16vec4) Bitcast 454
|
|
Store 445(u16v4) 455
|
|
458:193(i16vec3) Load 356(u16v)
|
|
459: 36(int16_t) Load 358(u16)
|
|
460:193(i16vec3) CompositeConstruct 459 459 459
|
|
461: 425(bvec3) ULessThan 458 460
|
|
Store 457(bv) 461
|
|
462: 52(i16vec2) Load 343(i16v)
|
|
463: 14(int16_t) Load 346(i16)
|
|
464: 52(i16vec2) CompositeConstruct 463 463
|
|
465: 174(bvec2) SLessThan 462 464
|
|
466: 280(ptr) AccessChain 457(bv) 282
|
|
467: 173(bool) CompositeExtract 465 0
|
|
Store 466 467
|
|
468: 280(ptr) AccessChain 457(bv) 264
|
|
469: 173(bool) CompositeExtract 465 1
|
|
Store 468 469
|
|
470:193(i16vec3) Load 356(u16v)
|
|
471: 36(int16_t) Load 358(u16)
|
|
472:193(i16vec3) CompositeConstruct 471 471 471
|
|
473: 425(bvec3) ULessThanEqual 470 472
|
|
Store 457(bv) 473
|
|
474: 52(i16vec2) Load 343(i16v)
|
|
475: 14(int16_t) Load 346(i16)
|
|
476: 52(i16vec2) CompositeConstruct 475 475
|
|
477: 174(bvec2) SLessThanEqual 474 476
|
|
478: 280(ptr) AccessChain 457(bv) 282
|
|
479: 173(bool) CompositeExtract 477 0
|
|
Store 478 479
|
|
480: 280(ptr) AccessChain 457(bv) 264
|
|
481: 173(bool) CompositeExtract 477 1
|
|
Store 480 481
|
|
482:193(i16vec3) Load 356(u16v)
|
|
483: 36(int16_t) Load 358(u16)
|
|
484:193(i16vec3) CompositeConstruct 483 483 483
|
|
485: 425(bvec3) UGreaterThan 482 484
|
|
Store 457(bv) 485
|
|
486: 52(i16vec2) Load 343(i16v)
|
|
487: 14(int16_t) Load 346(i16)
|
|
488: 52(i16vec2) CompositeConstruct 487 487
|
|
489: 174(bvec2) SGreaterThan 486 488
|
|
490: 280(ptr) AccessChain 457(bv) 282
|
|
491: 173(bool) CompositeExtract 489 0
|
|
Store 490 491
|
|
492: 280(ptr) AccessChain 457(bv) 264
|
|
493: 173(bool) CompositeExtract 489 1
|
|
Store 492 493
|
|
494:193(i16vec3) Load 356(u16v)
|
|
495: 36(int16_t) Load 358(u16)
|
|
496:193(i16vec3) CompositeConstruct 495 495 495
|
|
497: 425(bvec3) UGreaterThanEqual 494 496
|
|
Store 457(bv) 497
|
|
498: 52(i16vec2) Load 343(i16v)
|
|
499: 14(int16_t) Load 346(i16)
|
|
500: 52(i16vec2) CompositeConstruct 499 499
|
|
501: 174(bvec2) SGreaterThanEqual 498 500
|
|
502: 280(ptr) AccessChain 457(bv) 282
|
|
503: 173(bool) CompositeExtract 501 0
|
|
Store 502 503
|
|
504: 280(ptr) AccessChain 457(bv) 264
|
|
505: 173(bool) CompositeExtract 501 1
|
|
Store 504 505
|
|
506:193(i16vec3) Load 356(u16v)
|
|
507: 36(int16_t) Load 358(u16)
|
|
508:193(i16vec3) CompositeConstruct 507 507 507
|
|
509: 425(bvec3) IEqual 506 508
|
|
Store 457(bv) 509
|
|
510: 52(i16vec2) Load 343(i16v)
|
|
511: 14(int16_t) Load 346(i16)
|
|
512: 52(i16vec2) CompositeConstruct 511 511
|
|
513: 174(bvec2) IEqual 510 512
|
|
514: 280(ptr) AccessChain 457(bv) 282
|
|
515: 173(bool) CompositeExtract 513 0
|
|
Store 514 515
|
|
516: 280(ptr) AccessChain 457(bv) 264
|
|
517: 173(bool) CompositeExtract 513 1
|
|
Store 516 517
|
|
518:193(i16vec3) Load 356(u16v)
|
|
519: 36(int16_t) Load 358(u16)
|
|
520:193(i16vec3) CompositeConstruct 519 519 519
|
|
521: 425(bvec3) INotEqual 518 520
|
|
Store 457(bv) 521
|
|
522: 52(i16vec2) Load 343(i16v)
|
|
523: 14(int16_t) Load 346(i16)
|
|
524: 52(i16vec2) CompositeConstruct 523 523
|
|
525: 174(bvec2) INotEqual 522 524
|
|
526: 280(ptr) AccessChain 457(bv) 282
|
|
527: 173(bool) CompositeExtract 525 0
|
|
Store 526 527
|
|
528: 280(ptr) AccessChain 457(bv) 264
|
|
529: 173(bool) CompositeExtract 525 1
|
|
Store 528 529
|
|
Return
|
|
FunctionEnd
|