diff options
Diffstat (limited to 'src/compiler/glsl_types.h')
-rw-r--r-- | src/compiler/glsl_types.h | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/src/compiler/glsl_types.h b/src/compiler/glsl_types.h index b1e2f7a0181..e5b9f3ba03d 100644 --- a/src/compiler/glsl_types.h +++ b/src/compiler/glsl_types.h @@ -137,6 +137,7 @@ struct glsl_type { * and \c GLSL_TYPE_UINT are valid. */ unsigned interface_packing:2; + unsigned interface_row_major:1; /* Callers of this ralloc-based new need not call delete. It's * easier to just ralloc_free 'mem_ctx' (or any of its ancestors). */ @@ -282,6 +283,7 @@ struct glsl_type { static const glsl_type *get_interface_instance(const glsl_struct_field *fields, unsigned num_fields, enum glsl_interface_packing packing, + bool row_major, const char *block_name); /** @@ -770,6 +772,14 @@ struct glsl_type { return (enum glsl_interface_packing)interface_packing; } + /** + * Check if the type interface is row major + */ + bool get_interface_row_major() const + { + return (bool) interface_row_major; + } + private: static mtx_t mutex; @@ -799,7 +809,8 @@ private: /** Constructor for interface types */ glsl_type(const glsl_struct_field *fields, unsigned num_fields, - enum glsl_interface_packing packing, const char *name); + enum glsl_interface_packing packing, + bool row_major, const char *name); /** Constructor for interface types */ glsl_type(const glsl_type *return_type, |