aboutsummaryrefslogtreecommitdiff
path: root/glslang/MachineIndependent/Constant.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'glslang/MachineIndependent/Constant.cpp')
-rw-r--r--glslang/MachineIndependent/Constant.cpp14
1 files changed, 4 insertions, 10 deletions
diff --git a/glslang/MachineIndependent/Constant.cpp b/glslang/MachineIndependent/Constant.cpp
index e21cf427..8dc04a42 100644
--- a/glslang/MachineIndependent/Constant.cpp
+++ b/glslang/MachineIndependent/Constant.cpp
@@ -599,17 +599,11 @@ TIntermTyped* TIntermConstantUnion::fold(TOperator op, const TType& returnType)
newConstArray[i].setDConst(log(unionArray[i].getDConst()));
break;
case EOpExp2:
- {
- const double inv_log2_e = 0.69314718055994530941723212145818;
- newConstArray[i].setDConst(exp(unionArray[i].getDConst() * inv_log2_e));
- break;
- }
+ newConstArray[i].setDConst(exp2(unionArray[i].getDConst()));
+ break;
case EOpLog2:
- {
- const double log2_e = 1.4426950408889634073599246810019;
- newConstArray[i].setDConst(log2_e * log(unionArray[i].getDConst()));
- break;
- }
+ newConstArray[i].setDConst(log2(unionArray[i].getDConst()));
+ break;
case EOpSqrt:
newConstArray[i].setDConst(sqrt(unionArray[i].getDConst()));
break;