this->interface_row_major);
}
+const glsl_type *glsl_type::get_int16_type() const
+{
+ assert(this->base_type == GLSL_TYPE_INT);
+
+ return get_instance(GLSL_TYPE_INT16,
+ this->vector_elements,
+ this->matrix_columns,
+ this->explicit_stride,
+ this->interface_row_major);
+}
+
+const glsl_type *glsl_type::get_uint16_type() const
+{
+ assert(this->base_type == GLSL_TYPE_UINT);
+
+ return get_instance(GLSL_TYPE_UINT16,
+ this->vector_elements,
+ this->matrix_columns,
+ this->explicit_stride,
+ this->interface_row_major);
+}
+
static void
hash_free_type_function(struct hash_entry *entry)
{
*/
const glsl_type *get_float16_type() const;
+ /**
+ * Gets the int16 version of this type.
+ */
+ const glsl_type *get_int16_type() const;
+
+ /**
+ * Gets the uint16 version of this type.
+ */
+ const glsl_type *get_uint16_type() const;
+
/**
* Get the instance of a built-in scalar, vector, or matrix type
*/
return type->get_float16_type();
}
+const glsl_type *
+glsl_int16_type(const struct glsl_type *type)
+{
+ return type->get_int16_type();
+}
+
+const glsl_type *
+glsl_uint16_type(const struct glsl_type *type)
+{
+ return type->get_uint16_type();
+}
+
void
glsl_get_natural_size_align_bytes(const struct glsl_type *type,
unsigned *size, unsigned *align)
const struct glsl_type *glsl_channel_type(const struct glsl_type *type);
const struct glsl_type *glsl_float16_type(const struct glsl_type *type);
+const struct glsl_type *glsl_int16_type(const struct glsl_type *type);
+const struct glsl_type *glsl_uint16_type(const struct glsl_type *type);
void glsl_get_natural_size_align_bytes(const struct glsl_type *type,
unsigned *size, unsigned *align);