Re: [Mesa-dev] [PATCH 03/14] i965: Make the miptree clear color setter take a gl_color_union

2018-04-03 Thread Pohjolainen, Topi
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 

> ---
>  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,
> -   >Color.ClearColor);
>  
>bool same_clear_color =
> - !intel_miptree_set_clear_color(brw, irb->mt, clear_color);
> + !intel_miptree_set_clear_color(brw, irb->mt, 
> >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(>fast_clear_color, _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@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


[Mesa-dev] [PATCH 03/14] i965: Make the miptree clear color setter take a gl_color_union

2018-03-30 Thread Nanley Chery
We want to hide the internal details of how the miptree's clear color
is calculated.
---
 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,
-   >Color.ClearColor);
 
   bool same_clear_color =
- !intel_miptree_set_clear_color(brw, irb->mt, clear_color);
+ !intel_miptree_set_clear_color(brw, irb->mt, >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(>fast_clear_color, _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@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev