intel/genxml: Convert field format from start/end to dword/bits

And change the gen_sort_xml.py script to default to the new format.

Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Acked-by: José Roberto de Souza <jose.souza@intel.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36138>
This commit is contained in:
Caio Oliveira 2025-07-15 10:31:57 -07:00 committed by Marge Bot
parent fb8f14820a
commit c418cb85f7
17 changed files with 18056 additions and 18056 deletions

View file

@ -1,29 +1,29 @@
<?xml version='1.0' encoding='utf-8'?>
<genxml name="SKL" gen="9">
<struct name="STRUCT_TWO_LEVELS" length="8">
<group count="4" start="0" size="64">
<group count="8" start="0" size="8">
<field name="byte" start="0" end="7" type="uint" />
<group count="4" dword="0" size="64">
<group count="8" dword="0" size="8">
<field name="byte" dword="0" bits="7:0" type="uint" />
</group>
</group>
</struct>
<struct name="TEST_DWORD_FIELDS" length="4">
<field name="value_dw0" start="0" end="15" type="uint" />
<field name="value_dw1" start="32" end="63" type="uint" />
<field name="value_dw2" start="72" end="87" type="uint" />
<field name="single_bit" start="101" end="101" type="bool" />
<field name="value_dw0" dword="0" bits="15:0" type="uint" />
<field name="value_dw1" dword="1" bits="31:0" type="uint" />
<field name="value_dw2" dword="2" bits="23:8" type="uint" />
<field name="single_bit" dword="3" bits="5:5" type="bool" />
</struct>
<struct name="TEST_OFFSET_BITS" length="6">
<field name="header" start="0" end="31" type="uint" />
<group count="3" start="48" size="16">
<field name="data" start="0" end="15" type="uint" />
<field name="header" dword="0" bits="31:0" type="uint" />
<group count="3" dword="1" offset_bits="16" size="16">
<field name="data" dword="0" bits="15:0" type="uint" />
</group>
</struct>
<struct name="TEST_STRUCT" length="2">
<field name="number1" start="0" end="15" type="uint" />
<field name="number2" start="16" end="31" type="uint" />
<group count="4" start="32" size="8">
<field name="byte" start="0" end="7" type="uint" />
<field name="number1" dword="0" bits="15:0" type="uint" />
<field name="number2" dword="0" bits="31:16" type="uint" />
<group count="4" dword="1" size="8">
<field name="byte" dword="0" bits="7:0" type="uint" />
</group>
</struct>
</genxml>

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -1,174 +1,174 @@
<?xml version='1.0' encoding='utf-8'?>
<genxml name="RT" gen="12.5">
<struct name="BINDLESS_SHADER_RECORD" length="2">
<field name="Offset To Local Arguments" start="0" end="2" type="uint" />
<field name="Bindless Shader Dispatch Mode" start="4" end="4" type="uint">
<field name="Offset To Local Arguments" dword="0" bits="2:0" type="uint" />
<field name="Bindless Shader Dispatch Mode" dword="0" bits="4:4" type="uint">
<value name="RT_SIMD16" value="0" />
<value name="RT_SIMD8" value="1" />
</field>
<field name="Kernel Start Pointer" start="6" end="31" type="offset" />
<field name="Kernel Start Pointer" dword="0" bits="31:6" type="offset" />
</struct>
<struct name="RT_BVH_VEC3" length="3">
<field name="X" start="0" end="31" type="float" />
<field name="Y" start="32" end="63" type="float" />
<field name="Z" start="64" end="95" type="float" />
<field name="X" dword="0" bits="31:0" type="float" />
<field name="Y" dword="1" bits="31:0" type="float" />
<field name="Z" dword="2" bits="31:0" type="float" />
</struct>
<struct name="RT_BVH_METADATA" length="16">
<field name="Bounds Min" start="0" end="95" type="RT_BVH_VEC3" />
<field name="Bounds Max" start="96" end="191" type="RT_BVH_VEC3" />
<field name="Bounds Min" dword="0" bits="95:0" type="RT_BVH_VEC3" />
<field name="Bounds Max" dword="3" bits="95:0" type="RT_BVH_VEC3" />
</struct>
<struct name="RT_BVH" length="32">
<field name="Root Node Offset" start="0" end="63" type="offset" />
<field name="Meta" start="512" end="1023" type="RT_BVH_METADATA" />
<field name="Root Node Offset" dword="0" bits="63:0" type="offset" />
<field name="Meta" dword="16" bits="511:0" type="RT_BVH_METADATA" />
</struct>
<struct name="RT_BVH_INSTANCE_LEAF" length="32">
<field name="Shader Index" start="0" end="23" type="uint" />
<field name="Geometry Ray Mask" start="24" end="31" type="uint" />
<field name="Instance Contribution To Hit Group Index" start="32" end="55" type="uint" />
<field name="Leaf Type" start="61" end="61" type="uint">
<field name="Shader Index" dword="0" bits="23:0" type="uint" />
<field name="Geometry Ray Mask" dword="0" bits="31:24" type="uint" />
<field name="Instance Contribution To Hit Group Index" dword="1" bits="23:0" type="uint" />
<field name="Leaf Type" dword="1" bits="29:29" type="uint">
<value name="TYPE_OPAQUE_CULLING_ENABLED" value="0" />
<value name="TYPE_OPAQUE_CULLING_DISABLED" value="1" />
</field>
<field name="Geometry Flags" start="62" end="63" type="uint">
<field name="Geometry Flags" dword="1" bits="31:30" type="uint">
<value name="GEOMETRY_OPAQUE" value="1" />
</field>
<field name="Start Node Address" start="64" end="111" type="address" />
<field name="Instance Flags" start="112" end="119" type="uint">
<field name="Start Node Address" dword="2" bits="47:0" type="address" />
<field name="Instance Flags" dword="3" bits="23:16" type="uint">
<value name="TRIANGLE_CULL_DISABLE" value="1" />
<value name="TRIANGLE_FRONT_COUNTERCLOCKWISE" value="2" />
<value name="FORCE_OPAQUE" value="4" />
<value name="FORCE_NON_OPAQUE" value="8" />
</field>
<field name="World To Object m00" start="128" end="159" type="float" />
<field name="World To Object m01" start="160" end="191" type="float" />
<field name="World To Object m02" start="192" end="223" type="float" />
<field name="World To Object m10" start="224" end="255" type="float" />
<field name="World To Object m11" start="256" end="287" type="float" />
<field name="World To Object m12" start="288" end="319" type="float" />
<field name="World To Object m20" start="320" end="351" type="float" />
<field name="World To Object m21" start="352" end="383" type="float" />
<field name="World To Object m22" start="384" end="415" type="float" />
<field name="Object To World m30" start="416" end="447" type="float" />
<field name="Object To World m31" start="448" end="479" type="float" />
<field name="Object To World m32" start="480" end="511" type="float" />
<field name="BVH Address" start="512" end="559" type="address" />
<field name="Instance ID" start="576" end="607" type="uint" />
<field name="Instance Index" start="608" end="639" type="uint" />
<field name="Object To World m00" start="640" end="671" type="float" />
<field name="Object To World m01" start="672" end="703" type="float" />
<field name="Object To World m02" start="704" end="735" type="float" />
<field name="Object To World m10" start="736" end="767" type="float" />
<field name="Object To World m11" start="768" end="799" type="float" />
<field name="Object To World m12" start="800" end="831" type="float" />
<field name="Object To World m20" start="832" end="863" type="float" />
<field name="Object To World m21" start="864" end="895" type="float" />
<field name="Object To World m22" start="896" end="927" type="float" />
<field name="World To Object m30" start="928" end="959" type="float" />
<field name="World To Object m31" start="960" end="991" type="float" />
<field name="World To Object m32" start="992" end="1023" type="float" />
<field name="World To Object m00" dword="4" bits="31:0" type="float" />
<field name="World To Object m01" dword="5" bits="31:0" type="float" />
<field name="World To Object m02" dword="6" bits="31:0" type="float" />
<field name="World To Object m10" dword="7" bits="31:0" type="float" />
<field name="World To Object m11" dword="8" bits="31:0" type="float" />
<field name="World To Object m12" dword="9" bits="31:0" type="float" />
<field name="World To Object m20" dword="10" bits="31:0" type="float" />
<field name="World To Object m21" dword="11" bits="31:0" type="float" />
<field name="World To Object m22" dword="12" bits="31:0" type="float" />
<field name="Object To World m30" dword="13" bits="31:0" type="float" />
<field name="Object To World m31" dword="14" bits="31:0" type="float" />
<field name="Object To World m32" dword="15" bits="31:0" type="float" />
<field name="BVH Address" dword="16" bits="47:0" type="address" />
<field name="Instance ID" dword="18" bits="31:0" type="uint" />
<field name="Instance Index" dword="19" bits="31:0" type="uint" />
<field name="Object To World m00" dword="20" bits="31:0" type="float" />
<field name="Object To World m01" dword="21" bits="31:0" type="float" />
<field name="Object To World m02" dword="22" bits="31:0" type="float" />
<field name="Object To World m10" dword="23" bits="31:0" type="float" />
<field name="Object To World m11" dword="24" bits="31:0" type="float" />
<field name="Object To World m12" dword="25" bits="31:0" type="float" />
<field name="Object To World m20" dword="26" bits="31:0" type="float" />
<field name="Object To World m21" dword="27" bits="31:0" type="float" />
<field name="Object To World m22" dword="28" bits="31:0" type="float" />
<field name="World To Object m30" dword="29" bits="31:0" type="float" />
<field name="World To Object m31" dword="30" bits="31:0" type="float" />
<field name="World To Object m32" dword="31" bits="31:0" type="float" />
</struct>
<struct name="RT_BVH_INTERNAL_NODE" length="16">
<field name="Origin" start="0" end="95" type="RT_BVH_VEC3" />
<field name="Child Offset" start="96" end="127" type="int" />
<field name="Node Type" start="128" end="135" type="uint" prefix="NODE_TYPE">
<field name="Origin" dword="0" bits="95:0" type="RT_BVH_VEC3" />
<field name="Child Offset" dword="3" bits="31:0" type="int" />
<field name="Node Type" dword="4" bits="7:0" type="uint" prefix="NODE_TYPE">
<value name="INTERNAL" value="0" />
<value name="INSTANCE" value="1" />
<value name="PROCEDURAL" value="3" />
<value name="QUAD" value="4" />
<value name="INVALID" value="7" />
</field>
<field name="Child Bounds Exponent X" start="144" end="151" type="int" />
<field name="Child Bounds Exponent Y" start="152" end="159" type="int" />
<field name="Child Bounds Exponent Z" start="160" end="168" type="int" />
<field name="Node Ray Mask" start="168" end="175" type="uint" />
<group count="6" start="176" size="8">
<field name="Child Size" start="0" end="1" type="uint" />
<field name="Child Type" start="2" end="5" type="uint" />
<field name="Start Primitive" start="2" end="5" type="uint" />
<field name="Child Bounds Exponent X" dword="4" bits="23:16" type="int" />
<field name="Child Bounds Exponent Y" dword="4" bits="31:24" type="int" />
<field name="Child Bounds Exponent Z" dword="5" bits="8:0" type="int" />
<field name="Node Ray Mask" dword="5" bits="15:8" type="uint" />
<group count="6" dword="5" offset_bits="16" size="8">
<field name="Child Size" dword="0" bits="1:0" type="uint" />
<field name="Child Type" dword="0" bits="5:2" type="uint" />
<field name="Start Primitive" dword="0" bits="5:2" type="uint" />
</group>
<group count="6" start="224" size="8">
<field name="Child Lower X Bound" start="0" end="7" type="uint" />
<group count="6" dword="7" size="8">
<field name="Child Lower X Bound" dword="0" bits="7:0" type="uint" />
</group>
<group count="6" start="272" size="8">
<field name="Child Upper X Bound" start="0" end="7" type="uint" />
<group count="6" dword="8" offset_bits="16" size="8">
<field name="Child Upper X Bound" dword="0" bits="7:0" type="uint" />
</group>
<group count="6" start="320" size="8">
<field name="Child Lower Y Bound" start="0" end="7" type="uint" />
<group count="6" dword="10" size="8">
<field name="Child Lower Y Bound" dword="0" bits="7:0" type="uint" />
</group>
<group count="6" start="368" size="8">
<field name="Child Upper Y Bound" start="0" end="7" type="uint" />
<group count="6" dword="11" offset_bits="16" size="8">
<field name="Child Upper Y Bound" dword="0" bits="7:0" type="uint" />
</group>
<group count="6" start="416" size="8">
<field name="Child Lower Z Bound" start="0" end="7" type="uint" />
<group count="6" dword="13" size="8">
<field name="Child Lower Z Bound" dword="0" bits="7:0" type="uint" />
</group>
<group count="6" start="464" size="8">
<field name="Child Upper Z Bound" start="0" end="7" type="uint" />
<group count="6" dword="14" offset_bits="16" size="8">
<field name="Child Upper Z Bound" dword="0" bits="7:0" type="uint" />
</group>
</struct>
<struct name="RT_BVH_PRIMITIVE_LEAF_DESCRIPTOR" length="2">
<field name="Shader Index" start="0" end="23" type="uint" />
<field name="Geometry Ray Mask" start="24" end="31" type="uint" />
<field name="Geometry Index" start="32" end="60" type="uint" />
<field name="Leaf Type" start="61" end="61" type="uint">
<field name="Shader Index" dword="0" bits="23:0" type="uint" />
<field name="Geometry Ray Mask" dword="0" bits="31:24" type="uint" />
<field name="Geometry Index" dword="1" bits="28:0" type="uint" />
<field name="Leaf Type" dword="1" bits="29:29" type="uint">
<value name="TYPE_QUAD" value="0" />
<value name="TYPE_OPAQUE_CULLING_ENABLED" value="0" />
<value name="TYPE_OPAQUE_CULLING_DISABLED" value="1" />
</field>
<field name="Geometry Flags" start="62" end="63" type="uint">
<field name="Geometry Flags" dword="1" bits="31:30" type="uint">
<value name="GEOMETRY_OPAQUE" value="1" />
</field>
</struct>
<struct name="RT_BVH_PROCEDURAL_LEAF" length="16">
<field name="Leaf Descriptor" start="0" end="63" type="RT_BVH_PRIMITIVE_LEAF_DESCRIPTOR" />
<field name="Num Primitives" start="64" end="67" type="uint" />
<field name="Last Primitive" start="83" end="95" type="uint" />
<group count="13" start="96" size="32">
<field name="Primitive Index" start="0" end="31" type="uint" />
<field name="Leaf Descriptor" dword="0" bits="63:0" type="RT_BVH_PRIMITIVE_LEAF_DESCRIPTOR" />
<field name="Num Primitives" dword="2" bits="3:0" type="uint" />
<field name="Last Primitive" dword="2" bits="31:19" type="uint" />
<group count="13" dword="3" size="32">
<field name="Primitive Index" dword="0" bits="31:0" type="uint" />
</group>
</struct>
<struct name="RT_BVH_QUAD_LEAF" length="16">
<field name="Leaf Descriptor" start="0" end="63" type="RT_BVH_PRIMITIVE_LEAF_DESCRIPTOR" />
<field name="Primitive Index 0" start="64" end="95" type="uint" />
<field name="Primitive Index 1 Delta" start="96" end="112" type="uint" />
<field name="j0" start="112" end="113" type="uint" />
<field name="j1" start="114" end="115" type="uint" />
<field name="j2" start="116" end="117" type="uint" />
<field name="Last Quad" start="118" end="118" type="bool" />
<group count="4" start="128" size="96">
<field name="Quad Vertex" start="0" end="95" type="RT_BVH_VEC3" />
<field name="Leaf Descriptor" dword="0" bits="63:0" type="RT_BVH_PRIMITIVE_LEAF_DESCRIPTOR" />
<field name="Primitive Index 0" dword="2" bits="31:0" type="uint" />
<field name="Primitive Index 1 Delta" dword="3" bits="16:0" type="uint" />
<field name="j0" dword="3" bits="17:16" type="uint" />
<field name="j1" dword="3" bits="19:18" type="uint" />
<field name="j2" dword="3" bits="21:20" type="uint" />
<field name="Last Quad" dword="3" bits="22:22" type="bool" />
<group count="4" dword="4" size="96">
<field name="Quad Vertex" dword="0" bits="95:0" type="RT_BVH_VEC3" />
</group>
</struct>
<struct name="RT_SHADER_TABLE" length="2">
<field name="Base Address" start="0" end="47" type="address" />
<field name="Stride" start="48" end="63" type="uint" />
<field name="Base Address" dword="0" bits="47:0" type="address" />
<field name="Stride" dword="1" bits="31:16" type="uint" />
</struct>
<struct name="RT_DISPATCH_GLOBALS" length="20">
<field name="Mem Base Address" start="0" end="63" type="address" />
<field name="Call Stack Handler" start="64" end="127" type="BINDLESS_SHADER_RECORD" />
<field name="Async RT Stack Size" start="128" end="159" type="uint" />
<field name="Num DSS RT Stacks" start="160" end="175" type="uint" />
<field name="Max BVH Levels" start="192" end="194" type="uint" />
<field name="Flags" start="224" end="224" type="uint">
<field name="Mem Base Address" dword="0" bits="63:0" type="address" />
<field name="Call Stack Handler" dword="2" bits="63:0" type="BINDLESS_SHADER_RECORD" />
<field name="Async RT Stack Size" dword="4" bits="31:0" type="uint" />
<field name="Num DSS RT Stacks" dword="5" bits="15:0" type="uint" />
<field name="Max BVH Levels" dword="6" bits="2:0" type="uint" />
<field name="Flags" dword="7" bits="0:0" type="uint">
<value name="RT_DEPTH_TEST_LESS_EQUAL" value="1" />
</field>
<field name="Hit Group Table" start="256" end="319" type="RT_SHADER_TABLE" />
<field name="Miss Group Table" start="320" end="383" type="RT_SHADER_TABLE" />
<field name="SW Stack Size" start="384" end="415" type="uint" />
<field name="Launch Width" start="416" end="447" type="uint" />
<field name="Launch Height" start="448" end="479" type="uint" />
<field name="Launch Depth" start="480" end="511" type="uint" />
<field name="Callable Group Table" start="512" end="575" type="RT_SHADER_TABLE" />
<field name="Resume Shader Table" start="576" end="639" type="address" />
<field name="Hit Group Table" dword="8" bits="63:0" type="RT_SHADER_TABLE" />
<field name="Miss Group Table" dword="10" bits="63:0" type="RT_SHADER_TABLE" />
<field name="SW Stack Size" dword="12" bits="31:0" type="uint" />
<field name="Launch Width" dword="13" bits="31:0" type="uint" />
<field name="Launch Height" dword="14" bits="31:0" type="uint" />
<field name="Launch Depth" dword="15" bits="31:0" type="uint" />
<field name="Callable Group Table" dword="16" bits="63:0" type="RT_SHADER_TABLE" />
<field name="Resume Shader Table" dword="18" bits="63:0" type="address" />
</struct>
<struct name="RT_GENERAL_SBT_HANDLE" length="8">
<field name="General" start="0" end="63" type="BINDLESS_SHADER_RECORD" />
<field name="General" dword="0" bits="63:0" type="BINDLESS_SHADER_RECORD" />
</struct>
<struct name="RT_PROCEDURAL_SBT_HANDLE" length="8">
<field name="Closest Hit" start="0" end="63" type="BINDLESS_SHADER_RECORD" />
<field name="Intersection" start="64" end="127" type="BINDLESS_SHADER_RECORD" />
<field name="Closest Hit" dword="0" bits="63:0" type="BINDLESS_SHADER_RECORD" />
<field name="Intersection" dword="2" bits="63:0" type="BINDLESS_SHADER_RECORD" />
</struct>
<struct name="RT_TRIANGLES_SBT_HANDLE" length="8">
<field name="Closest Hit" start="0" end="63" type="BINDLESS_SHADER_RECORD" />
<field name="Any Hit" start="64" end="127" type="BINDLESS_SHADER_RECORD" />
<field name="Closest Hit" dword="0" bits="63:0" type="BINDLESS_SHADER_RECORD" />
<field name="Any Hit" dword="2" bits="63:0" type="BINDLESS_SHADER_RECORD" />
</struct>
</genxml>

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -2,40 +2,40 @@
<genxml name="RT" gen="30">
<import name="gen200_rt.xml" />
<struct name="BINDLESS_SHADER_RECORD" length="2">
<field name="Offset To Local Arguments" start="0" end="2" type="uint" />
<field name="Bindless Shader Dispatch Mode" start="4" end="4" type="uint">
<field name="Offset To Local Arguments" dword="0" bits="2:0" type="uint" />
<field name="Bindless Shader Dispatch Mode" dword="0" bits="4:4" type="uint">
<value name="RT_SIMD16" value="0" />
</field>
<field name="Kernel Start Pointer" start="6" end="31" type="offset" />
<field name="Registers Per Thread" start="60" end="63" type="uint" />
<field name="Kernel Start Pointer" dword="0" bits="31:6" type="offset" />
<field name="Registers Per Thread" dword="1" bits="31:28" type="uint" />
</struct>
<struct name="CALL_STACK_HANDLER" length="2">
<field name="Offset To Local Arguments" start="0" end="2" type="uint" />
<field name="Bindless Shader Dispatch Mode" start="4" end="4" type="uint">
<field name="Offset To Local Arguments" dword="0" bits="2:0" type="uint" />
<field name="Bindless Shader Dispatch Mode" dword="0" bits="4:4" type="uint">
<value name="RT_SIMD16" value="0" />
</field>
<field name="Kernel Start Pointer" start="6" end="31" type="offset" />
<field name="Registers Per Thread" start="59" end="62" type="uint" />
<field name="Kernel Start Pointer" dword="0" bits="31:6" type="offset" />
<field name="Registers Per Thread" dword="1" bits="30:27" type="uint" />
</struct>
<struct name="RT_DISPATCH_GLOBALS" length="21">
<field name="Mem Base Address" start="0" end="63" type="address" />
<field name="Call Stack Handler" start="64" end="127" type="CALL_STACK_HANDLER" />
<field name="Async RT Stack Size" start="128" end="159" type="uint" />
<field name="Num DSS RT Stacks" start="160" end="175" type="uint" />
<field name="Max BVH Levels" start="192" end="194" type="uint" />
<field name="Hit Group Stride" start="195" end="207" type="uint" />
<field name="Miss Group Stride" start="208" end="220" type="uint" />
<field name="Flags" start="224" end="224" type="uint">
<field name="Mem Base Address" dword="0" bits="63:0" type="address" />
<field name="Call Stack Handler" dword="2" bits="63:0" type="CALL_STACK_HANDLER" />
<field name="Async RT Stack Size" dword="4" bits="31:0" type="uint" />
<field name="Num DSS RT Stacks" dword="5" bits="15:0" type="uint" />
<field name="Max BVH Levels" dword="6" bits="2:0" type="uint" />
<field name="Hit Group Stride" dword="6" bits="15:3" type="uint" />
<field name="Miss Group Stride" dword="6" bits="28:16" type="uint" />
<field name="Flags" dword="7" bits="0:0" type="uint">
<value name="RT_DEPTH_TEST_LESS_EQUAL" value="1" />
</field>
<field name="Hit Group Table" start="256" end="319" type="address" />
<field name="Miss Group Table" start="320" end="383" type="address" />
<field name="SW Stack Size" start="384" end="415" type="uint" />
<field name="Launch Width" start="416" end="447" type="uint" />
<field name="Launch Height" start="448" end="479" type="uint" />
<field name="Launch Depth" start="480" end="511" type="uint" />
<field name="Callable Group Table" start="512" end="575" type="address" />
<field name="Callable Group Stride" start="576" end="588" type="uint" />
<field name="Resume Shader Table" start="608" end="671" type="address" />
<field name="Hit Group Table" dword="8" bits="63:0" type="address" />
<field name="Miss Group Table" dword="10" bits="63:0" type="address" />
<field name="SW Stack Size" dword="12" bits="31:0" type="uint" />
<field name="Launch Width" dword="13" bits="31:0" type="uint" />
<field name="Launch Height" dword="14" bits="31:0" type="uint" />
<field name="Launch Depth" dword="15" bits="31:0" type="uint" />
<field name="Callable Group Table" dword="16" bits="63:0" type="address" />
<field name="Callable Group Stride" dword="18" bits="12:0" type="uint" />
<field name="Resume Shader Table" dword="19" bits="63:0" type="address" />
</struct>
</genxml>

