i965: Kill software primitive counting entirely.
authorKenneth Graunke <kenneth@whitecape.org>
Fri, 17 May 2013 18:53:53 +0000 (11:53 -0700)
committerKenneth Graunke <kenneth@whitecape.org>
Tue, 21 May 2013 20:29:27 +0000 (13:29 -0700)
commit64a87f29ce29d3c2e01b7fd79386bf6ace454f62
treeae20d2a93f5255582b157a6c02ba3531a8b263ad
parent647fc0c50bc9832c336b2b7e4329abec31df9dec
i965: Kill software primitive counting entirely.

Now that we have hardware contexts, we don't need to continually
reprogram the GS_SVBI_INDEX registers.  They're automatically saved and
restored with the context, so they can just increment over time.  We
only need to reset them when starting transform feedback.

There's also no reason to delay until the next drawing operation; we can
just emit the packet immediately.  However, this means we must drop the
initialization in brw_invariant_state, as BeginTransformFeedback may
occur before the first drawing in a context.

Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Paul Berry <stereotype441@gmail.com>
src/mesa/drivers/dri/i965/brw_context.h
src/mesa/drivers/dri/i965/brw_draw.c
src/mesa/drivers/dri/i965/brw_misc_state.c
src/mesa/drivers/dri/i965/brw_state.h
src/mesa/drivers/dri/i965/brw_state_upload.c
src/mesa/drivers/dri/i965/gen6_sol.c