diff options
author | Kenneth Graunke <[email protected]> | 2010-10-14 14:33:30 -0700 |
---|---|---|
committer | Kenneth Graunke <[email protected]> | 2010-10-14 15:59:47 -0700 |
commit | 27ced5c5ff907557007ed6cb78cef5810cf48ef5 (patch) | |
tree | a74cad6777272c1f8ef08bc25b6e1bae5535618d /src/glsl | |
parent | f157812bbbcf9caac1f84988e738fc9d1e051056 (diff) |
glsl: Add support for the 1.30 round() built-in.
This implements round() via the ir_unop_round_even opcode, rather than
adding a new opcode. We may wish to add one in the future, since it
might enable a small performance increase on some hardware, but for now,
this should suffice.
Diffstat (limited to 'src/glsl')
-rw-r--r-- | src/glsl/builtins/ir/round | 21 | ||||
-rw-r--r-- | src/glsl/builtins/profiles/130.frag | 5 | ||||
-rw-r--r-- | src/glsl/builtins/profiles/130.vert | 5 |
3 files changed, 31 insertions, 0 deletions
diff --git a/src/glsl/builtins/ir/round b/src/glsl/builtins/ir/round new file mode 100644 index 00000000000..d0d425bd656 --- /dev/null +++ b/src/glsl/builtins/ir/round @@ -0,0 +1,21 @@ +((function round + (signature float + (parameters + (declare (in) float arg0)) + ((return (expression float round_even (var_ref arg0))))) + + (signature vec2 + (parameters + (declare (in) vec2 arg0)) + ((return (expression vec2 round_even (var_ref arg0))))) + + (signature vec3 + (parameters + (declare (in) vec3 arg0)) + ((return (expression vec3 round_even (var_ref arg0))))) + + (signature vec4 + (parameters + (declare (in) vec4 arg0)) + ((return (expression vec4 round_even (var_ref arg0))))) +)) diff --git a/src/glsl/builtins/profiles/130.frag b/src/glsl/builtins/profiles/130.frag index c8b6319ae62..96440703bd3 100644 --- a/src/glsl/builtins/profiles/130.frag +++ b/src/glsl/builtins/profiles/130.frag @@ -148,6 +148,11 @@ vec2 trunc(vec2 x); vec3 trunc(vec3 x); vec4 trunc(vec4 x); +float round(float x); +vec2 round(vec2 x); +vec3 round(vec3 x); +vec4 round(vec4 x); + float roundEven(float x); vec2 roundEven(vec2 x); vec3 roundEven(vec3 x); diff --git a/src/glsl/builtins/profiles/130.vert b/src/glsl/builtins/profiles/130.vert index 9d1056f282f..eb765186fc8 100644 --- a/src/glsl/builtins/profiles/130.vert +++ b/src/glsl/builtins/profiles/130.vert @@ -148,6 +148,11 @@ vec2 trunc(vec2 x); vec3 trunc(vec3 x); vec4 trunc(vec4 x); +float round(float x); +vec2 round(vec2 x); +vec3 round(vec3 x); +vec4 round(vec4 x); + float roundEven(float x); vec2 roundEven(vec2 x); vec3 roundEven(vec3 x); |