mesa/st: remove has_multi_draw_indirect from st_context

has_multi_draw_indirect is a direct copy of
screen->caps.multi_draw_indirect.
Read the cap from the screen directly at each call site.

Reviewed-by: Marek Olšák <maraeo@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41184>
This commit is contained in:
Vishnu Vardan 2026-04-25 22:22:21 -04:00 committed by Marge Bot
parent 3b092a7950
commit ec13dc4a38
3 changed files with 2 additions and 5 deletions

View file

@ -583,8 +583,6 @@ st_create_context_priv(struct gl_context *ctx, struct pipe_context *pipe,
PIPE_QUIRK_TEXTURE_BORDER_COLOR_SWIZZLE_ALPHA_NOT_W);
ctx->Const.GLSLHasHalfFloatPacking =
screen->caps.shader_pack_half_float;
st->has_multi_draw_indirect =
screen->caps.multi_draw_indirect;
st->has_indirect_partial_stride =
screen->caps.multi_draw_indirect_partial_stride;
st->has_occlusion_query =

View file

@ -159,7 +159,6 @@ struct st_context
bool force_compute_based_texture_transfer;
bool force_specialized_compute_transfer;
bool force_persample_in_shader;
bool has_multi_draw_indirect;
bool has_indirect_partial_stride;
bool has_occlusion_query;
bool has_single_pipe_stat;

View file

@ -179,7 +179,7 @@ st_indirect_draw_vbo(struct gl_context *ctx,
break;
}
assert(st->has_multi_draw_indirect || !indirect_draw_count);
assert(st->screen->caps.multi_draw_indirect || !indirect_draw_count);
if (info.index_size) {
struct gl_buffer_object *bufobj = ctx->Array.VAO->IndexBufferObj;
@ -208,7 +208,7 @@ st_indirect_draw_vbo(struct gl_context *ctx,
if (!indirect.buffer)
return;
if (!st->has_multi_draw_indirect) {
if (!st->screen->caps.multi_draw_indirect) {
int i;
indirect.draw_count = 1;