summaryrefslogtreecommitdiff
path: root/src/glsl/glsl_lexer.lpp
AgeCommit message (Collapse)Author
2010-08-30glsl2: Parse #pragma linesIan Romanick
All pragmas are currently ignored. Also, the error messages when a pragma is used incorrectly (i.e., '#pragma debug(on)' inside a function) are crap, but I think this is sufficient for now. Fixes piglit test cases pragma-0[1-8].(vert|frag).
2010-08-13glsl2: Avoid token name collisions with names used by Windows header filesIan Romanick
2010-08-13glsl2: Eliminate tokens for square matrix short namesIan Romanick
MAT2 and MAT2X2, for example, are treated identically by the parser. The language version based error checking (becuase mat2x2 is not available in GLSL 1.10) is already done in the lexer.
2010-08-11glsl2: Emit error from lexer when illegal reserved word is encounteredIan Romanick
Without this, the parser will generate obtuse, useless error diagnostics when reservered word that are not used by the grammar are encountered in a shader. Fixes bugzilla #29519.
2010-08-07glsl2: Add the 1.30 reserved keywords.Kenneth Graunke
2010-08-02glsl2: Add support for floating constants like "1f".Eric Anholt
Fixes glsl-floating-constant-120.
2010-08-01glsl2: Make non-square matrix keywords not keywords pre-120.Eric Anholt
Fixes glsl-mat-110.
2010-07-28glsl2: Make lowp, mediump, highp, and precision identifiers pre-1.20.Eric Anholt
Fixes glsl-precision-110.
2010-07-28glsl2: Parser support for GL_ARB_fragment_coord_conventionsIan Romanick
2010-07-19glsl2: Fix lexing of octal values, including "0".Eric Anholt
When faced with a constructor like 'ivec4(0, 2, 0, 0)', we would manage to get a value of 2 instead of 0 for the first "0". Usually 2 characters past "0" would point at some junk and lex as 0 anyway. Fixes glsl-octal and glsl-unused-varyings.
2010-07-07glsl2: Initialize yylineno and yycolumn so line numbers are sane.Kenneth Graunke
2010-07-01glsl2: Append _TOK to some parser tokensIan Romanick
This prevents conflicts with defines elsewhere in Mesa and allows including mtypes.h in the compiler.
2010-06-30glsl2: Use _mesa_glsl_parse_state as the talloc parent, not glsl_shader.Kenneth Graunke
_mesa_glsl_parse_state should be the parent for all temporary allocation done while compiling a shader. glsl_shader should only be used as the parent for the shader's final IR---the _result_ of compilation. Since many IR instructions may be added or discarded during optimization passes, IR should not ever be allocated to glsl_shader directly. Done via sed -i s/talloc_parent(state)/state/g and s/talloc_parent(st)/st/g. This also removes a ton of talloc_parent calls, which may help performance.
2010-06-24glsl2: Move the compiler to the subdirectory it will live in in Mesa.Eric Anholt