blob: 4a839ca1c5d5d94e105aadb80340f6ebe6e781e8 [file] [log] [blame]
spv.uint.frag
Linked fragment stage:
// Module Version 99
// Generated by (magic number): 51a00bb
// Id's are bound by 207
Source ESSL 300
Capability Shader
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft
Name 4 "main"
Name 9 "count"
Name 13 "u"
Name 16 "t"
Name 54 "shiftedii"
Name 56 "shiftedui"
Name 58 "shiftediu"
Name 59 "shifteduu"
Name 67 "c"
Name 71 "usampler"
Name 76 "tc"
Name 109 "af"
Name 113 "ab"
Name 117 "ai"
Name 152 "mask1"
Name 154 "mask2"
Name 156 "mask3"
Name 160 "mask4"
Name 200 "f"
Name 202 "v"
Name 204 "i"
Name 206 "b"
Decorate 9(count) RelaxedPrecision
Decorate 13(u) RelaxedPrecision
Decorate 16(t) RelaxedPrecision
Decorate 16(t) Flat
Decorate 54(shiftedii) RelaxedPrecision
Decorate 56(shiftedui) RelaxedPrecision
Decorate 58(shiftediu) RelaxedPrecision
Decorate 59(shifteduu) RelaxedPrecision
Decorate 67(c) RelaxedPrecision
Decorate 71(usampler) RelaxedPrecision
Decorate 76(tc) RelaxedPrecision
Decorate 76(tc) Smooth
Decorate 109(af) RelaxedPrecision
Decorate 117(ai) RelaxedPrecision
Decorate 152(mask1) RelaxedPrecision
Decorate 154(mask2) RelaxedPrecision
Decorate 156(mask3) RelaxedPrecision
Decorate 160(mask4) RelaxedPrecision
Decorate 200(f) RelaxedPrecision
Decorate 200(f) Smooth
Decorate 200(f) NoStaticUse
Decorate 202(v) RelaxedPrecision
Decorate 202(v) NoStaticUse
Decorate 204(i) RelaxedPrecision
Decorate 204(i) NoStaticUse
Decorate 206(b) NoStaticUse
2: TypeVoid
3: TypeFunction 2
7: TypeInt 32 1
8: TypePointer Function 7(int)
10: 7(int) Constant 1
11: TypeInt 32 0
12: TypePointer Function 11(int)
14: TypeVector 11(int) 2
15: TypePointer Input 14(ivec2)
16(t): 15(ptr) Variable Input
19: 11(int) Constant 3
21: TypeBool
22: 21(bool) ConstantTrue
25: 7(int) Constant 2
30: 7(int) Constant 3
33: 21(bool) ConstantFalse
36: 7(int) Constant 5
41: 7(int) Constant 7
46: 7(int) Constant 11
51: 7(int) Constant 13
55: 7(int) Constant 4294967295
57: 11(int) Constant 4194303
65: TypeVector 11(int) 4
66: TypePointer Output 65(ivec4)
67(c): 66(ptr) Variable Output
68: TypeImage 11(int) 2D sampled format:Unknown
69: TypeSampledImage 68
70: TypePointer UniformConstant 69
71(usampler): 70(ptr) Variable UniformConstant
73: TypeFloat 32
74: TypeVector 73(float) 2
75: TypePointer Input 74(fvec2)
76(tc): 75(ptr) Variable Input
86: 73(float) Constant 1065353216
98: 73(float) Constant 1073741824
99: 74(fvec2) ConstantComposite 98 98
104: 11(int) Constant 4
108: TypePointer Function 73(float)
112: TypePointer Function 21(bool)
115: 11(int) Constant 0
123: 11(int) Constant 1
134: 7(int) Constant 17
139: 7(int) Constant 19
144: 7(int) Constant 23
149: 7(int) Constant 27
153: 11(int) Constant 161
155: 11(int) Constant 2576
158: 7(int) Constant 4
161: 11(int) Constant 2737
199: TypePointer Input 73(float)
200(f): 199(ptr) Variable Input
201: TypePointer UniformConstant 65(ivec4)
202(v): 201(ptr) Variable UniformConstant
203: TypePointer UniformConstant 7(int)
204(i): 203(ptr) Variable UniformConstant
205: TypePointer UniformConstant 21(bool)
206(b): 205(ptr) Variable UniformConstant
4(main): 2 Function None 3
5: Label
9(count): 8(ptr) Variable Function
13(u): 12(ptr) Variable Function
54(shiftedii): 8(ptr) Variable Function
56(shiftedui): 12(ptr) Variable Function
58(shiftediu): 8(ptr) Variable Function
59(shifteduu): 12(ptr) Variable Function
109(af): 108(ptr) Variable Function
113(ab): 112(ptr) Variable Function
117(ai): 8(ptr) Variable Function
152(mask1): 12(ptr) Variable Function
154(mask2): 12(ptr) Variable Function
156(mask3): 12(ptr) Variable Function
160(mask4): 12(ptr) Variable Function
Store 9(count) 10
17: 14(ivec2) Load 16(t)
18: 11(int) CompositeExtract 17 1
20: 11(int) IAdd 18 19
Store 13(u) 20
SelectionMerge 24 None
BranchConditional 22 23 24
23: Label
26: 7(int) Load 9(count)
27: 7(int) IMul 26 25
Store 9(count) 27
Branch 24
24: Label
SelectionMerge 29 None
BranchConditional 22 28 29
28: Label
31: 7(int) Load 9(count)
32: 7(int) IMul 31 30
Store 9(count) 32
Branch 29
29: Label
SelectionMerge 35 None
BranchConditional 33 34 35
34: Label
37: 7(int) Load 9(count)
38: 7(int) IMul 37 36
Store 9(count) 38
Branch 35
35: Label
SelectionMerge 40 None
BranchConditional 22 39 40
39: Label
42: 7(int) Load 9(count)
43: 7(int) IMul 42 41
Store 9(count) 43
Branch 40
40: Label
SelectionMerge 45 None
BranchConditional 22 44 45
44: Label
47: 7(int) Load 9(count)
48: 7(int) IMul 47 46
Store 9(count) 48
Branch 45
45: Label
SelectionMerge 50 None
BranchConditional 33 49 50
49: Label
52: 7(int) Load 9(count)
53: 7(int) IMul 52 51
Store 9(count) 53
Branch 50
50: Label
Store 54(shiftedii) 55
Store 56(shiftedui) 57
Store 58(shiftediu) 55
Store 59(shifteduu) 57
60: 7(int) Load 54(shiftedii)
61: 7(int) Load 58(shiftediu)
62: 21(bool) IEqual 60 61
SelectionMerge 64 None
BranchConditional 62 63 64
63: Label
72: 69 Load 71(usampler)
77: 74(fvec2) Load 76(tc)
78: 65(ivec4) ImageSampleImplicitLod 72 77
Store 67(c) 78
Branch 64
64: Label
79: 11(int) Load 56(shiftedui)
80: 11(int) Load 59(shifteduu)
81: 21(bool) IEqual 79 80
SelectionMerge 83 None
BranchConditional 81 82 83
82: Label
84: 69 Load 71(usampler)
85: 74(fvec2) Load 76(tc)
87: 74(fvec2) CompositeConstruct 86 86
88: 74(fvec2) FAdd 85 87
89: 65(ivec4) ImageSampleImplicitLod 84 88
Store 67(c) 89
Branch 83
83: Label
90: 7(int) Load 54(shiftedii)
91: 11(int) Load 56(shiftedui)
92: 7(int) Bitcast 91
93: 21(bool) IEqual 90 92
SelectionMerge 95 None
BranchConditional 93 94 95
94: Label
96: 69 Load 71(usampler)
97: 74(fvec2) Load 76(tc)
100: 74(fvec2) FSub 97 99
101: 65(ivec4) ImageSampleImplicitLod 96 100
Store 67(c) 101
Branch 95
95: Label
102: 14(ivec2) Load 16(t)
103: 11(int) CompositeExtract 102 0
105: 21(bool) UGreaterThan 103 104
SelectionMerge 107 None
BranchConditional 105 106 107
106: Label
110: 11(int) Load 13(u)
111: 73(float) ConvertUToF 110
Store 109(af) 111
114: 11(int) Load 13(u)
116: 21(bool) INotEqual 114 115
Store 113(ab) 116
118: 11(int) Load 13(u)
119: 7(int) Bitcast 118
Store 117(ai) 119
120: 73(float) Load 109(af)
121: 11(int) ConvertFToU 120
122: 21(bool) Load 113(ab)
124: 11(int) Select 122 123 115
125: 7(int) Load 117(ai)
126: 11(int) Bitcast 125
127: 7(int) Load 9(count)
128: 11(int) Bitcast 127
129: 65(ivec4) CompositeConstruct 121 124 126 128
130: 65(ivec4) Load 67(c)
131: 65(ivec4) IAdd 130 129
Store 67(c) 131
Branch 107
107: Label
SelectionMerge 133 None
BranchConditional 22 132 133
132: Label
135: 7(int) Load 9(count)
136: 7(int) IMul 135 134
Store 9(count) 136
Branch 133
133: Label
SelectionMerge 138 None
BranchConditional 33 137 138
137: Label
140: 7(int) Load 9(count)
141: 7(int) IMul 140 139
Store 9(count) 141
Branch 138
138: Label
SelectionMerge 143 None
BranchConditional 22 142 143
142: Label
145: 7(int) Load 9(count)
146: 7(int) IMul 145 144
Store 9(count) 146
Branch 143
143: Label
SelectionMerge 148 None
BranchConditional 22 147 148
147: Label
150: 7(int) Load 9(count)
151: 7(int) IMul 150 149
Store 9(count) 151
Branch 148
148: Label
Store 152(mask1) 153
Store 154(mask2) 155
157: 11(int) Load 152(mask1)
159: 11(int) ShiftLeftLogical 157 158
Store 156(mask3) 159
Store 160(mask4) 161
162: 11(int) Load 156(mask3)
163: 11(int) Load 154(mask2)
164: 21(bool) IEqual 162 163
SelectionMerge 166 None
BranchConditional 164 165 166
165: Label
167: 7(int) Load 9(count)
168: 7(int) IMul 167 25
Store 9(count) 168
Branch 166
166: Label
169: 11(int) Load 156(mask3)
170: 11(int) Load 152(mask1)
171: 11(int) BitwiseAnd 169 170
172: 21(bool) INotEqual 171 115
SelectionMerge 174 None
BranchConditional 172 173 174
173: Label
175: 7(int) Load 9(count)
176: 7(int) IMul 175 30
Store 9(count) 176
Branch 174
174: Label
177: 11(int) Load 152(mask1)
178: 11(int) Load 156(mask3)
179: 11(int) BitwiseOr 177 178
180: 11(int) Load 160(mask4)
181: 21(bool) IEqual 179 180
SelectionMerge 183 None
BranchConditional 181 182 183
182: Label
184: 7(int) Load 9(count)
185: 7(int) IMul 184 36
Store 9(count) 185
Branch 183
183: Label
186: 11(int) Load 152(mask1)
187: 11(int) Load 160(mask4)
188: 11(int) BitwiseXor 186 187
189: 21(bool) IEqual 188 155
SelectionMerge 191 None
BranchConditional 189 190 191
190: Label
192: 7(int) Load 9(count)
193: 7(int) IMul 192 41
Store 9(count) 193
Branch 191
191: Label
194: 7(int) Load 9(count)
195: 11(int) Bitcast 194
196: 65(ivec4) CompositeConstruct 195 195 195 195
197: 65(ivec4) Load 67(c)
198: 65(ivec4) IAdd 197 196
Store 67(c) 198
Branch 6
6: Label
Return
FunctionEnd