I made a small smattering of comments.  With those resolved, the series is

Reviewed-by: Jason Ekstrand <ja...@jlekstrand.net>

I really like the way it all came together in the end.  Patch 13 was one I
didn't expect to like but when I saw it, it completely changed my mind.
That seems like exactly the right way to do this.

--Jason

On Thu, May 3, 2018 at 12:03 PM, Nanley Chery <nanleych...@gmail.com> wrote:

> My main motivation for this series is to avoid one type of redundant
> fast-clears for color buffers (patch 15). In doing so, I take
> opportunities to improve the maintainability and performance of the
> affected code along the way.
>
> * Fix bugs that this series depends on for correct behavior (1-2).
> * Efficient updates to the indirect clear color requires correctly
>   tracking the clear color on the CPU. For correctness, make the initial
>   indirect clear color match the CPU-side one (3-4).
> * We've been modifying code related to aux buffer allocation thus far.
>   Take this opportunity to remove duplicated code (5-9).
> * Move the code to update the indirect depth clear color to a unified
>   location to enable the same optimization of skipping an already
>   cleared buffer (regardless of the new value) for color buffers (10-13).
> * We've been modifying depth clear code thus far. Take this opportunity
>   to delete a stale comment we found here (14).
> * Now that we correctly track the indirect clear color and updated it as
>   needed, enable the optimization of skipping a fast-clear on an already
>   cleared color buffer, even if the clear color differs from the current
>   one (15).
> * Now that we update the indirect clear color in the clear color setter,
>   avoid the redundant updates done by BLORP (16-17).
>
> -Nanley
>
> Nanley Chery (17):
>   i965/miptree: Fix handling of uninitialized MCS buffers
>   i965/miptree: Zero-initialize CCS_D buffers
>   i965/miptree: Move init_mcs into alloc_aux_buffer
>   i965/miptree: Initialize the indirect clear color to zero
>   i965/miptree: Drop the name param from alloc_aux_buffer
>   i965/miptree: Drop the alloc_flags param from alloc_aux_buffer
>   i965/miptree: Drop the mt param from alloc_aux_buffer
>   i965: Prepare to delete intel_miptree_alloc_ccs()
>   i965/miptree: Unify aux buffer allocation
>   Revert "i965: Make the miptree clear color setter take a
>     gl_color_union"
>   i965: Use set_clear_color for depth miptrees
>   i965/clear: Remove an early return in fast_clear_depth
>   i965: Update the indirect buffer in set_clear_color
>   i965/clear: Drop a stale comment in fast_clear_depth
>   i965/blorp: Also skip the fast clear if the clear color differs
>   intel/blorp: Add a NO_UPDATE_CLEAR_COLOR batch flag
>   i965/blorp: Disable BLORP clear color updates
>
>  src/intel/blorp/blorp.h                       |   5 +
>  src/intel/blorp/blorp_genX_exec.h             |   6 +-
>  src/mesa/drivers/dri/i965/brw_blorp.c         |  18 +-
>  src/mesa/drivers/dri/i965/brw_clear.c         |  49 +---
>  src/mesa/drivers/dri/i965/intel_mipmap_tree.c | 362
> +++++++++++---------------
>  src/mesa/drivers/dri/i965/intel_mipmap_tree.h |  18 +-
>  6 files changed, 181 insertions(+), 277 deletions(-)
>
> --
> 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

Reply via email to