glsl: Avoid double promotion.
authorMatt Turner <mattst88@gmail.com>
Thu, 16 Jul 2015 04:29:21 +0000 (21:29 -0700)
committerMatt Turner <mattst88@gmail.com>
Wed, 29 Jul 2015 16:34:52 +0000 (09:34 -0700)
src/glsl/ir_constant_expression.cpp

index 7a38fa421939caa1b9101e7abd5971873e9ad6de..2853c1643b32240d886b2420e42f906335636fa3 100644 (file)
@@ -1662,10 +1662,10 @@ ir_expression::constant_expression_value(struct hash_table *variable_context)
             if (!isnormal(data.d[c]))
                data.d[c] = copysign(0.0, op[0]->value.d[c]);
          } else {
-            data.f[c] = ldexp(op[0]->value.f[c], op[1]->value.i[c]);
+            data.f[c] = ldexpf(op[0]->value.f[c], op[1]->value.i[c]);
             /* Flush subnormal values to zero. */
             if (!isnormal(data.f[c]))
-               data.f[c] = copysign(0.0f, op[0]->value.f[c]);
+               data.f[c] = copysignf(0.0f, op[0]->value.f[c]);
          }
       }
       break;