summaryrefslogtreecommitdiff
path: root/src/mesa/shader/slang/library/slang_shader.syn
diff options
context:
space:
mode:
authorBen Skeggs <skeggsb@gmail.com>2008-11-10 15:53:51 +1100
committerBen Skeggs <skeggsb@gmail.com>2008-11-10 15:53:51 +1100
commit32e6be6362e44609d36c2fb20a4c858f57c908fb (patch)
tree4ed99e93ef5f4a8bb51653917c911e04e42f5235 /src/mesa/shader/slang/library/slang_shader.syn
parent92674bc8889e10e580c630cf85c106fa6eb34d7b (diff)
parent399da3a337932c6074a69ac73e711138271308eb (diff)
Merge remote branch 'origin/gallium-0.2' into gallium-0.2
Diffstat (limited to 'src/mesa/shader/slang/library/slang_shader.syn')
-rw-r--r--src/mesa/shader/slang/library/slang_shader.syn16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/mesa/shader/slang/library/slang_shader.syn b/src/mesa/shader/slang/library/slang_shader.syn
index 06bd8ac883..ef4b410669 100644
--- a/src/mesa/shader/slang/library/slang_shader.syn
+++ b/src/mesa/shader/slang/library/slang_shader.syn
@@ -229,6 +229,7 @@
.emtcode OP_FIELD 59
.emtcode OP_POSTINCREMENT 60
.emtcode OP_POSTDECREMENT 61
+.emtcode OP_PRECISION 62
/* parameter qualifier */
.emtcode PARAM_QUALIFIER_IN 0
@@ -753,9 +754,17 @@ parameter_declarator_2
/*
<parameter_declaration> ::= <type_qualifier> <parameter_qualifier>
+ <precision> <parameter_declarator>
+ | <type_qualifier> <parameter_qualifier>
+ <precision> <parameter_type_specifier>
+ | <type_qualifier> <parameter_qualifier>
<parameter_declarator>
| <type_qualifier> <parameter_qualifier>
<parameter_type_specifier>
+ | <parameter_qualifier> <precision>
+ <parameter_declarator>
+ | <parameter_qualifier> <precision>
+ <parameter_type_specifier>
| <parameter_qualifier> <parameter_declarator>
| <parameter_qualifier> <parameter_type_specifier>
*/
@@ -768,6 +777,12 @@ parameter_declaration_2
parameter_declaration_3
parameter_qualifier .emit TYPE_QUALIFIER_NONE .and parameter_declaration_4;
parameter_declaration_4
+ parameter_declaration_optprec .and parameter_declaration_rest;
+parameter_declaration_optprec
+ parameter_declaration_prec .or .true .emit PRECISION_DEFAULT;
+parameter_declaration_prec
+ precision .and space;
+parameter_declaration_rest
parameter_declarator .or parameter_type_specifier;
/*
@@ -1047,6 +1062,7 @@ simple_statement
.if (parsing_builtin != 0) __asm_statement .emit OP_ASM .or
selection_statement .or
iteration_statement .or
+ precision_stmt .emit OP_PRECISION .or
jump_statement .or
expression_statement .emit OP_EXPRESSION .or
declaration_statement .emit OP_DECLARE;