summaryrefslogtreecommitdiffstats
path: root/src/gallium/auxiliary/draw
diff options
context:
space:
mode:
authorRoland Scheidegger <sroland@vmware.com>2013-08-23 23:08:43 +0200
committerRoland Scheidegger <sroland@vmware.com>2013-08-27 16:59:39 +0200
commitbd3909f265908e30ef0e569fab57e9a042750b3a (patch)
treec98086d22693a9eab4900a7df27046573b831e0e /src/gallium/auxiliary/draw
parentaff2ecf09a92eb79eef560f17d77badf69782e7c (diff)
downloadexternal_mesa3d-bd3909f265908e30ef0e569fab57e9a042750b3a.zip
external_mesa3d-bd3909f265908e30ef0e569fab57e9a042750b3a.tar.gz
external_mesa3d-bd3909f265908e30ef0e569fab57e9a042750b3a.tar.bz2
draw: clean up setting stream out information a bit
In particular noone is interested in the vertex count, so drop that, and also drop the duplicated num_primitives_generated / so.primitives_storage_needed variables in drivers. I am unable for now to figure out if primitives_storage_needed in SO stats (used for d3d10) should increase if SO is disabled, though the equivalent num_primitives_generated used for OpenGL definitely should increase. In any case we were only counting when SO is active both in softpipe and llvmpipe anyway so don't pretend there's an independent num_primitives_generated counter which would count always. (This means the PIPE_QUERY_PRIMITIVES_GENERATED count will still be wrong just as before, should eventually fix this by doing either separate counting for this query or adjust the code so it always counts this even if SO is inactive depending on what's correct for d3d10.) Reviewed-by: Brian Paul <brianp@vmware.com>
Diffstat (limited to 'src/gallium/auxiliary/draw')
-rw-r--r--src/gallium/auxiliary/draw/draw_pt_so_emit.c4
-rw-r--r--src/gallium/auxiliary/draw/draw_vbuf.h1
2 files changed, 0 insertions, 5 deletions
diff --git a/src/gallium/auxiliary/draw/draw_pt_so_emit.c b/src/gallium/auxiliary/draw/draw_pt_so_emit.c
index a6d1da4..7cef17c 100644
--- a/src/gallium/auxiliary/draw/draw_pt_so_emit.c
+++ b/src/gallium/auxiliary/draw/draw_pt_so_emit.c
@@ -48,7 +48,6 @@ struct pt_so_emit {
boolean use_pre_clip_pos;
int pos_idx;
unsigned emitted_primitives;
- unsigned emitted_vertices;
unsigned generated_primitives;
};
@@ -214,7 +213,6 @@ static void so_emit_prim(struct pt_so_emit *so,
}
}
}
- so->emitted_vertices += num_vertices;
++so->emitted_primitives;
}
@@ -274,7 +272,6 @@ void draw_pt_so_emit( struct pt_so_emit *emit,
if (!draw->so.num_targets)
return;
- emit->emitted_vertices = 0;
emit->emitted_primitives = 0;
emit->generated_primitives = 0;
emit->input_vertex_stride = input_verts->stride;
@@ -302,7 +299,6 @@ void draw_pt_so_emit( struct pt_so_emit *emit,
render->set_stream_output_info(render,
emit->emitted_primitives,
- emit->emitted_vertices,
emit->generated_primitives);
}
diff --git a/src/gallium/auxiliary/draw/draw_vbuf.h b/src/gallium/auxiliary/draw/draw_vbuf.h
index bf1c73c..2df0c0e 100644
--- a/src/gallium/auxiliary/draw/draw_vbuf.h
+++ b/src/gallium/auxiliary/draw/draw_vbuf.h
@@ -125,7 +125,6 @@ struct vbuf_render {
*/
void (*set_stream_output_info)( struct vbuf_render *vbufr,
unsigned primitive_count,
- unsigned vertices_count,
unsigned primitive_generated );
/**