mirror of
https://github.com/KhronosGroup/glslang
synced 2024-11-08 11:30:06 +00:00
33c7e30860
It is invalid if the same decoration is applied to the same id multiple times. This adds a check before adding a decoration that the decoration is not already in the list. If it is, then the duplicate is not added. Fixes #3627
725 lines
35 KiB
Plaintext
725 lines
35 KiB
Plaintext
spv.int32.frag
|
|
// Module Version 10300
|
|
// Generated by (magic number): 8000b
|
|
// Id's are bound by 499
|
|
|
|
Capability Shader
|
|
Capability Float16
|
|
Capability Float64
|
|
Capability Int64
|
|
Capability Int16
|
|
Capability Int8
|
|
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 "typeCast32("
|
|
Name 10 "operators("
|
|
Name 12 "builtinFuncs("
|
|
Name 16 "u32Max"
|
|
Name 20 "i32"
|
|
Name 27 "Uniforms"
|
|
MemberName 27(Uniforms) 0 "index"
|
|
Name 29 ""
|
|
Name 35 "indexable"
|
|
Name 39 "u32"
|
|
Name 46 "indexable"
|
|
Name 51 "u32v"
|
|
Name 54 "i32v"
|
|
Name 60 "i64v"
|
|
Name 66 "u64v"
|
|
Name 78 "f32v"
|
|
Name 84 "f64v"
|
|
Name 94 "i8v"
|
|
Name 105 "i16v"
|
|
Name 122 "u8v"
|
|
Name 129 "u16v"
|
|
Name 146 "f16v"
|
|
Name 162 "bv"
|
|
Name 180 "u32v"
|
|
Name 185 "i32"
|
|
Name 204 "i"
|
|
Name 208 "uv"
|
|
Name 221 "i64"
|
|
Name 254 "b"
|
|
Name 306 "i32v"
|
|
Name 309 "i32"
|
|
Name 319 "u32v"
|
|
Name 321 "u32"
|
|
Name 393 "i8v4"
|
|
Name 396 "i16v2"
|
|
Name 401 "u8v4"
|
|
Name 404 "u16v2"
|
|
Name 407 "i64"
|
|
Name 410 "u32v2"
|
|
Name 412 "u64"
|
|
Name 416 "bv"
|
|
Name 491 "Block"
|
|
MemberName 491(Block) 0 "i32"
|
|
MemberName 491(Block) 1 "i32v2"
|
|
MemberName 491(Block) 2 "i32v3"
|
|
MemberName 491(Block) 3 "i32v4"
|
|
MemberName 491(Block) 4 "u32"
|
|
MemberName 491(Block) 5 "u32v2"
|
|
MemberName 491(Block) 6 "u32v3"
|
|
MemberName 491(Block) 7 "u32v4"
|
|
Name 493 "block"
|
|
Name 494 "si32"
|
|
Name 495 "su32"
|
|
Name 496 "si"
|
|
Name 497 "su"
|
|
Name 498 "sb"
|
|
Decorate 27(Uniforms) Block
|
|
MemberDecorate 27(Uniforms) 0 Offset 0
|
|
Decorate 29 Binding 0
|
|
Decorate 29 DescriptorSet 0
|
|
Decorate 491(Block) Block
|
|
MemberDecorate 491(Block) 0 Offset 0
|
|
MemberDecorate 491(Block) 1 Offset 8
|
|
MemberDecorate 491(Block) 2 Offset 16
|
|
MemberDecorate 491(Block) 3 Offset 32
|
|
MemberDecorate 491(Block) 4 Offset 48
|
|
MemberDecorate 491(Block) 5 Offset 56
|
|
MemberDecorate 491(Block) 6 Offset 64
|
|
MemberDecorate 491(Block) 7 Offset 80
|
|
Decorate 493(block) Binding 1
|
|
Decorate 493(block) DescriptorSet 0
|
|
Decorate 494(si32) SpecId 100
|
|
Decorate 495(su32) SpecId 101
|
|
Decorate 496(si) SpecId 102
|
|
Decorate 497(su) SpecId 103
|
|
Decorate 498(sb) SpecId 104
|
|
2: TypeVoid
|
|
3: TypeFunction 2
|
|
14: TypeInt 32 0
|
|
15: TypePointer Private 14(int)
|
|
16(u32Max): 15(ptr) Variable Private
|
|
17: 14(int) Constant 4294967295
|
|
18: TypeInt 32 1
|
|
19: TypePointer Function 18(int)
|
|
21: 14(int) Constant 3
|
|
22: TypeArray 18(int) 21
|
|
23: 18(int) Constant 4008636143
|
|
24: 18(int) Constant 4294967295
|
|
25: 18(int) Constant 536870912
|
|
26: 22 ConstantComposite 23 24 25
|
|
27(Uniforms): TypeStruct 14(int)
|
|
28: TypePointer Uniform 27(Uniforms)
|
|
29: 28(ptr) Variable Uniform
|
|
30: 18(int) Constant 0
|
|
31: TypePointer Uniform 14(int)
|
|
34: TypePointer Function 22
|
|
38: TypePointer Function 14(int)
|
|
40: TypeArray 14(int) 21
|
|
41: 14(int) Constant 2147483647
|
|
42: 40 ConstantComposite 17 17 41
|
|
45: TypePointer Function 40
|
|
49: TypeVector 14(int) 2
|
|
50: TypePointer Function 49(ivec2)
|
|
52: TypeVector 18(int) 2
|
|
53: TypePointer Function 52(ivec2)
|
|
57: TypeInt 64 1
|
|
58: TypeVector 57(int64_t) 2
|
|
59: TypePointer Function 58(i64vec2)
|
|
63: TypeInt 64 0
|
|
64: TypeVector 63(int64_t) 2
|
|
65: TypePointer Function 64(i64vec2)
|
|
75: TypeFloat 32
|
|
76: TypeVector 75(float) 2
|
|
77: TypePointer Function 76(fvec2)
|
|
81: TypeFloat 64
|
|
82: TypeVector 81(float64_t) 2
|
|
83: TypePointer Function 82(f64vec2)
|
|
91: TypeInt 8 1
|
|
92: TypeVector 91(int8_t) 2
|
|
93: TypePointer Function 92(i8vec2)
|
|
98: TypeInt 8 0
|
|
99: TypeVector 98(int8_t) 2
|
|
102: TypeInt 16 1
|
|
103: TypeVector 102(int16_t) 2
|
|
104: TypePointer Function 103(i16vec2)
|
|
109: TypeInt 16 0
|
|
110: TypeVector 109(int16_t) 2
|
|
121: TypePointer Function 99(i8vec2)
|
|
128: TypePointer Function 110(i16vec2)
|
|
143: TypeFloat 16
|
|
144: TypeVector 143(float16_t) 2
|
|
145: TypePointer Function 144(f16vec2)
|
|
159: TypeBool
|
|
160: TypeVector 159(bool) 2
|
|
161: TypePointer Function 160(bvec2)
|
|
164: 18(int) Constant 1
|
|
165: 52(ivec2) ConstantComposite 30 30
|
|
166: 52(ivec2) ConstantComposite 164 164
|
|
169: 14(int) Constant 0
|
|
170: 14(int) Constant 1
|
|
171: 49(ivec2) ConstantComposite 169 169
|
|
172: 49(ivec2) ConstantComposite 170 170
|
|
178: TypeVector 14(int) 3
|
|
179: TypePointer Function 178(ivec3)
|
|
182: TypeVector 18(int) 3
|
|
220: TypePointer Function 57(int64_t)
|
|
245: 14(int) Constant 2
|
|
253: TypePointer Function 159(bool)
|
|
317: 52(ivec2) ConstantComposite 24 24
|
|
326: 178(ivec3) ConstantComposite 169 169 169
|
|
368: 159(bool) ConstantTrue
|
|
375: 159(bool) ConstantFalse
|
|
376: 160(bvec2) ConstantComposite 375 375
|
|
388: TypeVector 159(bool) 3
|
|
389: 388(bvec3) ConstantComposite 375 375 375
|
|
391: TypeVector 91(int8_t) 4
|
|
392: TypePointer Function 391(i8vec4)
|
|
399: TypeVector 98(int8_t) 4
|
|
400: TypePointer Function 399(i8vec4)
|
|
411: TypePointer Function 63(int64_t)
|
|
415: TypePointer Function 388(bvec3)
|
|
489: TypeVector 18(int) 4
|
|
490: TypeVector 14(int) 4
|
|
491(Block): TypeStruct 18(int) 52(ivec2) 182(ivec3) 489(ivec4) 14(int) 49(ivec2) 178(ivec3) 490(ivec4)
|
|
492: TypePointer Uniform 491(Block)
|
|
493(block): 492(ptr) Variable Uniform
|
|
494(si32): 18(int) SpecConstant 4294967286
|
|
495(su32): 14(int) SpecConstant 20
|
|
496(si): 18(int) SpecConstant 4294967291
|
|
497(su): 14(int) SpecConstant 4
|
|
498(sb): 159(bool) SpecConstantTrue
|
|
4(main): 2 Function None 3
|
|
5: Label
|
|
Store 16(u32Max) 17
|
|
Return
|
|
FunctionEnd
|
|
6(literal(): 2 Function None 3
|
|
7: Label
|
|
20(i32): 19(ptr) Variable Function
|
|
35(indexable): 34(ptr) Variable Function
|
|
39(u32): 38(ptr) Variable Function
|
|
46(indexable): 45(ptr) Variable Function
|
|
32: 31(ptr) AccessChain 29 30
|
|
33: 14(int) Load 32
|
|
Store 35(indexable) 26
|
|
36: 19(ptr) AccessChain 35(indexable) 33
|
|
37: 18(int) Load 36
|
|
Store 20(i32) 37
|
|
43: 31(ptr) AccessChain 29 30
|
|
44: 14(int) Load 43
|
|
Store 46(indexable) 42
|
|
47: 38(ptr) AccessChain 46(indexable) 44
|
|
48: 14(int) Load 47
|
|
Store 39(u32) 48
|
|
Return
|
|
FunctionEnd
|
|
8(typeCast32(): 2 Function None 3
|
|
9: Label
|
|
51(u32v): 50(ptr) Variable Function
|
|
54(i32v): 53(ptr) Variable Function
|
|
60(i64v): 59(ptr) Variable Function
|
|
66(u64v): 65(ptr) Variable Function
|
|
78(f32v): 77(ptr) Variable Function
|
|
84(f64v): 83(ptr) Variable Function
|
|
94(i8v): 93(ptr) Variable Function
|
|
105(i16v): 104(ptr) Variable Function
|
|
122(u8v): 121(ptr) Variable Function
|
|
129(u16v): 128(ptr) Variable Function
|
|
146(f16v): 145(ptr) Variable Function
|
|
162(bv): 161(ptr) Variable Function
|
|
55: 52(ivec2) Load 54(i32v)
|
|
56: 49(ivec2) Bitcast 55
|
|
Store 51(u32v) 56
|
|
61: 52(ivec2) Load 54(i32v)
|
|
62: 58(i64vec2) SConvert 61
|
|
Store 60(i64v) 62
|
|
67: 52(ivec2) Load 54(i32v)
|
|
68: 58(i64vec2) SConvert 67
|
|
69: 64(i64vec2) Bitcast 68
|
|
Store 66(u64v) 69
|
|
70: 49(ivec2) Load 51(u32v)
|
|
71: 64(i64vec2) UConvert 70
|
|
72: 58(i64vec2) Bitcast 71
|
|
Store 60(i64v) 72
|
|
73: 49(ivec2) Load 51(u32v)
|
|
74: 64(i64vec2) UConvert 73
|
|
Store 66(u64v) 74
|
|
79: 52(ivec2) Load 54(i32v)
|
|
80: 76(fvec2) ConvertSToF 79
|
|
Store 78(f32v) 80
|
|
85: 52(ivec2) Load 54(i32v)
|
|
86: 82(f64vec2) ConvertSToF 85
|
|
Store 84(f64v) 86
|
|
87: 49(ivec2) Load 51(u32v)
|
|
88: 76(fvec2) ConvertUToF 87
|
|
Store 78(f32v) 88
|
|
89: 49(ivec2) Load 51(u32v)
|
|
90: 82(f64vec2) ConvertUToF 89
|
|
Store 84(f64v) 90
|
|
95: 52(ivec2) Load 54(i32v)
|
|
96: 92(i8vec2) SConvert 95
|
|
Store 94(i8v) 96
|
|
97: 49(ivec2) Load 51(u32v)
|
|
100: 99(i8vec2) UConvert 97
|
|
101: 92(i8vec2) Bitcast 100
|
|
Store 94(i8v) 101
|
|
106: 52(ivec2) Load 54(i32v)
|
|
107:103(i16vec2) SConvert 106
|
|
Store 105(i16v) 107
|
|
108: 49(ivec2) Load 51(u32v)
|
|
111:110(i16vec2) UConvert 108
|
|
112:103(i16vec2) Bitcast 111
|
|
Store 105(i16v) 112
|
|
113: 52(ivec2) Load 54(i32v)
|
|
Store 54(i32v) 113
|
|
114: 49(ivec2) Load 51(u32v)
|
|
115: 52(ivec2) Bitcast 114
|
|
Store 54(i32v) 115
|
|
116: 52(ivec2) Load 54(i32v)
|
|
117: 58(i64vec2) SConvert 116
|
|
Store 60(i64v) 117
|
|
118: 49(ivec2) Load 51(u32v)
|
|
119: 64(i64vec2) UConvert 118
|
|
120: 58(i64vec2) Bitcast 119
|
|
Store 60(i64v) 120
|
|
123: 52(ivec2) Load 54(i32v)
|
|
124: 92(i8vec2) SConvert 123
|
|
125: 99(i8vec2) Bitcast 124
|
|
Store 122(u8v) 125
|
|
126: 49(ivec2) Load 51(u32v)
|
|
127: 99(i8vec2) UConvert 126
|
|
Store 122(u8v) 127
|
|
130: 52(ivec2) Load 54(i32v)
|
|
131:103(i16vec2) SConvert 130
|
|
132:110(i16vec2) Bitcast 131
|
|
Store 129(u16v) 132
|
|
133: 49(ivec2) Load 51(u32v)
|
|
134:110(i16vec2) UConvert 133
|
|
Store 129(u16v) 134
|
|
135: 52(ivec2) Load 54(i32v)
|
|
136: 49(ivec2) Bitcast 135
|
|
Store 51(u32v) 136
|
|
137: 49(ivec2) Load 51(u32v)
|
|
Store 51(u32v) 137
|
|
138: 52(ivec2) Load 54(i32v)
|
|
139: 58(i64vec2) SConvert 138
|
|
140: 64(i64vec2) Bitcast 139
|
|
Store 66(u64v) 140
|
|
141: 49(ivec2) Load 51(u32v)
|
|
142: 64(i64vec2) UConvert 141
|
|
Store 66(u64v) 142
|
|
147: 52(ivec2) Load 54(i32v)
|
|
148:144(f16vec2) ConvertSToF 147
|
|
Store 146(f16v) 148
|
|
149: 52(ivec2) Load 54(i32v)
|
|
150: 76(fvec2) ConvertSToF 149
|
|
Store 78(f32v) 150
|
|
151: 52(ivec2) Load 54(i32v)
|
|
152: 82(f64vec2) ConvertSToF 151
|
|
Store 84(f64v) 152
|
|
153: 49(ivec2) Load 51(u32v)
|
|
154:144(f16vec2) ConvertUToF 153
|
|
Store 146(f16v) 154
|
|
155: 49(ivec2) Load 51(u32v)
|
|
156: 76(fvec2) ConvertUToF 155
|
|
Store 78(f32v) 156
|
|
157: 49(ivec2) Load 51(u32v)
|
|
158: 82(f64vec2) ConvertUToF 157
|
|
Store 84(f64v) 158
|
|
163: 160(bvec2) Load 162(bv)
|
|
167: 52(ivec2) Select 163 166 165
|
|
Store 54(i32v) 167
|
|
168: 160(bvec2) Load 162(bv)
|
|
173: 49(ivec2) Select 168 172 171
|
|
Store 51(u32v) 173
|
|
174: 52(ivec2) Load 54(i32v)
|
|
175: 160(bvec2) INotEqual 174 171
|
|
Store 162(bv) 175
|
|
176: 49(ivec2) Load 51(u32v)
|
|
177: 160(bvec2) INotEqual 176 171
|
|
Store 162(bv) 177
|
|
Return
|
|
FunctionEnd
|
|
10(operators(): 2 Function None 3
|
|
11: Label
|
|
180(u32v): 179(ptr) Variable Function
|
|
185(i32): 19(ptr) Variable Function
|
|
204(i): 19(ptr) Variable Function
|
|
208(uv): 179(ptr) Variable Function
|
|
221(i64): 220(ptr) Variable Function
|
|
254(b): 253(ptr) Variable Function
|
|
181: 178(ivec3) Load 180(u32v)
|
|
183: 182(ivec3) CompositeConstruct 164 164 164
|
|
184: 178(ivec3) IAdd 181 183
|
|
Store 180(u32v) 184
|
|
186: 18(int) Load 185(i32)
|
|
187: 18(int) ISub 186 164
|
|
Store 185(i32) 187
|
|
188: 18(int) Load 185(i32)
|
|
189: 18(int) IAdd 188 164
|
|
Store 185(i32) 189
|
|
190: 178(ivec3) Load 180(u32v)
|
|
191: 182(ivec3) CompositeConstruct 164 164 164
|
|
192: 178(ivec3) ISub 190 191
|
|
Store 180(u32v) 192
|
|
193: 178(ivec3) Load 180(u32v)
|
|
194: 178(ivec3) Not 193
|
|
Store 180(u32v) 194
|
|
195: 18(int) Load 185(i32)
|
|
Store 185(i32) 195
|
|
196: 178(ivec3) Load 180(u32v)
|
|
197: 178(ivec3) SNegate 196
|
|
Store 180(u32v) 197
|
|
198: 18(int) Load 185(i32)
|
|
199: 18(int) Load 185(i32)
|
|
200: 18(int) IAdd 199 198
|
|
Store 185(i32) 200
|
|
201: 178(ivec3) Load 180(u32v)
|
|
202: 178(ivec3) Load 180(u32v)
|
|
203: 178(ivec3) ISub 202 201
|
|
Store 180(u32v) 203
|
|
205: 18(int) Load 185(i32)
|
|
206: 18(int) Load 204(i)
|
|
207: 18(int) IMul 206 205
|
|
Store 204(i) 207
|
|
209: 178(ivec3) Load 180(u32v)
|
|
210: 178(ivec3) Load 208(uv)
|
|
211: 178(ivec3) UDiv 210 209
|
|
Store 208(uv) 211
|
|
212: 18(int) Load 185(i32)
|
|
213: 14(int) Bitcast 212
|
|
214: 178(ivec3) Load 208(uv)
|
|
215: 178(ivec3) CompositeConstruct 213 213 213
|
|
216: 178(ivec3) UMod 214 215
|
|
Store 208(uv) 216
|
|
217: 178(ivec3) Load 180(u32v)
|
|
218: 178(ivec3) Load 208(uv)
|
|
219: 178(ivec3) IAdd 217 218
|
|
Store 208(uv) 219
|
|
222: 18(int) Load 185(i32)
|
|
223: 57(int64_t) SConvert 222
|
|
224: 57(int64_t) Load 221(i64)
|
|
225: 57(int64_t) ISub 223 224
|
|
Store 221(i64) 225
|
|
226: 178(ivec3) Load 180(u32v)
|
|
227: 178(ivec3) Load 208(uv)
|
|
228: 178(ivec3) IMul 226 227
|
|
Store 208(uv) 228
|
|
229: 18(int) Load 185(i32)
|
|
230: 57(int64_t) SConvert 229
|
|
231: 57(int64_t) Load 221(i64)
|
|
232: 57(int64_t) IMul 230 231
|
|
Store 221(i64) 232
|
|
233: 18(int) Load 185(i32)
|
|
234: 18(int) Load 204(i)
|
|
235: 18(int) SMod 233 234
|
|
Store 204(i) 235
|
|
236: 18(int) Load 185(i32)
|
|
237: 178(ivec3) Load 180(u32v)
|
|
238: 182(ivec3) CompositeConstruct 236 236 236
|
|
239: 178(ivec3) ShiftLeftLogical 237 238
|
|
Store 180(u32v) 239
|
|
240: 38(ptr) AccessChain 180(u32v) 170
|
|
241: 14(int) Load 240
|
|
242: 18(int) Load 185(i32)
|
|
243: 18(int) ShiftRightArithmetic 242 241
|
|
Store 185(i32) 243
|
|
244: 57(int64_t) Load 221(i64)
|
|
246: 38(ptr) AccessChain 180(u32v) 245
|
|
247: 14(int) Load 246
|
|
248: 57(int64_t) ShiftLeftLogical 244 247
|
|
Store 221(i64) 248
|
|
249: 178(ivec3) Load 180(u32v)
|
|
250: 18(int) Load 204(i)
|
|
251: 182(ivec3) CompositeConstruct 250 250 250
|
|
252: 178(ivec3) ShiftLeftLogical 249 251
|
|
Store 208(uv) 252
|
|
255: 38(ptr) AccessChain 180(u32v) 169
|
|
256: 14(int) Load 255
|
|
257: 18(int) Load 185(i32)
|
|
258: 14(int) Bitcast 257
|
|
259: 159(bool) INotEqual 256 258
|
|
Store 254(b) 259
|
|
260: 18(int) Load 185(i32)
|
|
261: 14(int) Bitcast 260
|
|
262: 38(ptr) AccessChain 180(u32v) 169
|
|
263: 14(int) Load 262
|
|
264: 159(bool) IEqual 261 263
|
|
Store 254(b) 264
|
|
265: 38(ptr) AccessChain 180(u32v) 169
|
|
266: 14(int) Load 265
|
|
267: 38(ptr) AccessChain 208(uv) 170
|
|
268: 14(int) Load 267
|
|
269: 159(bool) UGreaterThan 266 268
|
|
Store 254(b) 269
|
|
270: 18(int) Load 185(i32)
|
|
271: 18(int) Load 204(i)
|
|
272: 159(bool) SLessThan 270 271
|
|
Store 254(b) 272
|
|
273: 38(ptr) AccessChain 180(u32v) 170
|
|
274: 14(int) Load 273
|
|
275: 38(ptr) AccessChain 208(uv) 169
|
|
276: 14(int) Load 275
|
|
277: 159(bool) UGreaterThanEqual 274 276
|
|
Store 254(b) 277
|
|
278: 18(int) Load 185(i32)
|
|
279: 18(int) Load 204(i)
|
|
280: 159(bool) SLessThanEqual 278 279
|
|
Store 254(b) 280
|
|
281: 18(int) Load 185(i32)
|
|
282: 14(int) Bitcast 281
|
|
283: 178(ivec3) Load 208(uv)
|
|
284: 178(ivec3) CompositeConstruct 282 282 282
|
|
285: 178(ivec3) BitwiseOr 283 284
|
|
Store 208(uv) 285
|
|
286: 18(int) Load 185(i32)
|
|
287: 18(int) Load 204(i)
|
|
288: 18(int) BitwiseOr 286 287
|
|
Store 204(i) 288
|
|
289: 18(int) Load 185(i32)
|
|
290: 57(int64_t) SConvert 289
|
|
291: 57(int64_t) Load 221(i64)
|
|
292: 57(int64_t) BitwiseAnd 291 290
|
|
Store 221(i64) 292
|
|
293: 178(ivec3) Load 180(u32v)
|
|
294: 178(ivec3) Load 208(uv)
|
|
295: 178(ivec3) BitwiseAnd 293 294
|
|
Store 208(uv) 295
|
|
296: 18(int) Load 185(i32)
|
|
297: 14(int) Bitcast 296
|
|
298: 178(ivec3) Load 208(uv)
|
|
299: 178(ivec3) CompositeConstruct 297 297 297
|
|
300: 178(ivec3) BitwiseXor 298 299
|
|
Store 208(uv) 300
|
|
301: 178(ivec3) Load 180(u32v)
|
|
302: 18(int) Load 185(i32)
|
|
303: 14(int) Bitcast 302
|
|
304: 178(ivec3) CompositeConstruct 303 303 303
|
|
305: 178(ivec3) BitwiseXor 301 304
|
|
Store 180(u32v) 305
|
|
Return
|
|
FunctionEnd
|
|
12(builtinFuncs(): 2 Function None 3
|
|
13: Label
|
|
306(i32v): 53(ptr) Variable Function
|
|
309(i32): 19(ptr) Variable Function
|
|
319(u32v): 179(ptr) Variable Function
|
|
321(u32): 38(ptr) Variable Function
|
|
393(i8v4): 392(ptr) Variable Function
|
|
396(i16v2): 104(ptr) Variable Function
|
|
401(u8v4): 400(ptr) Variable Function
|
|
404(u16v2): 128(ptr) Variable Function
|
|
407(i64): 220(ptr) Variable Function
|
|
410(u32v2): 50(ptr) Variable Function
|
|
412(u64): 411(ptr) Variable Function
|
|
416(bv): 415(ptr) Variable Function
|
|
307: 52(ivec2) Load 306(i32v)
|
|
308: 52(ivec2) ExtInst 1(GLSL.std.450) 5(SAbs) 307
|
|
Store 306(i32v) 308
|
|
310: 18(int) Load 309(i32)
|
|
311: 18(int) ExtInst 1(GLSL.std.450) 7(SSign) 310
|
|
Store 309(i32) 311
|
|
312: 52(ivec2) Load 306(i32v)
|
|
313: 18(int) Load 309(i32)
|
|
314: 52(ivec2) CompositeConstruct 313 313
|
|
315: 52(ivec2) ExtInst 1(GLSL.std.450) 39(SMin) 312 314
|
|
Store 306(i32v) 315
|
|
316: 52(ivec2) Load 306(i32v)
|
|
318: 52(ivec2) ExtInst 1(GLSL.std.450) 39(SMin) 316 317
|
|
Store 306(i32v) 318
|
|
320: 178(ivec3) Load 319(u32v)
|
|
322: 14(int) Load 321(u32)
|
|
323: 178(ivec3) CompositeConstruct 322 322 322
|
|
324: 178(ivec3) ExtInst 1(GLSL.std.450) 38(UMin) 320 323
|
|
Store 319(u32v) 324
|
|
325: 178(ivec3) Load 319(u32v)
|
|
327: 178(ivec3) ExtInst 1(GLSL.std.450) 38(UMin) 325 326
|
|
Store 319(u32v) 327
|
|
328: 52(ivec2) Load 306(i32v)
|
|
329: 18(int) Load 309(i32)
|
|
330: 52(ivec2) CompositeConstruct 329 329
|
|
331: 52(ivec2) ExtInst 1(GLSL.std.450) 42(SMax) 328 330
|
|
Store 306(i32v) 331
|
|
332: 52(ivec2) Load 306(i32v)
|
|
333: 52(ivec2) ExtInst 1(GLSL.std.450) 42(SMax) 332 317
|
|
Store 306(i32v) 333
|
|
334: 178(ivec3) Load 319(u32v)
|
|
335: 14(int) Load 321(u32)
|
|
336: 178(ivec3) CompositeConstruct 335 335 335
|
|
337: 178(ivec3) ExtInst 1(GLSL.std.450) 41(UMax) 334 336
|
|
Store 319(u32v) 337
|
|
338: 178(ivec3) Load 319(u32v)
|
|
339: 178(ivec3) ExtInst 1(GLSL.std.450) 41(UMax) 338 326
|
|
Store 319(u32v) 339
|
|
340: 52(ivec2) Load 306(i32v)
|
|
341: 18(int) Load 309(i32)
|
|
342: 18(int) SNegate 341
|
|
343: 18(int) Load 309(i32)
|
|
344: 52(ivec2) CompositeConstruct 342 342
|
|
345: 52(ivec2) CompositeConstruct 343 343
|
|
346: 52(ivec2) ExtInst 1(GLSL.std.450) 45(SClamp) 340 344 345
|
|
Store 306(i32v) 346
|
|
347: 52(ivec2) Load 306(i32v)
|
|
348: 52(ivec2) Load 306(i32v)
|
|
349: 52(ivec2) SNegate 348
|
|
350: 52(ivec2) Load 306(i32v)
|
|
351: 52(ivec2) ExtInst 1(GLSL.std.450) 45(SClamp) 347 349 350
|
|
Store 306(i32v) 351
|
|
352: 178(ivec3) Load 319(u32v)
|
|
353: 14(int) Load 321(u32)
|
|
354: 14(int) SNegate 353
|
|
355: 14(int) Load 321(u32)
|
|
356: 178(ivec3) CompositeConstruct 354 354 354
|
|
357: 178(ivec3) CompositeConstruct 355 355 355
|
|
358: 178(ivec3) ExtInst 1(GLSL.std.450) 44(UClamp) 352 356 357
|
|
Store 319(u32v) 358
|
|
359: 178(ivec3) Load 319(u32v)
|
|
360: 178(ivec3) Load 319(u32v)
|
|
361: 178(ivec3) SNegate 360
|
|
362: 178(ivec3) Load 319(u32v)
|
|
363: 178(ivec3) ExtInst 1(GLSL.std.450) 44(UClamp) 359 361 362
|
|
Store 319(u32v) 363
|
|
364: 19(ptr) AccessChain 306(i32v) 169
|
|
365: 18(int) Load 364
|
|
366: 19(ptr) AccessChain 306(i32v) 170
|
|
367: 18(int) Load 366
|
|
369: 18(int) Select 368 367 365
|
|
Store 309(i32) 369
|
|
370: 18(int) Load 309(i32)
|
|
371: 52(ivec2) CompositeConstruct 370 370
|
|
372: 18(int) Load 309(i32)
|
|
373: 18(int) SNegate 372
|
|
374: 52(ivec2) CompositeConstruct 373 373
|
|
377: 52(ivec2) Select 376 374 371
|
|
Store 306(i32v) 377
|
|
378: 38(ptr) AccessChain 319(u32v) 169
|
|
379: 14(int) Load 378
|
|
380: 38(ptr) AccessChain 319(u32v) 170
|
|
381: 14(int) Load 380
|
|
382: 14(int) Select 368 381 379
|
|
Store 321(u32) 382
|
|
383: 14(int) Load 321(u32)
|
|
384: 178(ivec3) CompositeConstruct 383 383 383
|
|
385: 14(int) Load 321(u32)
|
|
386: 14(int) SNegate 385
|
|
387: 178(ivec3) CompositeConstruct 386 386 386
|
|
390: 178(ivec3) Select 389 387 384
|
|
Store 319(u32v) 390
|
|
394: 391(i8vec4) Load 393(i8v4)
|
|
395: 18(int) Bitcast 394
|
|
Store 309(i32) 395
|
|
397:103(i16vec2) Load 396(i16v2)
|
|
398: 18(int) Bitcast 397
|
|
Store 309(i32) 398
|
|
402: 399(i8vec4) Load 401(u8v4)
|
|
403: 14(int) Bitcast 402
|
|
Store 321(u32) 403
|
|
405:110(i16vec2) Load 404(u16v2)
|
|
406: 14(int) Bitcast 405
|
|
Store 321(u32) 406
|
|
408: 57(int64_t) Load 407(i64)
|
|
409: 52(ivec2) Bitcast 408
|
|
Store 306(i32v) 409
|
|
413: 63(int64_t) Load 412(u64)
|
|
414: 49(ivec2) Bitcast 413
|
|
Store 410(u32v2) 414
|
|
417: 178(ivec3) Load 319(u32v)
|
|
418: 14(int) Load 321(u32)
|
|
419: 178(ivec3) CompositeConstruct 418 418 418
|
|
420: 388(bvec3) ULessThan 417 419
|
|
Store 416(bv) 420
|
|
421: 52(ivec2) Load 306(i32v)
|
|
422: 18(int) Load 309(i32)
|
|
423: 52(ivec2) CompositeConstruct 422 422
|
|
424: 160(bvec2) SLessThan 421 423
|
|
425: 253(ptr) AccessChain 416(bv) 169
|
|
426: 159(bool) CompositeExtract 424 0
|
|
Store 425 426
|
|
427: 253(ptr) AccessChain 416(bv) 170
|
|
428: 159(bool) CompositeExtract 424 1
|
|
Store 427 428
|
|
429: 178(ivec3) Load 319(u32v)
|
|
430: 14(int) Load 321(u32)
|
|
431: 178(ivec3) CompositeConstruct 430 430 430
|
|
432: 388(bvec3) ULessThanEqual 429 431
|
|
Store 416(bv) 432
|
|
433: 52(ivec2) Load 306(i32v)
|
|
434: 18(int) Load 309(i32)
|
|
435: 52(ivec2) CompositeConstruct 434 434
|
|
436: 160(bvec2) SLessThanEqual 433 435
|
|
437: 253(ptr) AccessChain 416(bv) 169
|
|
438: 159(bool) CompositeExtract 436 0
|
|
Store 437 438
|
|
439: 253(ptr) AccessChain 416(bv) 170
|
|
440: 159(bool) CompositeExtract 436 1
|
|
Store 439 440
|
|
441: 178(ivec3) Load 319(u32v)
|
|
442: 14(int) Load 321(u32)
|
|
443: 178(ivec3) CompositeConstruct 442 442 442
|
|
444: 388(bvec3) UGreaterThan 441 443
|
|
Store 416(bv) 444
|
|
445: 52(ivec2) Load 306(i32v)
|
|
446: 18(int) Load 309(i32)
|
|
447: 52(ivec2) CompositeConstruct 446 446
|
|
448: 160(bvec2) SGreaterThan 445 447
|
|
449: 253(ptr) AccessChain 416(bv) 169
|
|
450: 159(bool) CompositeExtract 448 0
|
|
Store 449 450
|
|
451: 253(ptr) AccessChain 416(bv) 170
|
|
452: 159(bool) CompositeExtract 448 1
|
|
Store 451 452
|
|
453: 178(ivec3) Load 319(u32v)
|
|
454: 14(int) Load 321(u32)
|
|
455: 178(ivec3) CompositeConstruct 454 454 454
|
|
456: 388(bvec3) UGreaterThanEqual 453 455
|
|
Store 416(bv) 456
|
|
457: 52(ivec2) Load 306(i32v)
|
|
458: 18(int) Load 309(i32)
|
|
459: 52(ivec2) CompositeConstruct 458 458
|
|
460: 160(bvec2) SGreaterThanEqual 457 459
|
|
461: 253(ptr) AccessChain 416(bv) 169
|
|
462: 159(bool) CompositeExtract 460 0
|
|
Store 461 462
|
|
463: 253(ptr) AccessChain 416(bv) 170
|
|
464: 159(bool) CompositeExtract 460 1
|
|
Store 463 464
|
|
465: 178(ivec3) Load 319(u32v)
|
|
466: 14(int) Load 321(u32)
|
|
467: 178(ivec3) CompositeConstruct 466 466 466
|
|
468: 388(bvec3) IEqual 465 467
|
|
Store 416(bv) 468
|
|
469: 52(ivec2) Load 306(i32v)
|
|
470: 18(int) Load 309(i32)
|
|
471: 52(ivec2) CompositeConstruct 470 470
|
|
472: 160(bvec2) IEqual 469 471
|
|
473: 253(ptr) AccessChain 416(bv) 169
|
|
474: 159(bool) CompositeExtract 472 0
|
|
Store 473 474
|
|
475: 253(ptr) AccessChain 416(bv) 170
|
|
476: 159(bool) CompositeExtract 472 1
|
|
Store 475 476
|
|
477: 178(ivec3) Load 319(u32v)
|
|
478: 14(int) Load 321(u32)
|
|
479: 178(ivec3) CompositeConstruct 478 478 478
|
|
480: 388(bvec3) INotEqual 477 479
|
|
Store 416(bv) 480
|
|
481: 52(ivec2) Load 306(i32v)
|
|
482: 18(int) Load 309(i32)
|
|
483: 52(ivec2) CompositeConstruct 482 482
|
|
484: 160(bvec2) INotEqual 481 483
|
|
485: 253(ptr) AccessChain 416(bv) 169
|
|
486: 159(bool) CompositeExtract 484 0
|
|
Store 485 486
|
|
487: 253(ptr) AccessChain 416(bv) 170
|
|
488: 159(bool) CompositeExtract 484 1
|
|
Store 487 488
|
|
Return
|
|
FunctionEnd
|