Ian Romanick
|
083d75a942
|
ir_constant_visitor: Types of ir_binop_{equal,nequal} must match
The types must match exactly, so there is no reason to check the types here.
|
2010-06-11 17:11:14 -07:00 |
|
Ian Romanick
|
4daaab6040
|
ir_constant_visitor: Use 'union ir_constant_data' in expression handler
|
2010-06-11 17:11:06 -07:00 |
|
Ian Romanick
|
0bb70a30d5
|
ir_constant_visitor: Use 'union ir_constant_data' instead of open-coded version
|
2010-06-11 15:49:49 -07:00 |
|
Ian Romanick
|
39d6dd3537
|
ir_constant_visitor: Handle bool-to-int and int-to-bool
|
2010-06-11 15:43:59 -07:00 |
|
Ian Romanick
|
c2ba619092
|
ir_constant_visitor: Handle constant swizzles
|
2010-06-11 15:43:59 -07:00 |
|
Ian Romanick
|
9b92af9ebc
|
ir_constant_visitor: Handle array access of constant vectors and matrices
|
2010-06-11 15:43:56 -07:00 |
|
Ian Romanick
|
253dedeb6c
|
ir_constant_visitor: Handle dereferences of constant records
|
2010-06-11 15:37:27 -07:00 |
|
Ian Romanick
|
d4b33edbd0
|
ir_constant_visitor: Use clone to create a constant from a variable reference
|
2010-06-11 13:51:42 -07:00 |
|
Ian Romanick
|
7dc2b71a89
|
Add float/bool conversion to ir_constant_expression.cpp.
|
2010-06-11 13:51:42 -07:00 |
|
Kenneth Graunke
|
d6a32d4b54
|
ir_constant_visitor: Add support for dFdx and dFdy operations.
If the argument is a constant expression...it's not changing per pixel,
so the result is simply 0.
|
2010-06-09 15:23:40 -07:00 |
|
Kenneth Graunke
|
26d74cd1d1
|
Add stub visitor support for ir_texture.
|
2010-06-09 11:14:57 -07:00 |
|
Eric Anholt
|
43ad37aa88
|
ir_constant_expression: Handle several floating point unops.
Cleans up a bunch of pointless operations in a GStreamer fragment shader.
|
2010-06-01 15:15:04 -07:00 |
|
Ian Romanick
|
36ea28646c
|
Refactor ir_dereference data fields to subclasses
|
2010-05-26 15:23:25 -07:00 |
|
Ian Romanick
|
c7b1046a9f
|
Refactor ir_dereference support for ir_visitor
Move the accept method for visitors from ir_dereference to the derived
classes.
|
2010-05-26 15:23:25 -07:00 |
|
Kenneth Graunke
|
3289886688
|
Remove ir_label since it is no longer used.
|
2010-04-21 15:37:10 -07:00 |
|
Ian Romanick
|
77cce649c9
|
Add support for bool to ir_equal and ir_nequal constant handling
|
2010-04-07 16:49:25 -07:00 |
|
Ian Romanick
|
f8e31e00b1
|
Add ir_loop_jump to represent 'break' and 'continue' in loops
|
2010-04-07 11:42:30 -07:00 |
|
Ian Romanick
|
fad607a9be
|
Add ir_loop to represent loops
This touches a lot of files because everything derived from ir_visitor
has to be updated. This is the primary disadvantage of the visitor pattern.
|
2010-04-07 11:41:50 -07:00 |
|
Eric Anholt
|
af18641f0a
|
Add float/int conversion to ir_constant_expression.cpp.
Gives CorrectParse2.frag one more constant folding.
|
2010-04-06 11:42:34 -07:00 |
|
Eric Anholt
|
326c676236
|
Handle constant expressions using derefs of const values.
Fixes CorrectParse1.frag and makes for a ton of folding in
CorrectParse2.frag.
|
2010-04-06 11:42:34 -07:00 |
|
Eric Anholt
|
ec1949e804
|
Add support for =, != to ir_constant_expresion.cpp
This results in constant folding of one more expression in CorrectParse2.frag.
|
2010-04-06 11:42:34 -07:00 |
|
Eric Anholt
|
85171c2dd8
|
Add ir_constant_expression.cpp support for <, >, <=, >=.
This results in folding one more constant expression in CorrectParse2.frag.
|
2010-04-06 11:42:34 -07:00 |
|
Eric Anholt
|
d251b92f8d
|
Add some more operations to ir_constant_expression.cpp.
|
2010-04-02 11:22:41 -07:00 |
|
Eric Anholt
|
d98da9738e
|
Make ir_constant_expression.cpp support multi-component types.
|
2010-04-02 11:22:41 -07:00 |
|
Eric Anholt
|
160d092507
|
Simplify ir_constant_expression.cpp by factoring operand computation out.
|
2010-04-02 11:22:41 -07:00 |
|
Eric Anholt
|
528bb85359
|
Handle logic not in constant expression evaluation.
|
2010-04-02 11:22:41 -07:00 |
|
Eric Anholt
|
a576f9d84c
|
Start trying to fill in a few bits of ir_constant_expression.cpp
This makes a little progress on CorrectParse2.frag.
|
2010-04-02 11:05:16 -07:00 |
|
Ian Romanick
|
1cf43a4331
|
Initial bits of constant expression evaluator
Currently only works for constants. The rest will be added later.
|
2010-03-30 16:56:50 -07:00 |
|