[Mesa-dev] [PATCH 09/36] i965/blorp: Make sample count asserts a bit more lazy

Jason Ekstrand jason at jlekstrand.net
Thu Jun 30 13:57:39 UTC 2016


On Jun 29, 2016 11:07 PM, "Pohjolainen, Topi" <topi.pohjolainen at intel.com>
wrote:
>
> On Wed, Jun 29, 2016 at 05:37:28PM -0700, Jason Ekstrand wrote:
> > ---
> >  src/mesa/drivers/dri/i965/brw_blorp_blit.cpp | 10 +++++-----
> >  1 file changed, 5 insertions(+), 5 deletions(-)
>
> Could you add some rational here? In the next patch you still use
> MAX2(mt->num_samples, 1) and it looks that it at least should still work
> without this.

Over time, these will all get replaced with isl_surf.samples which are 1
for single sampled.  On the other hand, mt->num_samples is zero for
single-sampled.

> >
> > diff --git a/src/mesa/drivers/dri/i965/brw_blorp_blit.cpp
b/src/mesa/drivers/dri/i965/brw_blorp_blit.cpp
> > index 1e15bd5..257db06 100644
> > --- a/src/mesa/drivers/dri/i965/brw_blorp_blit.cpp
> > +++ b/src/mesa/drivers/dri/i965/brw_blorp_blit.cpp
> > @@ -1302,7 +1302,7 @@ brw_blorp_build_nir_shader(struct brw_context
*brw,
> >     nir_ssa_def *src_pos, *dst_pos, *color;
> >
> >     /* Sanity checks */
> > -   if (key->dst_tiled_w && key->rt_samples > 0) {
> > +   if (key->dst_tiled_w && key->rt_samples > 1) {
> >        /* If the destination image is W tiled and multisampled, then
the thread
> >         * must be dispatched once per sample, not once per pixel.  This
is
> >         * necessary because after conversion between W and Y tiling,
there's no
> > @@ -1333,13 +1333,13 @@ brw_blorp_build_nir_shader(struct brw_context
*brw,
> >
> >     /* Make sure layout is consistent with sample count */
> >     assert((key->tex_layout == INTEL_MSAA_LAYOUT_NONE) ==
> > -          (key->tex_samples == 0));
> > +          (key->tex_samples <= 1));
> >     assert((key->rt_layout == INTEL_MSAA_LAYOUT_NONE) ==
> > -          (key->rt_samples == 0));
> > +          (key->rt_samples <= 1));
> >     assert((key->src_layout == INTEL_MSAA_LAYOUT_NONE) ==
> > -          (key->src_samples == 0));
> > +          (key->src_samples <= 1));
> >     assert((key->dst_layout == INTEL_MSAA_LAYOUT_NONE) ==
> > -          (key->dst_samples == 0));
> > +          (key->dst_samples <= 1));
> >
> >     nir_builder b;
> >     nir_builder_init_simple_shader(&b, NULL, MESA_SHADER_FRAGMENT,
NULL);
> > --
> > 2.5.0.400.gff86faf
> >
> > _______________________________________________
> > mesa-dev mailing list
> > mesa-dev at lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/mesa-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20160630/da6ebec4/attachment.html>


More information about the mesa-dev mailing list