Age | Commit message (Collapse) | Author | |
---|---|---|---|
2010-06-23 | ir_variable: Add query to get number of slots used by a variable | Ian Romanick | |
2010-06-23 | ir_variable: Track the location of uniforms, varings, attributes, etc. | Ian Romanick | |
2010-06-23 | ir_variable: Add method to get string representing interpolation qualifier | Ian Romanick | |
2010-06-23 | ir_constant: Add method to determine if two constants have the same value | Ian Romanick | |
2010-06-11 | ir_constant: Eliminate 'void *' constructor | Ian Romanick | |
All of the places that had been using the (glsl_type *, void *) constructor were actually passing an ir_constant_data for the 'void *'. The code can be greatly simplified by replacing this constructor with a (glsl_type *, ir_constant_data *) constructor. This should also help prevent one class of invalid uses of the old constructor. | |||
2010-06-11 | ir_constant: Add get_record_field query | Ian Romanick | |
2010-06-11 | ir_constant: Support constant structures in clone | Ian Romanick | |
2010-06-11 | ir_constant: Add storage for multiple constants for arrays and records | Ian Romanick | |
2010-06-11 | Construct an ir_constant from a list of ir_constant values | Ian Romanick | |
2010-06-11 | Add methods to ir_constant to get scalar components in a particular type | Ian Romanick | |
2010-06-11 | Construct an ir_constant from a scalar component of another ir_constant | Ian Romanick | |
2010-06-09 | Implement dFdx, dFdy, and fwidth via new expression opcodes. | Kenneth Graunke | |
2010-06-09 | Set the type of ir_texture properly; infer it from the sampler type. | Kenneth Graunke | |
2010-06-09 | Add mappings between ir_texture_opcode and strings. | Kenneth Graunke | |
2010-06-04 | Check variable mode when comparing qualifier lists. | Kenneth Graunke | |
Fixes function-05.vert. | |||
2010-05-26 | ir_dereference::mode is no longer used, kill with fire | Ian Romanick | |
2010-05-26 | Refactor ir_dereference data fields to subclasses | Ian Romanick | |
2010-05-26 | Begin refactoring ir_dereference | Ian Romanick | |
Create separate subclasses of ir_dereference for variable, array, and record dereferences. As a side effect, array and record dereferences no longer point to ir_variable objects directly. Instead they each point to an ir_dereference_variable object. This is the first of several steps in the refactoring process. The intention is that ir_dereference will eventually become an abstract base class. | |||
2010-05-14 | Add ir_rvalue::variable_referenced | Ian Romanick | |
2010-05-14 | Implement "sin" and "cos" builtins via new expression operators. | Kenneth Graunke | |
2010-05-14 | Implement "sign" builtin via a new expression operator. | Kenneth Graunke | |
2010-05-10 | Remove unnecessary include of simple_list.h | Ian Romanick | |
2010-05-03 | ir_to_mesa.cpp: Fix missing types on some ir_swizzles. | Eric Anholt | |
Debugging this took forever as I only looked at constructors in ir.cpp to find who wasn't setting up ->type. I dislike hiding code (as opposed to prototypes and definitions) in C++ header files, but in this case I have only myself to blame. | |||
2010-04-28 | Implement structures and arrays in ir_dereference::is_lvalue | Ian Romanick | |
2010-04-28 | Add ir_dereference constructor for structure field dereferences | Ian Romanick | |
2010-04-28 | Use "neg" when printing/reading unary negation rather than "-". | Kenneth Graunke | |
"-" is now only used for binary subtraction. | |||
2010-04-28 | Move array of operator strings out of ir_print_visitor.cpp. | Kenneth Graunke | |
Also implement a reverse-lookup function for use in the IR reader. | |||
2010-04-28 | Factor out parameter list replacement for later reuse. | Kenneth Graunke | |
2010-04-28 | Factor out qualifier checking code for later reuse. | Kenneth Graunke | |
2010-04-28 | Refactor ir_expression::get_num_operands. | Kenneth Graunke | |
A new static version takes an ir_expression_operation enum, and the original non-static version now uses it. This will make it easier to read operations (where the ir_expression doesn't yet exist). | |||
2010-04-21 | Remove ir_label since it is no longer used. | Kenneth Graunke | |
2010-04-21 | Refactor IR function representation. | Kenneth Graunke | |
Now, ir_function is emitted as part of the IR instructions, rather than simply existing in the symbol table. Individual ir_function_signatures are not emitted themselves, but only as part of ir_function. | |||
2010-04-07 | Remove extraneous base-class constructor calls | Ian Romanick | |
2010-04-07 | Put function bodies under function signatures, instead of flat in the parent. | Eric Anholt | |
This will let us know the length of function bodies for the purpose of inlining (among other uses). | |||
2010-04-06 | Make constant folding descend into if statements. | Eric Anholt | |
2010-04-06 | Handle constant expressions using derefs of const values. | Eric Anholt | |
Fixes CorrectParse1.frag and makes for a ton of folding in CorrectParse2.frag. | |||
2010-04-05 | Set correct type for ir_dereference of a matrix or a vector | Ian Romanick | |
2010-04-02 | Track whether whole-arrays are assignable | Ian Romanick | |
In GLSL 1.10 this was not allowed, but in GLSL 1.20 and later it is. This causes the following tests to pass: glslparsertest/glsl2/array-09.vert glslparsertest/glsl2/array-13.vert | |||
2010-04-02 | Whole structures are assignable | Ian Romanick | |
Whole arrays are assignable in GLSL 1.20 and later, but it's not clear how to handle that within the IR because the IR is supposed to be shading language version agnostic. | |||
2010-04-02 | Add bool/int conversion as IR operations. | Eric Anholt | |
Fixes constructor-09.glsl and CorrectParse2.frag. | |||
2010-04-02 | Add conversion of bool to float as an IR operation to match int to float. | Eric Anholt | |
2010-04-02 | Allow array dereferences to be considered as lvalues. | Eric Anholt | |
Fixes glsl-vs-arrays.vert and glsl-vs-mov-after-deref.vert. Regresses parser3.frag which was failing for the wrong reason. | |||
2010-04-02 | Simplify ir_constant_expression.cpp by factoring operand computation out. | Eric Anholt | |
2010-04-01 | Track max accessed array element, reject additional out-of-bounds accesses | Ian Romanick | |
For unsized arrays, we can't flag out-of-bounds accesses until the array is redeclared with a size. Track the maximum accessed element and generate an error if the declaration specifies a size that would cause that access to be out-of-bounds. This causes the following tests to pass: glslparsertest/shaders/array10.frag | |||
2010-04-01 | Fix type handling in ir_dereference array dereference constructor | Ian Romanick | |
2010-03-26 | Set variables with the sampler base type to read only. | Eric Anholt | |
Fixes increment3.frag. | |||
2010-03-26 | Add constructors for immediate hir constants. | Eric Anholt | |
This will make ast_to_hir for inc/dec easier. | |||
2010-03-26 | Add glsl_type::components to query total number of components in a type | Ian Romanick | |
2010-03-26 | Make glsl_*_type glsl_type class static data | 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> |