[Mesa-dev] [PATCH v2 1/8] st/mesa: don't force per-sample interp if only sampleid/pos are used
Marek Olšák
maraeo at gmail.com
Mon Feb 29 10:27:35 UTC 2016
Reviewed-by: Marek Olšák <marek.olsak at amd.com>
Marek
On Sat, Feb 27, 2016 at 5:21 PM, Ilia Mirkin <imirkin at alum.mit.edu> wrote:
> The OES extensions clarify this behaviour to differentiate between
> per-sample invocation and per-sample interpolation. Using sampleid/pos
> will force per-sample invocation but not per-sample interpolation.
>
> See https://www.khronos.org/bugzilla/show_bug.cgi?id=1462
>
> Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
> ---
> src/mesa/state_tracker/st_atom_shader.c | 4 ----
> src/mesa/state_tracker/st_program.c | 4 ----
> 2 files changed, 8 deletions(-)
>
> diff --git a/src/mesa/state_tracker/st_atom_shader.c b/src/mesa/state_tracker/st_atom_shader.c
> index a88f035..f261ce3 100644
> --- a/src/mesa/state_tracker/st_atom_shader.c
> +++ b/src/mesa/state_tracker/st_atom_shader.c
> @@ -71,14 +71,10 @@ update_fp( struct st_context *st )
> st->ctx->Color._ClampFragmentColor;
>
> /* Don't set it if the driver can force the interpolation by itself.
> - * If SAMPLE_ID or SAMPLE_POS are used, the interpolation is set
> - * automatically.
> * Ignore sample qualifier while computing this flag.
> */
> key.persample_shading =
> st->force_persample_in_shader &&
> - !(stfp->Base.Base.SystemValuesRead & (SYSTEM_BIT_SAMPLE_ID |
> - SYSTEM_BIT_SAMPLE_POS)) &&
> _mesa_get_min_invocations_per_fragment(st->ctx, &stfp->Base, true) > 1;
>
> st->fp_variant = st_get_fp_variant(st, stfp, &key);
> diff --git a/src/mesa/state_tracker/st_program.c b/src/mesa/state_tracker/st_program.c
> index 2e21d02..c9f390a 100644
> --- a/src/mesa/state_tracker/st_program.c
> +++ b/src/mesa/state_tracker/st_program.c
> @@ -573,10 +573,6 @@ st_translate_fragment_program(struct st_context *st,
> else
> interpLocation[slot] = TGSI_INTERPOLATE_LOC_CENTER;
>
> - if (stfp->Base.Base.SystemValuesRead & (SYSTEM_BIT_SAMPLE_ID |
> - SYSTEM_BIT_SAMPLE_POS))
> - interpLocation[slot] = TGSI_INTERPOLATE_LOC_SAMPLE;
> -
> switch (attr) {
> case VARYING_SLOT_POS:
> input_semantic_name[slot] = TGSI_SEMANTIC_POSITION;
> --
> 2.4.10
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
More information about the mesa-dev
mailing list