mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-24 19:40:10 +01:00
i965: SF: Change calculate_masks to use the VUE map.
Previously, SF code used the idx_to_attr[] array to compute the location of entries in the VUE map. This array didn't properly account for gl_PointSize. Now we use the VUE map directly. Reviewed-by: Eric Anholt <eric@anholt.net>
This commit is contained in:
parent
aafe2cdf86
commit
84e7d04e1d
1 changed files with 4 additions and 4 deletions
|
|
@ -350,10 +350,10 @@ static GLboolean calculate_masks( struct brw_sf_compile *c,
|
|||
*pc_linear = 0;
|
||||
*pc = 0xf;
|
||||
|
||||
if (persp_mask & BITFIELD64_BIT(c->idx_to_attr[reg*2]))
|
||||
if (persp_mask & BITFIELD64_BIT(vert_reg_to_vert_result(c, reg, 0)))
|
||||
*pc_persp = 0xf;
|
||||
|
||||
if (linear_mask & BITFIELD64_BIT(c->idx_to_attr[reg*2]))
|
||||
if (linear_mask & BITFIELD64_BIT(vert_reg_to_vert_result(c, reg, 0)))
|
||||
*pc_linear = 0xf;
|
||||
|
||||
/* Maybe only processs one attribute on the final round:
|
||||
|
|
@ -361,10 +361,10 @@ static GLboolean calculate_masks( struct brw_sf_compile *c,
|
|||
if (reg*2+1 < c->nr_setup_attrs) {
|
||||
*pc |= 0xf0;
|
||||
|
||||
if (persp_mask & BITFIELD64_BIT(c->idx_to_attr[reg*2+1]))
|
||||
if (persp_mask & BITFIELD64_BIT(vert_reg_to_vert_result(c, reg, 1)))
|
||||
*pc_persp |= 0xf0;
|
||||
|
||||
if (linear_mask & BITFIELD64_BIT(c->idx_to_attr[reg*2+1]))
|
||||
if (linear_mask & BITFIELD64_BIT(vert_reg_to_vert_result(c, reg, 1)))
|
||||
*pc_linear |= 0xf0;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue