On 25.04.19 13:18, Nicolai Hähnle wrote: > @@ -4618,21 +4648,27 @@ static void si_bind_vertex_elements(struct > pipe_context *ctx, void *state) > struct si_vertex_elements *old = sctx->vertex_elements; > struct si_vertex_elements *v = (struct si_vertex_elements*)state; > > sctx->vertex_elements = v; > sctx->vertex_buffers_dirty = true; > > if (v && > (!old || > old->count != v->count || > old->uses_instance_divisors != v->uses_instance_divisors || > - v->uses_instance_divisors || /* we don't check which divisors > changed */ > + /* we don't check which divisors changed */ > + v->uses_instance_divisors || > + /* fix_fetch_{always,opencode,unaligned} and hw_load_is_dword are > + * functions of fix_fetch and the src_offset alignment. > + * If they change and fix_fetch doesn't, it must be due to > different > + * src_offset alignment, which is reflected in fix_fetch_opencode. > */ > + old->fix_fetch_opencode != v->fix_fetch_opencode || > memcmp(old->fix_fetch, v->fix_fetch, sizeof(v->fix_fetch[0]) * > v->count)))
The following condition got dropped in a late cleanup that I was doing: > (old->vb_alignment_check_mask ^ v->vb_alignment_check_mask) & > sctx->vertex_buffer_unaligned || I've fixed that locally. Cheers, Nicolai _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev