Mesa (glsl2): glsl2: Don't break sign() down by vector components.

Eric Anholt anholt at kemper.freedesktop.org
Wed Jun 30 17:34:32 PDT 2010


Module: Mesa
Branch: glsl2
Commit: f5b3b2a01a320d136df3cf1f8c6fa78685d164d1
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=f5b3b2a01a320d136df3cf1f8c6fa78685d164d1

Author: Eric Anholt <eric at anholt.net>
Date:   Wed Jun 30 17:25:09 2010 -0700

glsl2: Don't break sign() down by vector components.

---

 src/glsl/builtin_function.cpp |   19 +++----------------
 src/glsl/builtins/110/sign    |   19 +++----------------
 2 files changed, 6 insertions(+), 32 deletions(-)

diff --git a/src/glsl/builtin_function.cpp b/src/glsl/builtin_function.cpp
index 811c5b2..b7dbc6b 100644
--- a/src/glsl/builtin_function.cpp
+++ b/src/glsl/builtin_function.cpp
@@ -1856,31 +1856,18 @@ static const char *builtins_110_sign = {
    "   (signature vec2\n"
    "     (parameters\n"
    "       (declare (in) vec2 x))\n"
-   "     ((declare () vec2 t)\n"
-   "      (assign (constant bool (1)) (swiz x (var_ref t)) (expression float sign (swiz x (var_ref x))))\n"
-   "      (assign (constant bool (1)) (swiz y (var_ref t)) (expression float sign (swiz y (var_ref x))))\n"
-   "      (return (var_ref t))))\n"
+   "     ((return (expression vec2 sign (var_ref x)))))\n"
    "\n"
    "   (signature vec3\n"
    "     (parameters\n"
    "       (declare (in) vec3 x))\n"
-   "     ((declare () vec3 t)\n"
-   "      (assign (constant bool (1)) (swiz x (var_ref t)) (expression float sign (swiz x (var_ref x))))\n"
-   "      (assign (constant bool (1)) (swiz y (var_ref t)) (expression float sign (swiz y (var_ref x))))\n"
-   "      (assign (constant bool (1)) (swiz z (var_ref t)) (expression float sign (swiz z (var_ref x))))\n"
-   "      (return (var_ref t))))\n"
+   "     ((return (expression vec3 sign (var_ref x)))))\n"
    "\n"
    "   (signature vec4\n"
    "     (parameters\n"
    "       (declare (in) vec4 x))\n"
-   "     ((declare () vec4 t)\n"
-   "      (assign (constant bool (1)) (swiz x (var_ref t)) (expression float sign (swiz x (var_ref x))))\n"
-   "      (assign (constant bool (1)) (swiz y (var_ref t)) (expression float sign (swiz y (var_ref x))))\n"
-   "      (assign (constant bool (1)) (swiz z (var_ref t)) (expression float sign (swiz z (var_ref x))))\n"
-   "      (assign (constant bool (1)) (swiz w (var_ref t)) (expression float sign (swiz w (var_ref x))))\n"
-   "      (return (var_ref t))))\n"
+   "     ((return (expression vec4 sign (var_ref x)))))\n"
    "))\n"
-   "\n"
 };
 
 static const char *builtins_110_sin = {
diff --git a/src/glsl/builtins/110/sign b/src/glsl/builtins/110/sign
index 7d540de..fa47519 100644
--- a/src/glsl/builtins/110/sign
+++ b/src/glsl/builtins/110/sign
@@ -7,28 +7,15 @@
    (signature vec2
      (parameters
        (declare (in) vec2 x))
-     ((declare () vec2 t)
-      (assign (constant bool (1)) (swiz x (var_ref t)) (expression float sign (swiz x (var_ref x))))
-      (assign (constant bool (1)) (swiz y (var_ref t)) (expression float sign (swiz y (var_ref x))))
-      (return (var_ref t))))
+     ((return (expression vec2 sign (var_ref x)))))
 
    (signature vec3
      (parameters
        (declare (in) vec3 x))
-     ((declare () vec3 t)
-      (assign (constant bool (1)) (swiz x (var_ref t)) (expression float sign (swiz x (var_ref x))))
-      (assign (constant bool (1)) (swiz y (var_ref t)) (expression float sign (swiz y (var_ref x))))
-      (assign (constant bool (1)) (swiz z (var_ref t)) (expression float sign (swiz z (var_ref x))))
-      (return (var_ref t))))
+     ((return (expression vec3 sign (var_ref x)))))
 
    (signature vec4
      (parameters
        (declare (in) vec4 x))
-     ((declare () vec4 t)
-      (assign (constant bool (1)) (swiz x (var_ref t)) (expression float sign (swiz x (var_ref x))))
-      (assign (constant bool (1)) (swiz y (var_ref t)) (expression float sign (swiz y (var_ref x))))
-      (assign (constant bool (1)) (swiz z (var_ref t)) (expression float sign (swiz z (var_ref x))))
-      (assign (constant bool (1)) (swiz w (var_ref t)) (expression float sign (swiz w (var_ref x))))
-      (return (var_ref t))))
+     ((return (expression vec4 sign (var_ref x)))))
 ))
-



More information about the mesa-commit mailing list