From 32f833e5a58d886065309da5414a63924e61e9d9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Fri, 17 Feb 2012 02:13:32 +0100 Subject: gallium/cso: kill off non-functional shader caching MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Suggested by José. We don't provide shader caching in CSO. Most of the time the api provides object semantics for shaders anyway, and the cases where it doesn't (eg mesa's internall-generated texenv programs), it will be up to the state tracker to implement their own specialized caching. --- src/gallium/auxiliary/cso_cache/cso_cache.c | 24 ------------------------ 1 file changed, 24 deletions(-) (limited to 'src/gallium/auxiliary/cso_cache/cso_cache.c') diff --git a/src/gallium/auxiliary/cso_cache/cso_cache.c b/src/gallium/auxiliary/cso_cache/cso_cache.c index c606992..e276fd1 100644 --- a/src/gallium/auxiliary/cso_cache/cso_cache.c +++ b/src/gallium/auxiliary/cso_cache/cso_cache.c @@ -119,22 +119,6 @@ static void delete_rasterizer_state(void *state, void *data) FREE(state); } -static void delete_fs_state(void *state, void *data) -{ - struct cso_fragment_shader *cso = (struct cso_fragment_shader *)state; - if (cso->delete_state) - cso->delete_state(cso->context, cso->data); - FREE(state); -} - -static void delete_vs_state(void *state, void *data) -{ - struct cso_vertex_shader *cso = (struct cso_vertex_shader *)state; - if (cso->delete_state) - cso->delete_state(cso->context, cso->data); - FREE(state); -} - static void delete_velements(void *state, void *data) { struct cso_velements *cso = (struct cso_velements *)state; @@ -158,12 +142,6 @@ static INLINE void delete_cso(void *state, enum cso_cache_type type) case CSO_RASTERIZER: delete_rasterizer_state(state, 0); break; - case CSO_FRAGMENT_SHADER: - delete_fs_state(state, 0); - break; - case CSO_VERTEX_SHADER: - delete_vs_state(state, 0); - break; case CSO_VELEMENTS: delete_velements(state, 0); break; @@ -309,8 +287,6 @@ void cso_cache_delete(struct cso_cache *sc) /* delete driver data */ cso_for_each_state(sc, CSO_BLEND, delete_blend_state, 0); cso_for_each_state(sc, CSO_DEPTH_STENCIL_ALPHA, delete_depth_stencil_state, 0); - cso_for_each_state(sc, CSO_FRAGMENT_SHADER, delete_fs_state, 0); - cso_for_each_state(sc, CSO_VERTEX_SHADER, delete_vs_state, 0); cso_for_each_state(sc, CSO_RASTERIZER, delete_rasterizer_state, 0); cso_for_each_state(sc, CSO_SAMPLER, delete_sampler_state, 0); cso_for_each_state(sc, CSO_VELEMENTS, delete_velements, 0); -- cgit v1.1