Add remaining signatures for 'min' builtin.
authorKenneth Graunke <kenneth@whitecape.org>
Wed, 9 Jun 2010 20:03:18 +0000 (13:03 -0700)
committerKenneth Graunke <kenneth@whitecape.org>
Wed, 9 Jun 2010 20:04:16 +0000 (13:04 -0700)
builtin_function.cpp
builtins/110/min

index 865f58c755754e0d09e6bef86bfff0a692e63bd1..9cc70ee1a75832191a249bed2565e73e932ca3a6 100644 (file)
@@ -1086,6 +1086,45 @@ static const char *builtins_110_min = {
    "       (declare (in) vec4 arg0)\n"
    "       (declare (in) vec4 arg1))\n"
    "     ((return (expression vec4 min (var_ref arg0) (var_ref arg1)))))\n"
+   "\n"
+   "   (signature vec2\n"
+   "     (parameters\n"
+   "       (declare (in) vec2  arg0)\n"
+   "       (declare (in) float arg1))\n"
+   "     ((declare () vec2 result)\n"
+   "      (assign (constant bool (1))   (swiz x (var_ref result))\n"
+   "              (expression float min (swiz x (var_ref arg0)) (var_ref arg1)))\n"
+   "      (assign (constant bool (1))   (swiz y (var_ref result))\n"
+   "              (expression float min (swiz y (var_ref arg0)) (var_ref arg1)))\n"
+   "      (return (var_ref result))))\n"
+   "\n"
+   "   (signature vec3\n"
+   "     (parameters\n"
+   "       (declare (in) vec3  arg0)\n"
+   "       (declare (in) float arg1))\n"
+   "     ((declare () vec3 result)\n"
+   "      (assign (constant bool (1))   (swiz x (var_ref result))\n"
+   "              (expression float min (swiz x (var_ref arg0)) (var_ref arg1)))\n"
+   "      (assign (constant bool (1))   (swiz y (var_ref result))\n"
+   "              (expression float min (swiz y (var_ref arg0)) (var_ref arg1)))\n"
+   "      (assign (constant bool (1))   (swiz z (var_ref result))\n"
+   "              (expression float min (swiz z (var_ref arg0)) (var_ref arg1)))\n"
+   "      (return (var_ref result))))\n"
+   "\n"
+   "   (signature vec4\n"
+   "     (parameters\n"
+   "       (declare (in) vec4  arg0)\n"
+   "       (declare (in) float arg1))\n"
+   "     ((declare () vec4 result)\n"
+   "      (assign (constant bool (1))   (swiz x (var_ref result))\n"
+   "              (expression float min (swiz x (var_ref arg0)) (var_ref arg1)))\n"
+   "      (assign (constant bool (1))   (swiz y (var_ref result))\n"
+   "              (expression float min (swiz y (var_ref arg0)) (var_ref arg1)))\n"
+   "      (assign (constant bool (1))   (swiz z (var_ref result))\n"
+   "              (expression float min (swiz z (var_ref arg0)) (var_ref arg1)))\n"
+   "      (assign (constant bool (1))   (swiz w (var_ref result))\n"
+   "              (expression float min (swiz w (var_ref arg0)) (var_ref arg1)))\n"
+   "      (return (var_ref result))))\n"
    "))\n"
 };
 
index f9820ef8286681eec09db024d28379538d4fc1bf..31e794894056272eb302a99b644cd7381b5bcbd3 100644 (file)
        (declare (in) vec4 arg0)
        (declare (in) vec4 arg1))
      ((return (expression vec4 min (var_ref arg0) (var_ref arg1)))))
+
+   (signature vec2
+     (parameters
+       (declare (in) vec2  arg0)
+       (declare (in) float arg1))
+     ((declare () vec2 result)
+      (assign (constant bool (1))   (swiz x (var_ref result))
+              (expression float min (swiz x (var_ref arg0)) (var_ref arg1)))
+      (assign (constant bool (1))   (swiz y (var_ref result))
+              (expression float min (swiz y (var_ref arg0)) (var_ref arg1)))
+      (return (var_ref result))))
+
+   (signature vec3
+     (parameters
+       (declare (in) vec3  arg0)
+       (declare (in) float arg1))
+     ((declare () vec3 result)
+      (assign (constant bool (1))   (swiz x (var_ref result))
+              (expression float min (swiz x (var_ref arg0)) (var_ref arg1)))
+      (assign (constant bool (1))   (swiz y (var_ref result))
+              (expression float min (swiz y (var_ref arg0)) (var_ref arg1)))
+      (assign (constant bool (1))   (swiz z (var_ref result))
+              (expression float min (swiz z (var_ref arg0)) (var_ref arg1)))
+      (return (var_ref result))))
+
+   (signature vec4
+     (parameters
+       (declare (in) vec4  arg0)
+       (declare (in) float arg1))
+     ((declare () vec4 result)
+      (assign (constant bool (1))   (swiz x (var_ref result))
+              (expression float min (swiz x (var_ref arg0)) (var_ref arg1)))
+      (assign (constant bool (1))   (swiz y (var_ref result))
+              (expression float min (swiz y (var_ref arg0)) (var_ref arg1)))
+      (assign (constant bool (1))   (swiz z (var_ref result))
+              (expression float min (swiz z (var_ref arg0)) (var_ref arg1)))
+      (assign (constant bool (1))   (swiz w (var_ref result))
+              (expression float min (swiz w (var_ref arg0)) (var_ref arg1)))
+      (return (var_ref result))))
 ))