diff options
author | Michel Dänzer <[email protected]> | 2012-06-12 20:18:24 +0200 |
---|---|---|
committer | Michel Dänzer <[email protected]> | 2012-06-12 20:18:24 +0200 |
commit | 1657dec72d6dcb6158bb65cea2e1b6ff2445746c (patch) | |
tree | 0dddefae8767cf178dcdbc3169d6d7b9495f22ad /src/gallium | |
parent | 6d289390ec4d643e7451f9dcb35439876f361c44 (diff) |
radeonsi: Don't always re-compile shaders after they're bound.
Diffstat (limited to 'src/gallium')
-rw-r--r-- | src/gallium/drivers/radeonsi/r600_state_common.c | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/src/gallium/drivers/radeonsi/r600_state_common.c b/src/gallium/drivers/radeonsi/r600_state_common.c index 697dc30b287..05b7946512f 100644 --- a/src/gallium/drivers/radeonsi/r600_state_common.c +++ b/src/gallium/drivers/radeonsi/r600_state_common.c @@ -666,12 +666,7 @@ static void si_update_derived_state(struct r600_context *rctx) r600_flush_depth_textures(rctx); } - if (rctx->shader_dirty) { - si_pipe_shader_destroy(&rctx->context, rctx->vs_shader); - } - - if (rctx->shader_dirty || - (rctx->ps_shader->shader.fs_write_all && + if ((rctx->ps_shader->shader.fs_write_all && (rctx->ps_shader->shader.nr_cbufs != rctx->nr_cbufs)) || (rctx->sprite_coord_enable && (rctx->ps_shader->sprite_coord_enable != rctx->sprite_coord_enable))) { |