Mesa (master): nir: In split_var_copies_block, uint, int, and bool types cannot be matrices

Ian Romanick idr at kemper.freedesktop.org
Wed Dec 7 01:31:19 UTC 2016


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

Author: Ian Romanick <ian.d.romanick at intel.com>
Date:   Wed Sep  7 14:35:20 2016 -0700

nir: In split_var_copies_block, uint, int, and bool types cannot be matrices

Noticed while adding support for 64-bit integer types.

Signed-off-by: Ian Romanick <ian.d.romanick at intel.com>
Reviewed-by: Connor Abbott <cwabbott0 at gmail.com>
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>

---

 src/compiler/nir/nir_split_var_copies.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/src/compiler/nir/nir_split_var_copies.c b/src/compiler/nir/nir_split_var_copies.c
index f9ad49a..63a7611 100644
--- a/src/compiler/nir/nir_split_var_copies.c
+++ b/src/compiler/nir/nir_split_var_copies.c
@@ -231,9 +231,6 @@ split_var_copies_block(nir_block *block, struct split_var_copies_state *state)
          break;
       case GLSL_TYPE_FLOAT:
       case GLSL_TYPE_DOUBLE:
-      case GLSL_TYPE_INT:
-      case GLSL_TYPE_UINT:
-      case GLSL_TYPE_BOOL:
          if (glsl_type_is_matrix(src_tail->type)) {
             split_var_copy_instr(intrinsic, dest_head, src_head,
                                  dest_tail, src_tail, state);
@@ -241,6 +238,11 @@ split_var_copies_block(nir_block *block, struct split_var_copies_state *state)
             ralloc_steal(state->dead_ctx, instr);
          }
          break;
+      case GLSL_TYPE_INT:
+      case GLSL_TYPE_UINT:
+      case GLSL_TYPE_BOOL:
+         assert(!glsl_type_is_matrix(src_tail->type));
+         break;
       default:
          unreachable("Invalid type");
          break;




More information about the mesa-commit mailing list