glsl: don't drop instructions from unreachable terminators continue branch
[mesa.git] / src / compiler / nir_types.cpp
index cc90efd2ae7e59a330a4e0fa0033493bd4f159c5..5583bc01620ba3cb35ef6ad10ac725095fb66141 100644 (file)
@@ -48,6 +48,13 @@ glsl_without_array(const glsl_type *type)
    return type->without_array();
 }
 
+const glsl_type *
+glsl_get_array_instance(const glsl_type *type,
+                        unsigned array_size)
+{
+   return glsl_type::get_array_instance(type, array_size);
+}
+
 const glsl_type *
 glsl_get_struct_field(const glsl_type *type, unsigned index)
 {
@@ -288,6 +295,18 @@ glsl_uint_type(void)
    return glsl_type::uint_type;
 }
 
+const glsl_type *
+glsl_int64_t_type(void)
+{
+   return glsl_type::int64_t_type;
+}
+
+const glsl_type *
+glsl_uint64_t_type(void)
+{
+   return glsl_type::uint64_t_type;
+}
+
 const glsl_type *
 glsl_bool_type(void)
 {
@@ -327,6 +346,17 @@ glsl_struct_type(const glsl_struct_field *fields,
    return glsl_type::get_record_instance(fields, num_fields, name);
 }
 
+const glsl_type *
+glsl_interface_type(const glsl_struct_field *fields,
+                    unsigned num_fields,
+                    enum glsl_interface_packing packing,
+                    bool row_major,
+                    const char *block_name)
+{
+   return glsl_type::get_interface_instance(fields, num_fields, packing,
+                                            row_major, block_name);
+}
+
 const struct glsl_type *
 glsl_sampler_type(enum glsl_sampler_dim dim, bool is_shadow, bool is_array,
                   enum glsl_base_type base_type)