diff options
author | Marek Olšák <[email protected]> | 2010-05-16 03:53:45 +0200 |
---|---|---|
committer | Marek Olšák <[email protected]> | 2010-05-16 04:10:00 +0200 |
commit | 01e5a73b57fc262b0cd8b829d81b52af5a063751 (patch) | |
tree | dadfd17f6c91deb2ff0324ce76be459c2e83abb0 /src | |
parent | dca9624201319950aa4c78ad5cc7dd7121e2b347 (diff) |
r300g/swtcl: update PSC only once when a shader is changed
Diffstat (limited to 'src')
-rw-r--r-- | src/gallium/drivers/r300/r300_state_derived.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/gallium/drivers/r300/r300_state_derived.c b/src/gallium/drivers/r300/r300_state_derived.c index acffbd9e5b0..7583862a1a4 100644 --- a/src/gallium/drivers/r300/r300_state_derived.c +++ b/src/gallium/drivers/r300/r300_state_derived.c @@ -614,13 +614,13 @@ void r300_update_derived_state(struct r300_context* r300) if (r300->rs_block_state.dirty) { r300_update_rs_block(r300); - } - if (r300->draw) { - memset(&r300->vertex_info, 0, sizeof(struct vertex_info)); - r300_draw_emit_all_attribs(r300); - draw_compute_vertex_size(&r300->vertex_info); - r300_swtcl_vertex_psc(r300); + if (r300->draw) { + memset(&r300->vertex_info, 0, sizeof(struct vertex_info)); + r300_draw_emit_all_attribs(r300); + draw_compute_vertex_size(&r300->vertex_info); + r300_swtcl_vertex_psc(r300); + } } r300_update_hyperz_state(r300); |