i965/vec4: Handle 16-bit types at type_size_xvec4

These types have similar vec4 sizes as their 32-bit counterparts.

The vec4 backend doesn't support 16-bit types and probably never will,
but this method is called by the scalar backend at
fs_visitor::nir_setup_outputs(), so we still need to provide valid vec4
sizes for 16-bit types. In the future, something different should be
implemented to avoid this dependency.

Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
This commit is contained in:
Alejandro Piñeiro
2017-07-01 08:06:17 +02:00
committed by Jose Maria Casanova Crespo
parent 4049c04122
commit 2d28ca7000

View File

@@ -584,8 +584,11 @@ type_size_xvec4(const struct glsl_type *type, bool as_vec4)
case GLSL_TYPE_UINT: case GLSL_TYPE_UINT:
case GLSL_TYPE_INT: case GLSL_TYPE_INT:
case GLSL_TYPE_FLOAT: case GLSL_TYPE_FLOAT:
case GLSL_TYPE_FLOAT16:
case GLSL_TYPE_BOOL: case GLSL_TYPE_BOOL:
case GLSL_TYPE_DOUBLE: case GLSL_TYPE_DOUBLE:
case GLSL_TYPE_UINT16:
case GLSL_TYPE_INT16:
case GLSL_TYPE_UINT64: case GLSL_TYPE_UINT64:
case GLSL_TYPE_INT64: case GLSL_TYPE_INT64:
if (type->is_matrix()) { if (type->is_matrix()) {