File diff suppressed because it is too large Load diff

View file

@ -2,125 +2,125 @@
<genxml name="CTG" gen="4.5">
<import name="gen40.xml" />
<struct name="CLIP_STATE" length="11">
<field name="GRF Register Count" start="1" end="3" type="uint" />
<field name="Kernel Start Pointer" start="6" end="31" type="address" />
<field name="Software Exception Enable" start="39" end="39" type="bool" />
<field name="Mask Stack Exception Enable" start="43" end="43" type="bool" />
<field name="Illegal Opcode Exception Enable" start="45" end="45" type="bool" />
<field name="Floating Point Mode" start="48" end="48" type="uint" prefix="FLOATING_POINT_MODE">
<field name="GRF Register Count" dword="0" bits="3:1" type="uint" />
<field name="Kernel Start Pointer" dword="0" bits="31:6" type="address" />
<field name="Software Exception Enable" dword="1" bits="7:7" type="bool" />
<field name="Mask Stack Exception Enable" dword="1" bits="11:11" type="bool" />
<field name="Illegal Opcode Exception Enable" dword="1" bits="13:13" type="bool" />
<field name="Floating Point Mode" dword="1" bits="16:16" type="uint" prefix="FLOATING_POINT_MODE">
<value name="IEEE-754" value="0" />
<value name="Alternate" value="1" />
</field>
<field name="Thread Priority" start="49" end="49" type="uint">
<field name="Thread Priority" dword="1" bits="17:17" type="uint">
<value name="Normal Priority" value="0" />
<value name="High Priority" value="1" />
</field>
<field name="Binding Table Entry Count" start="50" end="57" type="uint" />
<field name="Single Program Flow" start="63" end="63" type="bool" />
<field name="Per-Thread Scratch Space" start="64" end="67" type="uint" />
<field name="Scratch Space Base Pointer" start="74" end="95" type="address" />
<field name="Dispatch GRF Start Register For URB Data" start="96" end="99" type="uint" />
<field name="Vertex URB Entry Read Offset" start="100" end="105" type="uint" />
<field name="Vertex URB Entry Read Length" start="107" end="112" type="uint" />
<field name="Constant URB Entry Read Offset" start="114" end="119" type="uint" />
<field name="Constant URB Entry Read Length" start="121" end="126" type="uint" />
<field name="Clipper Statistics Enable" start="138" end="138" type="bool" />
<field name="GS Output Object Statistics Enable" start="138" end="138" type="bool" />
<field name="Number of URB Entries" start="139" end="146" type="uint" />
<field name="URB Entry Allocation Size" start="147" end="151" type="uint" />
<field name="Maximum Number of Threads" start="153" end="158" type="uint" />
<field name="Clip Mode" start="173" end="175" type="uint" prefix="CLIPMODE">
<field name="Binding Table Entry Count" dword="1" bits="25:18" type="uint" />
<field name="Single Program Flow" dword="1" bits="31:31" type="bool" />
<field name="Per-Thread Scratch Space" dword="2" bits="3:0" type="uint" />
<field name="Scratch Space Base Pointer" dword="2" bits="31:10" type="address" />
<field name="Dispatch GRF Start Register For URB Data" dword="3" bits="3:0" type="uint" />
<field name="Vertex URB Entry Read Offset" dword="3" bits="9:4" type="uint" />
<field name="Vertex URB Entry Read Length" dword="3" bits="16:11" type="uint" />
<field name="Constant URB Entry Read Offset" dword="3" bits="23:18" type="uint" />
<field name="Constant URB Entry Read Length" dword="3" bits="30:25" type="uint" />
<field name="Clipper Statistics Enable" dword="4" bits="10:10" type="bool" />
<field name="GS Output Object Statistics Enable" dword="4" bits="10:10" type="bool" />
<field name="Number of URB Entries" dword="4" bits="18:11" type="uint" />
<field name="URB Entry Allocation Size" dword="4" bits="23:19" type="uint" />
<field name="Maximum Number of Threads" dword="4" bits="30:25" type="uint" />
<field name="Clip Mode" dword="5" bits="15:13" type="uint" prefix="CLIPMODE">
<value name="NORMAL" value="0" />
<value name="ALL" value="1" />
<value name="CLIP_NON_REJECTED" value="2" />
<value name="REJECT_ALL" value="3" />
<value name="ACCEPT_ALL" value="4" />
</field>
<field name="UserClipDistance ClipTest Enable Bitmask" start="176" end="183" type="uint" />
<field name="UserClipFlags MustClip Enable" start="184" end="184" type="bool" />
<field name="Negative W ClipTest Enable" start="185" end="185" type="bool" />
<field name="Guardband ClipTest Enable" start="186" end="186" type="bool" />
<field name="Viewport Z ClipTest Enable" start="187" end="187" type="bool" />
<field name="Viewport XY ClipTest Enable" start="188" end="188" type="bool" />
<field name="Vertex Position Space" start="189" end="189" type="uint" prefix="VPOS">
<field name="UserClipDistance ClipTest Enable Bitmask" dword="5" bits="23:16" type="uint" />
<field name="UserClipFlags MustClip Enable" dword="5" bits="24:24" type="bool" />
<field name="Negative W ClipTest Enable" dword="5" bits="25:25" type="bool" />
<field name="Guardband ClipTest Enable" dword="5" bits="26:26" type="bool" />
<field name="Viewport Z ClipTest Enable" dword="5" bits="27:27" type="bool" />
<field name="Viewport XY ClipTest Enable" dword="5" bits="28:28" type="bool" />
<field name="Vertex Position Space" dword="5" bits="29:29" type="uint" prefix="VPOS">
<value name="NDCSPACE" value="0" />
<value name="SCREENSPACE" value="1" />
</field>
<field name="API Mode" start="190" end="190" type="uint" prefix="APIMODE">
<field name="API Mode" dword="5" bits="30:30" type="uint" prefix="APIMODE">
<value name="OGL" value="0" />
<value name="D3D" value="1" />
</field>
<field name="Clipper Viewport State Pointer" start="197" end="223" type="address" />
<field name="Screen Space Viewport X Min" start="224" end="255" type="float" />
<field name="Screen Space Viewport X Max" start="256" end="287" type="float" />
<field name="Screen Space Viewport Y Min" start="288" end="319" type="float" />
<field name="Screen Space Viewport Y Max" start="320" end="351" type="float" />
<field name="Clipper Viewport State Pointer" dword="6" bits="31:5" type="address" />
<field name="Screen Space Viewport X Min" dword="7" bits="31:0" type="float" />
<field name="Screen Space Viewport X Max" dword="8" bits="31:0" type="float" />
<field name="Screen Space Viewport Y Min" dword="9" bits="31:0" type="float" />
<field name="Screen Space Viewport Y Max" dword="10" bits="31:0" type="float" />
</struct>
<struct name="GS_STATE" length="7">
<field name="GRF Register Count" start="1" end="3" type="uint" />
<field name="Kernel Start Pointer" start="6" end="31" type="address" />
<field name="Software Exception Enable" start="39" end="39" type="bool" />
<field name="Mask Stack Exception Enable" start="43" end="43" type="bool" />
<field name="Illegal Opcode Exception Enable" start="45" end="45" type="bool" />
<field name="Floating Point Mode" start="48" end="48" type="uint" prefix="FLOATING_POINT_MODE">
<field name="GRF Register Count" dword="0" bits="3:1" type="uint" />
<field name="Kernel Start Pointer" dword="0" bits="31:6" type="address" />
<field name="Software Exception Enable" dword="1" bits="7:7" type="bool" />
<field name="Mask Stack Exception Enable" dword="1" bits="11:11" type="bool" />
<field name="Illegal Opcode Exception Enable" dword="1" bits="13:13" type="bool" />
<field name="Floating Point Mode" dword="1" bits="16:16" type="uint" prefix="FLOATING_POINT_MODE">
<value name="IEEE-754" value="0" />
<value name="Alternate" value="1" />
</field>
<field name="Binding Table Entry Count" start="50" end="57" type="uint" />
<field name="Single Program Flow" start="63" end="63" type="bool" />
<field name="Per-Thread Scratch Space" start="64" end="67" type="uint" />
<field name="Scratch Space Base Pointer" start="74" end="95" type="address" />
<field name="Dispatch GRF Start Register For URB Data" start="96" end="99" type="uint" />
<field name="Vertex URB Entry Read Offset" start="100" end="105" type="uint" />
<field name="Vertex URB Entry Read Length" start="107" end="112" type="uint" />
<field name="Constant URB Entry Read Offset" start="114" end="119" type="uint" />
<field name="Constant URB Entry Read Length" start="121" end="126" type="uint" />
<field name="Rendering Enable" start="136" end="136" type="bool" />
<field name="GS Statistics Enable" start="138" end="138" type="bool" />
<field name="Number of URB Entries" start="139" end="146" type="uint" />
<field name="URB Entry Allocation Size" start="147" end="151" type="uint" />
<field name="Maximum Number of Threads" start="153" end="158" type="uint" />
<field name="Sampler Count" start="160" end="162" type="uint" />
<field name="Sampler State Pointer" start="165" end="191" type="address" />
<field name="Maximum VPIndex" start="192" end="195" type="uint" />
<field name="Discard Adjacency" start="221" end="221" type="bool" />
<field name="Reorder Enable" start="222" end="222" type="bool" />
<field name="Binding Table Entry Count" dword="1" bits="25:18" type="uint" />
<field name="Single Program Flow" dword="1" bits="31:31" type="bool" />
<field name="Per-Thread Scratch Space" dword="2" bits="3:0" type="uint" />
<field name="Scratch Space Base Pointer" dword="2" bits="31:10" type="address" />
<field name="Dispatch GRF Start Register For URB Data" dword="3" bits="3:0" type="uint" />
<field name="Vertex URB Entry Read Offset" dword="3" bits="9:4" type="uint" />
<field name="Vertex URB Entry Read Length" dword="3" bits="16:11" type="uint" />
<field name="Constant URB Entry Read Offset" dword="3" bits="23:18" type="uint" />
<field name="Constant URB Entry Read Length" dword="3" bits="30:25" type="uint" />
<field name="Rendering Enable" dword="4" bits="8:8" type="bool" />
<field name="GS Statistics Enable" dword="4" bits="10:10" type="bool" />
<field name="Number of URB Entries" dword="4" bits="18:11" type="uint" />
<field name="URB Entry Allocation Size" dword="4" bits="23:19" type="uint" />
<field name="Maximum Number of Threads" dword="4" bits="30:25" type="uint" />
<field name="Sampler Count" dword="5" bits="2:0" type="uint" />
<field name="Sampler State Pointer" dword="5" bits="31:5" type="address" />
<field name="Maximum VPIndex" dword="6" bits="3:0" type="uint" />
<field name="Discard Adjacency" dword="6" bits="29:29" type="bool" />
<field name="Reorder Enable" dword="6" bits="30:30" type="bool" />
</struct>
<struct name="RENDER_SURFACE_STATE" length="6">
<field name="Cube Face Enable - Positive Z" start="0" end="0" type="bool" />
<field name="Cube Face Enable - Negative Z" start="1" end="1" type="bool" />
<field name="Cube Face Enable - Positive Y" start="2" end="2" type="bool" />
<field name="Cube Face Enable - Negative Y" start="3" end="3" type="bool" />
<field name="Cube Face Enable - Positive X" start="4" end="4" type="bool" />
<field name="Cube Face Enable - Negative X" start="5" end="5" type="bool" />
<field name="Media Boundary Pixel Mode" start="6" end="7" type="uint">
<field name="Cube Face Enable - Positive Z" dword="0" bits="0:0" type="bool" />
<field name="Cube Face Enable - Negative Z" dword="0" bits="1:1" type="bool" />
<field name="Cube Face Enable - Positive Y" dword="0" bits="2:2" type="bool" />
<field name="Cube Face Enable - Negative Y" dword="0" bits="3:3" type="bool" />
<field name="Cube Face Enable - Positive X" dword="0" bits="4:4" type="bool" />
<field name="Cube Face Enable - Negative X" dword="0" bits="5:5" type="bool" />
<field name="Media Boundary Pixel Mode" dword="0" bits="7:6" type="uint">
<value name="NORMAL_MODE" value="0" />
<value name="PROGRESSIVE_FRAME" value="2" />
<value name="INTERLACED_FRAME" value="3" />
</field>
<field name="Render Cache Read Write Mode" start="8" end="8" type="uint">
<field name="Render Cache Read Write Mode" dword="0" bits="8:8" type="uint">
<value name="WRITE_ONLY" value="0" />
<value name="READ_WRITE" value="1" />
</field>
<field name="MIP Map Layout Mode" start="10" end="10" type="uint">
<field name="MIP Map Layout Mode" dword="0" bits="10:10" type="uint">
<value name="MIPLAYOUT_BELOW" value="0" />
<value name="MIPLAYOUT_RIGHT" value="1" />
</field>
<field name="Vertical Line Stride Offset" start="11" end="11" type="uint" />
<field name="Vertical Line Stride" start="12" end="12" type="uint" />
<field name="Color Blend Enable" start="13" end="13" type="bool" />
<field name="Color Buffer Component Write Disables" start="14" end="17" type="uint">
<field name="Vertical Line Stride Offset" dword="0" bits="11:11" type="uint" />
<field name="Vertical Line Stride" dword="0" bits="12:12" type="uint" />
<field name="Color Blend Enable" dword="0" bits="13:13" type="bool" />
<field name="Color Buffer Component Write Disables" dword="0" bits="17:14" type="uint">
<value name="WRITEDISABLE_ALPHA" value="8" />
<value name="WRITEDISABLE_RED" value="4" />
<value name="WRITEDISABLE_GREEN" value="2" />
<value name="WRITEDISABLE_BLUE" value="1" />
</field>
<field name="Surface Format" start="18" end="26" type="uint" />
<field name="Data Return Format" start="27" end="27" type="uint">
<field name="Surface Format" dword="0" bits="26:18" type="uint" />
<field name="Data Return Format" dword="0" bits="27:27" type="uint">
<value name="DATA_RETURN_FLOAT32" value="0" />
<value name="DATA_RETURN_S1.14" value="1" />
</field>
<field name="Surface Type" start="29" end="31" type="uint">
<field name="Surface Type" dword="0" bits="31:29" type="uint">
<value name="SURFTYPE_1D" value="0" />
<value name="SURFTYPE_2D" value="1" />
<value name="SURFTYPE_3D" value="2" />
@ -128,25 +128,25 @@
<value name="SURFTYPE_BUFFER" value="4" />
<value name="SURFTYPE_NULL" value="7" />
</field>
<field name="Surface Base Address" start="32" end="63" type="address" />
<field name="MIP Count / LOD" start="66" end="69" type="uint" />
<field name="Width" start="70" end="82" type="uint" />
<field name="Height" start="83" end="95" type="uint" />
<field name="Tile Walk" start="96" end="96" type="uint">
<field name="Surface Base Address" dword="1" bits="31:0" type="address" />
<field name="MIP Count / LOD" dword="2" bits="5:2" type="uint" />
<field name="Width" dword="2" bits="18:6" type="uint" />
<field name="Height" dword="2" bits="31:19" type="uint" />
<field name="Tile Walk" dword="3" bits="0:0" type="uint">
<value name="TILEWALK_XMAJOR" value="0" />
<value name="TILEWALK_YMAJOR" value="1" />
</field>
<field name="Tiled Surface" start="97" end="97" type="uint" />
<field name="Surface Pitch" start="99" end="115" type="uint" />
<field name="Depth" start="117" end="127" type="uint" />
<field name="Render Target View Extent" start="136" end="144" type="uint" />
<field name="Minimum Array Element" start="145" end="155" type="uint" />
<field name="Surface Min LOD" start="156" end="159" type="uint" />
<field name="Y Offset" start="180" end="183" type="uint" />
<field name="X Offset" start="185" end="191" type="uint" />
<field name="Tiled Surface" dword="3" bits="1:1" type="uint" />
<field name="Surface Pitch" dword="3" bits="19:3" type="uint" />
<field name="Depth" dword="3" bits="31:21" type="uint" />
<field name="Render Target View Extent" dword="4" bits="16:8" type="uint" />
<field name="Minimum Array Element" dword="4" bits="27:17" type="uint" />
<field name="Surface Min LOD" dword="4" bits="31:28" type="uint" />
<field name="Y Offset" dword="5" bits="23:20" type="uint" />
<field name="X Offset" dword="5" bits="31:25" type="uint" />
</struct>
<struct name="SAMPLER_STATE" length="4">
<field name="Shadow Function" start="0" end="2" type="uint" prefix="PREFILTEROP">
<field name="Shadow Function" dword="0" bits="2:0" type="uint" prefix="PREFILTEROP">
<value name="ALWAYS" value="0" />
<value name="NEVER" value="1" />
<value name="LESS" value="2" />
@ -156,39 +156,39 @@
<value name="NOTEQUAL" value="6" />
<value name="GEQUAL" value="7" />
</field>
<field name="Texture LOD Bias" start="3" end="13" type="s4.6" />
<field name="Min Mode Filter" start="14" end="16" type="uint" prefix="MAPFILTER" />
<field name="Mag Mode Filter" start="17" end="19" type="uint" prefix="MAPFILTER">
<field name="Texture LOD Bias" dword="0" bits="13:3" type="s4.6" />
<field name="Min Mode Filter" dword="0" bits="16:14" type="uint" prefix="MAPFILTER" />
<field name="Mag Mode Filter" dword="0" bits="19:17" type="uint" prefix="MAPFILTER">
<value name="NEAREST" value="0" />
<value name="LINEAR" value="1" />
<value name="ANISOTROPIC" value="2" />
<value name="MONO" value="6" />
</field>
<field name="Mip Mode Filter" start="20" end="21" type="uint" prefix="MIPFILTER">
<field name="Mip Mode Filter" dword="0" bits="21:20" type="uint" prefix="MIPFILTER">
<value name="NONE" value="0" />
<value name="NEAREST" value="1" />
<value name="LINEAR" value="3" />
</field>
<field name="Base Mip Level" start="22" end="26" type="u4.1" />
<field name="LOD PreClamp Enable" start="28" end="28" type="bool" />
<field name="Sampler Disable" start="31" end="31" type="bool" />
<field name="TCZ Address Control Mode" start="32" end="34" type="Texture Coordinate Mode" />
<field name="TCY Address Control Mode" start="35" end="37" type="Texture Coordinate Mode" />
<field name="TCX Address Control Mode" start="38" end="40" type="Texture Coordinate Mode" />
<field name="Cube Surface Control Mode" start="41" end="41" type="uint">
<field name="Base Mip Level" dword="0" bits="26:22" type="u4.1" />
<field name="LOD PreClamp Enable" dword="0" bits="28:28" type="bool" />
<field name="Sampler Disable" dword="0" bits="31:31" type="bool" />
<field name="TCZ Address Control Mode" dword="1" bits="2:0" type="Texture Coordinate Mode" />
<field name="TCY Address Control Mode" dword="1" bits="5:3" type="Texture Coordinate Mode" />
<field name="TCX Address Control Mode" dword="1" bits="8:6" type="Texture Coordinate Mode" />
<field name="Cube Surface Control Mode" dword="1" bits="9:9" type="uint">
<value name="CUBECTRLMODE_PROGRAMMED" value="0" />
<value name="CUBECTRLMODE_OVERRIDE" value="1" />
</field>
<field name="Max LOD" start="44" end="53" type="u4.6" />
<field name="Min LOD" start="54" end="63" type="u4.6" />
<field name="Border Color Pointer" start="69" end="95" type="address" />
<field name="R Address Min Filter Rounding Enable" start="109" end="109" type="bool" />
<field name="R Address Mag Filter Rounding Enable" start="110" end="110" type="bool" />
<field name="V Address Min Filter Rounding Enable" start="111" end="111" type="bool" />
<field name="V Address Mag Filter Rounding Enable" start="112" end="112" type="bool" />
<field name="U Address Min Filter Rounding Enable" start="113" end="113" type="bool" />
<field name="U Address Mag Filter Rounding Enable" start="114" end="114" type="bool" />
<field name="Maximum Anisotropy" start="115" end="117" type="uint">
<field name="Max LOD" dword="1" bits="21:12" type="u4.6" />
<field name="Min LOD" dword="1" bits="31:22" type="u4.6" />
<field name="Border Color Pointer" dword="2" bits="31:5" type="address" />
<field name="R Address Min Filter Rounding Enable" dword="3" bits="13:13" type="bool" />
<field name="R Address Mag Filter Rounding Enable" dword="3" bits="14:14" type="bool" />
<field name="V Address Min Filter Rounding Enable" dword="3" bits="15:15" type="bool" />
<field name="V Address Mag Filter Rounding Enable" dword="3" bits="16:16" type="bool" />
<field name="U Address Min Filter Rounding Enable" dword="3" bits="17:17" type="bool" />
<field name="U Address Mag Filter Rounding Enable" dword="3" bits="18:18" type="bool" />
<field name="Maximum Anisotropy" dword="3" bits="21:19" type="uint">
<value name="RATIO 2:1" value="0" />
<value name="RATIO 4:1" value="1" />
<value name="RATIO 6:1" value="2" />
@ -198,310 +198,310 @@
<value name="RATIO 14:1" value="6" />
<value name="RATIO 16:1" value="7" />
</field>
<field name="ChromaKey Mode" start="118" end="118" type="uint" prefix="KEYFILTER">
<field name="ChromaKey Mode" dword="3" bits="22:22" type="uint" prefix="KEYFILTER">
<value name="KILL_ON_ANY_MATCH" value="0" />
<value name="REPLACE_BLACK" value="1" />
</field>
<field name="ChromaKey Index" start="119" end="120" type="uint" />
<field name="ChromaKey Enable" start="121" end="121" type="bool" />
<field name="Monochrome Filter Width" start="122" end="124" type="uint" />
<field name="Monochrome Filter Height" start="125" end="127" type="uint" />
<field name="ChromaKey Index" dword="3" bits="24:23" type="uint" />
<field name="ChromaKey Enable" dword="3" bits="25:25" type="bool" />
<field name="Monochrome Filter Width" dword="3" bits="28:26" type="uint" />
<field name="Monochrome Filter Height" dword="3" bits="31:29" type="uint" />
</struct>
<struct name="SF_STATE" length="8">
<field name="GRF Register Count" start="1" end="3" type="uint" />
<field name="Kernel Start Pointer" start="6" end="31" type="address" />
<field name="Software Exception Enable" start="39" end="39" type="bool" />
<field name="Mask Stack Exception Enable" start="43" end="43" type="bool" />
<field name="Illegal Opcode Exception Enable" start="45" end="45" type="bool" />
<field name="Floating Point Mode" start="48" end="48" type="uint" prefix="FLOATING_POINT_MODE">
<field name="GRF Register Count" dword="0" bits="3:1" type="uint" />
<field name="Kernel Start Pointer" dword="0" bits="31:6" type="address" />
<field name="Software Exception Enable" dword="1" bits="7:7" type="bool" />
<field name="Mask Stack Exception Enable" dword="1" bits="11:11" type="bool" />
<field name="Illegal Opcode Exception Enable" dword="1" bits="13:13" type="bool" />
<field name="Floating Point Mode" dword="1" bits="16:16" type="uint" prefix="FLOATING_POINT_MODE">
<value name="IEEE-754" value="0" />
<value name="Alternate" value="1" />
</field>
<field name="Thread Priority" start="49" end="49" type="uint">
<field name="Thread Priority" dword="1" bits="17:17" type="uint">
<value name="Normal Priority" value="0" />
<value name="High Priority" value="1" />
</field>
<field name="Binding Table Entry Count" start="50" end="57" type="uint" />
<field name="Single Program Flow" start="63" end="63" type="bool" />
<field name="Per-Thread Scratch Space" start="64" end="67" type="uint" />
<field name="Scratch Space Base Pointer" start="74" end="95" type="address" />
<field name="Dispatch GRF Start Register For URB Data" start="96" end="99" type="uint" />
<field name="Vertex URB Entry Read Offset" start="100" end="105" type="uint" />
<field name="Vertex URB Entry Read Length" start="107" end="112" type="uint" />
<field name="Constant URB Entry Read Offset" start="114" end="119" type="uint" />
<field name="Constant URB Entry Read Length" start="121" end="126" type="uint" />
<field name="Statistics Enable" start="138" end="138" type="bool" />
<field name="Number of URB Entries" start="139" end="146" type="uint" />
<field name="URB Entry Allocation Size" start="147" end="151" type="uint" />
<field name="Maximum Number of Threads" start="153" end="158" type="uint" />
<field name="Front Winding" start="160" end="160" type="uint">
<field name="Binding Table Entry Count" dword="1" bits="25:18" type="uint" />
<field name="Single Program Flow" dword="1" bits="31:31" type="bool" />
<field name="Per-Thread Scratch Space" dword="2" bits="3:0" type="uint" />
<field name="Scratch Space Base Pointer" dword="2" bits="31:10" type="address" />
<field name="Dispatch GRF Start Register For URB Data" dword="3" bits="3:0" type="uint" />
<field name="Vertex URB Entry Read Offset" dword="3" bits="9:4" type="uint" />
<field name="Vertex URB Entry Read Length" dword="3" bits="16:11" type="uint" />
<field name="Constant URB Entry Read Offset" dword="3" bits="23:18" type="uint" />
<field name="Constant URB Entry Read Length" dword="3" bits="30:25" type="uint" />
<field name="Statistics Enable" dword="4" bits="10:10" type="bool" />
<field name="Number of URB Entries" dword="4" bits="18:11" type="uint" />
<field name="URB Entry Allocation Size" dword="4" bits="23:19" type="uint" />
<field name="Maximum Number of Threads" dword="4" bits="30:25" type="uint" />
<field name="Front Winding" dword="5" bits="0:0" type="uint">
<value name="FRONTWINDING_CW" value="0" />
<value name="FRONTWINDING_CCW" value="1" />
</field>
<field name="Viewport Transform Enable" start="161" end="161" type="bool" />
<field name="Setup Viewport State Offset" start="165" end="191" type="address" />
<field name="Destination Origin Vertical Bias" start="201" end="204" type="u0.4" />
<field name="Destination Origin Horizontal Bias" start="205" end="208" type="u0.4" />
<field name="Scissor Rectangle Enable" start="209" end="209" type="bool" />
<field name="2x2 Pixel Triangle Filter Disable" start="210" end="210" type="bool" />
<field name="Zero Pixel Triangle Filter Disable" start="211" end="211" type="bool" />
<field name="Point Rasterization Rule" start="212" end="213" type="uint">
<field name="Viewport Transform Enable" dword="5" bits="1:1" type="bool" />
<field name="Setup Viewport State Offset" dword="5" bits="31:5" type="address" />
<field name="Destination Origin Vertical Bias" dword="6" bits="12:9" type="u0.4" />
<field name="Destination Origin Horizontal Bias" dword="6" bits="16:13" type="u0.4" />
<field name="Scissor Rectangle Enable" dword="6" bits="17:17" type="bool" />
<field name="2x2 Pixel Triangle Filter Disable" dword="6" bits="18:18" type="bool" />
<field name="Zero Pixel Triangle Filter Disable" dword="6" bits="19:19" type="bool" />
<field name="Point Rasterization Rule" dword="6" bits="21:20" type="uint">
<value name="RASTRULE_UPPER_LEFT" value="0" />
<value name="RASTRULE_UPPER_RIGHT" value="1" />
</field>
<field name="Line End Cap Antialiasing Region Width" start="214" end="215" type="uint">
<field name="Line End Cap Antialiasing Region Width" dword="6" bits="23:22" type="uint">
<value name="0.5 pixels" value="0" />
<value name="1.0 pixels" value="1" />
<value name="2.0 pixels" value="2" />
<value name="4.0 pixels" value="3" />
</field>
<field name="Line Width" start="216" end="219" type="u3.1" />
<field name="Fast Scissor Clip Disable" start="220" end="220" type="bool" />
<field name="Cull Mode" start="221" end="222" type="uint" prefix="CULLMODE">
<field name="Line Width" dword="6" bits="27:24" type="u3.1" />
<field name="Fast Scissor Clip Disable" dword="6" bits="28:28" type="bool" />
<field name="Cull Mode" dword="6" bits="30:29" type="uint" prefix="CULLMODE">
<value name="BOTH" value="0" />
<value name="NONE" value="1" />
<value name="FRONT" value="2" />
<value name="BACK" value="3" />
</field>
<field name="Antialiasing Enable" start="223" end="223" type="bool" />
<field name="Point Width" start="224" end="234" type="u8.3" />
<field name="Point Width Source" start="235" end="235" type="uint">
<field name="Antialiasing Enable" dword="6" bits="31:31" type="bool" />
<field name="Point Width" dword="7" bits="10:0" type="u8.3" />
<field name="Point Width Source" dword="7" bits="11:11" type="uint">
<value name="Vertex" value="0" />
<value name="State" value="1" />
</field>
<field name="Vertex Sub Pixel Precision Select" start="236" end="236" type="uint">
<field name="Vertex Sub Pixel Precision Select" dword="7" bits="12:12" type="uint">
<value name="8 Sub-Pixel Precision Bits" value="0" />
<value name="4 Sub-Pixel Precision Bits" value="1" />
</field>
<field name="Sprite Point Enable" start="237" end="237" type="bool" />
<field name="AA Line Distance Mode" start="238" end="238" type="uint" prefix="AALINEDISTANCE">
<field name="Sprite Point Enable" dword="7" bits="13:13" type="bool" />
<field name="AA Line Distance Mode" dword="7" bits="14:14" type="uint" prefix="AALINEDISTANCE">
<value name="MANHATTAN" value="0" />
<value name="TRUE" value="1" />
</field>
<field name="Triangle Fan Provoking Vertex Select" start="249" end="250" type="uint">
<field name="Triangle Fan Provoking Vertex Select" dword="7" bits="26:25" type="uint">
<value name="Vertex 0" value="0" />
<value name="Vertex 1" value="1" />
<value name="Vertex 2" value="2" />
</field>
<field name="Line Strip/List Provoking Vertex Select" start="251" end="252" type="uint">
<field name="Line Strip/List Provoking Vertex Select" dword="7" bits="28:27" type="uint">
<value name="Vertex 0" value="0" />
<value name="Vertex 1" value="1" />
</field>
<field name="Triangle Strip/List Provoking Vertex Select" start="253" end="254" type="uint">
<field name="Triangle Strip/List Provoking Vertex Select" dword="7" bits="30:29" type="uint">
<value name="Vertex 0" value="0" />
<value name="Vertex 1" value="1" />
<value name="Vertex 2" value="2" />
</field>
<field name="Last Pixel Enable" start="255" end="255" type="bool" />
<field name="Last Pixel Enable" dword="7" bits="31:31" type="bool" />
</struct>
<struct name="WM_STATE" length="8">
<field name="GRF Register Count 0" start="1" end="3" type="uint" />
<field name="Kernel Start Pointer 0" start="6" end="31" type="address" />
<field name="Software Exception Enable" start="33" end="33" type="bool" />
<field name="Mask Stack Exception Enable" start="34" end="34" type="bool" />
<field name="Illegal Opcode Exception Enable" start="36" end="36" type="bool" />
<field name="Depth Coefficient URB Read Offset" start="40" end="45" type="uint" />
<field name="Floating Point Mode" start="48" end="48" type="uint" prefix="FLOATING_POINT_MODE">
<field name="GRF Register Count 0" dword="0" bits="3:1" type="uint" />
<field name="Kernel Start Pointer 0" dword="0" bits="31:6" type="address" />
<field name="Software Exception Enable" dword="1" bits="1:1" type="bool" />
<field name="Mask Stack Exception Enable" dword="1" bits="2:2" type="bool" />
<field name="Illegal Opcode Exception Enable" dword="1" bits="4:4" type="bool" />
<field name="Depth Coefficient URB Read Offset" dword="1" bits="13:8" type="uint" />
<field name="Floating Point Mode" dword="1" bits="16:16" type="uint" prefix="FLOATING_POINT_MODE">
<value name="IEEE-754" value="0" />
<value name="Alternate" value="1" />
</field>
<field name="Thread Priority" start="49" end="49" type="uint">
<field name="Thread Priority" dword="1" bits="17:17" type="uint">
<value name="Normal" value="0" />
<value name="High" value="1" />
</field>
<field name="Binding Table Entry Count" start="50" end="57" type="uint" />
<field name="Single Program Flow" start="63" end="63" type="bool" />
<field name="Per-Thread Scratch Space" start="64" end="67" type="uint" />
<field name="Scratch Space Base Pointer" start="74" end="95" type="address" />
<field name="Dispatch GRF Start Register For Constant/Setup Data 0" start="96" end="99" type="uint" />
<field name="Setup URB Entry Read Offset" start="100" end="105" type="uint" />
<field name="Setup URB Entry Read Length" start="107" end="112" type="uint" />
<field name="Constant URB Entry Read Offset" start="114" end="119" type="uint" />
<field name="Constant URB Entry Read Length" start="121" end="126" type="uint" />
<field name="Statistics Enable" start="128" end="128" type="bool" />
<field name="Sampler Count" start="130" end="132" type="uint" />
<field name="Sampler State Pointer" start="133" end="159" type="address" />
<field name="8 Pixel Dispatch Enable" start="160" end="160" type="bool" />
<field name="16 Pixel Dispatch Enable" start="161" end="161" type="bool" />
<field name="32 Pixel Dispatch Enable" start="162" end="162" type="bool" />
<field name="Contiguous 32 Pixel Dispatch Enable" start="163" end="163" type="bool" />
<field name="Contiguous 64 Pixel Dispatch Enable" start="164" end="164" type="bool" />
<field name="Legacy Global Depth Bias Enable" start="170" end="170" type="bool" />
<field name="Line Stipple Enable" start="171" end="171" type="bool" />
<field name="Global Depth Offset Enable" start="172" end="172" type="bool" />
<field name="Polygon Stipple Enable" start="173" end="173" type="bool" />
<field name="Line Antialiasing Region Width" start="174" end="175" type="uint">
<field name="Binding Table Entry Count" dword="1" bits="25:18" type="uint" />
<field name="Single Program Flow" dword="1" bits="31:31" type="bool" />
<field name="Per-Thread Scratch Space" dword="2" bits="3:0" type="uint" />
<field name="Scratch Space Base Pointer" dword="2" bits="31:10" type="address" />
<field name="Dispatch GRF Start Register For Constant/Setup Data 0" dword="3" bits="3:0" type="uint" />
<field name="Setup URB Entry Read Offset" dword="3" bits="9:4" type="uint" />
<field name="Setup URB Entry Read Length" dword="3" bits="16:11" type="uint" />
<field name="Constant URB Entry Read Offset" dword="3" bits="23:18" type="uint" />
<field name="Constant URB Entry Read Length" dword="3" bits="30:25" type="uint" />
<field name="Statistics Enable" dword="4" bits="0:0" type="bool" />
<field name="Sampler Count" dword="4" bits="4:2" type="uint" />
<field name="Sampler State Pointer" dword="4" bits="31:5" type="address" />
<field name="8 Pixel Dispatch Enable" dword="5" bits="0:0" type="bool" />
<field name="16 Pixel Dispatch Enable" dword="5" bits="1:1" type="bool" />
<field name="32 Pixel Dispatch Enable" dword="5" bits="2:2" type="bool" />
<field name="Contiguous 32 Pixel Dispatch Enable" dword="5" bits="3:3" type="bool" />
<field name="Contiguous 64 Pixel Dispatch Enable" dword="5" bits="4:4" type="bool" />
<field name="Legacy Global Depth Bias Enable" dword="5" bits="10:10" type="bool" />
<field name="Line Stipple Enable" dword="5" bits="11:11" type="bool" />
<field name="Global Depth Offset Enable" dword="5" bits="12:12" type="bool" />
<field name="Polygon Stipple Enable" dword="5" bits="13:13" type="bool" />
<field name="Line Antialiasing Region Width" dword="5" bits="15:14" type="uint">
<value name="0.5 pixels" value="0" />
<value name="1.0 pixels" value="1" />
<value name="2.0 pixels" value="2" />
<value name="4.0 pixels" value="3" />
</field>
<field name="Line End Cap Antialiasing Region Width" start="176" end="177" type="uint">
<field name="Line End Cap Antialiasing Region Width" dword="5" bits="17:16" type="uint">
<value name="0.5 pixels" value="0" />
<value name="1.0 pixels" value="1" />
<value name="2.0 pixels" value="2" />
<value name="4.0 pixels" value="3" />
</field>
<field name="Early Depth Test Enable" start="178" end="178" type="bool" />
<field name="Thread Dispatch Enable" start="179" end="179" type="bool" />
<field name="Pixel Shader Uses Source Depth" start="180" end="180" type="bool" />
<field name="Pixel Shader Computed Depth" start="181" end="181" type="bool" />
<field name="Pixel Shader Kills Pixel" start="182" end="182" type="bool" />
<field name="Legacy Diamond Line Rasterization" start="183" end="183" type="bool" />
<field name="Maximum Number of Threads" start="185" end="191" type="uint" />
<field name="Global Depth Offset Constant" start="192" end="223" type="float" />
<field name="Global Depth Offset Scale" start="224" end="255" type="float" />
<field name="Early Depth Test Enable" dword="5" bits="18:18" type="bool" />
<field name="Thread Dispatch Enable" dword="5" bits="19:19" type="bool" />
<field name="Pixel Shader Uses Source Depth" dword="5" bits="20:20" type="bool" />
<field name="Pixel Shader Computed Depth" dword="5" bits="21:21" type="bool" />
<field name="Pixel Shader Kills Pixel" dword="5" bits="22:22" type="bool" />
<field name="Legacy Diamond Line Rasterization" dword="5" bits="23:23" type="bool" />
<field name="Maximum Number of Threads" dword="5" bits="31:25" type="uint" />
<field name="Global Depth Offset Constant" dword="6" bits="31:0" type="float" />
<field name="Global Depth Offset Scale" dword="7" bits="31:0" type="float" />
</struct>
<instruction name="3DPRIMITIVE" bias="2" length="6" engine="render">
<field name="DWord Length" start="0" end="7" type="uint" default="4" />
<field name="Indirect Vertex Count" start="9" end="9" type="uint" />
<field name="Primitive Topology Type" start="10" end="14" type="3D_Prim_Topo_Type" />
<field name="Vertex Access Type" start="15" end="15" type="uint">
<field name="DWord Length" dword="0" bits="7:0" type="uint" default="4" />
<field name="Indirect Vertex Count" dword="0" bits="9:9" type="uint" />
<field name="Primitive Topology Type" dword="0" bits="14:10" type="3D_Prim_Topo_Type" />
<field name="Vertex Access Type" dword="0" bits="15:15" type="uint">
<value name="SEQUENTIAL" value="0" />
<value name="RANDOM" value="1" />
</field>
<field name="3D Command Sub Opcode" start="16" end="23" type="uint" default="0" />
<field name="3D Command Opcode" start="24" end="26" type="uint" default="3" />
<field name="Command SubType" start="27" end="28" type="uint" default="3" />
<field name="Command Type" start="29" end="31" type="uint" default="3" />
<field name="Vertex Count Per Instance" start="32" end="63" type="uint" />
<field name="Start Vertex Location" start="64" end="95" type="uint" />
<field name="Instance Count" start="96" end="127" type="uint" />
<field name="Start Instance Location" start="128" end="159" type="uint" />
<field name="Base Vertex Location" start="160" end="191" type="int" />
<field name="3D Command Sub Opcode" dword="0" bits="23:16" type="uint" default="0" />
<field name="3D Command Opcode" dword="0" bits="26:24" type="uint" default="3" />
<field name="Command SubType" dword="0" bits="28:27" type="uint" default="3" />
<field name="Command Type" dword="0" bits="31:29" type="uint" default="3" />
<field name="Vertex Count Per Instance" dword="1" bits="31:0" type="uint" />
<field name="Start Vertex Location" dword="2" bits="31:0" type="uint" />
<field name="Instance Count" dword="3" bits="31:0" type="uint" />
<field name="Start Instance Location" dword="4" bits="31:0" type="uint" />
<field name="Base Vertex Location" dword="5" bits="31:0" type="int" />
</instruction>
<instruction name="3DSTATE_AA_LINE_PARAMETERS" bias="2" length="3" engine="render">
<field name="DWord Length" start="0" end="7" type="uint" default="1" />
<field name="3D Command Sub Opcode" start="16" end="23" type="uint" default="10" />
<field name="3D Command Opcode" start="24" end="26" type="uint" default="1" />
<field name="Command SubType" start="27" end="28" type="uint" default="3" />
<field name="Command Type" start="29" end="31" type="uint" default="3" />
<field name="AA Coverage Slope" start="32" end="39" type="u0.8" />
<field name="AA Coverage Bias" start="48" end="55" type="u0.8" />
<field name="AA Coverage EndCap Slope" start="64" end="71" type="u0.8" />
<field name="AA Coverage EndCap Bias" start="80" end="87" type="u0.8" />
<field name="DWord Length" dword="0" bits="7:0" type="uint" default="1" />
<field name="3D Command Sub Opcode" dword="0" bits="23:16" type="uint" default="10" />
<field name="3D Command Opcode" dword="0" bits="26:24" type="uint" default="1" />
<field name="Command SubType" dword="0" bits="28:27" type="uint" default="3" />
<field name="Command Type" dword="0" bits="31:29" type="uint" default="3" />
<field name="AA Coverage Slope" dword="1" bits="7:0" type="u0.8" />
<field name="AA Coverage Bias" dword="1" bits="23:16" type="u0.8" />
<field name="AA Coverage EndCap Slope" dword="2" bits="7:0" type="u0.8" />
<field name="AA Coverage EndCap Bias" dword="2" bits="23:16" type="u0.8" />
</instruction>
<instruction name="3DSTATE_DEPTH_BUFFER" bias="2" length="6" engine="render">
<field name="DWord Length" start="0" end="7" type="uint" default="4" />
<field name="3D Command Sub Opcode" start="16" end="23" type="uint" default="5" />
<field name="3D Command Opcode" start="24" end="26" type="uint" default="1" />
<field name="Command SubType" start="27" end="28" type="uint" default="3" />
<field name="Command Type" start="29" end="31" type="uint" default="3" />
<field name="Surface Pitch" start="32" end="48" type="uint" />
<field name="Surface Format" start="50" end="52" type="uint">
<field name="DWord Length" dword="0" bits="7:0" type="uint" default="4" />
<field name="3D Command Sub Opcode" dword="0" bits="23:16" type="uint" default="5" />
<field name="3D Command Opcode" dword="0" bits="26:24" type="uint" default="1" />
<field name="Command SubType" dword="0" bits="28:27" type="uint" default="3" />
<field name="Command Type" dword="0" bits="31:29" type="uint" default="3" />
<field name="Surface Pitch" dword="1" bits="16:0" type="uint" />
<field name="Surface Format" dword="1" bits="20:18" type="uint">
<value name="D32_FLOAT_S8X24_UINT" value="0" />
<value name="D32_FLOAT" value="1" />
<value name="D24_UNORM_S8_UINT" value="2" />
<value name="D24_UNORM_X8_UINT" value="3" />
<value name="D16_UNORM" value="5" />
</field>
<field name="Software Tiled Rendering Mode" start="55" end="56" type="uint">
<field name="Software Tiled Rendering Mode" dword="1" bits="24:23" type="uint">
<value name="NORMAL" value="0" />
<value name="STR1" value="1" />
<value name="STR2" value="3" />
</field>
<field name="Depth Buffer Coordinate Offset Disable" start="57" end="57" type="bool" />
<field name="Tile Walk" start="58" end="58" type="uint">
<field name="Depth Buffer Coordinate Offset Disable" dword="1" bits="25:25" type="bool" />
<field name="Tile Walk" dword="1" bits="26:26" type="uint">
<value name="TILEWALK_YMAJOR" value="1" />
</field>
<field name="Tiled Surface" start="59" end="59" type="bool" />
<field name="Surface Type" start="61" end="63" type="uint">
<field name="Tiled Surface" dword="1" bits="27:27" type="bool" />
<field name="Surface Type" dword="1" bits="31:29" type="uint">
<value name="SURFTYPE_1D" value="0" />
<value name="SURFTYPE_2D" value="1" />
<value name="SURFTYPE_3D" value="2" />
<value name="SURFTYPE_CUBE" value="3" />
<value name="SURFTYPE_NULL" value="7" />
</field>
<field name="Surface Base Address" start="64" end="95" type="address" />
<field name="MIP Map Layout Mode" start="97" end="97" type="uint">
<field name="Surface Base Address" dword="2" bits="31:0" type="address" />
<field name="MIP Map Layout Mode" dword="3" bits="1:1" type="uint">
<value name="MIPLAYOUT_BELOW" value="0" />
<value name="MIPLAYOUT_RIGHT" value="1" />
</field>
<field name="LOD" start="98" end="101" type="uint" />
<field name="Width" start="102" end="114" type="uint" />
<field name="Height" start="115" end="127" type="uint">
<field name="LOD" dword="3" bits="5:2" type="uint" />
<field name="Width" dword="3" bits="18:6" type="uint" />
<field name="Height" dword="3" bits="31:19" type="uint">
<value name="SURFTYPE_1D: must be zero" value="0" />
</field>
<field name="Render Target View Extent" start="129" end="137" type="uint" />
<field name="Minimum Array Element" start="138" end="148" type="uint" />
<field name="Depth" start="149" end="159" type="uint">
<field name="Render Target View Extent" dword="4" bits="9:1" type="uint" />
<field name="Minimum Array Element" dword="4" bits="20:10" type="uint" />
<field name="Depth" dword="4" bits="31:21" type="uint">
<value name="SURFTYPE_CUBE: must be zero" value="0" />
</field>
<field name="Depth Coordinate Offset X" start="160" end="175" type="int" />
<field name="Depth Coordinate Offset Y" start="176" end="191" type="int" />
<field name="Depth Coordinate Offset X" dword="5" bits="15:0" type="int" />
<field name="Depth Coordinate Offset Y" dword="5" bits="31:16" type="int" />
</instruction>
<instruction name="3DSTATE_LINE_STIPPLE" bias="2" length="3" engine="render">
<field name="DWord Length" start="0" end="7" type="uint" default="1" />
<field name="3D Command Sub Opcode" start="16" end="23" type="uint" default="8" />
<field name="3D Command Opcode" start="24" end="26" type="uint" default="1" />
<field name="Command SubType" start="27" end="28" type="uint" default="3" />
<field name="Command Type" start="29" end="31" type="uint" default="3" />
<field name="Line Stipple Pattern" start="32" end="47" type="uint" />
<field name="Current Stipple Index" start="48" end="51" type="uint" />
<field name="Current Repeat Counter" start="53" end="61" type="uint" />
<field name="Modify Enable (Current Repeat Counter, Current Stipple Index)" start="63" end="63" type="bool" />
<field name="Line Stipple Repeat Count" start="64" end="72" type="uint" />
<field name="Line Stipple Inverse Repeat Count" start="80" end="95" type="u1.13" />
<field name="DWord Length" dword="0" bits="7:0" type="uint" default="1" />
<field name="3D Command Sub Opcode" dword="0" bits="23:16" type="uint" default="8" />
<field name="3D Command Opcode" dword="0" bits="26:24" type="uint" default="1" />
<field name="Command SubType" dword="0" bits="28:27" type="uint" default="3" />
<field name="Command Type" dword="0" bits="31:29" type="uint" default="3" />
<field name="Line Stipple Pattern" dword="1" bits="15:0" type="uint" />
<field name="Current Stipple Index" dword="1" bits="19:16" type="uint" />
<field name="Current Repeat Counter" dword="1" bits="29:21" type="uint" />
<field name="Modify Enable (Current Repeat Counter, Current Stipple Index)" dword="1" bits="31:31" type="bool" />
<field name="Line Stipple Repeat Count" dword="2" bits="8:0" type="uint" />
<field name="Line Stipple Inverse Repeat Count" dword="2" bits="31:16" type="u1.13" />
</instruction>
<instruction name="3DSTATE_VF_STATISTICS" bias="1" length="1" engine="render">
<field name="Statistics Enable" start="0" end="0" type="bool" />
<field name="3D Command Sub Opcode" start="16" end="23" type="uint" default="11" />
<field name="3D Command Opcode" start="24" end="26" type="uint" default="0" />
<field name="Command SubType" start="27" end="28" type="uint" default="1" />
<field name="Command Type" start="29" end="31" type="uint" default="3" />
<field name="Statistics Enable" dword="0" bits="0:0" type="bool" />
<field name="3D Command Sub Opcode" dword="0" bits="23:16" type="uint" default="11" />
<field name="3D Command Opcode" dword="0" bits="26:24" type="uint" default="0" />
<field name="Command SubType" dword="0" bits="28:27" type="uint" default="1" />
<field name="Command Type" dword="0" bits="31:29" type="uint" default="3" />
</instruction>
<instruction name="PIPELINE_SELECT" bias="1" length="1" engine="render">
<field name="Pipeline Selection" start="0" end="1" type="uint">
<field name="Pipeline Selection" dword="0" bits="1:0" type="uint">
<value name="3D" value="0" />
<value name="Media" value="1" />
</field>
<field name="3D Command Sub Opcode" start="16" end="23" type="uint" default="4" />
<field name="3D Command Opcode" start="24" end="26" type="uint" default="1" />
<field name="Command SubType" start="27" end="28" type="uint" default="1" />
<field name="Command Type" start="29" end="31" type="uint" default="3" />
<field name="3D Command Sub Opcode" dword="0" bits="23:16" type="uint" default="4" />
<field name="3D Command Opcode" dword="0" bits="26:24" type="uint" default="1" />
<field name="Command SubType" dword="0" bits="28:27" type="uint" default="1" />
<field name="Command Type" dword="0" bits="31:29" type="uint" default="3" />
</instruction>
<instruction name="PIPE_CONTROL" bias="2" length="4" engine="render">
<field name="DWord Length" start="0" end="7" type="uint" default="2" />
<field name="Notify Enable" start="8" end="8" type="bool" />
<field name="Indirect State Pointers Disable" start="9" end="9" type="bool" />
<field name="Texture Cache Flush Enable" start="10" end="10" type="bool" />
<field name="Instruction Cache Invalidate Enable" start="11" end="11" type="bool" />
<field name="Write Cache Flush" start="12" end="12" type="bool" />
<field name="Depth Stall Enable" start="13" end="13" type="bool" />
<field name="Post Sync Operation" start="14" end="15" type="uint">
<field name="DWord Length" dword="0" bits="7:0" type="uint" default="2" />
<field name="Notify Enable" dword="0" bits="8:8" type="bool" />
<field name="Indirect State Pointers Disable" dword="0" bits="9:9" type="bool" />
<field name="Texture Cache Flush Enable" dword="0" bits="10:10" type="bool" />
<field name="Instruction Cache Invalidate Enable" dword="0" bits="11:11" type="bool" />
<field name="Write Cache Flush" dword="0" bits="12:12" type="bool" />
<field name="Depth Stall Enable" dword="0" bits="13:13" type="bool" />
<field name="Post Sync Operation" dword="0" bits="15:14" type="uint">
<value name="No Write" value="0" />
<value name="Write Immediate Data" value="1" />
<value name="Write PS Depth Count" value="2" />
<value name="Write Timestamp" value="3" />
</field>
<field name="3D Command Sub Opcode" start="16" end="23" type="uint" default="0" />
<field name="3D Command Opcode" start="24" end="26" type="uint" default="2" />
<field name="Command SubType" start="27" end="28" type="uint" default="3" />
<field name="Command Type" start="29" end="31" type="uint" default="3" />
<field name="Destination Address Type" start="34" end="34" type="uint" prefix="DAT">
<field name="3D Command Sub Opcode" dword="0" bits="23:16" type="uint" default="0" />
<field name="3D Command Opcode" dword="0" bits="26:24" type="uint" default="2" />
<field name="Command SubType" dword="0" bits="28:27" type="uint" default="3" />
<field name="Command Type" dword="0" bits="31:29" type="uint" default="3" />
<field name="Destination Address Type" dword="1" bits="2:2" type="uint" prefix="DAT">
<value name="PGTT" value="0" />
<value name="GGTT" value="1" />
</field>
<field name="Address" start="35" end="63" type="address" />
<field name="Immediate Data" start="64" end="127" type="uint" />
<field name="Address" dword="1" bits="31:3" type="address" />
<field name="Immediate Data" dword="2" bits="63:0" type="uint" />
</instruction>
<instruction name="URB_FENCE" bias="2" length="3" engine="render">
<field name="DWord Length" start="0" end="7" type="uint" default="1" />
<field name="VS Unit URB Reallocation Request" start="8" end="8" type="bool" />
<field name="GS Unit URB Reallocation Request" start="9" end="9" type="bool" />
<field name="CLIP Unit URB Reallocation Request" start="10" end="10" type="bool" />
<field name="SF Unit URB Reallocation Request" start="11" end="11" type="bool" />
<field name="VFE Unit URB Reallocation Request" start="12" end="12" type="bool" />
<field name="CS Unit URB Reallocation Request" start="13" end="13" type="bool" />
<field name="3D Command Sub Opcode" start="16" end="23" type="uint" default="0" />
<field name="3D Command Opcode" start="24" end="26" type="uint" default="0" />
<field name="Command SubType" start="27" end="28" type="uint" default="0" />
<field name="Command Type" start="29" end="31" type="uint" default="3" />
<field name="VS Fence" start="32" end="41" type="uint" />
<field name="GS Fence" start="42" end="51" type="uint" />
<field name="CLIP Fence" start="52" end="61" type="uint" />
<field name="SF Fence" start="64" end="73" type="uint" />
<field name="VFE Fence" start="74" end="83" type="uint" />
<field name="CS Fence" start="84" end="94" type="uint" />
<field name="DWord Length" dword="0" bits="7:0" type="uint" default="1" />
<field name="VS Unit URB Reallocation Request" dword="0" bits="8:8" type="bool" />
<field name="GS Unit URB Reallocation Request" dword="0" bits="9:9" type="bool" />
<field name="CLIP Unit URB Reallocation Request" dword="0" bits="10:10" type="bool" />
<field name="SF Unit URB Reallocation Request" dword="0" bits="11:11" type="bool" />
<field name="VFE Unit URB Reallocation Request" dword="0" bits="12:12" type="bool" />
<field name="CS Unit URB Reallocation Request" dword="0" bits="13:13" type="bool" />
<field name="3D Command Sub Opcode" dword="0" bits="23:16" type="uint" default="0" />
<field name="3D Command Opcode" dword="0" bits="26:24" type="uint" default="0" />
<field name="Command SubType" dword="0" bits="28:27" type="uint" default="0" />
<field name="Command Type" dword="0" bits="31:29" type="uint" default="3" />
<field name="VS Fence" dword="1" bits="9:0" type="uint" />
<field name="GS Fence" dword="1" bits="19:10" type="uint" />
<field name="CLIP Fence" dword="1" bits="29:20" type="uint" />
<field name="SF Fence" dword="2" bits="9:0" type="uint" />
<field name="VFE Fence" dword="2" bits="19:10" type="uint" />
<field name="CS Fence" dword="2" bits="30:20" type="uint" />
</instruction>
</genxml>

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -18,7 +18,7 @@ def main() -> None:
type=pathlib.Path)
parser.add_argument('--validate', action='store_true')
parser.add_argument('--quiet', action='store_true')
parser.add_argument('--bits-format', choices=['new', 'old'], default='old',
parser.add_argument('--bits-format', choices=['new', 'old'], default='new',
help="'new' for dword/bits; 'old' for start/end (default=%(default)s)")
args: Args = parser.parse_args()