[Mesa-dev] [PATCH] i965/blorp: Use the renderbuffer format for clears

Jason Ekstrand jason at jlekstrand.net
Tue Jul 11 00:09:31 UTC 2017


On Mon, Jul 10, 2017 at 1:34 PM, Andres Gomez <agomez at igalia.com> wrote:

> Jason, which is the status of this patch? Has it been superseded or
> discarded?
>

Still awaiting review.


> On Mon, 2017-06-26 at 09:01 -0700, Jason Ekstrand wrote:
> > This fixes the Piglit ARB_texture_views rendering-formats test.
> >
> > Cc: "17.1" <mesa-stable at lists.freedesktop.org>
> > ---
> >  src/mesa/drivers/dri/i965/brw_blorp.c | 10 +++++++++-
> >  1 file changed, 9 insertions(+), 1 deletion(-)
> >
> > diff --git a/src/mesa/drivers/dri/i965/brw_blorp.c
> b/src/mesa/drivers/dri/i965/brw_blorp.c
> > index 87c9dd4..96dc657 100644
> > --- a/src/mesa/drivers/dri/i965/brw_blorp.c
> > +++ b/src/mesa/drivers/dri/i965/brw_blorp.c
> > @@ -746,9 +746,9 @@ do_single_blorp_clear(struct brw_context *brw,
> struct gl_framebuffer *fb,
> >  {
> >     struct gl_context *ctx = &brw->ctx;
> >     struct intel_renderbuffer *irb = intel_renderbuffer(rb);
> > -   mesa_format format = irb->mt->format;
> >     uint32_t x0, x1, y0, y1;
> >
> > +   mesa_format format = irb->Base.Base.Format;
> >     if (!encode_srgb && _mesa_get_format_color_encoding(format) ==
> GL_SRGB)
> >        format = _mesa_get_srgb_format_linear(format);
> >
> > @@ -772,6 +772,14 @@ do_single_blorp_clear(struct brw_context *brw,
> struct gl_framebuffer *fb,
> >     if (set_write_disables(irb, ctx->Color.ColorMask[buf],
> color_write_disable))
> >        can_fast_clear = false;
> >
> > +   /* We store clear colors as floats or uints as needed.  If there are
> > +    * texture views in play, the formats will not properly be respected
> > +    * during resolves because the resolve operations only know about the
> > +    * miptree and not the renderbuffer.
> > +    */
> > +   if (irb->Base.Base.Format != irb->mt->format)
> > +      can_fast_clear = false;
> > +
> >     if (!irb->mt->supports_fast_clear ||
> >         !brw_is_color_fast_clear_compatible(brw, irb->mt,
> &ctx->Color.ClearColor))
> >        can_fast_clear = false;
> --
> Br,
>
> Andres
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20170710/1616ba85/attachment.html>


More information about the mesa-dev mailing list