From fdd31298d3059ce31a836854615c5bd1ffa00de5 Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Thu, 9 Dec 2021 13:41:42 +1000 Subject: [PATCH] bufferobj: cleanup subdata copies MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This moves the common dst min/max invalidation and renames to be a bit more consistent Reviewed-by: Marek Olšák Part-of: --- src/mesa/main/bufferobj.c | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/src/mesa/main/bufferobj.c b/src/mesa/main/bufferobj.c index cd387a61a7b..5bd72fa9de1 100644 --- a/src/mesa/main/bufferobj.c +++ b/src/mesa/main/bufferobj.c @@ -554,7 +554,7 @@ _mesa_bufferobj_unmap(struct gl_context *ctx, struct gl_buffer_object *obj, * Called via glCopyBufferSubData(). */ static void -copy_buffer_subdata(struct gl_context *ctx, +bufferobj_copy_subdata(struct gl_context *ctx, struct gl_buffer_object *src, struct gl_buffer_object *dst, GLintptr readOffset, GLintptr writeOffset, @@ -563,6 +563,7 @@ copy_buffer_subdata(struct gl_context *ctx, struct pipe_context *pipe = ctx->pipe; struct pipe_box box; + dst->MinMaxCacheDirty = true; if (!size) return; @@ -3460,9 +3461,7 @@ copy_buffer_sub_data(struct gl_context *ctx, struct gl_buffer_object *src, } } - dst->MinMaxCacheDirty = true; - - copy_buffer_subdata(ctx, src, dst, readOffset, writeOffset, size); + bufferobj_copy_subdata(ctx, src, dst, readOffset, writeOffset, size); } void GLAPIENTRY @@ -3478,8 +3477,7 @@ _mesa_CopyBufferSubData_no_error(GLenum readTarget, GLenum writeTarget, struct gl_buffer_object **dst_ptr = get_buffer_target(ctx, writeTarget); struct gl_buffer_object *dst = *dst_ptr; - dst->MinMaxCacheDirty = true; - copy_buffer_subdata(ctx, src, dst, readOffset, writeOffset, + bufferobj_copy_subdata(ctx, src, dst, readOffset, writeOffset, size); } @@ -3539,8 +3537,7 @@ _mesa_CopyNamedBufferSubData_no_error(GLuint readBuffer, GLuint writeBuffer, struct gl_buffer_object *src = _mesa_lookup_bufferobj(ctx, readBuffer); struct gl_buffer_object *dst = _mesa_lookup_bufferobj(ctx, writeBuffer); - dst->MinMaxCacheDirty = true; - copy_buffer_subdata(ctx, src, dst, readOffset, writeOffset, + bufferobj_copy_subdata(ctx, src, dst, readOffset, writeOffset, size); } @@ -3599,8 +3596,7 @@ _mesa_InternalBufferSubDataCopyMESA(GLintptr srcBuffer, GLuint srcOffset, if (!validate_buffer_sub_data(ctx, dst, dstOffset, size, func)) goto done; /* the error is already set */ - dst->MinMaxCacheDirty = true; - copy_buffer_subdata(ctx, src, dst, srcOffset, dstOffset, size); + bufferobj_copy_subdata(ctx, src, dst, srcOffset, dstOffset, size); done: /* The caller passes the reference to this function, so unreference it. */