diff options
author | Brian <brian@nostromo.localnet.net> | 2007-01-28 16:11:11 -0700 |
---|---|---|
committer | Brian <brian@nostromo.localnet.net> | 2007-01-28 16:11:11 -0700 |
commit | 62e7c033c02149966c00100f3c256e2eb3fc3536 (patch) | |
tree | e5d74b04216b9557297f981a28b495e70c723455 /src/mesa/shader/slang/library/slang_common_builtin.gc | |
parent | 4de6fac4daecac25bb3f4339610312022b457b46 (diff) |
implement mix() with LRP instruction
Diffstat (limited to 'src/mesa/shader/slang/library/slang_common_builtin.gc')
-rw-r--r-- | src/mesa/shader/slang/library/slang_common_builtin.gc | 21 |
1 files changed, 7 insertions, 14 deletions
diff --git a/src/mesa/shader/slang/library/slang_common_builtin.gc b/src/mesa/shader/slang/library/slang_common_builtin.gc index e32a8831dc..8812a73416 100644 --- a/src/mesa/shader/slang/library/slang_common_builtin.gc +++ b/src/mesa/shader/slang/library/slang_common_builtin.gc @@ -1029,44 +1029,37 @@ vec4 clamp(const vec4 val, const vec4 minVal, const vec4 maxVal) float mix(const float x, const float y, const float a) { - const float d = y - x; - return x + d * a; // MAD + __asm vec4_lrp __retVal, a, y, x; } vec2 mix(const vec2 x, const vec2 y, const float a) { - const vec2 d = y - x; - return x + d * a; // MAD + __asm vec4_lrp __retVal, a, y, x; } vec3 mix(const vec3 x, const vec3 y, const float a) { - const vec3 d = y - x; - return x + d * a; // MAD + __asm vec4_lrp __retVal, a, y, x; } vec4 mix(const vec4 x, const vec4 y, const float a) { - const vec4 d = y - x; - return x + d * a; // MAD + __asm vec4_lrp __retVal, a, y, x; } vec2 mix(const vec2 x, const vec2 y, const vec2 a) { - const vec2 d = y - x; - return x + d * a; // MAD + __asm vec4_lrp __retVal, a, y, x; } vec3 mix(const vec3 x, const vec3 y, const vec3 a) { - const vec3 d = y - x; - return x + d * a; // MAD + __asm vec4_lrp __retVal, a, y, x; } vec4 mix(const vec4 x, const vec4 y, const vec4 a) { - const vec4 d = y - x; - return x + d * a; // MAD + __asm vec4_lrp __retVal, a, y, x; } |