gallium: add PIPE_CAP_ALLOW_DYNAMIC_VAO_FASTPATH

Fixes: 42842306d3 ("mesa,st/mesa: add a fast path for non-static VAOs")
Signed-off-by: Marcin Ślusarz <marcin.slusarz@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10175>
This commit is contained in:
Marcin Ślusarz 2021-03-08 12:30:58 +01:00 committed by Marge Bot
parent ceea05eaa7
commit 58cf2d82ca
3 changed files with 6 additions and 1 deletions

View file

@ -445,6 +445,9 @@ u_pipe_screen_get_param_defaults(struct pipe_screen *pscreen,
case PIPE_CAP_SHADER_ATOMIC_INT64:
return 0;
case PIPE_CAP_ALLOW_DYNAMIC_VAO_FASTPATH:
return 1;
default:
unreachable("bad PIPE_CAP_*");
}

View file

@ -977,6 +977,7 @@ enum pipe_cap
PIPE_CAP_SHADER_ATOMIC_INT64,
PIPE_CAP_DEVICE_PROTECTED_CONTENT,
PIPE_CAP_PREFER_REAL_BUFFER_IN_CONSTBUF0,
PIPE_CAP_ALLOW_DYNAMIC_VAO_FASTPATH,
};
/**

View file

@ -586,7 +586,8 @@ void st_init_limits(struct pipe_screen *screen,
screen->get_param(screen, PIPE_CAP_SIGNED_VERTEX_BUFFER_OFFSET);
c->MultiDrawWithUserIndices = true;
c->AllowDynamicVAOFastPath = true;
c->AllowDynamicVAOFastPath =
screen->get_param(screen, PIPE_CAP_ALLOW_DYNAMIC_VAO_FASTPATH);
c->glBeginEndBufferSize =
screen->get_param(screen, PIPE_CAP_GL_BEGIN_END_BUFFER_SIZE);