summaryrefslogtreecommitdiffstats
path: root/src/glsl/builtins/ir
diff options
context:
space:
mode:
authorKenneth Graunke <[email protected]>2010-10-30 21:59:52 -0700
committerKenneth Graunke <[email protected]>2010-11-03 13:39:41 -0700
commit91b72864b0b774a25712cf7e5196a22acc1693d9 (patch)
tree99deb4bfa8787afc69091f294375aa5e017edbcb /src/glsl/builtins/ir
parent84566c770a8742638ff11fbae59756a50513d621 (diff)
glsl/builtins: Clean up some ugly autogenerated code in atan.
In particular, calling the abs function is silly, since there's already an expression opcode for that. Also, assigning to temporaries then assigning those to the final location is rather redundant.
Diffstat (limited to 'src/glsl/builtins/ir')
-rw-r--r--src/glsl/builtins/ir/atan25
1 files changed, 5 insertions, 20 deletions
diff --git a/src/glsl/builtins/ir/atan b/src/glsl/builtins/ir/atan
index 32f09d3c7a7..3f97e0d46f1 100644
--- a/src/glsl/builtins/ir/atan
+++ b/src/glsl/builtins/ir/atan
@@ -54,30 +54,15 @@
)
(
(declare () float r)
- (declare ( ) float abs_retval)
- (assign (constant bool (1)) (x) (var_ref abs_retval) (call abs ((var_ref x) ))
-)
- (if (expression bool > (var_ref abs_retval) (constant float (0.000100)) ) (
- (declare ( ) float atan_retval)
- (assign (constant bool (1)) (x) (var_ref atan_retval) (call atan ((expression float / (var_ref y) (var_ref x) ) ))
-)
- (assign (constant bool (1)) (x) (var_ref r) (var_ref atan_retval) )
+ (if (expression bool > (expression float abs (var_ref x)) (constant float (0.000100))) (
+ (assign (constant bool (1)) (x) (var_ref r) (call atan ((expression float / (var_ref y) (var_ref x)))))
(if (expression bool < (var_ref x) (constant float (0.000000)) ) (
- (if (expression bool >= (var_ref y) (constant float (0.000000)) ) (
- (declare ( ) float assignment_tmp)
- (assign (constant bool (1)) (x) (var_ref assignment_tmp) (expression float + (var_ref r) (constant float (3.141593)) ) )
- (assign (constant bool (1)) (x) (var_ref r) (var_ref assignment_tmp) )
- )
- (
- (declare ( ) float assignment_tmp)
- (assign (constant bool (1)) (x) (var_ref assignment_tmp) (expression float - (var_ref r) (constant float (3.141593)) ) )
- (assign (constant bool (1)) (x) (var_ref r) (var_ref assignment_tmp) )
- ))
-
+ (if (expression bool >= (var_ref y) (constant float (0.000000)) )
+ ((assign (constant bool (1)) (x) (var_ref r) (expression float + (var_ref r) (constant float (3.141593)))))
+ ((assign (constant bool (1)) (x) (var_ref r) (expression float - (var_ref r) (constant float (3.141593))))))
)
(
))
-
)
(
(declare () float sgn)