i965: clip: Modify brw_clip_interp_vertex() to use the VUE map.
authorPaul Berry <stereotype441@gmail.com>
Thu, 25 Aug 2011 17:42:29 +0000 (10:42 -0700)
committerPaul Berry <stereotype441@gmail.com>
Tue, 6 Sep 2011 18:05:20 +0000 (11:05 -0700)
Reviewed-by: Eric Anholt <eric@anholt.net>
src/mesa/drivers/dri/i965/brw_clip_util.c

index 8cbb2ff886aa3e551d78e82c9be992ecbc3f701e..0342aa53dbde2bb0d6e853a0785be49cca23a6df 100644 (file)
@@ -152,7 +152,7 @@ void brw_clip_interp_vertex( struct brw_clip_compile *c,
    /* Iterate over each attribute (could be done in pairs?)
     */
    for (i = 0; i < c->nr_attrs; i++) {
-      GLuint delta = c->offset[c->idx_to_attr[i]];
+      GLuint delta = ATTR_SIZE * (2*c->header_regs + i);
 
       if (c->idx_to_attr[i] == VERT_RESULT_EDGE) {
         if (force_edgeflag) 
@@ -183,7 +183,7 @@ void brw_clip_interp_vertex( struct brw_clip_compile *c,
    }
 
    if (i & 1) {
-      GLuint delta = c->offset[c->idx_to_attr[c->nr_attrs - 1]] + ATTR_SIZE;
+      GLuint delta = c->vue_map.num_slots * ATTR_SIZE;
 
       brw_MOV(p, deref_4f(dest_ptr, delta), brw_imm_f(0));
    }