glsl: Add image memory and layout qualifiers to ir_variable.

v2: Add comment next to the read_only and write_only qualifier flags.

Reviewed-by: Paul Berry <stereotype441@gmail.com>
This commit is contained in:
Francisco Jerez 2013-11-22 20:57:44 -08:00
parent 107d03a6d5
commit bb13691d1c
2 changed files with 19 additions and 0 deletions

View File

@ -1554,6 +1554,11 @@ ir_variable::ir_variable(const struct glsl_type *type, const char *name,
this->data.max_array_access = 0;
this->data.atomic.buffer_index = 0;
this->data.atomic.offset = 0;
this->data.image.read_only = false;
this->data.image.write_only = false;
this->data.image.coherent = false;
this->data.image._volatile = false;
this->data.image._restrict = false;
if (type != NULL) {
if (type->base_type == GLSL_TYPE_SAMPLER)

View File

@ -690,6 +690,20 @@ public:
unsigned offset;
} atomic;
/**
* ARB_shader_image_load_store qualifiers.
*/
struct {
bool read_only; /**< "readonly" qualifier. */
bool write_only; /**< "writeonly" qualifier. */
bool coherent;
bool _volatile;
bool _restrict;
/** Image internal format if specified explicitly, otherwise GL_NONE. */
GLenum format;
} image;
/**
* Highest element accessed with a constant expression array index
*