radeonsi: Don't match TGSI_SEMANTIC_POSITION fs inputs to vs outputs
authorMichel Dänzer <michel.daenzer@amd.com>
Wed, 13 Feb 2013 15:07:15 +0000 (16:07 +0100)
committerMichel Dänzer <michel@daenzer.net>
Thu, 21 Feb 2013 09:07:18 +0000 (10:07 +0100)
src/gallium/drivers/radeonsi/si_state_draw.c

index 61dea74ac12c411a1335943960da7c46e79a07e3..f8460b0f823fff23cf1abc843ece0acf0b9e9b9e 100644 (file)
@@ -319,11 +319,14 @@ static void si_update_spi_map(struct r600_context *rctx)
                unsigned name = ps->input[i].name;
                unsigned param_offset = ps->input[i].param_offset;
 
+               if (name == TGSI_SEMANTIC_POSITION)
+                       /* Read from preloaded VGPRs, not parameters */
+                       continue;
+
 bcolor:
                tmp = 0;
 
-               if (name == TGSI_SEMANTIC_POSITION ||
-                   ps->input[i].interpolate == TGSI_INTERPOLATE_CONSTANT ||
+               if (ps->input[i].interpolate == TGSI_INTERPOLATE_CONSTANT ||
                    (ps->input[i].interpolate == TGSI_INTERPOLATE_COLOR &&
                     rctx->ps_shader->current->key.flatshade)) {
                        tmp |= S_028644_FLAT_SHADE(1);