summaryrefslogtreecommitdiffstats
path: root/src/glsl/glsl_parser_extras.h
diff options
context:
space:
mode:
authorFrancisco Jerez <[email protected]>2013-10-20 12:38:07 -0700
committerIan Romanick <[email protected]>2013-11-07 15:56:57 -0800
commite63bb298531918c3a17e77a9ad96670e724c9c37 (patch)
tree9181aa991c227472ebb5d4a225e2c6dd7c811369 /src/glsl/glsl_parser_extras.h
parent30f61c471de5a9637e5d830e2b5b9dc4145f94d2 (diff)
glsl: Implement parser support for atomic counters.
v2: Mark atomic counters as read-only variables. Move offset overlap code to the linker. Use the contains_atomic() convenience method. v3: Use pointer to integer instead of non-const reference. Add comment so we remember to add a spec quotation from the next GLSL release once the issue of atomic counter aggregation within structures is clarified. v4 (idr): Don't use std::map because it's overkill. Add an assertion that ctx->Const.MaxAtomicBufferBindings <= MAX_COMBINED_ATOMIC_BUFFERS. Signed-off-by: Francisco Jerez <[email protected]> Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Paul Berry <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
Diffstat (limited to 'src/glsl/glsl_parser_extras.h')
-rw-r--r--src/glsl/glsl_parser_extras.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/glsl/glsl_parser_extras.h b/src/glsl/glsl_parser_extras.h
index 345d7a0187e..d232bb3f66d 100644
--- a/src/glsl/glsl_parser_extras.h
+++ b/src/glsl/glsl_parser_extras.h
@@ -373,6 +373,9 @@ struct _mesa_glsl_parse_state {
* Unused for other shader types.
*/
unsigned gs_input_size;
+
+ /** Atomic counter offsets by binding */
+ unsigned atomic_counter_offsets[MAX_COMBINED_ATOMIC_BUFFERS];
};
# define YYLLOC_DEFAULT(Current, Rhs, N) \