i965: Stop setting up a 1:1 "attrib" member in our vertex inputs.

It's just the array index, so we can just go look at the array and see
which element we are.

No significant performance difference (n=140)

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
This commit is contained in:
Eric Anholt 2014-04-06 12:08:37 -07:00
parent 9a5d19d680
commit 99442bc7b2
4 changed files with 2 additions and 5 deletions

View File

@ -833,8 +833,6 @@ struct brw_vertex_element {
int buffer;
/** The corresponding Mesa vertex attribute */
gl_vert_attrib attrib;
/** Offset of the first element within the buffer object */
unsigned int offset;
};

View File

@ -291,7 +291,6 @@ static void brw_merge_inputs( struct brw_context *brw,
for (i = 0; i < VERT_ATTRIB_MAX; i++) {
brw->vb.inputs[i].buffer = -1;
brw->vb.inputs[i].glarray = arrays[i];
brw->vb.inputs[i].attrib = (gl_vert_attrib) i;
}
}

View File

@ -713,7 +713,7 @@ static void brw_emit_vertices(struct brw_context *brw)
uint32_t comp2 = BRW_VE1_COMPONENT_STORE_SRC;
uint32_t comp3 = BRW_VE1_COMPONENT_STORE_SRC;
if (input->attrib == VERT_ATTRIB_EDGEFLAG) {
if (input == &brw->vb.inputs[VERT_ATTRIB_EDGEFLAG]) {
/* Gen6+ passes edgeflag as sideband along with the vertex, instead
* of in the VUE. We have to upload it sideband as the last vertex
* element according to the B-Spec.

View File

@ -139,7 +139,7 @@ gen8_emit_vertices(struct brw_context *brw)
* glEdgeFlagPointer, on the other hand, gives us an unnormalized
* integer ubyte. Just rewrite that to convert to a float.
*/
if (input->attrib == VERT_ATTRIB_EDGEFLAG) {
if (input == &brw->vb.inputs[VERT_ATTRIB_EDGEFLAG]) {
/* Gen6+ passes edgeflag as sideband along with the vertex, instead
* of in the VUE. We have to upload it sideband as the last vertex
* element according to the B-Spec.