Age | Commit message (Collapse) | Author | |
---|---|---|---|
2010-03-29 | Implement HIR conversion for ?: operator | Ian Romanick | |
2010-03-29 | Add generate_temporary to generate an anonymous temporary | Ian Romanick | |
2010-03-29 | Implement HIR conversion for ast_nequal and ast_equal | Ian Romanick | |
The following tests now pass: shaders/glsl-unused-varying.frag shaders/glsl-fs-sqrt-branch.frag | |||
2010-03-29 | Add missing break-statements in ast_expression::hir | Ian Romanick | |
The ast_conditional case was flowing right into ast_pre_inc. | |||
2010-03-29 | Implement ir_if (for if-statments) and conversion from AST | Ian Romanick | |
The following tests now pass: glslparsertest/shaders/if1.frag glslparsertest/shaders/if2.frag The following tests that used to pass now fail. It appears that most of these fail because ast_nequal and ast_equal are not converted to HIR. shaders/glsl-unused-varying.frag shaders/glsl-fs-sqrt-branch.frag | |||
2010-03-29 | Add a variable to the symbol table after processing the initializer | Ian Romanick | |
2010-03-29 | Reject main() declarations with a non-void return value. | Eric Anholt | |
Fixes main3.vert. | |||
2010-03-29 | Reject variables marked with attribute in the fragment shader. | Eric Anholt | |
Fixes attribute.frag. | |||
2010-03-29 | Implement the first builtin function: exp(). | Eric Anholt | |
2010-03-28 | Generate more correctly diagnostics from some invalid initializers | Ian Romanick | |
2010-03-27 | Initial bits to process initializers in variable declarations | Ian Romanick | |
As a result, the following tests pass: glslparsertest/array3.frag glslparsertest/CGStandardLibrary.frag glslparsertest/ConstantConversions.frag glslparsertest/constructor1.frag glslparsertest/constructor2.frag glslparsertest/constructor3.V110.frag glslparsertest/dataType4.frag glslparsertest/dataType5.frag glslparsertest/dataType13.frag glslparsertest/dataType19.frag glslparsertest/matrix.V110.frag glslparsertest/parser7.frag glslparsertest/swizzle3.frag The following tests also pass, but it is just by dumb luck. In these cases the shader fails to compile, but it fails for the wrong reason: glslparsertest/array6.frag glslparsertest/comma2.frag glslparsertest/conditional1.frag glslparsertest/conditional2.frag glslparsertest/conditional3.frag glslparsertest/constFunc.frag glslparsertest/ParseTest3.frag glslparsertest/ParseTest4.frag glslparsertest/varying3.frag glslparsertest/parser8.frag (also segfaults) glslparsertest/parser9.frag (also segfaults) The following tests now fail. As far as I can tell, these are all cases where the shader was failing to compile, but it was failing for the wrong reason. glslparsertest/CorrectMatComma.frag glslparsertest/CorrectModule.frag glslparsertest/CorrectSwizzle2.vert glslparsertest/shaders/glsl-fs-bug25902.frag | |||
2010-03-26 | Reject uniform initializers in GLSL 1.10 mode | Ian Romanick | |
Now both glslparsertest/dataType3.frag and glslparsertest/dataType2.frag pass. | |||
2010-03-26 | Set the var_type for arrays to error_type until it's implemented. | Eric Anholt | |
"Fixes" segfaults in array tests. | |||
2010-03-26 | Add support for ast_to_hir of pre inc/dec. | Eric Anholt | |
2010-03-26 | Add support for ast_to_hir of post inc/dec. | Eric Anholt | |
2010-03-26 | Add support for %= in ast_to_hir. | Eric Anholt | |
2010-03-26 | Factor out assignment setup in ast_to_hir. | Eric Anholt | |
2010-03-26 | Replace remaining use of is_error_type with glsl_type::is_error | Ian Romanick | |
2010-03-26 | Replace remaining uses of is_numeric_base_type with glsl_type::is_numeric | Ian Romanick | |
2010-03-26 | Replace is_integer_base_type macro with glsl_type::is_integer method | Ian Romanick | |
2010-03-26 | Make glsl_*_type glsl_type class static data | Ian Romanick | |
2010-03-26 | Use glsl_type::is_error instead of comparison with glsl_error_type pointer | Ian Romanick | |
2010-03-26 | Move swizzles out of ir_dereference and into their own class. | Kenneth Graunke | |
Also turn generate_swizzle into a static "create" method of the new class; we'll want to use it for the IR reader as well. Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> | |||
2010-03-26 | Add new abstract ir_rvalue class; rework accordingly. | Kenneth Graunke | |
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> | |||
2010-03-26 | Replace "mode" type tag with virtual as_foo() downcasting functions. | Kenneth Graunke | |
These should work well even in a non-flat IR hierarchy. Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> | |||
2010-03-25 | Merge branch 'anholt' | Ian Romanick | |
2010-03-25 | Fix 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-25 | Before generating HIR for user code, generate constructors for built-in types | Ian Romanick | |
2010-03-25 | Use glsl_type::row_type and glsl_type::column type in arithmetic_result_type | Ian Romanick | |
This substantially clarifies the code for matching matrix types. It also eliminates some uses of glsl_type member data. | |||
2010-03-24 | Replace several field comparisons with a single pointer comparison | Ian 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-24 | Use glsl_type::get_instance instead of symbol table look-up | Ian Romanick | |
2010-03-24 | Replace accesses to glsl_type data with query functions | Ian Romanick | |
In these particular cases, using the query functions makes it more obvious what is happening. | |||
2010-03-23 | ir_function constructor now takes the function name as a parameter | Ian Romanick | |
2010-03-23 | Add *some* type checking for assignments | Ian Romanick | |
2010-03-23 | Disallow passing NULL for state to _mesa_glsl_error | Ian 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-23 | Fix typographical errors of "FINISHME" | Ian Romanick | |
2010-03-23 | Generate an error for variables declared with type void | Ian Romanick | |
2010-03-23 | Set, and require, a return type for function signatures | Ian Romanick | |
2010-03-19 | Track the function that is currently being defined | Ian Romanick | |
Later this will allow type checking for return statements. | |||
2010-03-19 | Initial bits for converting AST return nodes to IR return instructions | Ian Romanick | |
2010-03-19 | Use glsl_symbol_table::name_declared_this_scope | Ian Romanick | |
Prevent most illegal name reuse. | |||
2010-03-19 | Use glsl_symbol_table instead of using _mesa_symbol_table directly | Ian Romanick | |
2010-03-15 | Ensure that ast_type always has type_name set | Ian 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-15 | Move ast_function_expression::hir to ast_function.cpp | Ian Romanick | |
2010-03-11 | Initial pass at resolving function calls | Ian Romanick | |
The code is still really rough and *REALLY* incomplete. This at least passes the first few trivially simple test cases. | |||
2010-03-11 | Default function parameters to 'in' instead of auto | Ian Romanick | |
2010-03-11 | Add ir_call call to represent function calls. | Ian Romanick | |
2010-03-10 | Make ast_function_expression subclass of ast_expression | Ian Romanick | |
2010-03-10 | IR variable: Initial work to support GLSL built-in variables | Ian Romanick | |
2010-03-10 | Move top-level AST to HIR conversion to _mesa_ast_to_hir | Ian Romanick | |