Mesa (staging/20.0): spirv: Remove outdated SPIR-V decoration warnings

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Mon Feb 24 19:19:41 UTC 2020


Module: Mesa
Branch: staging/20.0
Commit: 4fbaecd76835906fa0cc9a00c16164eae53bd4a8
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=4fbaecd76835906fa0cc9a00c16164eae53bd4a8

Author: Arcady Goldmints-Orlov <agoldmints at igalia.com>
Date:   Fri Feb 21 12:47:10 2020 -0600

spirv: Remove outdated SPIR-V decoration warnings

spirv_to_nir warns if it encounters XFB decorations and errors if
it encounters a Stream decoration with value other than 0, despite
the fact that these decorations are in fact handled correctly.

Fixes dEQP-VK.transform_feedback.simple.query_1_*
Fixes: cd4a14be06 "spirv: Handle XFB variable decorations"

Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3910>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3910>
(cherry picked from commit 5f3cbbd958d14924dded0e0a0908127f6bfa006d)

---

 .pick_status.json                 | 2 +-
 src/compiler/spirv/spirv_to_nir.c | 5 ++---
 2 files changed, 3 insertions(+), 4 deletions(-)

diff --git a/.pick_status.json b/.pick_status.json
index 52a91f8d916..45bb790eec5 100644
--- a/.pick_status.json
+++ b/.pick_status.json
@@ -400,7 +400,7 @@
         "description": "spirv: Remove outdated SPIR-V decoration warnings",
         "nominated": true,
         "nomination_type": 1,
-        "resolution": 0,
+        "resolution": 1,
         "master_sha": null,
         "because_sha": "cd4a14be063957964ae54e0e828174b9e40961e0"
     },
diff --git a/src/compiler/spirv/spirv_to_nir.c b/src/compiler/spirv/spirv_to_nir.c
index 411212c6b8f..2f9d2eecad9 100644
--- a/src/compiler/spirv/spirv_to_nir.c
+++ b/src/compiler/spirv/spirv_to_nir.c
@@ -792,8 +792,7 @@ struct_member_decoration_cb(struct vtn_builder *b,
       ctx->fields[member].sample = true;
       break;
    case SpvDecorationStream:
-      /* Vulkan only allows one GS stream */
-      vtn_assert(dec->operands[0] == 0);
+      /* This is handled later by var_decoration_cb in vtn_variables.c */
       break;
    case SpvDecorationLocation:
       ctx->fields[member].location = dec->operands[0];
@@ -844,7 +843,7 @@ struct_member_decoration_cb(struct vtn_builder *b,
 
    case SpvDecorationXfbBuffer:
    case SpvDecorationXfbStride:
-      vtn_warn("Vulkan does not have transform feedback");
+      /* This is handled later by var_decoration_cb in vtn_variables.c */
       break;
 
    case SpvDecorationCPacked:



More information about the mesa-commit mailing list