Mesa (master): spirv: fix retrieving dest type for OpFragmentMaskFetchAMD

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Wed Sep 2 07:18:30 UTC 2020


Module: Mesa
Branch: master
Commit: abbfc5b8db7412fa2e6f8c1b66ff97b886c4ac70
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=abbfc5b8db7412fa2e6f8c1b66ff97b886c4ac70

Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date:   Tue Sep  1 09:43:03 2020 +0200

spirv: fix retrieving dest type for OpFragmentMaskFetchAMD

Since the dest type is retrieved from the SPIR-V return type now,
we have to set it manually for OpFragmentMaskFetchAMD. The result
type must be a 32-bit unsigned integer type scalar.

Fix dEQP-VK.pipeline.multisample.shader_fragment_mask.* with RADV.

Fixes: a196f05fc22 ("nir/vtn: Use return type rather than image type for tex ops")
Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Reviewed-by: Jesse Natalie <jenatali at microsoft.com>
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6533>

---

 src/compiler/spirv/spirv_to_nir.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/compiler/spirv/spirv_to_nir.c b/src/compiler/spirv/spirv_to_nir.c
index 399e5ea3ede..d39f2a0d4f1 100644
--- a/src/compiler/spirv/spirv_to_nir.c
+++ b/src/compiler/spirv/spirv_to_nir.c
@@ -2569,6 +2569,7 @@ vtn_handle_texture(struct vtn_builder *b, SpvOp opcode,
 
    case SpvOpFragmentMaskFetchAMD:
       texop = nir_texop_fragment_mask_fetch;
+      dest_type = nir_type_uint;
       break;
 
    default:



More information about the mesa-commit mailing list