Module: Mesa Branch: master Commit: 35fe62dad10cdeff0af39009185c85aa59db6a76 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=35fe62dad10cdeff0af39009185c85aa59db6a76
Author: Rhys Perry <pendingchao...@gmail.com> Date: Thu Mar 11 11:40:51 2021 +0000 radv/llvm: fix enabled_channels for compressed exports The old values seemed to work fine, but the ISA docs recommend 0x0,0x3,0xc and 0xf: COMPR==1: export half-dword enable. Valid values are: 0x0,3,c,f [0] enables VSRC0 : R,G from one VGPR (R in low bits, G high) [2] enables VSRC1 : B,A from one VGPR (B in low bits, A high) Signed-off-by: Rhys Perry <pendingchao...@gmail.com> Reviewed-by: Daniel Schürmann <dan...@schuermann.dev> Reviewed-by: Samuel Pitoiset <samuel.pitoi...@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9459> --- src/amd/vulkan/radv_nir_to_llvm.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/amd/vulkan/radv_nir_to_llvm.c b/src/amd/vulkan/radv_nir_to_llvm.c index b2dec617cee..3aa646ce3a2 100644 --- a/src/amd/vulkan/radv_nir_to_llvm.c +++ b/src/amd/vulkan/radv_nir_to_llvm.c @@ -1433,7 +1433,7 @@ si_llvm_init_export_args(struct radv_shader_context *ctx, break; case V_028714_SPI_SHADER_FP16_ABGR: - args->enabled_channels = 0x5; + args->enabled_channels = 0xf; packf = ac_build_cvt_pkrtz_f16; if (is_16bit) { for (unsigned chan = 0; chan < 4; chan++) @@ -1444,17 +1444,17 @@ si_llvm_init_export_args(struct radv_shader_context *ctx, break; case V_028714_SPI_SHADER_UNORM16_ABGR: - args->enabled_channels = 0x5; + args->enabled_channels = 0xf; packf = ac_build_cvt_pknorm_u16; break; case V_028714_SPI_SHADER_SNORM16_ABGR: - args->enabled_channels = 0x5; + args->enabled_channels = 0xf; packf = ac_build_cvt_pknorm_i16; break; case V_028714_SPI_SHADER_UINT16_ABGR: - args->enabled_channels = 0x5; + args->enabled_channels = 0xf; packi = ac_build_cvt_pk_u16; if (is_16bit) { for (unsigned chan = 0; chan < 4; chan++) @@ -1465,7 +1465,7 @@ si_llvm_init_export_args(struct radv_shader_context *ctx, break; case V_028714_SPI_SHADER_SINT16_ABGR: - args->enabled_channels = 0x5; + args->enabled_channels = 0xf; packi = ac_build_cvt_pk_i16; if (is_16bit) { for (unsigned chan = 0; chan < 4; chan++) _______________________________________________ mesa-commit mailing list mesa-commit@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-commit