r600g: don't lookup a vs semantic for position/face.
authorDave Airlie <airlied@redhat.com>
Wed, 25 May 2011 00:01:25 +0000 (10:01 +1000)
committerDave Airlie <airlied@redhat.com>
Wed, 25 May 2011 00:01:25 +0000 (10:01 +1000)
These don't need one, and I was seeing 0xff being returned and set in
the GPU registers with some tests.

Signed-off-by: Dave Airlie <airlied@redhat.com>
src/gallium/drivers/r600/r600_shader.c

index 845d41a..a27f495 100644 (file)
@@ -41,6 +41,10 @@ int r600_find_vs_semantic_index(struct r600_shader *vs,
 {
        struct r600_shader_io *input = &ps->input[id];
 
+       /* position/face doesn't get/need a semantic index */
+       if (input->name == TGSI_SEMANTIC_POSITION || input->name == TGSI_SEMANTIC_FACE)
+               return 0;
+
        for (int i = 0; i < vs->noutput; i++) {
                if (input->name == vs->output[i].name &&
                        input->sid == vs->output[i].sid) {