summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPauli Nieminen <[email protected]>2009-08-29 21:00:21 +0300
committerPauli Nieminen <[email protected]>2009-08-29 21:05:19 +0300
commit9c0ab1fa850fdbc8a64a29c1e996579dabc84bdc (patch)
tree8dfe1139a0a71955d2c84a17d47f4218e88c6142
parent32df8922a9eebf64f6bace532a21b305eacc4938 (diff)
r300: Swtcl prediction was still missing scissors.
All that state stuff should really be in state atoms :/
-rw-r--r--src/mesa/drivers/dri/r300/r300_swtcl.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/mesa/drivers/dri/r300/r300_swtcl.c b/src/mesa/drivers/dri/r300/r300_swtcl.c
index 45dfbf26e6a..b3793e28d58 100644
--- a/src/mesa/drivers/dri/r300/r300_swtcl.c
+++ b/src/mesa/drivers/dri/r300/r300_swtcl.c
@@ -249,10 +249,11 @@ static void r300_predict_emit_size( r300ContextPtr rmesa )
const int prim_size = 3;
const int cache_flush_size = 4;
const int pre_emit_state = 4;
+ const int scissor_size = 3;
const int state_size = radeonCountStateEmitSize(&rmesa->radeon);
if (rcommonEnsureCmdBufSpace(&rmesa->radeon,
- state_size + pre_emit_state
+ state_size + pre_emit_state + scissor_size
+ vertex_size + prim_size + cache_flush_size * 2,
__FUNCTION__))
rmesa->radeon.swtcl.emit_prediction = radeonCountStateEmitSize(&rmesa->radeon);
@@ -260,7 +261,7 @@ static void r300_predict_emit_size( r300ContextPtr rmesa )
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 + pre_emit_state;
+ + vertex_size + scissor_size + prim_size + cache_flush_size * 2 + pre_emit_state;
}
}