summaryrefslogtreecommitdiff
path: root/src/mesa/shader/program_parser.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mesa/shader/program_parser.h')
-rw-r--r--src/mesa/shader/program_parser.h24
1 files changed, 7 insertions, 17 deletions
diff --git a/src/mesa/shader/program_parser.h b/src/mesa/shader/program_parser.h
index 25b413918a..69396ca2c0 100644
--- a/src/mesa/shader/program_parser.h
+++ b/src/mesa/shader/program_parser.h
@@ -35,16 +35,9 @@ enum asm_type {
at_attrib,
at_param,
at_temp,
- at_output,
+ at_output
};
-/**
- * \note
- * Objects of this type are allocated as the object plus the name of the
- * symbol. That is, malloc(sizeof(struct asm_symbol) + strlen(name) + 1).
- * Alternately, asm_symbol::name could be moved to the bottom of the structure
- * and declared as 'char name[0];'.
- */
struct asm_symbol {
struct asm_symbol *next; /**< List linkage for freeing. */
const char *name;
@@ -63,6 +56,12 @@ struct asm_symbol {
*/
unsigned param_binding_begin;
+ /**
+ * Constants put into the parameter list may be swizzled. This
+ * field contain's the symbol's swizzle. (SWIZZLE_X/Y/Z/W)
+ */
+ unsigned param_binding_swizzle;
+
/* This is how many entries in the the program_parameter_list we take up
* with our state tokens or constants. Note that this is _not_ the same as
* the number of param registers we eventually use.
@@ -165,15 +164,6 @@ struct asm_parser_state {
/**
- * Buffer to hold strings transfered from the lexer to the parser
- */
- /*@{*/
- char *string_dumpster; /**< String data transfered. */
- size_t dumpster_size; /**< Total size, in bytes, of the buffer. */
- /*@}*/
-
-
- /**
* Selected limits copied from gl_constants
*
* These are limits from the GL context, but various bits in the program