else
delta = REG_SIZE;
- /* XXX: c.nr_attrs is very redundant:
- */
- c.nr_attrs = c.key.nr_attrs;
-
c.offset_hpos = delta + c.key.output_hpos * ATTR_SIZE;
if (c.key.output_color0)
c.offset_edgeflag = delta + c.key.output_edgeflag * ATTR_SIZE;
if (BRW_IS_IGDNG(brw))
- c.nr_regs = (c.nr_attrs + 1) / 2 + 3; /* are vertices packed, or reg-aligned? */
+ c.nr_regs = (c.key.nr_attrs + 1) / 2 + 3; /* are vertices packed, or reg-aligned? */
else
- c.nr_regs = (c.nr_attrs + 1) / 2 + 1; /* are vertices packed, or reg-aligned? */
+ c.nr_regs = (c.key.nr_attrs + 1) / 2 + 1; /* are vertices packed, or reg-aligned? */
c.nr_bytes = c.nr_regs * REG_SIZE;
struct brw_reg ff_sync;
} reg;
- /* 3 different ways of expressing vertex size:
+ /* 3 different ways of expressing vertex size, including
+ * key.nr_attrs.
*/
- GLuint nr_attrs;
GLuint nr_regs;
GLuint nr_bytes;
i += c->nr_regs;
}
- if (c->nr_attrs & 1) {
+ if (c->key.nr_attrs & 1) {
for (j = 0; j < 3; j++) {
- GLuint delta = c->nr_attrs*16 + 32;
+ GLuint delta = c->key.nr_attrs*16 + 32;
if (c->chipset.is_igdng)
- delta = c->nr_attrs * 16 + 32 * 3;
+ delta = c->key.nr_attrs * 16 + 32 * 3;
brw_MOV(&c->func, byte_offset(c->reg.vertex[j], delta), brw_imm_f(0));
}
/* Iterate over each attribute (could be done in pairs?)
*/
- for (i = 0; i < c->nr_attrs; i++) {
+ for (i = 0; i < c->key.nr_attrs; i++) {
GLuint delta = i*16 + 32;
if (c->chipset.is_igdng)