summaryrefslogtreecommitdiffstats
path: root/src/glsl/s_expression.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Use C-style system headers in C++ code to avoid issues with std:: namespaceIan Romanick2011-02-211-3/+0
|
* Convert everything from the talloc API to the ralloc API.Kenneth Graunke2011-01-311-1/+1
|
* glsl/s_expression: Read and ignore Scheme-style comments.Kenneth Graunke2011-01-121-6/+15
| | | | | A single-semicolon until the end of the line, i.e. ; this is a comment.
* ir_reader: Remove s_list::length() method.Kenneth Graunke2011-01-121-10/+0
| | | | | Most code now relies on the pattern matcher rather than this function, and for the only remaining case, not using this saves an iteration.
* ir_reader: Add a pattern matching system and use it everywhere.Kenneth Graunke2011-01-121-0/+46
| | | | | | | | | | | | | | | | | | | Previously, the IR reader was riddled with code that: 1. Checked for the right number of list elements (via a linked list walk) 2. Retrieved references to each component (via ->next->next pointers) 3. Downcasted as necessary to make sure that each sub-component was the right type (i.e. symbol, int, list). 4. Checking that the tag (i.e. "declare") was correct. This was all very ad-hoc and a bit ugly. Error checking had to be done at both steps 1, 3, and 4. Most code didn't even check the tag, relying on the caller to do so. Not all callers did. The new pattern matching module performs the whole process in a single straightforward function call, resulting in shorter, more readable code. Unfortunately, MSVC does not support C99-style anonymous arrays, so the pattern must be declared outside of the match call.
* glsl: new glsl_strtod() wrapper to fix decimal point interpretationBrian Paul2010-12-141-1/+1
| | | | | | | | We always want to use '.' as the decimal point. See http://bugs.freedesktop.org/show_bug.cgi?id=24531 NOTE: this is a candidate for the 7.10 branch.
* glsl: Don't print a useless space at the end of an S-Expression list.Kenneth Graunke2010-11-031-1/+2
| | | | | | We really only want to print spaces -between- elements, not after each element. This cleans up error messages from IR reader, making them (mildly) easier to read.
* glsl: Replace sscanf in s_expression reader with strspn and strcspn.Kenneth Graunke2010-08-181-20/+29
| | | | This seems to give roughly a 20% speedup.
* glsl2: Move the compiler to the subdirectory it will live in in Mesa.Eric Anholt2010-06-241-0/+131