[Mesa-dev] [PATCH 1/8] i965: Consolidate code for setting brw->ib.start_vertex_offset.

Pohjolainen, Topi topi.pohjolainen at intel.com
Thu Mar 13 02:46:03 PDT 2014


On Thu, Mar 13, 2014 at 01:57:09AM -0700, Kenneth Graunke wrote:
> This was set identically in three places.
> 
> Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
> ---
>  src/mesa/drivers/dri/i965/brw_draw_upload.c | 15 ++++++---------
>  1 file changed, 6 insertions(+), 9 deletions(-)
> 
> This is just a series of tidying and commenting, for the most part.
> Patch 7 has an actual change.

Really nice work! The series:

Reviewed-by: Topi Pohjolainen <topi.pohjolainen at intel.com>

> 
> diff --git a/src/mesa/drivers/dri/i965/brw_draw_upload.c b/src/mesa/drivers/dri/i965/brw_draw_upload.c
> index d42c074..3c537a5 100644
> --- a/src/mesa/drivers/dri/i965/brw_draw_upload.c
> +++ b/src/mesa/drivers/dri/i965/brw_draw_upload.c
> @@ -841,12 +841,10 @@ static void brw_upload_indices(struct brw_context *brw)
>     /* Turn into a proper VBO:
>      */
>     if (!_mesa_is_bufferobj(bufferobj)) {
> -
>        /* Get new bufferobj, offset:
>         */
>        intel_upload_data(brw, index_buffer->ptr, ib_size, ib_type_size,
>  			&bo, &offset);
> -      brw->ib.start_vertex_offset = offset / ib_type_size;
>     } else {
>        offset = (GLuint) (unsigned long) index_buffer->ptr;
>  
> @@ -865,22 +863,21 @@ static void brw_upload_indices(struct brw_context *brw)
>                                                      MAP_INTERNAL);
>  
>            intel_upload_data(brw, map, ib_size, ib_type_size, &bo, &offset);
> -          brw->ib.start_vertex_offset = offset / ib_type_size;
>  
>            ctx->Driver.UnmapBuffer(ctx, bufferobj, MAP_INTERNAL);
>         } else {
> -	  /* Use CMD_3D_PRIM's start_vertex_offset to avoid re-uploading
> -	   * the index buffer state when we're just moving the start index
> -	   * of our drawing.
> -	   */
> -	  brw->ib.start_vertex_offset = offset / ib_type_size;
> -
>  	  bo = intel_bufferobj_buffer(brw, intel_buffer_object(bufferobj),
>  				      offset, ib_size);
>  	  drm_intel_bo_reference(bo);
>         }
>     }
>  
> +   /* Use 3DPRIMITIVE's start_vertex_offset to avoid re-uploading
> +    * the index buffer state when we're just moving the start index
> +    * of our drawing.
> +    */
> +   brw->ib.start_vertex_offset = offset / ib_type_size;
> +
>     if (brw->ib.bo != bo) {
>        drm_intel_bo_unreference(brw->ib.bo);
>        brw->ib.bo = bo;
> -- 
> 1.9.0
> 
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev


More information about the mesa-dev mailing list