[Mesa-dev] [PATCH 03/14] i965: Make the miptree clear color setter take a gl_color_union
Pohjolainen, Topi
topi.pohjolainen at gmail.com
Tue Apr 3 16:21:50 UTC 2018
On Fri, Mar 30, 2018 at 11:12:16AM -0700, Nanley Chery wrote:
> We want to hide the internal details of how the miptree's clear color
> is calculated.
Patches 1-3:
Reviewed-by: Topi Pohjolainen <topi.pohjolainen at intel.com>
> ---
> src/mesa/drivers/dri/i965/brw_blorp.c | 5 +----
> src/mesa/drivers/dri/i965/intel_mipmap_tree.c | 6 +++++-
> src/mesa/drivers/dri/i965/intel_mipmap_tree.h | 2 +-
> 3 files changed, 7 insertions(+), 6 deletions(-)
>
> diff --git a/src/mesa/drivers/dri/i965/brw_blorp.c b/src/mesa/drivers/dri/i965/brw_blorp.c
> index f5a653fff97..6ab5267ddea 100644
> --- a/src/mesa/drivers/dri/i965/brw_blorp.c
> +++ b/src/mesa/drivers/dri/i965/brw_blorp.c
> @@ -1236,12 +1236,9 @@ do_single_blorp_clear(struct brw_context *brw, struct gl_framebuffer *fb,
> if (can_fast_clear) {
> const enum isl_aux_state aux_state =
> intel_miptree_get_aux_state(irb->mt, irb->mt_level, irb->mt_layer);
> - union isl_color_value clear_color =
> - brw_meta_convert_fast_clear_color(brw, irb->mt,
> - &ctx->Color.ClearColor);
>
> bool same_clear_color =
> - !intel_miptree_set_clear_color(brw, irb->mt, clear_color);
> + !intel_miptree_set_clear_color(brw, irb->mt, &ctx->Color.ClearColor);
>
> /* If the buffer is already in INTEL_FAST_CLEAR_STATE_CLEAR, the clear
> * is redundant and can be skipped.
> diff --git a/src/mesa/drivers/dri/i965/intel_mipmap_tree.c b/src/mesa/drivers/dri/i965/intel_mipmap_tree.c
> index 163accf023b..7aa0e7920d3 100644
> --- a/src/mesa/drivers/dri/i965/intel_mipmap_tree.c
> +++ b/src/mesa/drivers/dri/i965/intel_mipmap_tree.c
> @@ -36,6 +36,7 @@
>
> #include "brw_blorp.h"
> #include "brw_context.h"
> +#include "brw_meta_util.h"
> #include "brw_state.h"
>
> #include "main/enums.h"
> @@ -3774,8 +3775,11 @@ intel_miptree_get_aux_isl_usage(const struct brw_context *brw,
> bool
> intel_miptree_set_clear_color(struct brw_context *brw,
> struct intel_mipmap_tree *mt,
> - union isl_color_value clear_color)
> + const union gl_color_union *color)
> {
> + const union isl_color_value clear_color =
> + brw_meta_convert_fast_clear_color(brw, mt, color);
> +
> if (memcmp(&mt->fast_clear_color, &clear_color, sizeof(clear_color)) != 0) {
> mt->fast_clear_color = clear_color;
> brw->ctx.NewDriverState |= BRW_NEW_AUX_STATE;
> diff --git a/src/mesa/drivers/dri/i965/intel_mipmap_tree.h b/src/mesa/drivers/dri/i965/intel_mipmap_tree.h
> index 600296904ba..961f8fe812e 100644
> --- a/src/mesa/drivers/dri/i965/intel_mipmap_tree.h
> +++ b/src/mesa/drivers/dri/i965/intel_mipmap_tree.h
> @@ -718,7 +718,7 @@ intel_miptree_sample_with_hiz(struct brw_context *brw,
> bool
> intel_miptree_set_clear_color(struct brw_context *brw,
> struct intel_mipmap_tree *mt,
> - union isl_color_value clear_color);
> + const union gl_color_union *color);
>
> bool
> intel_miptree_set_depth_clear_value(struct brw_context *brw,
> --
> 2.16.2
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
More information about the mesa-dev
mailing list