diff options
author | Kenneth Graunke <kenneth@whitecape.org> | 2010-08-07 02:03:00 -0700 |
---|---|---|
committer | Kenneth Graunke <kenneth@whitecape.org> | 2010-09-07 17:30:37 -0700 |
commit | 76deef138ee25ab57b4716aef41ce0c94081f20a (patch) | |
tree | 5335cb9adf19d835376d9f618448127d02f240d6 /src/glsl/glsl_types.cpp | |
parent | c5e74871d9e4b555f3927fd11944c769d466bd12 (diff) |
glsl: Split out types that are in 1.10 but not GLSL ES 1.00.
Diffstat (limited to 'src/glsl/glsl_types.cpp')
-rw-r--r-- | src/glsl/glsl_types.cpp | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/src/glsl/glsl_types.cpp b/src/glsl/glsl_types.cpp index 92ad3efafc..82eb470605 100644 --- a/src/glsl/glsl_types.cpp +++ b/src/glsl/glsl_types.cpp @@ -111,9 +111,8 @@ add_types_to_symbol_table(glsl_symbol_table *symtab, } } - void -glsl_type::generate_110_types(glsl_symbol_table *symtab) +glsl_type::generate_100ES_types(glsl_symbol_table *symtab) { add_types_to_symbol_table(symtab, builtin_core_types, Elements(builtin_core_types), @@ -121,10 +120,20 @@ glsl_type::generate_110_types(glsl_symbol_table *symtab) add_types_to_symbol_table(symtab, builtin_structure_types, Elements(builtin_structure_types), false); + add_types_to_symbol_table(symtab, &void_type, 1, false); +} + +void +glsl_type::generate_110_types(glsl_symbol_table *symtab) +{ + generate_100ES_types(symtab); + + add_types_to_symbol_table(symtab, builtin_110_types, + Elements(builtin_110_types), + false); add_types_to_symbol_table(symtab, builtin_110_deprecated_structure_types, Elements(builtin_110_deprecated_structure_types), false); - add_types_to_symbol_table(symtab, & void_type, 1, false); } @@ -173,6 +182,10 @@ void _mesa_glsl_initialize_types(struct _mesa_glsl_parse_state *state) { switch (state->language_version) { + case 100: + assert(state->es_shader); + glsl_type::generate_100ES_types(state->symbols); + break; case 110: glsl_type::generate_110_types(state->symbols); break; |