summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaciej Cencora <m.cencora@gmail.com>2009-09-27 22:20:41 +0200
committerMaciej Cencora <m.cencora@gmail.com>2009-09-27 22:44:28 +0200
commitbedc6b7bdff40156b66cb2473c47512e5c95bdab (patch)
tree17880f8a2e8a5c58d766369fb415e1b106c1085a
parent8c8b77a5f3ec1dac0bddc98da3ccbb64f58f22e0 (diff)
r300g: add some assertions
Not sure why we are getting a shader with two inputs with position semantic, but we don't know how to handle it correctly so it's better to stop the app than lock the machine.
-rw-r--r--src/gallium/drivers/r300/r300_state_derived.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/gallium/drivers/r300/r300_state_derived.c b/src/gallium/drivers/r300/r300_state_derived.c
index 2bbbcdfd9c..083861a071 100644
--- a/src/gallium/drivers/r300/r300_state_derived.c
+++ b/src/gallium/drivers/r300/r300_state_derived.c
@@ -55,6 +55,7 @@ static void r300_vs_tab_routes(struct r300_context* r300,
for (i = 0; i < info->num_inputs; i++) {
switch (info->input_semantic_name[i]) {
case TGSI_SEMANTIC_POSITION:
+ assert(pos == FALSE);
pos = TRUE;
tab[i] = 0;
break;
@@ -63,10 +64,12 @@ static void r300_vs_tab_routes(struct r300_context* r300,
cols++;
break;
case TGSI_SEMANTIC_PSIZE:
+ assert(psize == FALSE);
psize = TRUE;
tab[i] = 15;
break;
case TGSI_SEMANTIC_FOG:
+ assert(fog == FALSE);
fog = TRUE;
/* Fall through */
case TGSI_SEMANTIC_GENERIC: