summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/r300/r300_emit.c
diff options
context:
space:
mode:
authorMarek Olšák <maraeo@gmail.com>2011-04-05 17:57:02 +0200
committerMarek Olšák <maraeo@gmail.com>2011-04-05 19:25:25 +0200
commit4af3fe857dc07923af8786b434dee32d493b577e (patch)
treed1189d0cabb55b1fccceea76825983d4dd136892 /src/gallium/drivers/r300/r300_emit.c
parentd8361400b76dde6fb63df6c363b7dd59c5946e09 (diff)
downloadexternal_mesa3d-4af3fe857dc07923af8786b434dee32d493b577e.zip
external_mesa3d-4af3fe857dc07923af8786b434dee32d493b577e.tar.gz
external_mesa3d-4af3fe857dc07923af8786b434dee32d493b577e.tar.bz2
r300g: postpone fragment shader state validation until draw_vbo
Diffstat (limited to 'src/gallium/drivers/r300/r300_emit.c')
-rw-r--r--src/gallium/drivers/r300/r300_emit.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/gallium/drivers/r300/r300_emit.c b/src/gallium/drivers/r300/r300_emit.c
index 3b79b36..6b91f93 100644
--- a/src/gallium/drivers/r300/r300_emit.c
+++ b/src/gallium/drivers/r300/r300_emit.c
@@ -387,8 +387,7 @@ void r300_emit_fb_state(struct r300_context* r300, unsigned size, void* state)
if (r300->screen->caps.is_r500) {
rb3d_cctl = R300_RB3D_CCTL_INDEPENDENT_COLORFORMAT_ENABLE_ENABLE;
}
- if (fb->nr_cbufs &&
- r300_fragment_shader_writes_all(r300_fs(r300))) {
+ if (fb->nr_cbufs && r300->fb_multiwrite) {
rb3d_cctl |= R300_RB3D_CCTL_NUM_MULTIWRITES(fb->nr_cbufs);
}
@@ -483,7 +482,7 @@ void r300_emit_fb_state_pipelined(struct r300_context *r300,
/* If we use the multiwrite feature, the colorbuffers 2,3,4 must be
* marked as UNUSED in the US block. */
- if (r300_fragment_shader_writes_all(r300_fs(r300))) {
+ if (r300->fb_multiwrite) {
num_cbufs = MIN2(num_cbufs, 1);
}