OSDN Git Service

glsl: Fix for scalar float built-in definitions.
authorKenneth Graunke <kenneth@whitecape.org>
Wed, 8 Sep 2010 22:38:09 +0000 (15:38 -0700)
committerKenneth Graunke <kenneth@whitecape.org>
Wed, 8 Sep 2010 22:38:09 +0000 (15:38 -0700)
These need abs, and we need more tests.

src/glsl/builtin_function.cpp
src/glsl/builtins/ir/distance
src/glsl/builtins/ir/length

index 11b96fd..0a2b012 100644 (file)
@@ -724,7 +724,7 @@ static const char *builtin_distance =
    "     (parameters\n"
    "       (declare (in) float p0)\n"
    "       (declare (in) float p1))\n"
-   "     ((return (expression float - (var_ref p0) (var_ref p1)))))\n"
+   "     ((return (expression float abs (expression float - (var_ref p0) (var_ref p1))))))\n"
    "\n"
    "   (signature float\n"
    "     (parameters\n"
@@ -1302,7 +1302,7 @@ static const char *builtin_length =
    "   (signature float\n"
    "     (parameters\n"
    "       (declare (in) float arg0))\n"
-   "     ((return (var_ref arg0))))\n"
+   "     ((return (expression float abs (var_ref arg0)))))\n"
    "\n"
    "   (signature float\n"
    "     (parameters\n"
index f73f755..7789ca6 100644 (file)
@@ -3,7 +3,7 @@
      (parameters
        (declare (in) float p0)
        (declare (in) float p1))
-     ((return (expression float - (var_ref p0) (var_ref p1)))))
+     ((return (expression float abs (expression float - (var_ref p0) (var_ref p1))))))
 
    (signature float
      (parameters
index 3fc3103..b72334e 100644 (file)
@@ -2,7 +2,7 @@
    (signature float
      (parameters
        (declare (in) float arg0))
-     ((return (var_ref arg0))))
+     ((return (expression float abs (var_ref arg0)))))
 
    (signature float
      (parameters