summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/gallium/drivers/i965/brw_sf.c3
-rw-r--r--src/gallium/drivers/i965/brw_sf_emit.c2
2 files changed, 2 insertions, 3 deletions
diff --git a/src/gallium/drivers/i965/brw_sf.c b/src/gallium/drivers/i965/brw_sf.c
index a28fb71589f..e1986a9dbbd 100644
--- a/src/gallium/drivers/i965/brw_sf.c
+++ b/src/gallium/drivers/i965/brw_sf.c
@@ -153,10 +153,9 @@ static enum pipe_error upload_sf_prog(struct brw_context *brw)
case TGSI_INTERPOLATE_CONSTANT:
break;
case TGSI_INTERPOLATE_LINEAR:
- case TGSI_INTERPOLATE_PERSPECTIVE:
key.linear_attrs |= 1 << (i+1);
break;
-// case TGSI_INTERPOLATE_PERSPECTIVE:
+ case TGSI_INTERPOLATE_PERSPECTIVE:
key.persp_attrs |= 1 << (i+1);
break;
}
diff --git a/src/gallium/drivers/i965/brw_sf_emit.c b/src/gallium/drivers/i965/brw_sf_emit.c
index 2983e8a9dd4..3b85725e368 100644
--- a/src/gallium/drivers/i965/brw_sf_emit.c
+++ b/src/gallium/drivers/i965/brw_sf_emit.c
@@ -324,7 +324,7 @@ static GLboolean calculate_masks( struct brw_sf_compile *c,
{
GLboolean is_last_attr = (reg == c->nr_setup_regs - 1);
GLuint persp_mask = c->key.persp_attrs;
- GLuint linear_mask = c->key.linear_attrs;
+ GLuint linear_mask = (c->key.persp_attrs | c->key.linear_attrs);
*pc_persp = 0;
*pc_linear = 0;