[Mesa-dev] [PATCH 1/2] u_simple_shaders: fix mask handling in util_make_fragment_tex_shader_writemask

Brian Paul brianp at vmware.com
Wed Feb 7 04:33:44 UTC 2018


On 02/06/2018 09:20 PM, sroland at vmware.com wrote:
> From: Roland Scheidegger <sroland at vmware.com>
> 
> The writemask handling was busted, since writing defaults to output
> meant they got overwritten by the tex sampling anyway. Albeit the
> affected components were undefined, so maybe with some luck it
> still would have worked with some drivers - if not could as well
> kill it... (This would have affected u_blitter but not u_blit since
> the latter always used xyzw mask.)
> ---
>   src/gallium/auxiliary/util/u_simple_shaders.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/src/gallium/auxiliary/util/u_simple_shaders.c b/src/gallium/auxiliary/util/u_simple_shaders.c
> index 9679545..a301c05 100644
> --- a/src/gallium/auxiliary/util/u_simple_shaders.c
> +++ b/src/gallium/auxiliary/util/u_simple_shaders.c
> @@ -275,7 +275,7 @@ util_make_fragment_tex_shader_writemask(struct pipe_context *pipe,
>      if (writemask != TGSI_WRITEMASK_XYZW) {
>         struct ureg_src imm = ureg_imm4f( ureg, 0, 0, 0, 1 );
>   
> -      ureg_MOV( ureg, out, imm );
> +      ureg_MOV(ureg, temp, imm);
>      }
>   
>      if (tex_target == TGSI_TEXTURE_BUFFER)
> 

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


More information about the mesa-dev mailing list