[Mesa-dev] [PATCH] r600g: geom shaders: always load texture src regs from inputs

Glenn Kennard glenn.kennard at gmail.com
Tue Nov 18 14:09:20 PST 2014


On Tue, 18 Nov 2014 05:09:05 +0100, Dave Airlie <airlied at gmail.com> wrote:

> From: Dave Airlie <airlied at redhat.com>
>
> Otherwise we seem to lose the split_gs_inputs and try and
> pull from an uninitialised register.
>
> fixes 9 texelFetch geom shader tests.
>
> Signed-off-by: Dave Airlie <airlied at redhat.com>
> ---
>  src/gallium/drivers/r600/r600_shader.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/src/gallium/drivers/r600/r600_shader.c  
> b/src/gallium/drivers/r600/r600_shader.c
> index 709fcd7..ab2a838 100644
> --- a/src/gallium/drivers/r600/r600_shader.c
> +++ b/src/gallium/drivers/r600/r600_shader.c
> @@ -4919,7 +4919,8 @@ static inline boolean  
> tgsi_tex_src_requires_loading(struct r600_shader_ctx *ctx,
>  	return 	(inst->Src[index].Register.File != TGSI_FILE_TEMPORARY &&
>  		inst->Src[index].Register.File != TGSI_FILE_INPUT &&
>  		inst->Src[index].Register.File != TGSI_FILE_OUTPUT) ||
> -		ctx->src[index].neg || ctx->src[index].abs;
> +		ctx->src[index].neg || ctx->src[index].abs ||
> +		(inst->Src[index].Register.File == TGSI_FILE_INPUT && ctx->type ==  
> TGSI_PROCESSOR_GEOMETRY);
>  }
> static inline unsigned tgsi_tex_get_src_gpr(struct r600_shader_ctx *ctx,

Confirmed fixes the same set of tests on a Turks.

Reviewed-by: Glenn Kennard <glenn.kennard at gmail.com>


More information about the mesa-dev mailing list