summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIan Romanick <[email protected]>2016-09-07 14:35:20 -0700
committerIan Romanick <[email protected]>2016-12-06 17:30:38 -0800
commitb87039499b07b23f964123e99c5447c1308eb873 (patch)
tree5e92917a22749236274a2275e36ca1a1d937ff48
parent4c8c13b3568c82e503a10ddcb846b4c96261ec4c (diff)
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 <[email protected]> Reviewed-by: Connor Abbott <[email protected]> Reviewed-by: Jason Ekstrand <[email protected]>
-rw-r--r--src/compiler/nir/nir_split_var_copies.c8
1 files 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 f9ad49a7cb3..63a7611b914 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;