3 <enum name=
"Attribute Type">
4 <value name=
"1D" value=
"1"/>
5 <value name=
"1D POT Divisor" value=
"2"/>
6 <value name=
"1D Modulus" value=
"3"/>
7 <value name=
"1D NPOT Divisor" value=
"4"/>
8 <value name=
"Continuation" value=
"32"/>
11 <enum name=
"Attribute Special">
12 <value name=
"Vertex ID" value=
"34"/>
13 <value name=
"Instance ID" value=
"36"/>
14 <value name=
"Frag Coord" value=
"37"/>
15 <value name=
"Front Facing" value=
"38"/>
16 <value name=
"Point Coord" value=
"97"/>
20 <value name=
"R" value=
"0"/>
21 <value name=
"G" value=
"1"/>
22 <value name=
"B" value=
"2"/>
23 <value name=
"A" value=
"3"/>
24 <value name=
"0" value=
"4"/>
25 <value name=
"1" value=
"5"/>
28 <enum name=
"Depth Source">
29 <value name=
"None" value=
"0"/>
30 <value name=
"Fixed function" value=
"2"/>
31 <value name=
"Shader" value=
"3"/>
34 <enum name=
"Job Type">
35 <value name=
"Not started" value=
"0"/>
36 <value name=
"Null" value=
"1"/>
37 <value name=
"Write value" value=
"2"/>
38 <value name=
"Cache flush" value=
"3"/>
39 <value name=
"Compute" value=
"4"/>
40 <value name=
"Vertex" value=
"5"/>
41 <value name=
"Geometry" value=
"6"/>
42 <value name=
"Tiler" value=
"7"/>
43 <value name=
"Fused" value=
"8"/>
44 <value name=
"Fragment" value=
"9"/>
47 <enum name=
"Draw Mode">
48 <value name=
"None" value=
"0"/>
49 <value name=
"Points" value=
"1"/>
50 <value name=
"Lines" value=
"2"/>
51 <value name=
"Line strip" value=
"4"/>
52 <value name=
"Line loop" value=
"6"/>
53 <value name=
"Triangles" value=
"8"/>
54 <value name=
"Triangle strip" value=
"10"/>
55 <value name=
"Triangle fan" value=
"12"/>
56 <value name=
"Polygon" value=
"13"/>
57 <value name=
"Quads" value=
"14"/>
58 <value name=
"Quad strip" value=
"15"/>
61 <enum name=
"Exception Access">
62 <value name=
"None" value=
"0"/>
63 <value name=
"Execute" value=
"2"/>
64 <value name=
"Read" value=
"1"/>
65 <value name=
"Write" value=
"3"/>
69 <value name=
"Never" value=
"0"/>
70 <value name=
"Less" value=
"1"/>
71 <value name=
"Equal" value=
"2"/>
72 <value name=
"Lequal" value=
"3"/>
73 <value name=
"Greater" value=
"4"/>
74 <value name=
"Not Equal" value=
"5"/>
75 <value name=
"Gequal" value=
"6"/>
76 <value name=
"Always" value=
"7"/>
80 <value name=
"ETC2 RGB8" value=
"1"/>
81 <value name=
"ETC2 R11 UNORM" value=
"2"/>
82 <value name=
"ETC2 RGBA8" value=
"3"/>
83 <value name=
"ETC2 RG11 UNORM" value=
"4"/>
84 <value name=
"BC1 UNORM" value=
"7"/>
85 <value name=
"BC2 UNORM" value=
"8"/>
86 <value name=
"BC3 UNORM" value=
"9"/>
87 <value name=
"BC4 UNORM" value=
"10"/>
88 <value name=
"BC4 SNORM" value=
"11"/>
89 <value name=
"BC5 UNORM" value=
"12"/>
90 <value name=
"BC5 SNORM" value=
"13"/>
91 <value name=
"BC6H UF16" value=
"14"/>
92 <value name=
"BC6H SF16" value=
"15"/>
93 <value name=
"BC7 UNORM" value=
"16"/>
94 <value name=
"ETC2 R11 SNORM" value=
"17"/>
95 <value name=
"ETC2 RG11 SNORM" value=
"18"/>
96 <value name=
"ETC2 RGB8A1" value=
"19"/>
97 <value name=
"ASTC 3D LDR" value=
"20"/>
98 <value name=
"ASTC 3D HDR" value=
"21"/>
99 <value name=
"ASTC 2D LDR" value=
"22"/>
100 <value name=
"ASTC 2D HDR" value=
"23"/>
101 <value name=
"RGB565" value=
"64"/>
102 <value name=
"RGB5 X1 UNORM" value=
"65"/>
103 <value name=
"RGB5 A1 UNORM" value=
"66"/>
104 <value name=
"RGB10 A2 UNORM" value=
"67"/>
105 <value name=
"RGB10 A2 SNORM" value=
"69"/>
106 <value name=
"RGB10 A2UI" value=
"71"/>
107 <value name=
"RGB10 A2I" value=
"73"/>
108 <value name=
"RGB332 UNORM" value=
"75"/>
109 <value name=
"RGB233 UNORM" value=
"76"/>
110 <value name=
"Z24X8 UNORM" value=
"77"/>
111 <value name=
"R32 FIXED" value=
"81"/>
112 <value name=
"RG32 FIXED" value=
"82"/>
113 <value name=
"RGB32 FIXED" value=
"83"/>
114 <value name=
"RGBA32 FIXED" value=
"84"/>
115 <value name=
"R11F G11F B10F" value=
"89"/>
116 <value name=
"R9F G9F B9F E5F" value=
"91"/>
117 <value name=
"VARYING POS" value=
"94"/>
118 <value name=
"VARYING DISCARD" value=
"95"/>
119 <value name=
"R8 SNORM" value=
"99"/>
120 <value name=
"R16 SNORM" value=
"100"/>
121 <value name=
"R32 SNORM" value=
"101"/>
122 <value name=
"RG8 SNORM" value=
"107"/>
123 <value name=
"RG16 SNORM" value=
"108"/>
124 <value name=
"RG32 SNORM" value=
"109"/>
125 <value name=
"RGB8 SNORM" value=
"115"/>
126 <value name=
"RGB16 SNORM" value=
"116"/>
127 <value name=
"RGB32 SNORM" value=
"117"/>
128 <value name=
"RGBA8 SNORM" value=
"123"/>
129 <value name=
"RGBA16 SNORM" value=
"124"/>
130 <value name=
"RGBA32 SNORM" value=
"125"/>
131 <value name=
"R8UI" value=
"131"/>
132 <value name=
"R16UI" value=
"132"/>
133 <value name=
"R32UI" value=
"133"/>
134 <value name=
"RG8UI" value=
"139"/>
135 <value name=
"RG16UI" value=
"140"/>
136 <value name=
"RG32UI" value=
"141"/>
137 <value name=
"RGB8UI" value=
"147"/>
138 <value name=
"RGB16UI" value=
"148"/>
139 <value name=
"RGB32UI" value=
"149"/>
140 <value name=
"RGBA8UI" value=
"155"/>
141 <value name=
"RGBA16UI" value=
"156"/>
142 <value name=
"RGBA32UI" value=
"157"/>
143 <value name=
"R8 UNORM" value=
"163"/>
144 <value name=
"R16 UNORM" value=
"164"/>
145 <value name=
"R32 UNORM" value=
"165"/>
146 <value name=
"R32F" value=
"167"/>
147 <value name=
"RG8 UNORM" value=
"171"/>
148 <value name=
"RG16 UNORM" value=
"172"/>
149 <value name=
"RG32 UNORM" value=
"173"/>
150 <value name=
"RG32F" value=
"175"/>
151 <value name=
"RGB8 UNORM" value=
"179"/>
152 <value name=
"RGB16 UNORM" value=
"180"/>
153 <value name=
"RGB32 UNORM" value=
"181"/>
154 <value name=
"RGB32F" value=
"183"/>
155 <value name=
"RGBA4 UNORM" value=
"186"/>
156 <value name=
"RGBA8 UNORM" value=
"187"/>
157 <value name=
"RGBA16 UNORM" value=
"188"/>
158 <value name=
"RGBA32 UNORM" value=
"189"/>
159 <value name=
"RGBA32F" value=
"191"/>
160 <value name=
"R8I" value=
"195"/>
161 <value name=
"R16I" value=
"196"/>
162 <value name=
"R32I" value=
"197"/>
163 <value name=
"R16F" value=
"199"/>
164 <value name=
"RG8I" value=
"203"/>
165 <value name=
"RG16I" value=
"204"/>
166 <value name=
"RG32I" value=
"205"/>
167 <value name=
"RG16F" value=
"207"/>
168 <value name=
"RGB8I" value=
"211"/>
169 <value name=
"RGB16I" value=
"212"/>
170 <value name=
"RGB32I" value=
"213"/>
171 <value name=
"RGB16F" value=
"215"/>
172 <value name=
"RGBA8I" value=
"219"/>
173 <value name=
"RGBA16I" value=
"220"/>
174 <value name=
"RGBA32I" value=
"221"/>
175 <value name=
"RGBA16F" value=
"223"/>
176 <value name=
"RGBA4" value=
"232"/>
177 <value name=
"RGBA8 2" value=
"237"/>
178 <value name=
"RGB10 A2 2" value=
"238"/>
181 <enum name=
"Block Format">
182 <!--- 16x16 block u-interleaved -->
183 <value name=
"Tiled" value=
"0"/>
184 <value name=
"Linear" value=
"2"/>
185 <value name=
"AFBC" value=
"3"/>
188 <enum name=
"Mipmap Mode">
189 <value name=
"Nearest" value=
"0"/>
190 <value name=
"None" value=
"1"/>
191 <value name=
"Trilinear" value=
"3"/>
195 <value name=
"Single" value=
"0"/>
196 <!-- N samples, 1 surface, resolved -->
197 <value name=
"Average" value=
"1"/>
198 <!-- N samples, 1 surface, unresolved -->
199 <value name=
"Multiple" value=
"2"/>
200 <!-- N samples, N surfaces -->
201 <value name=
"Layered" value=
"3"/>
204 <enum name=
"Occlusion Mode">
205 <value name=
"Disabled" value=
"0"/>
206 <value name=
"Predicate" value=
"1"/>
207 <value name=
"Counter" value=
"3"/>
210 <enum name=
"Stencil Op">
211 <value name=
"Keep" value=
"0"/>
212 <value name=
"Replace" value=
"1"/>
213 <value name=
"Zero" value=
"2"/>
214 <value name=
"Invert" value=
"3"/>
215 <value name=
"Incr Wrap" value=
"4"/>
216 <value name=
"Decr Wrap" value=
"5"/>
217 <value name=
"Incr Sat" value=
"6"/>
218 <value name=
"Decr Sat" value=
"7"/>
221 <enum name=
"Texture Dimension">
222 <value name=
"Cube" value=
"0"/>
223 <value name=
"1D" value=
"1"/>
224 <value name=
"2D" value=
"2"/>
225 <value name=
"3D" value=
"3"/>
228 <enum name=
"Texture Layout">
229 <!--- 16x16 block u-interleaved -->
230 <value name=
"Tiled" value=
"1"/>
231 <value name=
"Linear" value=
"2"/>
232 <value name=
"AFBC" value=
"12"/>
235 <enum name=
"Wrap Mode">
236 <value name=
"Repeat" value=
"8"/>
237 <value name=
"Clamp to Edge" value=
"9"/>
238 <value name=
"Clamp" value=
"10"/>
239 <value name=
"Clamp to Border" value=
"11"/>
240 <value name=
"Mirrored Repeat" value=
"12"/>
241 <value name=
"Mirrored Clamp to Edge" value=
"13"/>
242 <value name=
"Mirrored Clamp" value=
"14"/>
243 <value name=
"Mirrored Clamp to Border" value=
"15"/>
246 <struct name=
"Attribute">
247 <field name=
"Buffer index" size=
"9" start=
"0" type=
"uint"/>
248 <field name=
"Unknown" size=
"1" start=
"9" type=
"bool" default=
"true"/>
249 <field name=
"Format" size=
"22" start=
"10" type=
"uint"/>
250 <field name=
"Offset" size=
"32" start=
"32" type=
"int"/>
253 <struct name=
"Attribute Buffer">
254 <field name=
"Special" size=
"8" start=
"0" type=
"Attribute Special"/>
255 <field name=
"Type" size=
"6" start=
"0" type=
"Attribute Type" default=
"1D"/>
256 <field name=
"Pointer" size=
"50" start=
"6" type=
"address" modifier=
"shr(6)"/>
257 <field name=
"Stride" size=
"32" start=
"64" type=
"uint"/>
258 <field name=
"Size" size=
"32" start=
"96" type=
"uint"/>
260 <field name=
"Divisor R" size=
"5" start=
"56" type=
"uint"/>
261 <field name=
"Divisor P" size=
"3" start=
"61" type=
"uint"/>
262 <field name=
"Divisor E" size=
"1" start=
"61" type=
"uint"/>
265 <struct name=
"Attribute Buffer Continuation NPOT">
266 <field name=
"Type" size=
"6" start=
"0:0" type=
"Attribute Type" default=
"Continuation"/>
267 <field name=
"Divisor Numerator" size=
"32" start=
"1:0" type=
"uint"/>
268 <field name=
"Divisor" size=
"32" start=
"3:0" type=
"uint"/>
271 <struct name=
"Blend Equation" size=
"1">
272 <field name=
"RGB Mode" size=
"12" start=
"0" type=
"uint"/>
273 <field name=
"Alpha Mode" size=
"12" start=
"12" type=
"uint"/>
274 <field name=
"Color mask" size=
"4" start=
"28" type=
"uint" default=
"15"/>
277 <struct name=
"Blend Flags" size=
"1">
278 <field name=
"Load destination" size=
"1" start=
"0" type=
"bool" default=
"false"/>
279 <field name=
"Midgard blend shader" size=
"1" start=
"1" type=
"bool" default=
"false"/>
280 <field name=
"Enable" size=
"1" start=
"9" type=
"bool" default=
"true"/>
281 <field name=
"sRGB" size=
"1" start=
"10" type=
"bool" default=
"false"/>
282 <field name=
"Dither disable" size=
"1" start=
"11" type=
"bool" default=
"false"/>
285 <struct name=
"Midgard Blend" size=
"4" with_opaque=
"true">
286 <field name=
"Flags" size=
"32" start=
"0:0" type=
"Blend Flags"/>
287 <field name=
"Equation" size=
"32" start=
"2:0" type=
"uint"/> <!-- XXX -->
288 <field name=
"Constant" size=
"32" start=
"3:0" type=
"float"/>
289 <field name=
"Shader" size=
"64" start=
"2:0" type=
"address"/>
292 <struct name=
"Draw" size=
"30">
293 <field name=
"Unknown 1" size=
"3" start=
"0:0" type=
"uint"/>
294 <field name=
"Occlusion query" size=
"2" start=
"0:3" type=
"Occlusion Mode" default=
"Disabled"/>
295 <field name=
"Front face CCW" size=
"1" start=
"0:5" type=
"bool"/>
296 <field name=
"Cull front face" size=
"1" start=
"0:6" type=
"bool"/>
297 <field name=
"Cull back face" size=
"1" start=
"0:7" type=
"bool"/>
298 <!-- TODO 0:7-0:15 -->
299 <field name=
"Instances" size=
"8" start=
"0:16" type=
"padded" default=
"1"/>
300 <!-- TODO: 0:16-0:24 -->
301 <field name=
"Offset start" size=
"32" start=
"1:0" type=
"uint"/>
303 <field name=
"Position" size=
"64" start=
"4:0" type=
"address"/>
304 <field name=
"Uniform buffers" size=
"64" start=
"6:0" type=
"address"/>
305 <field name=
"Textures" size=
"64" start=
"8:0" type=
"address"/>
306 <field name=
"Samplers" size=
"64" start=
"10:0" type=
"address"/>
307 <field name=
"Push uniforms" size=
"64" start=
"12:0" type=
"address"/>
308 <field name=
"State" size=
"64" start=
"14:0" type=
"address"/>
309 <field name=
"Attribute buffers" size=
"64" start=
"16:0" type=
"address"/>
310 <field name=
"Attributes" size=
"64" start=
"18:0" type=
"address"/>
311 <field name=
"Varying buffers" size=
"64" start=
"20:0" type=
"address"/>
312 <field name=
"Varyings" size=
"64" start=
"22:0" type=
"address"/>
313 <field name=
"Viewport" size=
"64" start=
"24:0" type=
"address"/>
314 <field name=
"Occlusion" size=
"64" start=
"26:0" type=
"address"/>
315 <field name=
"Shared" size=
"64" start=
"28:0" type=
"address"/>
318 <struct name=
"Midgard Sampler">
319 <field name=
"Magnify Nearest" size=
"1" start=
"0" type=
"bool" default=
"true"/>
320 <field name=
"Minify Nearest" size=
"1" start=
"1" type=
"bool" default=
"true"/>
321 <field name=
"Mipmap Mode" size=
"2" start=
"3" type=
"Mipmap Mode" default=
"Nearest"/>
322 <field name=
"Normalized Coordinates" size=
"1" start=
"5" type=
"bool" default=
"true"/>
323 <field name=
"LOD Bias" size=
"16" start=
"0:16" type=
"int" default=
"0"/>
324 <field name=
"Minimum LOD" size=
"16" start=
"1:0" type=
"uint" default=
"0"/>
325 <field name=
"Maximum LOD" size=
"16" start=
"1:16" type=
"uint" default=
"1"/>
326 <field name=
"Wrap Mode S" size=
"4" start=
"2:0" type=
"Wrap Mode" default=
"Clamp to Edge"/>
327 <field name=
"Wrap Mode T" size=
"4" start=
"2:4" type=
"Wrap Mode" default=
"Clamp to Edge"/>
328 <field name=
"Wrap Mode R" size=
"4" start=
"2:8" type=
"Wrap Mode" default=
"Clamp to Edge"/>
329 <field name=
"Compare Function" size=
"3" start=
"2:12" type=
"Func" default=
"Never"/>
330 <field name=
"Seamless Cube Map" size=
"1" start=
"2:15" type=
"bool" default=
"true"/>
331 <field name=
"Border Color R" size=
"32" start=
"4:0" type=
"float" default=
"0.0"/>
332 <field name=
"Border Color G" size=
"32" start=
"5:0" type=
"float" default=
"0.0"/>
333 <field name=
"Border Color B" size=
"32" start=
"6:0" type=
"float" default=
"0.0"/>
334 <field name=
"Border Color A" size=
"32" start=
"7:0" type=
"float" default=
"0.0"/>
337 <struct name=
"Midgard Texture" size=
"8">
338 <field name=
"Width" size=
"16" start=
"0:0" type=
"uint" modifier=
"minus(1)"/>
339 <field name=
"Height" size=
"16" start=
"0:16" type=
"uint" modifier=
"minus(1)"/>
340 <field name=
"Depth" size=
"16" start=
"1:0" type=
"uint" modifier=
"minus(1)"/>
341 <field name=
"Array size" size=
"16" start=
"1:16" type=
"uint" modifier=
"minus(1)"/>
342 <field name=
"Format" size=
"22" start=
"2:0" type=
"uint"/>
343 <field name=
"Dimension" size=
"2" start=
"2:22" type=
"Texture Dimension"/>
344 <field name=
"Texel ordering" size=
"4" start=
"2:24" type=
"Texture Layout"/>
345 <field name=
"Unknown" size=
"1" start=
"2:28" type=
"bool" default=
"true"/>
346 <field name=
"Manual stride" size=
"1" start=
"2:29" type=
"bool" default=
"false"/>
347 <field name=
"Levels" size=
"8" start=
"3:24" type=
"uint"/>
348 <field name=
"Swizzle" size=
"12" start=
"4:0" type=
"uint"/>
351 <struct name=
"Bifrost Sampler" size=
"8">
352 <field name=
"Type" size=
"4" start=
"0:0" type=
"uint" default=
"1"/>
353 <field name=
"Wrap Mode R" size=
"4" start=
"0:8" type=
"Wrap Mode" default=
"Clamp to Edge"/>
354 <field name=
"Wrap Mode T" size=
"4" start=
"0:12" type=
"Wrap Mode" default=
"Clamp to Edge"/>
355 <field name=
"Wrap Mode S" size=
"4" start=
"0:16" type=
"Wrap Mode" default=
"Clamp to Edge"/>
356 <field name=
"Seamless Cube Map" size=
"1" start=
"0:23" type=
"bool" default=
"true"/>
357 <field name=
"Normalized Coordinates" size=
"1" start=
"0:25" type=
"bool" default=
"true"/>
358 <field name=
"Minify Linear" size=
"1" start=
"0:27" type=
"bool" default=
"false"/>
359 <field name=
"Magnify Linear" size=
"1" start=
"0:28" type=
"bool" default=
"false"/>
360 <field name=
"Mipmap Mode" size=
"2" start=
"0:30" type=
"Mipmap Mode" default=
"Nearest"/>
361 <field name=
"Minimum LOD" size=
"13" start=
"1:0" type=
"uint" default=
"0"/>
362 <field name=
"Compare Function" size=
"3" start=
"1:13" type=
"Func" default=
"Never"/>
363 <field name=
"Maximum LOD" size=
"13" start=
"1:16" type=
"uint" default=
"0"/>
364 <field name=
"LOD bias" size=
"16" start=
"2:0" type=
"uint" default=
"0"/>
367 <struct name=
"Bifrost Texture" size=
"8">
368 <field name=
"Type" size=
"4" start=
"0:0" type=
"uint" default=
"2"/>
369 <field name=
"Dimension" size=
"2" start=
"0:4" type=
"Texture Dimension"/>
370 <field name=
"Format" size=
"22" start=
"0:10" type=
"uint"/>
371 <field name=
"Width" size=
"16" start=
"1:0" type=
"uint" modifier=
"minus(1)"/>
372 <field name=
"Height" size=
"16" start=
"1:16" type=
"uint" modifier=
"minus(1)"/>
373 <field name=
"Swizzle" size=
"12" start=
"2:0" type=
"uint"/>
374 <field name=
"Texel ordering" size=
"4" start=
"2:12" type=
"Texture Layout"/>
375 <field name=
"Levels" size=
"5" start=
"2:16" type=
"uint"/>
376 <field name=
"Minimum LOD" size=
"13" start=
"3:0" type=
"uint" default=
"0"/>
377 <field name=
"Maximum LOD" size=
"13" start=
"3:16" type=
"uint" default=
"0"/>
378 <field name=
"Surfaces" size=
"64" start=
"4:0" type=
"address"/>
381 <struct name=
"Midgard Properties" size=
"1">
382 <field name=
"Uniform buffer count" size=
"8" start=
"0" type=
"uint"/>
383 <field name=
"Depth source" size=
"2" start=
"8" type=
"Depth Source" default=
"None"/>
384 <field name=
"Early-z enable" size=
"1" start=
"10" type=
"bool" default=
"false"/>
385 <field name=
"Helper invocation enable" size=
"1" start=
"11" type=
"bool" default=
"false"/>
386 <field name=
"Reads depth/stencil" size=
"1" start=
"12" type=
"bool" default=
"false"/>
387 <field name=
"Writes globals" size=
"1" start=
"13" type=
"bool" default=
"false"/>
388 <field name=
"Reads tilebuffer" size=
"1" start=
"14" type=
"bool" default=
"false"/>
389 <field name=
"Work register count" size=
"5" start=
"16" type=
"uint"/>
390 <field name=
"Uniform count" size=
"5" start=
"21" type=
"uint"/>
391 <field name=
"Stencil from shader" size=
"1" start=
"28" type=
"bool"/>
392 <field name=
"Suppress Inf/NaN" size=
"1" start=
"29" type=
"bool"/>
395 <struct name=
"Bifrost Properties" size=
"1">
396 <field name=
"Uniform buffer count" size=
"8" start=
"0" type=
"uint"/>
397 <!--- If set, disables registers [R16, R47] for full thread count -->
398 <field name=
"Full thread" size=
"1" start=
"13" type=
"bool" default=
"false"/>
399 <field name=
"Early-z enable" size=
"1" start=
"19" type=
"bool" default=
"false"/>
400 <field name=
"First ATEST" size=
"1" start=
"30" type=
"bool" default=
"false"/>
401 <!-- XXX: This is awful -->
402 <field name=
"Unknown" size=
"32" start=
"0" type=
"uint"/>
405 <struct name=
"Preload" size=
"1">
406 <field name=
"Untyped" size=
"15" start=
"0" type=
"uint"/>
407 <field name=
"Uniform count" size=
"7" start=
"15" type=
"uint"/>
410 <struct name=
"Preload Compute" size=
"1">
411 <field name=
"Local Invocation XY" size=
"1" start=
"7" type=
"bool"/>
412 <field name=
"Local Invocation Z" size=
"1" start=
"8" type=
"bool"/>
413 <field name=
"Work group X" size=
"1" start=
"9" type=
"bool"/>
414 <field name=
"Work group Y" size=
"1" start=
"10" type=
"bool"/>
415 <field name=
"Work group Z" size=
"1" start=
"11" type=
"bool"/>
416 <field name=
"Global Invocation X" size=
"1" start=
"12" type=
"bool"/>
417 <field name=
"Global Invocation Y" size=
"1" start=
"13" type=
"bool"/>
418 <field name=
"Global Invocation Z" size=
"1" start=
"14" type=
"bool"/>
419 <field name=
"Uniform count" size=
"7" start=
"15" type=
"uint"/>
422 <struct name=
"Preload Vertex" size=
"1">
423 <field name=
"Vertex ID" size=
"1" start=
"13" type=
"bool"/>
424 <field name=
"Instance ID" size=
"1" start=
"14" type=
"bool"/>
425 <field name=
"Uniform count" size=
"7" start=
"15" type=
"uint"/>
428 <struct name=
"Preload Fragment" size=
"1">
429 <field name=
"Unknown" size=
"1" start=
"7" type=
"bool" default=
"true"/>
430 <field name=
"Primitive ID" size=
"1" start=
"9" type=
"bool"/>
431 <field name=
"Front facing" size=
"1" start=
"10" type=
"bool"/>
432 <field name=
"Fragment position" size=
"1" start=
"11" type=
"bool"/>
433 <field name=
"Sample mask/ID" size=
"1" start=
"12" type=
"bool"/>
434 <field name=
"Uniform count" size=
"7" start=
"15" type=
"uint"/>
437 <struct name=
"Shader" size=
"4">
438 <field name=
"Shader" size=
"64" start=
"0:0" type=
"address"/>
439 <field name=
"Sampler count" size=
"16" start=
"2:0" type=
"uint"/>
440 <field name=
"Texture count" size=
"16" start=
"2:16" type=
"uint"/>
441 <field name=
"Attribute count" size=
"16" start=
"3:0" type=
"uint"/>
442 <field name=
"Varying count" size=
"16" start=
"3:16" type=
"uint"/>
445 <struct name=
"Multisample, Misc" size=
"1">
446 <field name=
"Sample mask" size=
"16" start=
"0" type=
"uint"/>
447 <field name=
"Multisample enable" size=
"1" start=
"16" type=
"bool"/>
449 <field name=
"Evaluate per-sample" size=
"1" start=
"18" type=
"bool"/>
450 <field name=
"Unknown 1" size=
"1" start=
"19" type=
"bool"/>
451 <field name=
"Unknown 2" size=
"1" start=
"20" type=
"bool"/>
452 <field name=
"SFBD Load destination" size=
"1" start=
"21" type=
"bool"/>
453 <field name=
"SFBD Blend shader" size=
"1" start=
"22" type=
"bool"/>
455 <field name=
"Depth function" size=
"3" start=
"24" type=
"Func"/>
456 <field name=
"Depth write mask" size=
"1" start=
"27" type=
"bool"/>
457 <field name=
"Near discard" size=
"1" start=
"28" type=
"bool"/>
458 <field name=
"Far discard" size=
"1" start=
"29" type=
"bool"/>
462 <struct name=
"Stencil Mask, Misc" size=
"1">
463 <field name=
"Stencil mask front" size=
"8" start=
"0" type=
"uint"/>
464 <field name=
"Stencil mask back" size=
"8" start=
"8" type=
"uint"/>
465 <field name=
"Stencil enable" size=
"1" start=
"16" type=
"bool"/>
466 <field name=
"Alpha-to-coverage" size=
"1" start=
"17" type=
"bool"/>
468 <field name=
"SFBD Write enable" size=
"1" start=
"20" type=
"bool"/>
469 <field name=
"Unknown 1" size=
"3" start=
"21" type=
"uint"/>
470 <field name=
"SFBD sRGB" size=
"1" start=
"24" type=
"bool"/>
471 <field name=
"SFBD Dither disable" size=
"1" start=
"25" type=
"bool"/>
472 <field name=
"Unknown 2" size=
"1" start=
"26" type=
"bool"/>
473 <field name=
"Depth Range 1" size=
"1" start=
"28" type=
"bool"/>
474 <field name=
"Depth Range 2" size=
"1" start=
"29" type=
"bool"/>
475 <field name=
"Single-sampled lines" size=
"1" start=
"30" type=
"bool"/>
479 <struct name=
"Stencil">
480 <field name=
"Reference Value" size=
"8" start=
"0" type=
"uint"/>
481 <field name=
"Mask" size=
"8" start=
"8" type=
"uint" default=
"0xFF"/>
482 <field name=
"Compare Function" size=
"3" start=
"16" type=
"Func"/>
483 <field name=
"Stencil Fail" size=
"3" start=
"19" type=
"Stencil Op"/>
484 <field name=
"Depth Fail" size=
"3" start=
"22" type=
"Stencil Op"/>
485 <field name=
"Depth Pass" size=
"3" start=
"25" type=
"Stencil Op"/>
488 <struct name=
"State" with_opaque=
"true">
489 <field name=
"Shader" size=
"128" start=
"0:0" type=
"Shader"/>
490 <field name=
"Properties" size=
"32" start=
"4:0" type=
"uint"/>
491 <field name=
"Depth units" size=
"32" start=
"5:0" type=
"float"/>
492 <field name=
"Depth factor" size=
"32" start=
"6:0" type=
"float"/>
493 <!-- TODO: word 7 -->
494 <field name=
"Multisample, Misc" size=
"32" start=
"8:0" type=
"Multisample, Misc"/>
495 <field name=
"Stencil Mask, Misc" size=
"32" start=
"9:0" type=
"Stencil Mask, Misc"/>
496 <field name=
"Stencil front" size=
"32" start=
"10:0" type=
"Stencil"/>
497 <field name=
"Stencil back" size=
"32" start=
"11:0" type=
"Stencil"/>
498 <field name=
"Preload" size=
"32" start=
"12:0" type=
"Preload"/>
499 <!--- TODO: word 13 -->
500 <field name=
"SFBD Blend" size=
"64" start=
"14:0" type=
"uint"/>
503 <struct name=
"Uniform Buffer">
504 <field name=
"Entries" size=
"12" start=
"0" type=
"uint" modifier=
"minus(1)"/>
505 <field name=
"Pointer" size=
"52" start=
"12" type=
"address" modifier=
"shr(4)" element=
"16" count=
"Entries"/>
508 <struct name=
"Viewport">
509 <field name=
"Minimum X" size=
"32" start=
"0:0" default=
"-INFINITY" type=
"float"/>
510 <field name=
"Minimum Y" size=
"32" start=
"1:0" default=
"-INFINITY" type=
"float"/>
511 <field name=
"Maximum X" size=
"32" start=
"2:0" default=
"+INFINITY" type=
"float"/>
512 <field name=
"Maximum Y" size=
"32" start=
"3:0" default=
"+INFINITY" type=
"float"/>
513 <field name=
"Minimum Z" size=
"32" start=
"4:0" default=
"0.0" type=
"float"/>
514 <field name=
"Maximum Z" size=
"32" start=
"5:0" default=
"1.0" type=
"float"/>
515 <field name=
"Scissor Minimum X" size=
"16" start=
"6:0" default=
"0" type=
"uint"/>
516 <field name=
"Scissor Minimum Y" size=
"16" start=
"6:16" default=
"0" type=
"uint"/>
517 <field name=
"Scissor Maximum X" size=
"16" start=
"7:0" type=
"uint"/>
518 <field name=
"Scissor Maximum Y" size=
"16" start=
"7:16" type=
"uint"/>