summaryrefslogtreecommitdiff
path: root/ast_to_hir.cpp
AgeCommit message (Collapse)Author
2010-03-25Merge branch 'anholt'Ian Romanick
2010-03-25Fix assignment operators: *=, /=, +=, -=.Eric Anholt
Basically, replace everything different from operator_assign other than the creation of the rhs value from the lvalue and rvalue with the contents of operator_assign. Fixes a segfault in CorrectSwizzle1.frag, and fixes parser10.frag.
2010-03-25Before generating HIR for user code, generate constructors for built-in typesIan Romanick
2010-03-25Use glsl_type::row_type and glsl_type::column type in arithmetic_result_typeIan Romanick
This substantially clarifies the code for matching matrix types. It also eliminates some uses of glsl_type member data.
2010-03-24Replace several field comparisons with a single pointer comparisonIan Romanick
The only way the specified type fields can match is if the types are the same. Previous tests (and assertions) have filtered away all other possible cases.
2010-03-24Use glsl_type::get_instance instead of symbol table look-upIan Romanick
2010-03-24Replace accesses to glsl_type data with query functionsIan Romanick
In these particular cases, using the query functions makes it more obvious what is happening.
2010-03-23ir_function constructor now takes the function name as a parameterIan Romanick
2010-03-23Add *some* type checking for assignmentsIan Romanick
2010-03-23Disallow passing NULL for state to _mesa_glsl_errorIan Romanick
The two places that were still passing NULL had a state pointer to pass. Not passing it in these places prevented termination of compilation of erroneous programs.
2010-03-23Fix typographical errors of "FINISHME"Ian Romanick
2010-03-23Generate an error for variables declared with type voidIan Romanick
2010-03-23Set, and require, a return type for function signaturesIan Romanick
2010-03-19Track the function that is currently being definedIan Romanick
Later this will allow type checking for return statements.
2010-03-19Initial bits for converting AST return nodes to IR return instructionsIan Romanick
2010-03-19Use glsl_symbol_table::name_declared_this_scopeIan Romanick
Prevent most illegal name reuse.
2010-03-19Use glsl_symbol_table instead of using _mesa_symbol_table directlyIan Romanick
2010-03-15Ensure that ast_type always has type_name setIan Romanick
For built-in types, type_name would be NULL. This ensures that type_name is set even for the built-in types. This simplifies code in a few places and centralizes the name setting code.
2010-03-15Move ast_function_expression::hir to ast_function.cppIan Romanick
2010-03-11Initial pass at resolving function callsIan Romanick
The code is still really rough and *REALLY* incomplete. This at least passes the first few trivially simple test cases.
2010-03-11Default function parameters to 'in' instead of autoIan Romanick
2010-03-11Add ir_call call to represent function calls.Ian Romanick
2010-03-10Make ast_function_expression subclass of ast_expressionIan Romanick
2010-03-10IR variable: Initial work to support GLSL built-in variablesIan Romanick
2010-03-10Move top-level AST to HIR conversion to _mesa_ast_to_hirIan Romanick
2010-03-10AST to IR: Mark 'varying' in a vertex shader as 'out'Ian Romanick
2010-03-09Add assignment side-effect to the instruction streamIan Romanick
The actual assignment is a side-effect of the assignment expression. Add it to the instruction stream and return the LHS of the assignment as its rvalue.
2010-03-09Convert is_glsl_type_matrix to glsl_type::is_matrixIan Romanick
2010-03-09Convert is_glsl_type_vector to glsl_type::is_vectorIan Romanick
2010-03-09Convert is_glsl_type_scalar to glsl_type::is_scalarIan Romanick
2010-03-08Remove unused functionIan Romanick
2010-03-08Conver IR structures to use exec_list instead of simple_nodeIan Romanick
2010-03-01Make AST->HIR conversion a method of ast_node, re-enableIan Romanick
2010-02-22Rename .cc files to .cppIan Romanick