i965/meta_util: Only modify the input parameters in get_fast_clear_rect
We had another inline copy of brw_meta_get_buffer_rect embedded in get_fast_clear_rect for no good reason. This lets us get rid of the gl_frameuffer parameter to get_fast_clear_rect. Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
This commit is contained in:
@@ -172,7 +172,7 @@ do_single_blorp_clear(struct brw_context *brw, struct gl_framebuffer *fb,
|
||||
memset(¶ms.wm_inputs, 0xff, 4*sizeof(float));
|
||||
params.fast_clear_op = GEN7_PS_RENDER_TARGET_FAST_CLEAR_ENABLE;
|
||||
|
||||
brw_get_fast_clear_rect(brw, fb, irb->mt, ¶ms.x0, ¶ms.y0,
|
||||
brw_get_fast_clear_rect(brw, irb->mt, ¶ms.x0, ¶ms.y0,
|
||||
¶ms.x1, ¶ms.y1);
|
||||
}
|
||||
|
||||
|
@@ -441,9 +441,11 @@ brw_meta_set_fast_clear_color(struct brw_context *brw,
|
||||
return updated;
|
||||
}
|
||||
|
||||
/* The x0, y0, x1, and y1 parameters must already be populated with the render
|
||||
* area of the framebuffer to be cleared.
|
||||
*/
|
||||
void
|
||||
brw_get_fast_clear_rect(const struct brw_context *brw,
|
||||
const struct gl_framebuffer *fb,
|
||||
const struct intel_mipmap_tree* mt,
|
||||
unsigned *x0, unsigned *y0,
|
||||
unsigned *x1, unsigned *y1)
|
||||
@@ -552,16 +554,6 @@ brw_get_fast_clear_rect(const struct brw_context *brw,
|
||||
y_align = y_scaledown * 2;
|
||||
}
|
||||
|
||||
*x0 = fb->_Xmin;
|
||||
*x1 = fb->_Xmax;
|
||||
if (fb->Name != 0) {
|
||||
*y0 = fb->_Ymin;
|
||||
*y1 = fb->_Ymax;
|
||||
} else {
|
||||
*y0 = fb->Height - fb->_Ymax;
|
||||
*y1 = fb->Height - fb->_Ymin;
|
||||
}
|
||||
|
||||
*x0 = ROUND_DOWN_TO(*x0, x_align) / x_scaledown;
|
||||
*y0 = ROUND_DOWN_TO(*y0, y_align) / y_scaledown;
|
||||
*x1 = ALIGN(*x1, x_align) / x_scaledown;
|
||||
|
@@ -44,7 +44,6 @@ brw_meta_mirror_clip_and_scissor(const struct gl_context *ctx,
|
||||
|
||||
void
|
||||
brw_get_fast_clear_rect(const struct brw_context *brw,
|
||||
const struct gl_framebuffer *fb,
|
||||
const struct intel_mipmap_tree* mt,
|
||||
unsigned *x0, unsigned *y0,
|
||||
unsigned *x1, unsigned *y1);
|
||||
|
Reference in New Issue
Block a user