mesa/dlist: fixes and improvements for material caching
authorKeith Whitwell <keithw@vmware.com>
Tue, 30 Jun 2009 17:40:20 +0000 (18:40 +0100)
committerKeith Whitwell <keithw@vmware.com>
Tue, 30 Jun 2009 17:40:20 +0000 (18:40 +0100)
commit70ae7ba818e9d8a5485653b258e76f06c988654c
treec286ff4ccb7480b275eb94f4474490bfbd761f46
parentc48c01c9e7d6d0a43883b7b3333ad42208ea9d44
mesa/dlist: fixes and improvements for material caching

Only short-circuit material call if *all* statechanges from this call
are cached.  Some material calls (eg with FRONT_AND_BACK) change more
than one piece of state -- need to check all of them before returning.

Also, Material calls are legal inside begin/end pairs, so don't need
to be as careful about begin/end state as with regular statechanges
(like ShadeModel) when caching.  Take advantage of this and do better
caching.
src/mesa/main/dlist.c