genxml/gen9: Make 3DSTATE_SBE::AttributeActiveComponentFormat an array
authorJason Ekstrand <jason.ekstrand@intel.com>
Thu, 11 Aug 2016 10:24:32 +0000 (03:24 -0700)
committerJason Ekstrand <jason.ekstrand@intel.com>
Fri, 19 Aug 2016 10:11:29 +0000 (03:11 -0700)
Signed-off-by: Jason Ekstrand <jason@jlekstrand.net>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
src/intel/genxml/gen9.xml
src/intel/vulkan/genX_pipeline_util.h

index 51a2420937df7048494321b6de1208153edc3bf7..547d47ff8cd50446df1ace923b9a2c27c8b4bb0e 100644 (file)
     <field name="Primitive ID Override Attribute Select" start="32" end="36" type="uint"/>
     <field name="Point Sprite Texture Coordinate Enable" start="64" end="95" type="uint"/>
     <field name="Constant Interpolation Enable" start="96" end="127" type="uint"/>
-    <field name="Attribute 15 Active Component Format" start="158" end="159" type="uint"/>
-    <field name="Attribute 14 Active Component Format" start="156" end="157" type="uint"/>
-    <field name="Attribute 13 Active Component Format" start="154" end="155" type="uint"/>
-    <field name="Attribute 12 Active Component Format" start="152" end="153" type="uint"/>
-    <field name="Attribute 11 Active Component Format" start="150" end="151" type="uint"/>
-    <field name="Attribute 10 Active Component Format" start="148" end="149" type="uint"/>
-    <field name="Attribute 9 Active Component Format" start="146" end="147" type="uint"/>
-    <field name="Attribute 8 Active Component Format" start="144" end="145" type="uint"/>
-    <field name="Attribute 7 Active Component Format" start="142" end="143" type="uint"/>
-    <field name="Attribute 6 Active Component Format" start="140" end="141" type="uint"/>
-    <field name="Attribute 5 Active Component Format" start="138" end="139" type="uint"/>
-    <field name="Attribute 4 Active Component Format" start="136" end="137" type="uint"/>
-    <field name="Attribute 3 Active Component Format" start="134" end="135" type="uint"/>
-    <field name="Attribute 2 Active Component Format" start="132" end="133" type="uint"/>
-    <field name="Attribute 1 Active Component Format" start="130" end="131" type="uint"/>
-    <field name="Attribute 0 Active Component Format" start="128" end="129" type="uint"/>
-    <field name="Attribute 31 Active Component Format" start="190" end="191" type="uint"/>
-    <field name="Attribute 30 Active Component Format" start="188" end="189" type="uint"/>
-    <field name="Attribute 29 Active Component Format" start="186" end="187" type="uint"/>
-    <field name="Attribute 28 Active Component Format" start="184" end="185" type="uint"/>
-    <field name="Attribute 27 Active Component Format" start="182" end="183" type="uint"/>
-    <field name="Attribute 26 Active Component Format" start="180" end="181" type="uint"/>
-    <field name="Attribute 25 Active Component Format" start="178" end="179" type="uint"/>
-    <field name="Attribute 24 Active Component Format" start="176" end="177" type="uint"/>
-    <field name="Attribute 23 Active Component Format" start="174" end="175" type="uint"/>
-    <field name="Attribute 22 Active Component Format" start="172" end="173" type="uint"/>
-    <field name="Attribute 21 Active Component Format" start="170" end="171" type="uint"/>
-    <field name="Attribute 20 Active Component Format" start="168" end="169" type="uint"/>
-    <field name="Attribute 19 Active Component Format" start="166" end="167" type="uint"/>
-    <field name="Attribute 18 Active Component Format" start="164" end="165" type="uint"/>
-    <field name="Attribute 17 Active Component Format" start="162" end="163" type="uint"/>
-    <field name="Attribute 16 Active Component Format" start="160" end="161" type="uint"/>
+    <group count="32" start="128" size="2">
+      <field name="Attribute Active Component Format" start="0" end="1" type="uint"/>
+    </group>
   </instruction>
 
   <instruction name="3DSTATE_SBE_SWIZ" bias="2" length="11">
index 679fb5768351370674b307c9ff2da97615e6718c..c1ff6dff1797d2c3495140a5c3782d114f7e27bc 100644 (file)
@@ -237,44 +237,12 @@ emit_3dstate_sbe(struct anv_pipeline *pipeline)
       .PointSpriteTextureCoordinateOrigin = UPPERLEFT,
       .NumberofSFOutputAttributes = wm_prog_data->num_varying_inputs,
       .ConstantInterpolationEnable = wm_prog_data->flat_inputs,
+   };
 
 #if GEN_GEN >= 9
-      .Attribute0ActiveComponentFormat = ACF_XYZW,
-      .Attribute1ActiveComponentFormat = ACF_XYZW,
-      .Attribute2ActiveComponentFormat = ACF_XYZW,
-      .Attribute3ActiveComponentFormat = ACF_XYZW,
-      .Attribute4ActiveComponentFormat = ACF_XYZW,
-      .Attribute5ActiveComponentFormat = ACF_XYZW,
-      .Attribute6ActiveComponentFormat = ACF_XYZW,
-      .Attribute7ActiveComponentFormat = ACF_XYZW,
-      .Attribute8ActiveComponentFormat = ACF_XYZW,
-      .Attribute9ActiveComponentFormat = ACF_XYZW,
-      .Attribute10ActiveComponentFormat = ACF_XYZW,
-      .Attribute11ActiveComponentFormat = ACF_XYZW,
-      .Attribute12ActiveComponentFormat = ACF_XYZW,
-      .Attribute13ActiveComponentFormat = ACF_XYZW,
-      .Attribute14ActiveComponentFormat = ACF_XYZW,
-      .Attribute15ActiveComponentFormat = ACF_XYZW,
-      /* wow, much field, very attribute */
-      .Attribute16ActiveComponentFormat = ACF_XYZW,
-      .Attribute17ActiveComponentFormat = ACF_XYZW,
-      .Attribute18ActiveComponentFormat = ACF_XYZW,
-      .Attribute19ActiveComponentFormat = ACF_XYZW,
-      .Attribute20ActiveComponentFormat = ACF_XYZW,
-      .Attribute21ActiveComponentFormat = ACF_XYZW,
-      .Attribute22ActiveComponentFormat = ACF_XYZW,
-      .Attribute23ActiveComponentFormat = ACF_XYZW,
-      .Attribute24ActiveComponentFormat = ACF_XYZW,
-      .Attribute25ActiveComponentFormat = ACF_XYZW,
-      .Attribute26ActiveComponentFormat = ACF_XYZW,
-      .Attribute27ActiveComponentFormat = ACF_XYZW,
-      .Attribute28ActiveComponentFormat = ACF_XYZW,
-      .Attribute29ActiveComponentFormat = ACF_XYZW,
-      .Attribute28ActiveComponentFormat = ACF_XYZW,
-      .Attribute29ActiveComponentFormat = ACF_XYZW,
-      .Attribute30ActiveComponentFormat = ACF_XYZW,
+   for (unsigned i = 0; i < 32; i++)
+      sbe.AttributeActiveComponentFormat[i] = ACF_XYZW;
 #endif
-   };
 
 #if GEN_GEN >= 8
    /* On Broadwell, they broke 3DSTATE_SBE into two packets */