[Mesa-dev] [Mesa-stable] [PATCH] nir: copy front interpolation when creating fake back color input
Andres Gomez
agomez at igalia.com
Mon Jul 10 17:48:09 UTC 2017
I'll leave it out, then.
Thanks for the feedback! ☺
On Mon, 2017-07-10 at 13:35 -0400, Ilia Mirkin wrote:
> I wouldn't object to it being in stable, but it's also not
> super-important. It does fix some piglits for freedreno though. (I
> don't think vc4 exposes GL 3.0, so the problematic condition can't
> happen there.)
>
> On Mon, Jul 10, 2017 at 1:30 PM, Andres Gomez <agomez at igalia.com> wrote:
> > Ilia, would we want this patch in -stable ?
> >
> > On Fri, 2017-07-07 at 20:34 -0400, Ilia Mirkin wrote:
> > > Fixes a bunch of gl_BackColor interpolation tests that had explicit
> > > interpolation specified on the fragment shader gl_Color.
> > >
> > > Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
> > > ---
> > > src/compiler/nir/nir_lower_two_sided_color.c | 8 ++++++--
> > > 1 file changed, 6 insertions(+), 2 deletions(-)
> > >
> > > diff --git a/src/compiler/nir/nir_lower_two_sided_color.c b/src/compiler/nir/nir_lower_two_sided_color.c
> > > index 7d1a3bd236d..90da1013ec8 100644
> > > --- a/src/compiler/nir/nir_lower_two_sided_color.c
> > > +++ b/src/compiler/nir/nir_lower_two_sided_color.c
> > > @@ -46,7 +46,8 @@ typedef struct {
> > > */
> > >
> > > static nir_variable *
> > > -create_input(nir_shader *shader, unsigned drvloc, gl_varying_slot slot)
> > > +create_input(nir_shader *shader, unsigned drvloc, gl_varying_slot slot,
> > > + enum glsl_interp_mode interpolation)
> > > {
> > > nir_variable *var = rzalloc(shader, nir_variable);
> > >
> > > @@ -56,6 +57,7 @@ create_input(nir_shader *shader, unsigned drvloc, gl_varying_slot slot)
> > > var->name = ralloc_asprintf(var, "in_%d", drvloc);
> > > var->data.index = 0;
> > > var->data.location = slot;
> > > + var->data.interpolation = interpolation;
> > >
> > > exec_list_push_tail(&shader->inputs, &var->node);
> > >
> > > @@ -116,7 +118,9 @@ setup_inputs(lower_2side_state *state)
> > > else
> > > slot = VARYING_SLOT_BFC1;
> > >
> > > - state->colors[i].back = create_input(state->shader, ++maxloc, slot);
> > > + state->colors[i].back = create_input(
> > > + state->shader, ++maxloc, slot,
> > > + state->colors[i].front->data.interpolation);
> > > }
> > >
> > > return 0;
> >
> > --
> > Br,
> >
> > Andres
>
> _______________________________________________
> mesa-stable mailing list
> mesa-stable at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-stable
--
Br,
Andres
More information about the mesa-dev
mailing list