summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/mesa/drivers/dri/r300/r300_swtcl.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/mesa/drivers/dri/r300/r300_swtcl.c b/src/mesa/drivers/dri/r300/r300_swtcl.c
index e4a56cadc6..45dfbf26e6 100644
--- a/src/mesa/drivers/dri/r300/r300_swtcl.c
+++ b/src/mesa/drivers/dri/r300/r300_swtcl.c
@@ -248,18 +248,19 @@ static void r300_predict_emit_size( r300ContextPtr rmesa )
const int vertex_size = 7;
const int prim_size = 3;
const int cache_flush_size = 4;
+ const int pre_emit_state = 4;
const int state_size = radeonCountStateEmitSize(&rmesa->radeon);
if (rcommonEnsureCmdBufSpace(&rmesa->radeon,
- state_size +
- + vertex_size + prim_size,
+ state_size + pre_emit_state
+ + vertex_size + prim_size + cache_flush_size * 2,
__FUNCTION__))
rmesa->radeon.swtcl.emit_prediction = radeonCountStateEmitSize(&rmesa->radeon);
else
rmesa->radeon.swtcl.emit_prediction = state_size;
rmesa->radeon.swtcl.emit_prediction += rmesa->radeon.cmdbuf.cs->cdw
- + vertex_size + prim_size + cache_flush_size * 2;
+ + vertex_size + prim_size + cache_flush_size * 2 + pre_emit_state;
}
}