From 172c9a908f7d6405b41f5555f2a0087169ec83a3 Mon Sep 17 00:00:00 2001 From: Mathias Fröhlich Date: Sun, 1 Apr 2018 20:18:36 +0200 Subject: i965: Implement all_varyings_in_vbos in terms of Array._DrawVAO. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Reviewed-by: Brian Paul Signed-off-by: Mathias Fröhlich --- src/mesa/drivers/dri/i965/brw_draw.c | 17 ++--------------- 1 file changed, 2 insertions(+), 15 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_draw.c b/src/mesa/drivers/dri/i965/brw_draw.c index 25ba372c449..c5f04264fad 100644 --- a/src/mesa/drivers/dri/i965/brw_draw.c +++ b/src/mesa/drivers/dri/i965/brw_draw.c @@ -25,6 +25,7 @@ #include +#include "main/arrayobj.h" #include "main/blend.h" #include "main/context.h" #include "main/condrender.h" @@ -917,20 +918,6 @@ retry: } -static bool -all_varyings_in_vbos(const struct gl_vertex_array *arrays) -{ - GLuint i; - - for (i = 0; i < VERT_ATTRIB_MAX; i++) - if (arrays[i].BufferBinding->Stride && - arrays[i].BufferBinding->BufferObj->Name == 0) - return false; - - return true; -} - - void brw_draw_prims(struct gl_context *ctx, @@ -982,7 +969,7 @@ brw_draw_prims(struct gl_context *ctx, * get the minimum and maximum of their index buffer so we know what range * to upload. */ - if (!index_bounds_valid && !all_varyings_in_vbos(arrays)) { + if (!index_bounds_valid && _mesa_draw_user_array_bits(ctx) != 0) { perf_debug("Scanning index buffer to compute index buffer bounds. " "Use glDrawRangeElements() to avoid this.\n"); vbo_get_minmax_indices(ctx, prims, ib, &min_index, &max_index, nr_prims); -- cgit v1.2.3