Ian Romanick
0471e8b089
Make glsl_*_type glsl_type class static data
2010-03-26 14:33:41 -07:00
Kenneth Graunke
affc1413ac
Move swizzles out of ir_dereference and into their own class.
...
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 14:00:59 -07:00
Kenneth Graunke
fb9fb5f51d
Add new abstract ir_rvalue class; rework accordingly.
...
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
2010-03-26 13:58:48 -07:00
Ian Romanick
720c88eab9
Add functions to generate constructors for built-in types.
...
Currently only vector and matrix types are supported. Structure types will be
added later.
2010-03-25 16:58:45 -07:00
Ian Romanick
532edd9bc4
Remove unused _mesa_glsl_get_vector_type
...
This function has been completely replaced by glsl_type::get_instance.
2010-03-24 17:47:20 -07:00
Ian Romanick
3209c4e369
Add glsl_type::get_instance method
...
Gets the singleton corresponding to a particular scalar, vector, or
matrix type.
2010-03-24 17:11:30 -07:00
Ian Romanick
bb7e00a1cd
Add glsl_type::get_base_type query
...
Retreives the glsl_type that corresponds to the base type of a numeric scalar /
vector / matrix type. So vec4 returns float, etc.
2010-03-23 17:31:39 -07:00
Ian Romanick
7563b50075
Add `void' type to table of available types
...
This will make void-01.glsl test fail, so I may regret this later.
However, this will make supporting functions that return void or
functions that have a void parameter list easier to handle.
2010-03-23 12:11:50 -07:00
Ian Romanick
8bde4cec6b
Use glsl_symbol_table instead of using _mesa_symbol_table directly
2010-03-19 11:57:24 -07:00
Ian Romanick
eccf0bf5f2
Make glsl_type a class
...
Among other benefits, this cleans up a the hackery invovled in
initializing the union field in builtin_types.h.
2010-03-09 15:49:31 -08:00