mirror of
https://github.com/KhronosGroup/glslang
synced 2024-11-13 21:50: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
824 lines
40 KiB
Plaintext
824 lines
40 KiB
Plaintext
spv.int16.amd.frag
|
|
// Module Version 10000
|
|
// Generated by (magic number): 8000b
|
|
// Id's are bound by 576
|
|
|
|
Capability Shader
|
|
Capability Float16
|
|
Capability Float64
|
|
Capability Int64
|
|
Capability Int16
|
|
Capability StorageUniform16
|
|
Capability StorageInputOutput16
|
|
Extension "SPV_AMD_gpu_shader_int16"
|
|
Extension "SPV_KHR_16bit_storage"
|
|
1: ExtInstImport "GLSL.std.450"
|
|
MemoryModel Logical GLSL450
|
|
EntryPoint Fragment 4 "main" 535 537
|
|
ExecutionMode 4 OriginUpperLeft
|
|
Source GLSL 450
|
|
SourceExtension "GL_AMD_gpu_shader_half_float"
|
|
SourceExtension "GL_AMD_gpu_shader_int16"
|
|
SourceExtension "GL_ARB_gpu_shader_int64"
|
|
Name 4 "main"
|
|
Name 6 "literal("
|
|
Name 8 "operators("
|
|
Name 10 "typeCast("
|
|
Name 12 "builtinFuncs("
|
|
Name 16 "u16"
|
|
Name 25 "Uniforms"
|
|
MemberName 25(Uniforms) 0 "i"
|
|
Name 27 ""
|
|
Name 34 "indexable"
|
|
Name 45 "indexable"
|
|
Name 51 "u16v"
|
|
Name 57 "i16"
|
|
Name 70 "u16"
|
|
Name 127 "b"
|
|
Name 148 "u"
|
|
Name 159 "i"
|
|
Name 189 "i16v"
|
|
Name 192 "bv"
|
|
Name 200 "u16v"
|
|
Name 213 "iv"
|
|
Name 226 "uv"
|
|
Name 240 "fv"
|
|
Name 252 "dv"
|
|
Name 264 "f16v"
|
|
Name 276 "i64v"
|
|
Name 290 "u64v"
|
|
Name 305 "i16v"
|
|
Name 311 "i16"
|
|
Name 319 "u16v"
|
|
Name 321 "u16"
|
|
Name 393 "f16v"
|
|
Name 396 "exp"
|
|
Name 397 "ResType"
|
|
Name 420 "packi"
|
|
Name 425 "packu"
|
|
Name 436 "packi64"
|
|
Name 445 "packu64"
|
|
Name 454 "bv"
|
|
Name 531 "Block"
|
|
MemberName 531(Block) 0 "i16v"
|
|
MemberName 531(Block) 1 "u16"
|
|
Name 533 "block"
|
|
Name 535 "iu16v"
|
|
Name 537 "ii16"
|
|
Name 538 "si64"
|
|
Name 539 "su64"
|
|
Name 540 "si"
|
|
Name 541 "su"
|
|
Name 542 "sb"
|
|
Name 543 "si16"
|
|
Name 544 "su16"
|
|
Name 545 "i16_to_b"
|
|
Name 546 "u16_to_b"
|
|
Name 547 "b_to_i16"
|
|
Name 548 "b_to_u16"
|
|
Name 549 "i16_to_i"
|
|
Name 551 "u16_to_i"
|
|
Name 552 "i_to_i16"
|
|
Name 554 "i_to_u16"
|
|
Name 556 "i16_to_u"
|
|
Name 557 "u16_to_u"
|
|
Name 559 "u_to_i16"
|
|
Name 560 "u_to_u16"
|
|
Name 561 "i16_to_i64"
|
|
Name 564 "u16_to_i64"
|
|
Name 565 "i64_to_i16"
|
|
Name 567 "i64_to_u16"
|
|
Name 569 "i16_to_u64"
|
|
Name 570 "u16_to_u64"
|
|
Name 572 "u64_to_i16"
|
|
Name 573 "u64_to_u16"
|
|
Name 574 "i16_to_u16"
|
|
Name 575 "u16_to_i16"
|
|
Decorate 25(Uniforms) Block
|
|
MemberDecorate 25(Uniforms) 0 Offset 0
|
|
Decorate 27 Binding 0
|
|
Decorate 27 DescriptorSet 0
|
|
Decorate 531(Block) Block
|
|
MemberDecorate 531(Block) 0 Offset 0
|
|
MemberDecorate 531(Block) 1 Offset 6
|
|
Decorate 533(block) Binding 1
|
|
Decorate 533(block) DescriptorSet 0
|
|
Decorate 535(iu16v) Flat
|
|
Decorate 535(iu16v) Location 0
|
|
Decorate 537(ii16) Flat
|
|
Decorate 537(ii16) Location 1
|
|
Decorate 538(si64) SpecId 100
|
|
Decorate 539(su64) SpecId 101
|
|
Decorate 540(si) SpecId 102
|
|
Decorate 541(su) SpecId 103
|
|
Decorate 542(sb) SpecId 104
|
|
Decorate 543(si16) SpecId 105
|
|
Decorate 544(su16) SpecId 106
|
|
2: TypeVoid
|
|
3: TypeFunction 2
|
|
14: TypeInt 16 0
|
|
15: TypePointer Function 14(int16_t)
|
|
17: TypeInt 16 1
|
|
18: TypeInt 32 0
|
|
19: 18(int) Constant 3
|
|
20: TypeArray 17(int16_t) 19
|
|
21: 17(int16_t) Constant 273
|
|
22: 17(int16_t) Constant 4294967294
|
|
23: 17(int16_t) Constant 256
|
|
24: 20 ConstantComposite 21 22 23
|
|
25(Uniforms): TypeStruct 18(int)
|
|
26: TypePointer Uniform 25(Uniforms)
|
|
27: 26(ptr) Variable Uniform
|
|
28: TypeInt 32 1
|
|
29: 28(int) Constant 0
|
|
30: TypePointer Uniform 18(int)
|
|
33: TypePointer Function 20
|
|
35: TypePointer Function 17(int16_t)
|
|
39: TypeArray 14(int16_t) 19
|
|
40: 14(int16_t) Constant 65535
|
|
41: 39 ConstantComposite 40 40 40
|
|
44: TypePointer Function 39
|
|
49: TypeVector 14(int16_t) 3
|
|
50: TypePointer Function 49(i16vec3)
|
|
53: 17(int16_t) Constant 1
|
|
54: TypeVector 17(int16_t) 3
|
|
111: 18(int) Constant 1
|
|
117: 18(int) Constant 2
|
|
125: TypeBool
|
|
126: TypePointer Function 125(bool)
|
|
128: 18(int) Constant 0
|
|
147: TypePointer Function 18(int)
|
|
158: TypePointer Function 28(int)
|
|
187: TypeVector 17(int16_t) 2
|
|
188: TypePointer Function 187(i16vec2)
|
|
190: TypeVector 125(bool) 2
|
|
191: TypePointer Function 190(bvec2)
|
|
194: 17(int16_t) Constant 0
|
|
195:187(i16vec2) ConstantComposite 194 194
|
|
196:187(i16vec2) ConstantComposite 53 53
|
|
198: TypeVector 14(int16_t) 2
|
|
199: TypePointer Function 198(i16vec2)
|
|
202: 14(int16_t) Constant 0
|
|
203: 14(int16_t) Constant 1
|
|
204:198(i16vec2) ConstantComposite 202 202
|
|
205:198(i16vec2) ConstantComposite 203 203
|
|
211: TypeVector 28(int) 2
|
|
212: TypePointer Function 211(ivec2)
|
|
222: TypeVector 18(int) 2
|
|
225: TypePointer Function 222(ivec2)
|
|
237: TypeFloat 32
|
|
238: TypeVector 237(float) 2
|
|
239: TypePointer Function 238(fvec2)
|
|
249: TypeFloat 64
|
|
250: TypeVector 249(float64_t) 2
|
|
251: TypePointer Function 250(f64vec2)
|
|
261: TypeFloat 16
|
|
262: TypeVector 261(float16_t) 2
|
|
263: TypePointer Function 262(f16vec2)
|
|
273: TypeInt 64 1
|
|
274: TypeVector 273(int64_t) 2
|
|
275: TypePointer Function 274(i64vec2)
|
|
285: TypeInt 64 0
|
|
286: TypeVector 285(int64_t) 2
|
|
289: TypePointer Function 286(i64vec2)
|
|
316: 17(int16_t) Constant 4294967295
|
|
317:187(i16vec2) ConstantComposite 316 316
|
|
326: 49(i16vec3) ConstantComposite 202 202 202
|
|
368: 125(bool) ConstantTrue
|
|
375: 125(bool) ConstantFalse
|
|
376: 190(bvec2) ConstantComposite 375 375
|
|
388: TypeVector 125(bool) 3
|
|
389: 388(bvec3) ConstantComposite 375 375 375
|
|
391: TypeVector 261(float16_t) 3
|
|
392: TypePointer Function 391(f16vec3)
|
|
395: TypePointer Function 54(i16vec3)
|
|
397(ResType): TypeStruct 391(f16vec3) 54(i16vec3)
|
|
407: TypePointer Function 261(float16_t)
|
|
435: TypePointer Function 273(int64_t)
|
|
438: TypeVector 17(int16_t) 4
|
|
444: TypePointer Function 285(int64_t)
|
|
447: TypeVector 14(int16_t) 4
|
|
453: TypePointer Function 388(bvec3)
|
|
531(Block): TypeStruct 54(i16vec3) 14(int16_t)
|
|
532: TypePointer Uniform 531(Block)
|
|
533(block): 532(ptr) Variable Uniform
|
|
534: TypePointer Input 49(i16vec3)
|
|
535(iu16v): 534(ptr) Variable Input
|
|
536: TypePointer Input 17(int16_t)
|
|
537(ii16): 536(ptr) Variable Input
|
|
538(si64):273(int64_t) SpecConstant 4294967286 4294967295
|
|
539(su64):285(int64_t) SpecConstant 20 0
|
|
540(si): 28(int) SpecConstant 4294967291
|
|
541(su): 18(int) SpecConstant 4
|
|
542(sb): 125(bool) SpecConstantTrue
|
|
543(si16): 17(int16_t) SpecConstant 4294967291
|
|
544(su16): 14(int16_t) SpecConstant 4
|
|
545(i16_to_b): 125(bool) SpecConstantOp 171 543(si16) 202
|
|
546(u16_to_b): 125(bool) SpecConstantOp 171 544(su16) 202
|
|
547(b_to_i16): 17(int16_t) SpecConstantOp 169 542(sb) 53 194
|
|
548(b_to_u16): 14(int16_t) SpecConstantOp 169 542(sb) 203 202
|
|
549(i16_to_i): 28(int) SpecConstantOp 114 543(si16)
|
|
550: 18(int) SpecConstantOp 113 544(su16)
|
|
551(u16_to_i): 28(int) SpecConstantOp 128 550 128
|
|
552(i_to_i16): 17(int16_t) SpecConstantOp 114 540(si)
|
|
553: 17(int16_t) SpecConstantOp 114 540(si)
|
|
554(i_to_u16): 14(int16_t) SpecConstantOp 128 553 202
|
|
555: 28(int) SpecConstantOp 114 543(si16)
|
|
556(i16_to_u): 18(int) SpecConstantOp 128 555 128
|
|
557(u16_to_u): 18(int) SpecConstantOp 113 544(su16)
|
|
558: 14(int16_t) SpecConstantOp 113 541(su)
|
|
559(u_to_i16): 17(int16_t) SpecConstantOp 128 558 202
|
|
560(u_to_u16): 14(int16_t) SpecConstantOp 113 541(su)
|
|
561(i16_to_i64):273(int64_t) SpecConstantOp 114 543(si16)
|
|
562:285(int64_t) SpecConstantOp 113 544(su16)
|
|
563:285(int64_t) Constant 0 0
|
|
564(u16_to_i64):273(int64_t) SpecConstantOp 128 562 563
|
|
565(i64_to_i16): 17(int16_t) SpecConstantOp 114 538(si64)
|
|
566: 17(int16_t) SpecConstantOp 114 538(si64)
|
|
567(i64_to_u16): 14(int16_t) SpecConstantOp 128 566 202
|
|
568:273(int64_t) SpecConstantOp 114 543(si16)
|
|
569(i16_to_u64):285(int64_t) SpecConstantOp 128 568 563
|
|
570(u16_to_u64):285(int64_t) SpecConstantOp 113 544(su16)
|
|
571: 14(int16_t) SpecConstantOp 113 539(su64)
|
|
572(u64_to_i16): 17(int16_t) SpecConstantOp 128 571 202
|
|
573(u64_to_u16): 14(int16_t) SpecConstantOp 113 539(su64)
|
|
574(i16_to_u16): 14(int16_t) SpecConstantOp 128 543(si16) 202
|
|
575(u16_to_i16): 17(int16_t) SpecConstantOp 128 544(su16) 202
|
|
4(main): 2 Function None 3
|
|
5: Label
|
|
527: 2 FunctionCall 6(literal()
|
|
528: 2 FunctionCall 8(operators()
|
|
529: 2 FunctionCall 10(typeCast()
|
|
530: 2 FunctionCall 12(builtinFuncs()
|
|
Return
|
|
FunctionEnd
|
|
6(literal(): 2 Function None 3
|
|
7: Label
|
|
16(u16): 15(ptr) Variable Function
|
|
34(indexable): 33(ptr) Variable Function
|
|
45(indexable): 44(ptr) Variable Function
|
|
31: 30(ptr) AccessChain 27 29
|
|
32: 18(int) Load 31
|
|
Store 34(indexable) 24
|
|
36: 35(ptr) AccessChain 34(indexable) 32
|
|
37: 17(int16_t) Load 36
|
|
38: 14(int16_t) Bitcast 37
|
|
42: 30(ptr) AccessChain 27 29
|
|
43: 18(int) Load 42
|
|
Store 45(indexable) 41
|
|
46: 15(ptr) AccessChain 45(indexable) 43
|
|
47: 14(int16_t) Load 46
|
|
48: 14(int16_t) IAdd 38 47
|
|
Store 16(u16) 48
|
|
Return
|
|
FunctionEnd
|
|
8(operators(): 2 Function None 3
|
|
9: Label
|
|
51(u16v): 50(ptr) Variable Function
|
|
57(i16): 35(ptr) Variable Function
|
|
70(u16): 15(ptr) Variable Function
|
|
127(b): 126(ptr) Variable Function
|
|
148(u): 147(ptr) Variable Function
|
|
159(i): 158(ptr) Variable Function
|
|
52: 49(i16vec3) Load 51(u16v)
|
|
55: 54(i16vec3) CompositeConstruct 53 53 53
|
|
56: 49(i16vec3) IAdd 52 55
|
|
Store 51(u16v) 56
|
|
58: 17(int16_t) Load 57(i16)
|
|
59: 17(int16_t) ISub 58 53
|
|
Store 57(i16) 59
|
|
60: 17(int16_t) Load 57(i16)
|
|
61: 17(int16_t) IAdd 60 53
|
|
Store 57(i16) 61
|
|
62: 49(i16vec3) Load 51(u16v)
|
|
63: 54(i16vec3) CompositeConstruct 53 53 53
|
|
64: 49(i16vec3) ISub 62 63
|
|
Store 51(u16v) 64
|
|
65: 49(i16vec3) Load 51(u16v)
|
|
66: 49(i16vec3) Not 65
|
|
Store 51(u16v) 66
|
|
67: 17(int16_t) Load 57(i16)
|
|
Store 57(i16) 67
|
|
68: 49(i16vec3) Load 51(u16v)
|
|
69: 49(i16vec3) SNegate 68
|
|
Store 51(u16v) 69
|
|
71: 17(int16_t) Load 57(i16)
|
|
72: 14(int16_t) Bitcast 71
|
|
73: 14(int16_t) Load 70(u16)
|
|
74: 14(int16_t) IAdd 73 72
|
|
Store 70(u16) 74
|
|
75: 49(i16vec3) Load 51(u16v)
|
|
76: 49(i16vec3) Load 51(u16v)
|
|
77: 49(i16vec3) ISub 76 75
|
|
Store 51(u16v) 77
|
|
78: 17(int16_t) Load 57(i16)
|
|
79: 17(int16_t) Load 57(i16)
|
|
80: 17(int16_t) IMul 79 78
|
|
Store 57(i16) 80
|
|
81: 49(i16vec3) Load 51(u16v)
|
|
82: 49(i16vec3) Load 51(u16v)
|
|
83: 49(i16vec3) UDiv 82 81
|
|
Store 51(u16v) 83
|
|
84: 17(int16_t) Load 57(i16)
|
|
85: 14(int16_t) Bitcast 84
|
|
86: 49(i16vec3) Load 51(u16v)
|
|
87: 49(i16vec3) CompositeConstruct 85 85 85
|
|
88: 49(i16vec3) UMod 86 87
|
|
Store 51(u16v) 88
|
|
89: 49(i16vec3) Load 51(u16v)
|
|
90: 49(i16vec3) Load 51(u16v)
|
|
91: 49(i16vec3) IAdd 89 90
|
|
Store 51(u16v) 91
|
|
92: 17(int16_t) Load 57(i16)
|
|
93: 14(int16_t) Bitcast 92
|
|
94: 14(int16_t) Load 70(u16)
|
|
95: 14(int16_t) ISub 93 94
|
|
Store 70(u16) 95
|
|
96: 49(i16vec3) Load 51(u16v)
|
|
97: 17(int16_t) Load 57(i16)
|
|
98: 14(int16_t) Bitcast 97
|
|
99: 49(i16vec3) CompositeConstruct 98 98 98
|
|
100: 49(i16vec3) IMul 96 99
|
|
Store 51(u16v) 100
|
|
101: 17(int16_t) Load 57(i16)
|
|
102: 17(int16_t) Load 57(i16)
|
|
103: 17(int16_t) IMul 101 102
|
|
Store 57(i16) 103
|
|
104: 17(int16_t) Load 57(i16)
|
|
105: 17(int16_t) Load 57(i16)
|
|
106: 17(int16_t) SMod 104 105
|
|
Store 57(i16) 106
|
|
107: 17(int16_t) Load 57(i16)
|
|
108: 49(i16vec3) Load 51(u16v)
|
|
109: 54(i16vec3) CompositeConstruct 107 107 107
|
|
110: 49(i16vec3) ShiftLeftLogical 108 109
|
|
Store 51(u16v) 110
|
|
112: 15(ptr) AccessChain 51(u16v) 111
|
|
113: 14(int16_t) Load 112
|
|
114: 17(int16_t) Load 57(i16)
|
|
115: 17(int16_t) ShiftRightArithmetic 114 113
|
|
Store 57(i16) 115
|
|
116: 17(int16_t) Load 57(i16)
|
|
118: 15(ptr) AccessChain 51(u16v) 117
|
|
119: 14(int16_t) Load 118
|
|
120: 17(int16_t) ShiftLeftLogical 116 119
|
|
Store 57(i16) 120
|
|
121: 49(i16vec3) Load 51(u16v)
|
|
122: 17(int16_t) Load 57(i16)
|
|
123: 54(i16vec3) CompositeConstruct 122 122 122
|
|
124: 49(i16vec3) ShiftLeftLogical 121 123
|
|
Store 51(u16v) 124
|
|
129: 15(ptr) AccessChain 51(u16v) 128
|
|
130: 14(int16_t) Load 129
|
|
131: 17(int16_t) Load 57(i16)
|
|
132: 14(int16_t) Bitcast 131
|
|
133: 125(bool) INotEqual 130 132
|
|
Store 127(b) 133
|
|
134: 17(int16_t) Load 57(i16)
|
|
135: 14(int16_t) Bitcast 134
|
|
136: 15(ptr) AccessChain 51(u16v) 128
|
|
137: 14(int16_t) Load 136
|
|
138: 125(bool) IEqual 135 137
|
|
Store 127(b) 138
|
|
139: 15(ptr) AccessChain 51(u16v) 128
|
|
140: 14(int16_t) Load 139
|
|
141: 15(ptr) AccessChain 51(u16v) 111
|
|
142: 14(int16_t) Load 141
|
|
143: 125(bool) UGreaterThan 140 142
|
|
Store 127(b) 143
|
|
144: 17(int16_t) Load 57(i16)
|
|
145: 28(int) SConvert 144
|
|
146: 18(int) Bitcast 145
|
|
149: 18(int) Load 148(u)
|
|
150: 125(bool) ULessThan 146 149
|
|
Store 127(b) 150
|
|
151: 15(ptr) AccessChain 51(u16v) 111
|
|
152: 14(int16_t) Load 151
|
|
153: 15(ptr) AccessChain 51(u16v) 128
|
|
154: 14(int16_t) Load 153
|
|
155: 125(bool) UGreaterThanEqual 152 154
|
|
Store 127(b) 155
|
|
156: 17(int16_t) Load 57(i16)
|
|
157: 28(int) SConvert 156
|
|
160: 28(int) Load 159(i)
|
|
161: 125(bool) SLessThanEqual 157 160
|
|
Store 127(b) 161
|
|
162: 17(int16_t) Load 57(i16)
|
|
163: 14(int16_t) Bitcast 162
|
|
164: 49(i16vec3) Load 51(u16v)
|
|
165: 49(i16vec3) CompositeConstruct 163 163 163
|
|
166: 49(i16vec3) BitwiseOr 164 165
|
|
Store 51(u16v) 166
|
|
167: 17(int16_t) Load 57(i16)
|
|
168: 14(int16_t) Bitcast 167
|
|
169: 14(int16_t) Load 70(u16)
|
|
170: 14(int16_t) BitwiseOr 168 169
|
|
Store 70(u16) 170
|
|
171: 17(int16_t) Load 57(i16)
|
|
172: 17(int16_t) Load 57(i16)
|
|
173: 17(int16_t) BitwiseAnd 172 171
|
|
Store 57(i16) 173
|
|
174: 49(i16vec3) Load 51(u16v)
|
|
175: 49(i16vec3) Load 51(u16v)
|
|
176: 49(i16vec3) BitwiseAnd 174 175
|
|
Store 51(u16v) 176
|
|
177: 17(int16_t) Load 57(i16)
|
|
178: 14(int16_t) Bitcast 177
|
|
179: 49(i16vec3) Load 51(u16v)
|
|
180: 49(i16vec3) CompositeConstruct 178 178 178
|
|
181: 49(i16vec3) BitwiseXor 179 180
|
|
Store 51(u16v) 181
|
|
182: 49(i16vec3) Load 51(u16v)
|
|
183: 17(int16_t) Load 57(i16)
|
|
184: 14(int16_t) Bitcast 183
|
|
185: 49(i16vec3) CompositeConstruct 184 184 184
|
|
186: 49(i16vec3) BitwiseXor 182 185
|
|
Store 51(u16v) 186
|
|
Return
|
|
FunctionEnd
|
|
10(typeCast(): 2 Function None 3
|
|
11: Label
|
|
189(i16v): 188(ptr) Variable Function
|
|
192(bv): 191(ptr) Variable Function
|
|
200(u16v): 199(ptr) Variable Function
|
|
213(iv): 212(ptr) Variable Function
|
|
226(uv): 225(ptr) Variable Function
|
|
240(fv): 239(ptr) Variable Function
|
|
252(dv): 251(ptr) Variable Function
|
|
264(f16v): 263(ptr) Variable Function
|
|
276(i64v): 275(ptr) Variable Function
|
|
290(u64v): 289(ptr) Variable Function
|
|
193: 190(bvec2) Load 192(bv)
|
|
197:187(i16vec2) Select 193 196 195
|
|
Store 189(i16v) 197
|
|
201: 190(bvec2) Load 192(bv)
|
|
206:198(i16vec2) Select 201 205 204
|
|
Store 200(u16v) 206
|
|
207:187(i16vec2) Load 189(i16v)
|
|
208: 190(bvec2) INotEqual 207 204
|
|
Store 192(bv) 208
|
|
209:198(i16vec2) Load 200(u16v)
|
|
210: 190(bvec2) INotEqual 209 204
|
|
Store 192(bv) 210
|
|
214: 211(ivec2) Load 213(iv)
|
|
215:187(i16vec2) SConvert 214
|
|
Store 189(i16v) 215
|
|
216: 211(ivec2) Load 213(iv)
|
|
217:187(i16vec2) SConvert 216
|
|
218:198(i16vec2) Bitcast 217
|
|
Store 200(u16v) 218
|
|
219:187(i16vec2) Load 189(i16v)
|
|
220: 211(ivec2) SConvert 219
|
|
Store 213(iv) 220
|
|
221:198(i16vec2) Load 200(u16v)
|
|
223: 222(ivec2) UConvert 221
|
|
224: 211(ivec2) Bitcast 223
|
|
Store 213(iv) 224
|
|
227: 222(ivec2) Load 226(uv)
|
|
228:198(i16vec2) UConvert 227
|
|
229:187(i16vec2) Bitcast 228
|
|
Store 189(i16v) 229
|
|
230: 222(ivec2) Load 226(uv)
|
|
231:198(i16vec2) UConvert 230
|
|
Store 200(u16v) 231
|
|
232:187(i16vec2) Load 189(i16v)
|
|
233: 211(ivec2) SConvert 232
|
|
234: 222(ivec2) Bitcast 233
|
|
Store 226(uv) 234
|
|
235:198(i16vec2) Load 200(u16v)
|
|
236: 222(ivec2) UConvert 235
|
|
Store 226(uv) 236
|
|
241: 238(fvec2) Load 240(fv)
|
|
242:187(i16vec2) ConvertFToS 241
|
|
Store 189(i16v) 242
|
|
243: 238(fvec2) Load 240(fv)
|
|
244:198(i16vec2) ConvertFToU 243
|
|
Store 200(u16v) 244
|
|
245:187(i16vec2) Load 189(i16v)
|
|
246: 238(fvec2) ConvertSToF 245
|
|
Store 240(fv) 246
|
|
247:198(i16vec2) Load 200(u16v)
|
|
248: 238(fvec2) ConvertUToF 247
|
|
Store 240(fv) 248
|
|
253:250(f64vec2) Load 252(dv)
|
|
254:187(i16vec2) ConvertFToS 253
|
|
Store 189(i16v) 254
|
|
255:250(f64vec2) Load 252(dv)
|
|
256:198(i16vec2) ConvertFToU 255
|
|
Store 200(u16v) 256
|
|
257:187(i16vec2) Load 189(i16v)
|
|
258:250(f64vec2) ConvertSToF 257
|
|
Store 252(dv) 258
|
|
259:198(i16vec2) Load 200(u16v)
|
|
260:250(f64vec2) ConvertUToF 259
|
|
Store 252(dv) 260
|
|
265:262(f16vec2) Load 264(f16v)
|
|
266:187(i16vec2) ConvertFToS 265
|
|
Store 189(i16v) 266
|
|
267:262(f16vec2) Load 264(f16v)
|
|
268:198(i16vec2) ConvertFToU 267
|
|
Store 200(u16v) 268
|
|
269:187(i16vec2) Load 189(i16v)
|
|
270:262(f16vec2) ConvertSToF 269
|
|
Store 264(f16v) 270
|
|
271:198(i16vec2) Load 200(u16v)
|
|
272:262(f16vec2) ConvertUToF 271
|
|
Store 264(f16v) 272
|
|
277:274(i64vec2) Load 276(i64v)
|
|
278:187(i16vec2) SConvert 277
|
|
Store 189(i16v) 278
|
|
279:274(i64vec2) Load 276(i64v)
|
|
280:187(i16vec2) SConvert 279
|
|
281:198(i16vec2) Bitcast 280
|
|
Store 200(u16v) 281
|
|
282:187(i16vec2) Load 189(i16v)
|
|
283:274(i64vec2) SConvert 282
|
|
Store 276(i64v) 283
|
|
284:198(i16vec2) Load 200(u16v)
|
|
287:286(i64vec2) UConvert 284
|
|
288:274(i64vec2) Bitcast 287
|
|
Store 276(i64v) 288
|
|
291:286(i64vec2) Load 290(u64v)
|
|
292:198(i16vec2) UConvert 291
|
|
293:187(i16vec2) Bitcast 292
|
|
Store 189(i16v) 293
|
|
294:286(i64vec2) Load 290(u64v)
|
|
295:198(i16vec2) UConvert 294
|
|
Store 200(u16v) 295
|
|
296:187(i16vec2) Load 189(i16v)
|
|
297:274(i64vec2) SConvert 296
|
|
298:286(i64vec2) Bitcast 297
|
|
Store 290(u64v) 298
|
|
299:198(i16vec2) Load 200(u16v)
|
|
300:286(i64vec2) UConvert 299
|
|
Store 290(u64v) 300
|
|
301:198(i16vec2) Load 200(u16v)
|
|
302:187(i16vec2) Bitcast 301
|
|
Store 189(i16v) 302
|
|
303:187(i16vec2) Load 189(i16v)
|
|
304:198(i16vec2) Bitcast 303
|
|
Store 200(u16v) 304
|
|
Return
|
|
FunctionEnd
|
|
12(builtinFuncs(): 2 Function None 3
|
|
13: Label
|
|
305(i16v): 188(ptr) Variable Function
|
|
311(i16): 35(ptr) Variable Function
|
|
319(u16v): 50(ptr) Variable Function
|
|
321(u16): 15(ptr) Variable Function
|
|
393(f16v): 392(ptr) Variable Function
|
|
396(exp): 395(ptr) Variable Function
|
|
420(packi): 158(ptr) Variable Function
|
|
425(packu): 147(ptr) Variable Function
|
|
436(packi64): 435(ptr) Variable Function
|
|
445(packu64): 444(ptr) Variable Function
|
|
454(bv): 453(ptr) Variable Function
|
|
306:187(i16vec2) Load 305(i16v)
|
|
307:187(i16vec2) ExtInst 1(GLSL.std.450) 5(SAbs) 306
|
|
Store 305(i16v) 307
|
|
308:187(i16vec2) Load 305(i16v)
|
|
309:187(i16vec2) ExtInst 1(GLSL.std.450) 7(SSign) 308
|
|
Store 305(i16v) 309
|
|
310:187(i16vec2) Load 305(i16v)
|
|
312: 17(int16_t) Load 311(i16)
|
|
313:187(i16vec2) CompositeConstruct 312 312
|
|
314:187(i16vec2) ExtInst 1(GLSL.std.450) 39(SMin) 310 313
|
|
Store 305(i16v) 314
|
|
315:187(i16vec2) Load 305(i16v)
|
|
318:187(i16vec2) ExtInst 1(GLSL.std.450) 39(SMin) 315 317
|
|
Store 305(i16v) 318
|
|
320: 49(i16vec3) Load 319(u16v)
|
|
322: 14(int16_t) Load 321(u16)
|
|
323: 49(i16vec3) CompositeConstruct 322 322 322
|
|
324: 49(i16vec3) ExtInst 1(GLSL.std.450) 38(UMin) 320 323
|
|
Store 319(u16v) 324
|
|
325: 49(i16vec3) Load 319(u16v)
|
|
327: 49(i16vec3) ExtInst 1(GLSL.std.450) 38(UMin) 325 326
|
|
Store 319(u16v) 327
|
|
328:187(i16vec2) Load 305(i16v)
|
|
329: 17(int16_t) Load 311(i16)
|
|
330:187(i16vec2) CompositeConstruct 329 329
|
|
331:187(i16vec2) ExtInst 1(GLSL.std.450) 42(SMax) 328 330
|
|
Store 305(i16v) 331
|
|
332:187(i16vec2) Load 305(i16v)
|
|
333:187(i16vec2) ExtInst 1(GLSL.std.450) 42(SMax) 332 317
|
|
Store 305(i16v) 333
|
|
334: 49(i16vec3) Load 319(u16v)
|
|
335: 14(int16_t) Load 321(u16)
|
|
336: 49(i16vec3) CompositeConstruct 335 335 335
|
|
337: 49(i16vec3) ExtInst 1(GLSL.std.450) 41(UMax) 334 336
|
|
Store 319(u16v) 337
|
|
338: 49(i16vec3) Load 319(u16v)
|
|
339: 49(i16vec3) ExtInst 1(GLSL.std.450) 41(UMax) 338 326
|
|
Store 319(u16v) 339
|
|
340:187(i16vec2) Load 305(i16v)
|
|
341: 17(int16_t) Load 311(i16)
|
|
342: 17(int16_t) SNegate 341
|
|
343: 17(int16_t) Load 311(i16)
|
|
344:187(i16vec2) CompositeConstruct 342 342
|
|
345:187(i16vec2) CompositeConstruct 343 343
|
|
346:187(i16vec2) ExtInst 1(GLSL.std.450) 45(SClamp) 340 344 345
|
|
Store 305(i16v) 346
|
|
347:187(i16vec2) Load 305(i16v)
|
|
348:187(i16vec2) Load 305(i16v)
|
|
349:187(i16vec2) SNegate 348
|
|
350:187(i16vec2) Load 305(i16v)
|
|
351:187(i16vec2) ExtInst 1(GLSL.std.450) 45(SClamp) 347 349 350
|
|
Store 305(i16v) 351
|
|
352: 49(i16vec3) Load 319(u16v)
|
|
353: 14(int16_t) Load 321(u16)
|
|
354: 14(int16_t) SNegate 353
|
|
355: 14(int16_t) Load 321(u16)
|
|
356: 49(i16vec3) CompositeConstruct 354 354 354
|
|
357: 49(i16vec3) CompositeConstruct 355 355 355
|
|
358: 49(i16vec3) ExtInst 1(GLSL.std.450) 44(UClamp) 352 356 357
|
|
Store 319(u16v) 358
|
|
359: 49(i16vec3) Load 319(u16v)
|
|
360: 49(i16vec3) Load 319(u16v)
|
|
361: 49(i16vec3) SNegate 360
|
|
362: 49(i16vec3) Load 319(u16v)
|
|
363: 49(i16vec3) ExtInst 1(GLSL.std.450) 44(UClamp) 359 361 362
|
|
Store 319(u16v) 363
|
|
364: 35(ptr) AccessChain 305(i16v) 128
|
|
365: 17(int16_t) Load 364
|
|
366: 35(ptr) AccessChain 305(i16v) 111
|
|
367: 17(int16_t) Load 366
|
|
369: 17(int16_t) Select 368 367 365
|
|
Store 311(i16) 369
|
|
370: 17(int16_t) Load 311(i16)
|
|
371:187(i16vec2) CompositeConstruct 370 370
|
|
372: 17(int16_t) Load 311(i16)
|
|
373: 17(int16_t) SNegate 372
|
|
374:187(i16vec2) CompositeConstruct 373 373
|
|
377:187(i16vec2) Select 376 374 371
|
|
Store 305(i16v) 377
|
|
378: 15(ptr) AccessChain 319(u16v) 128
|
|
379: 14(int16_t) Load 378
|
|
380: 15(ptr) AccessChain 319(u16v) 111
|
|
381: 14(int16_t) Load 380
|
|
382: 14(int16_t) Select 368 381 379
|
|
Store 321(u16) 382
|
|
383: 14(int16_t) Load 321(u16)
|
|
384: 49(i16vec3) CompositeConstruct 383 383 383
|
|
385: 14(int16_t) Load 321(u16)
|
|
386: 14(int16_t) SNegate 385
|
|
387: 49(i16vec3) CompositeConstruct 386 386 386
|
|
390: 49(i16vec3) Select 389 387 384
|
|
Store 319(u16v) 390
|
|
394:391(f16vec3) Load 393(f16v)
|
|
398:397(ResType) ExtInst 1(GLSL.std.450) 52(FrexpStruct) 394
|
|
399: 54(i16vec3) CompositeExtract 398 1
|
|
Store 396(exp) 399
|
|
400:391(f16vec3) CompositeExtract 398 0
|
|
Store 393(f16v) 400
|
|
401:391(f16vec3) Load 393(f16v)
|
|
402: 54(i16vec3) Load 396(exp)
|
|
403:391(f16vec3) ExtInst 1(GLSL.std.450) 53(Ldexp) 401 402
|
|
Store 393(f16v) 403
|
|
404:391(f16vec3) Load 393(f16v)
|
|
405:262(f16vec2) VectorShuffle 404 404 0 1
|
|
406:187(i16vec2) Bitcast 405
|
|
Store 305(i16v) 406
|
|
408: 407(ptr) AccessChain 393(f16v) 117
|
|
409:261(float16_t) Load 408
|
|
410: 14(int16_t) Bitcast 409
|
|
411: 15(ptr) AccessChain 319(u16v) 128
|
|
Store 411 410
|
|
412:187(i16vec2) Load 305(i16v)
|
|
413:262(f16vec2) Bitcast 412
|
|
414: 407(ptr) AccessChain 393(f16v) 128
|
|
415:261(float16_t) CompositeExtract 413 0
|
|
Store 414 415
|
|
416: 407(ptr) AccessChain 393(f16v) 111
|
|
417:261(float16_t) CompositeExtract 413 1
|
|
Store 416 417
|
|
418: 49(i16vec3) Load 319(u16v)
|
|
419:391(f16vec3) Bitcast 418
|
|
Store 393(f16v) 419
|
|
421:187(i16vec2) Load 305(i16v)
|
|
422: 28(int) Bitcast 421
|
|
Store 420(packi) 422
|
|
423: 28(int) Load 420(packi)
|
|
424:187(i16vec2) Bitcast 423
|
|
Store 305(i16v) 424
|
|
426: 49(i16vec3) Load 319(u16v)
|
|
427:198(i16vec2) VectorShuffle 426 426 0 1
|
|
428: 18(int) Bitcast 427
|
|
Store 425(packu) 428
|
|
429: 18(int) Load 425(packu)
|
|
430:198(i16vec2) Bitcast 429
|
|
431: 15(ptr) AccessChain 319(u16v) 128
|
|
432: 14(int16_t) CompositeExtract 430 0
|
|
Store 431 432
|
|
433: 15(ptr) AccessChain 319(u16v) 111
|
|
434: 14(int16_t) CompositeExtract 430 1
|
|
Store 433 434
|
|
437: 17(int16_t) Load 311(i16)
|
|
439:438(i16vec4) CompositeConstruct 437 437 437 437
|
|
440:273(int64_t) Bitcast 439
|
|
Store 436(packi64) 440
|
|
441:273(int64_t) Load 436(packi64)
|
|
442:438(i16vec4) Bitcast 441
|
|
443:187(i16vec2) VectorShuffle 442 442 0 1
|
|
Store 305(i16v) 443
|
|
446: 14(int16_t) Load 321(u16)
|
|
448:447(i16vec4) CompositeConstruct 446 446 446 446
|
|
449:285(int64_t) Bitcast 448
|
|
Store 445(packu64) 449
|
|
450:285(int64_t) Load 445(packu64)
|
|
451:447(i16vec4) Bitcast 450
|
|
452: 49(i16vec3) VectorShuffle 451 451 0 1 2
|
|
Store 319(u16v) 452
|
|
455: 49(i16vec3) Load 319(u16v)
|
|
456: 14(int16_t) Load 321(u16)
|
|
457: 49(i16vec3) CompositeConstruct 456 456 456
|
|
458: 388(bvec3) ULessThan 455 457
|
|
Store 454(bv) 458
|
|
459:187(i16vec2) Load 305(i16v)
|
|
460: 17(int16_t) Load 311(i16)
|
|
461:187(i16vec2) CompositeConstruct 460 460
|
|
462: 190(bvec2) SLessThan 459 461
|
|
463: 126(ptr) AccessChain 454(bv) 128
|
|
464: 125(bool) CompositeExtract 462 0
|
|
Store 463 464
|
|
465: 126(ptr) AccessChain 454(bv) 111
|
|
466: 125(bool) CompositeExtract 462 1
|
|
Store 465 466
|
|
467: 49(i16vec3) Load 319(u16v)
|
|
468: 14(int16_t) Load 321(u16)
|
|
469: 49(i16vec3) CompositeConstruct 468 468 468
|
|
470: 388(bvec3) ULessThanEqual 467 469
|
|
Store 454(bv) 470
|
|
471:187(i16vec2) Load 305(i16v)
|
|
472: 17(int16_t) Load 311(i16)
|
|
473:187(i16vec2) CompositeConstruct 472 472
|
|
474: 190(bvec2) SLessThanEqual 471 473
|
|
475: 126(ptr) AccessChain 454(bv) 128
|
|
476: 125(bool) CompositeExtract 474 0
|
|
Store 475 476
|
|
477: 126(ptr) AccessChain 454(bv) 111
|
|
478: 125(bool) CompositeExtract 474 1
|
|
Store 477 478
|
|
479: 49(i16vec3) Load 319(u16v)
|
|
480: 14(int16_t) Load 321(u16)
|
|
481: 49(i16vec3) CompositeConstruct 480 480 480
|
|
482: 388(bvec3) UGreaterThan 479 481
|
|
Store 454(bv) 482
|
|
483:187(i16vec2) Load 305(i16v)
|
|
484: 17(int16_t) Load 311(i16)
|
|
485:187(i16vec2) CompositeConstruct 484 484
|
|
486: 190(bvec2) SGreaterThan 483 485
|
|
487: 126(ptr) AccessChain 454(bv) 128
|
|
488: 125(bool) CompositeExtract 486 0
|
|
Store 487 488
|
|
489: 126(ptr) AccessChain 454(bv) 111
|
|
490: 125(bool) CompositeExtract 486 1
|
|
Store 489 490
|
|
491: 49(i16vec3) Load 319(u16v)
|
|
492: 14(int16_t) Load 321(u16)
|
|
493: 49(i16vec3) CompositeConstruct 492 492 492
|
|
494: 388(bvec3) UGreaterThanEqual 491 493
|
|
Store 454(bv) 494
|
|
495:187(i16vec2) Load 305(i16v)
|
|
496: 17(int16_t) Load 311(i16)
|
|
497:187(i16vec2) CompositeConstruct 496 496
|
|
498: 190(bvec2) SGreaterThanEqual 495 497
|
|
499: 126(ptr) AccessChain 454(bv) 128
|
|
500: 125(bool) CompositeExtract 498 0
|
|
Store 499 500
|
|
501: 126(ptr) AccessChain 454(bv) 111
|
|
502: 125(bool) CompositeExtract 498 1
|
|
Store 501 502
|
|
503: 49(i16vec3) Load 319(u16v)
|
|
504: 14(int16_t) Load 321(u16)
|
|
505: 49(i16vec3) CompositeConstruct 504 504 504
|
|
506: 388(bvec3) IEqual 503 505
|
|
Store 454(bv) 506
|
|
507:187(i16vec2) Load 305(i16v)
|
|
508: 17(int16_t) Load 311(i16)
|
|
509:187(i16vec2) CompositeConstruct 508 508
|
|
510: 190(bvec2) IEqual 507 509
|
|
511: 126(ptr) AccessChain 454(bv) 128
|
|
512: 125(bool) CompositeExtract 510 0
|
|
Store 511 512
|
|
513: 126(ptr) AccessChain 454(bv) 111
|
|
514: 125(bool) CompositeExtract 510 1
|
|
Store 513 514
|
|
515: 49(i16vec3) Load 319(u16v)
|
|
516: 14(int16_t) Load 321(u16)
|
|
517: 49(i16vec3) CompositeConstruct 516 516 516
|
|
518: 388(bvec3) INotEqual 515 517
|
|
Store 454(bv) 518
|
|
519:187(i16vec2) Load 305(i16v)
|
|
520: 17(int16_t) Load 311(i16)
|
|
521:187(i16vec2) CompositeConstruct 520 520
|
|
522: 190(bvec2) INotEqual 519 521
|
|
523: 126(ptr) AccessChain 454(bv) 128
|
|
524: 125(bool) CompositeExtract 522 0
|
|
Store 523 524
|
|
525: 126(ptr) AccessChain 454(bv) 111
|
|
526: 125(bool) CompositeExtract 522 1
|
|
Store 525 526
|
|
Return
|
|
FunctionEnd
|