[Mesa-dev] [PATCH] st/mesa: set result writemask based on ir type

Ilia Mirkin imirkin at alum.mit.edu
Sat Mar 4 19:05:50 UTC 2017


On Sat, Mar 4, 2017 at 1:52 PM, Ilia Mirkin <imirkin at alum.mit.edu> wrote:
> This prevents textureQueryLevels, which maps as LODQ, from ending up

Erm, that should of course be textureQueryLod which maps to LODQ.

> with a xyzw writemask, which is illegal.
>
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=100061
> Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
> Cc: mesa-stable at lists.freedesktop.org
> ---
>
> Untested beyond making sure that the shader in the above bug ends up with
> a .xy writemask. I don't have access to a reasonable testing rig right now,
> would be ideal if someone could give it a run through theirs...
>
>  src/mesa/state_tracker/st_glsl_to_tgsi.cpp | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/src/mesa/state_tracker/st_glsl_to_tgsi.cpp b/src/mesa/state_tracker/st_glsl_to_tgsi.cpp
> index af41bdb..63b681f 100644
> --- a/src/mesa/state_tracker/st_glsl_to_tgsi.cpp
> +++ b/src/mesa/state_tracker/st_glsl_to_tgsi.cpp
> @@ -4165,6 +4165,7 @@ glsl_to_tgsi_visitor::visit(ir_texture *ir)
>      */
>     result_src = get_temp(ir->type);
>     result_dst = st_dst_reg(result_src);
> +   result_dst.writemask = (1 << ir->type->vector_elements) - 1;
>
>     switch (ir->op) {
>     case ir_tex:
> --
> 2.10.2
>


More information about the mesa-dev mailing list