Revert "i965: Make the miptree clear color setter take a gl_color_union"

This reverts commit 1d94aa1987.

The next patch will make depth miptrees use the clear color setter that
was originally being used for color miptrees. Go back to using the
isl_color_value parameter because it's the same type as the
fast_clear_color field used by color and depth miptrees.

Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
This commit is contained in:
Nanley Chery 2018-04-27 12:27:07 -07:00
parent bb18af82c3
commit 92a0a87b6f
3 changed files with 6 additions and 7 deletions

View file

@ -1225,9 +1225,12 @@ 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, &ctx->Color.ClearColor);
!intel_miptree_set_clear_color(brw, irb->mt, clear_color);
/* If the buffer is already in INTEL_FAST_CLEAR_STATE_CLEAR, the clear
* is redundant and can be skipped.

View file

@ -36,7 +36,6 @@
#include "brw_blorp.h"
#include "brw_context.h"
#include "brw_meta_util.h"
#include "brw_state.h"
#include "main/enums.h"
@ -3725,11 +3724,8 @@ get_isl_dim_layout(const struct gen_device_info *devinfo,
bool
intel_miptree_set_clear_color(struct brw_context *brw,
struct intel_mipmap_tree *mt,
const union gl_color_union *color)
union isl_color_value clear_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;

View file

@ -706,7 +706,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,
const union gl_color_union *color);
union isl_color_value clear_color);
/* Get a clear color suitable for filling out an ISL surface state. */
union isl_color_value