mesa/st: handle vert_attrib_mask in nir case too

Note, actually fixes 9987a072cb, but the problems don't show up until
19a91841c3.

Fixes: 19a91841c3 st/mesa: Use Array._DrawVAO in st_atom_array.c.
Fixes: 9987a072cb st/mesa: Make the input_to_index array available.
Signed-off-by: Rob Clark <robdclark@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Mathias Fröhlich <mathias.froehlich@web.de>
This commit is contained in:
Rob Clark 2018-05-15 14:29:46 -04:00
parent 3e27b377f2
commit d89f58a6b8

View file

@ -634,13 +634,6 @@ st_create_vp_variant(struct st_context *st,
fprintf(stderr, "mesa: cannot emulate deprecated features\n");
}
for (unsigned index = 0; index < vpv->num_inputs; ++index) {
unsigned attr = stvp->index_to_input[index];
if (attr == ST_DOUBLE_ATTRIB_PLACEHOLDER)
continue;
vpv->vert_attrib_mask |= 1u << attr;
}
if (ST_DEBUG & DEBUG_TGSI) {
tgsi_dump(vpv->tgsi.tokens, 0);
debug_printf("\n");
@ -672,6 +665,13 @@ st_get_vp_variant(struct st_context *st,
/* create now */
vpv = st_create_vp_variant(st, stvp, key);
if (vpv) {
for (unsigned index = 0; index < vpv->num_inputs; ++index) {
unsigned attr = stvp->index_to_input[index];
if (attr == ST_DOUBLE_ATTRIB_PLACEHOLDER)
continue;
vpv->vert_attrib_mask |= 1u << attr;
}
/* insert into list */
vpv->next = stvp->variants;
stvp->variants = vpv;