Mesa (master): r300-gallium: Ensure that no dirty state goes unemitted.
Corbin Simpson
csimpson at kemper.freedesktop.org
Sat Jun 27 04:33:19 UTC 2009
Module: Mesa
Branch: master
Commit: f80b7f46835f42065d2489f2e1f501187ee026b6
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=f80b7f46835f42065d2489f2e1f501187ee026b6
Author: Corbin Simpson <MostAwesomeDude at gmail.com>
Date: Mon Jun 8 23:52:43 2009 -0700
r300-gallium: Ensure that no dirty state goes unemitted.
---
src/gallium/drivers/r300/r300_emit.c | 6 ++++--
1 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/src/gallium/drivers/r300/r300_emit.c b/src/gallium/drivers/r300/r300_emit.c
index 1d297e8..1cf6ec2 100644
--- a/src/gallium/drivers/r300/r300_emit.c
+++ b/src/gallium/drivers/r300/r300_emit.c
@@ -597,10 +597,10 @@ validate:
for (i = 0; i < r300->sampler_count; i++) {
if (r300->dirty_state & (R300_NEW_SAMPLER << i)) {
r300_emit_sampler(r300, r300->sampler_states[i], i);
- r300->dirty_state &= ~(R300_NEW_SAMPLER << i);
dirty_tex++;
}
}
+ r300->dirty_state &= ~R300_ANY_NEW_SAMPLERS;
}
if (r300->dirty_state & R300_NEW_SCISSOR) {
@@ -612,10 +612,10 @@ validate:
for (i = 0; i < r300->texture_count; i++) {
if (r300->dirty_state & (R300_NEW_TEXTURE << i)) {
r300_emit_texture(r300, r300->textures[i], i);
- r300->dirty_state &= ~(R300_NEW_TEXTURE << i);
dirty_tex++;
}
}
+ r300->dirty_state &= ~R300_ANY_NEW_TEXTURES;
}
if (r300->dirty_state & R300_NEW_VIEWPORT) {
@@ -637,6 +637,8 @@ validate:
r300->dirty_state &= ~R300_NEW_VERTEX_SHADER;
}
+ assert(r300->dirty_state == 0);
+
/* Finally, emit the VBO. */
r300_emit_vertex_buffer(r300);
More information about the mesa-commit
mailing list