Ian Romanick
adfb0cd740
IR variable: Initial work to support GLSL built-in variables
2010-03-10 10:43:54 -08:00
Ian Romanick
f52888fac0
Include cstdlib to be sure size_t is available
2010-03-10 10:42:37 -08:00
Ian Romanick
d949a9afb0
Move top-level AST to HIR conversion to _mesa_ast_to_hir
2010-03-10 09:55:22 -08:00
Ian Romanick
8e6cd3bf54
Require the shader target be specified to the driver program
2010-03-10 09:31:30 -08:00
Ian Romanick
1c4156ffac
Use ir_print_visitor to dump IR tree
2010-03-10 09:27:03 -08:00
Ian Romanick
02ae68f496
Fix typeo in gl_FogParameters.scale (was scalre)
2010-03-10 00:52:39 -08:00
Ian Romanick
0b67823462
AST to IR: Mark 'varying' in a vertex shader as 'out'
2010-03-10 00:28:59 -08:00
Ian Romanick
654c057257
ir_variable: Initialize all attribute bits to reasonable defaults
...
This prevents variables from randomly having their 'invariant' or
'read_only' bits set, for example.
2010-03-10 00:21:27 -08:00
Ian Romanick
fe10250355
IR print visitor: Add some support for printing types and constants
2010-03-09 21:44:34 -08:00
Ian Romanick
6044ae79a0
IR print visitor: Print assignments
2010-03-09 16:40:45 -08:00
Ian Romanick
6652af36fe
Add assignment side-effect to the instruction stream
...
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-09 16:38:02 -08:00
Ian Romanick
78b51b0fdd
IR visitor: Add initial version of ir_visitor classes
...
The ir_visitor class is the abstract base class for all visitors.
ir_print_visitor contains the beginnings of a concrete visitor class
that will print out an IR sequence in a Lisp / Scheme-like syntax.
2010-03-09 16:26:15 -08:00
Ian Romanick
fce1150156
Convert is_glsl_type_matrix to glsl_type::is_matrix
2010-03-09 15:58:52 -08:00
Ian Romanick
a2dd22fb19
Convert is_glsl_type_vector to glsl_type::is_vector
2010-03-09 15:55:16 -08:00
Ian Romanick
cb36f8aaee
Convert is_glsl_type_scalar to glsl_type::is_scalar
2010-03-09 15:51:22 -08: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
Ian Romanick
3a9e989628
Remove unused function
2010-03-08 23:44:59 -08:00
Ian Romanick
0044e7edce
Conver IR structures to use exec_list instead of simple_node
2010-03-08 23:44:54 -08:00
Ian Romanick
7e4ce71923
Add yet-another linked list type
...
The use of macros to access existing linked list type makes it
unsuitable for its current use as a base class. Since this type and
the accompanying macros are used all over the place in Mesa, we can't
really change them.
2010-03-08 23:42:45 -08:00
Ian Romanick
61484ba188
Remove prototypes for *_to_hir functions that no longer exist
2010-03-08 23:06:48 -08:00
Ian Romanick
1e2e58c1f6
Set C++ indent too.
2010-03-08 13:02:58 -08:00
Ian Romanick
18238de6c3
Make AST->HIR conversion a method of ast_node, re-enable
2010-03-01 13:49:10 -08:00
Ian Romanick
d59673c9de
autoconf for the ...
2010-02-25 17:17:23 -08:00
Ian Romanick
e41a1cd4d5
Replace tacky wrapper macros with tacky in-line type-casts
2010-02-25 12:49:55 -08:00
Ian Romanick
168890ce1b
Convert to new interfaces so that it will compile
...
Convert TRUE and FALSE to true and false. Convert
_mesa_ast_get_location to ast_node::get_location.
2010-02-25 12:24:40 -08:00
Ian Romanick
88349b22ca
Add ast_expression_bin subclass of ast_expression
...
The ast_expression_bin subclass is used for all binary expressions
such as addition, subtraction, and comparisons. Several other
subclasses are soon to follow.
2010-02-22 19:10:25 -08:00
Ian Romanick
89227f6ce4
Ignore all build products
2010-02-22 19:09:45 -08:00
Ian Romanick
d5f4f09e76
Rename .cc files to .cpp
2010-02-22 18:43:08 -08:00
Ian Romanick
53d2774ee3
Initialize the node structure embedded in the ast_node
2010-02-22 13:22:10 -08:00
Ian Romanick
a87ac255cf
Initial commit. lol
2010-02-22 13:19:34 -08:00