[Mesa-dev] [PATCH 2/2] softpipe: fix shadow1d tests.

Brian Paul brianp at vmware.com
Mon Dec 19 06:36:16 PST 2011


On 12/19/2011 04:53 AM, Dave Airlie wrote:
> From: Dave Airlie<airlied at redhat.com>
>
> This fixes the piglit glsl-1.10 shadow1D related tests.
>
> Signed-off-by: Dave Airlie<airlied at redhat.com>
> ---
>   src/gallium/auxiliary/tgsi/tgsi_exec.c |   14 +++++++++++++-
>   1 files changed, 13 insertions(+), 1 deletions(-)
>
> diff --git a/src/gallium/auxiliary/tgsi/tgsi_exec.c b/src/gallium/auxiliary/tgsi/tgsi_exec.c
> index 4115e35..8df81d1 100644
> --- a/src/gallium/auxiliary/tgsi/tgsi_exec.c
> +++ b/src/gallium/auxiliary/tgsi/tgsi_exec.c
> @@ -1760,7 +1760,6 @@ exec_tex(struct tgsi_exec_machine *mach,
>
>      switch (inst->Texture.Texture) {
>      case TGSI_TEXTURE_1D:
> -   case TGSI_TEXTURE_SHADOW1D:
>         FETCH(&r[0], 0, CHAN_X);
>
>         if (modifier == TEX_MODIFIER_PROJECTED) {
> @@ -1772,6 +1771,19 @@ exec_tex(struct tgsi_exec_machine *mach,
>                     control,
>                     &r[0],&r[1],&r[2],&r[3]);     /* R, G, B, A */
>         break;
> +   case TGSI_TEXTURE_SHADOW1D:
> +      FETCH(&r[0], 0, CHAN_X);
> +      FETCH(&r[2], 0, CHAN_Z);
> +
> +      if (modifier == TEX_MODIFIER_PROJECTED) {
> +         micro_div(&r[0],&r[0],&r[3]);
> +      }
> +
> +      fetch_texel(mach->Samplers[unit],
> +&r[0],&ZeroVec,&r[2], lod,  /* S, T, P, LOD */
> +                  control,
> +&r[0],&r[1],&r[2],&r[3]);     /* R, G, B, A */
> +      break;
>
>      case TGSI_TEXTURE_2D:
>      case TGSI_TEXTURE_RECT:

That looks better.  Would you mind checking that the TGSI docs 
properly describe which coordinate components are used for array 
indexing, shadow distance, etc.

Reviewed-by: Brian Paul <brianp at vmware.com>


More information about the mesa-dev mailing list