gallium: better flush logic in draw module
authorBrian <brian.paul@tungstengraphics.com>
Sat, 26 Jan 2008 00:21:05 +0000 (17:21 -0700)
committerBrian <brian.paul@tungstengraphics.com>
Sat, 26 Jan 2008 00:22:56 +0000 (17:22 -0700)
commit1603a33fb276d7e78a2e872dfa05aa0093d1329a
treed293a1e1dbd7b05b80828a8f3303607567b59664
parent0bfd085e2866fbbd40209dcee23f0e6240583fe8
gallium: better flush logic in draw module

This is the other half of Keith's draw/flush patch.

There are now 5 flush flags to control what's flushed (post-xform vertex
cache, prim cache, vbuf, etc).

The gears slow-down in this part of the patch was due to the cull stage not
getting invoked.  It was unconditional before, but is now gated by 'need_det'.
But it also needs to be gated by draw->rasterizer->cull_mode.  Gears uses
back-face culling.
src/mesa/pipe/draw/draw_context.c
src/mesa/pipe/draw/draw_prim.c
src/mesa/pipe/draw/draw_private.h
src/mesa/pipe/draw/draw_validate.c
src/mesa/pipe/draw/draw_vbuf.c
src/mesa/pipe/draw/draw_vertex_cache.c
src/mesa/pipe/draw/draw_vertex_shader.c