summaryrefslogtreecommitdiff
path: root/src/mesa/shader/slang/library/slang_shader_syn.h
diff options
context:
space:
mode:
authorBrian Paul <brian.paul@tungstengraphics.com>2008-11-07 15:51:10 -0700
committerBrian Paul <brian.paul@tungstengraphics.com>2008-11-07 15:51:10 -0700
commit448156f769ebf271a6a8c03c61588c3e6c6363f0 (patch)
tree360ac5045c88500d122a8d41586338037c308ce9 /src/mesa/shader/slang/library/slang_shader_syn.h
parentb632e5aa7f948ed5bbf7104682ec3ee463af4c0a (diff)
mesa: add support for 'invariant' keyword for GLSL 1.20
Diffstat (limited to 'src/mesa/shader/slang/library/slang_shader_syn.h')
-rw-r--r--src/mesa/shader/slang/library/slang_shader_syn.h14
1 files changed, 11 insertions, 3 deletions
diff --git a/src/mesa/shader/slang/library/slang_shader_syn.h b/src/mesa/shader/slang/library/slang_shader_syn.h
index abd8d8fb45..c5410ae361 100644
--- a/src/mesa/shader/slang/library/slang_shader_syn.h
+++ b/src/mesa/shader/slang/library/slang_shader_syn.h
@@ -47,6 +47,8 @@
".emtcode TYPE_QUALIFIER_UNIFORM 4\n"
".emtcode TYPE_QUALIFIER_FIXEDOUTPUT 5\n"
".emtcode TYPE_QUALIFIER_FIXEDINPUT 6\n"
+".emtcode TYPE_VARIANT 90\n"
+".emtcode TYPE_INVARIANT 91\n"
".emtcode TYPE_SPECIFIER_VOID 0\n"
".emtcode TYPE_SPECIFIER_BOOL 1\n"
".emtcode TYPE_SPECIFIER_BVEC2 2\n"
@@ -421,9 +423,13 @@
"single_declaration_6\n"
" constant_expression .emit VARIABLE_ARRAY_EXPLICIT .or .true .emit VARIABLE_ARRAY_UNKNOWN;\n"
"fully_specified_type_space\n"
-" fully_specified_type_optqual .and fully_specified_type_optprec .and type_specifier_space;\n"
+" fully_specified_type_optinvariant .and fully_specified_type_optqual .and fully_specified_type_optprec .and type_specifier_space;\n"
"fully_specified_type_nospace\n"
-" fully_specified_type_optqual .and fully_specified_type_optprec .and type_specifier_nospace;\n"
+" fully_specified_type_optinvariant .and fully_specified_type_optqual .and fully_specified_type_optprec .and type_specifier_nospace;\n"
+"fully_specified_type_optinvariant\n"
+" fully_specified_type_invariant .or .true .emit TYPE_VARIANT;\n"
+"fully_specified_type_invariant\n"
+" invariant_qualifier .and space;\n"
"fully_specified_type_optqual\n"
" fully_specified_type_qual .or .true .emit TYPE_QUALIFIER_NONE;\n"
"fully_specified_type_qual\n"
@@ -432,6 +438,8 @@
" fully_specified_type_prec .or .true .emit PRECISION_DEFAULT;\n"
"fully_specified_type_prec\n"
" precision .and space;\n"
+"invariant_qualifier\n"
+" \"invariant\" .emit TYPE_INVARIANT;\n"
"type_qualifier\n"
" \"const\" .emit TYPE_QUALIFIER_CONST .or\n"
" .if (shader_type == 2) \"attribute\" .emit TYPE_QUALIFIER_ATTRIBUTE .or\n"
@@ -618,8 +626,8 @@
" '\\0' .error INVALID_EXTERNAL_DECLARATION .emit EXTERNAL_NULL;\n"
"external_declaration\n"
" precision_stmt .emit DEFAULT_PRECISION .or\n"
-" invariant_stmt .emit INVARIANT_STMT .or\n"
" function_definition .emit EXTERNAL_FUNCTION_DEFINITION .or\n"
+" invariant_stmt .emit INVARIANT_STMT .or\n"
" declaration .emit EXTERNAL_DECLARATION;\n"
"precision_stmt\n"
" \"precision\" .and space .and precision .error INVALID_PRECISION .and space .and prectype .error INVALID_PRECISION_TYPE .and semicolon;\n"