glsl/builtins: Clean up some ugly autogenerated code in atan.
authorKenneth Graunke <kenneth@whitecape.org>
Sun, 31 Oct 2010 04:59:52 +0000 (21:59 -0700)
committerKenneth Graunke <kenneth@whitecape.org>
Wed, 3 Nov 2010 20:39:41 +0000 (13:39 -0700)
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.

src/glsl/builtins/ir/atan

index 32f09d3c7a70df48e401928f834e7fb4df4c114b..3f97e0d46f1c5aacec99b6efcee5f4fa8799e590 100644 (file)
     )
     (
       (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)