The argument here is a bitmask, so the old code selected .xy, which
got silently truncated to .x when constructing the vec4 from components,
instead of using .w.

Fixes: 588185eb6b7 "radv/meta: add srgb conversion to end of resolve shader."
---
 src/amd/vulkan/radv_meta_resolve_cs.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/amd/vulkan/radv_meta_resolve_cs.c 
b/src/amd/vulkan/radv_meta_resolve_cs.c
index f13e79ef0ce..d20d04231ed 100644
--- a/src/amd/vulkan/radv_meta_resolve_cs.c
+++ b/src/amd/vulkan/radv_meta_resolve_cs.c
@@ -66,7 +66,7 @@ static nir_ssa_def 
*radv_meta_build_resolve_srgb_conversion(nir_builder *b,
        nir_ssa_def *comp[4];
        for (i = 0; i < 3; i++)
                comp[i] = nir_bcsel(b, cmp[i], ltvals[i], gtvals[i]);
-       comp[3] = nir_channels(b, input, 3);
+       comp[3] = nir_channels(b, input, 1 << 3);
        return nir_vec(b, comp, 4);
 }
 
-- 
2.13.4

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to