aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCorbin Simpson <[email protected]>2009-10-21 05:48:45 -0700
committerCorbin Simpson <[email protected]>2009-10-21 06:52:24 -0700
commit5a0598f23569314a4ad72eda59e250ab9c43b46d (patch)
tree5079b66894a71266fcd429f3975612bbe532e8a8
parentb589e39809fa9d0b24a708d792b70ae5b120ffb8 (diff)
r300g: Don't use the hashtable internally.
As osiris pointed out, glxgears slowly gets slower for some reason when it's enabled, and it's not helping at the moment, so just turn it off.
-rw-r--r--src/gallium/drivers/r300/r300_state_derived.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/gallium/drivers/r300/r300_state_derived.c b/src/gallium/drivers/r300/r300_state_derived.c
index 7297f9c653c..6e7679c39fe 100644
--- a/src/gallium/drivers/r300/r300_state_derived.c
+++ b/src/gallium/drivers/r300/r300_state_derived.c
@@ -451,6 +451,7 @@ static void r300_update_derived_shader_state(struct r300_context* r300)
struct r300_shader_derived_value* value;
int i;
+ /*
key = CALLOC_STRUCT(r300_shader_key);
key->vs = r300->vs;
key->fs = r300->fs;
@@ -472,10 +473,11 @@ static void r300_update_derived_shader_state(struct r300_context* r300)
value->rs_block = rs_block;
util_hash_table_set(r300->shader_hash_table,
(void*)key, (void*)value);
- }
+ } */
/* XXX This will be refactored ASAP. */
vformat = CALLOC_STRUCT(r300_vertex_format);
+ rs_block = CALLOC_STRUCT(r300_rs_block);
for (i = 0; i < 16; i++) {
vformat->vs_tab[i] = -1;
@@ -486,7 +488,10 @@ static void r300_update_derived_shader_state(struct r300_context* r300)
r300_vertex_psc(r300, vformat);
r300_update_fs_tab(r300, vformat);
+ r300_update_rs_block(r300, rs_block);
+
FREE(r300->vertex_info);
+ FREE(r300->rs_block);
r300->vertex_info = vformat;
r300->rs_block = rs_block;