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@intel.com>
Reviewed-by: Connor Abbott <cwabbott0@gmail.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
This commit is contained in:
Ian Romanick
2016-09-07 14:35:20 -07:00
parent 4c8c13b356
commit b87039499b

View File

@@ -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;