iris: Mark a dirty update when vs_needs_sgvs_element value changed

Add vs_needs_sgvs_element value check when updating vertex
element dirty state in iris_update_compiled_vs to solve
render error of Android game "Genshin Impact".

Signed-off-by: Xiaohui Gu <xiaohui.gu@intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15142>
This commit is contained in:
Xiaohui Gu 2021-10-25 13:58:03 +08:00 committed by Marge Bot
parent aaa25cda0b
commit 4d81c60e11

View file

@ -2830,7 +2830,8 @@ iris_bind_vs_state(struct pipe_context *ctx, void *state)
if (ice->state.vs_uses_draw_params != uses_draw_params ||
ice->state.vs_uses_derived_draw_params != uses_derived_draw_params ||
ice->state.vs_needs_edge_flag != info->vs.needs_edge_flag) {
ice->state.vs_needs_edge_flag != info->vs.needs_edge_flag ||
ice->state.vs_needs_sgvs_element != needs_sgvs_element) {
ice->state.dirty |= IRIS_DIRTY_VERTEX_BUFFERS |
IRIS_DIRTY_VERTEX_ELEMENTS;
}