@@ -5,15 +5,13 @@ namespace glm
55 template <>
66 GLM_FUNC_QUALIFIER float fastExp2 (float x)
77 {
8- /*
9- approximated using "exp2(x)" formula
10- for +x = exp2(x)
11- for -x = 1/exp2(abs(x))
12- */
8+ // approximated using "exp2(x)" formula
9+ // for +x = exp2(x)
10+ // for -x = 1/exp2(abs(x))
1311 float mx, out, C0, C1, C2, C3, C4, C5;
1412 bool reciprocal;
1513 uint32_t exponent, tmpx;
16- /* coefficients interval [0, 1] */
14+ // coefficients interval [0, 1]
1715 C0 = 0 .00189646114543331e-00f ;
1816 C1 = 0 .00894282898410912e-00f ;
1917 C2 = 0 .05586624630452070e-00f ;
@@ -36,15 +34,13 @@ namespace glm
3634 template <>
3735 GLM_FUNC_QUALIFIER double fastExp2 (double x)
3836 {
39- /*
40- approximated using "exp2(x)" formula
41- for +x = exp2(x)
42- for -x = 1/exp2(abs(x))
43- */
37+ // approximated using "exp2(x)" formula
38+ // for +x = exp2(x)
39+ // for -x = 1/exp2(abs(x))
4440 double mx, out, C0, C1, C2, C3, C4, C5;
4541 bool reciprocal;
4642 uint64_t exponent, tmpx;
47- /* coefficients interval [0, 1] */
43+ // coefficients interval [0, 1]
4844 C0 = 0.00189646114543331e-00 ;
4945 C1 = 0.00894282898410912e-00 ;
5046 C2 = 0.05586624630452070e-00 ;
@@ -67,27 +63,25 @@ namespace glm
6763 template <>
6864 GLM_FUNC_QUALIFIER float fastLog2 (float x)
6965 {
70- /*
71- approximated using this formula "log2(x)"
72- interval [1, 1.5]
73- for x mantissa <= 1.5 log2(x) ≈ C0 * x + C1 * x2...
74- for x mantissa >= 1.5 log2(x) ≈ log2(x / 1.5) + log2(1.5)
75- for x <= 1.0 = -log2(1/x)
76- */
66+ // approximated using this formula "log2(x)"
67+ // interval [1, 1.5]
68+ // for x mantissa <= 1.5 log2(x) ≈ C0 * x + C1 * x2...
69+ // for x mantissa >= 1.5 log2(x) ≈ log2(x / 1.5) + log2(1.5)
70+ // for x <= 1.0 = -log2(1/x)
7771 float mx, l2, inv_three_half, lx, out, poly, C0, C1, C2, C3, C4, C5, C6;
7872 bool low, low_mantissa;
7973 uint32_t tmpx;
80- /* coefficients */
74+ // coefficients
8175 C0 = -0 .067508561412635e-00f ;
8276 C1 = 0 .605786644896372e-00f ;
8377 C2 = -2 .351461115180550e-00f ;
8478 C3 = 5 .175006419193522e-00f ;
8579 C4 = -7 .182524695365589e-00f ;
8680 C5 = 7 .064678543395325e-00f ;
8781 C6 = -3 .243977190921664e-00f ;
88- /* constants */
89- l2 = 0 .5849625f ; /* log2(1.5) */
90- inv_three_half = 0 .6666667f ; /* 1.0 / 1.5 */
82+ // constants
83+ l2 = 0 .5849625f ; // log2(1.5)
84+ inv_three_half = 0 .6666667f ; // 1.0 / 1.5
9185 mx = x;
9286 low = mx < 1 .0f ;
9387 mx = low ? (1 .0f / mx) : mx;
@@ -105,27 +99,25 @@ namespace glm
10599 template <>
106100 GLM_FUNC_QUALIFIER double fastLog2 (double x)
107101 {
108- /*
109- approximated using this formula "log2(x)"
110- interval [1, 1.5]
111- for x mantissa <= 1.5 log2(x) ≈ C0 * x + C1 * x2...
112- for x mantissa >= 1.5 log2(x) ≈ log2(x / 1.5) + log2(1.5)
113- for x <= 1.0 = -log2(1/x)
114- */
102+ // approximated using this formula "log2(x)"
103+ // interval [1, 1.5]
104+ // for x mantissa <= 1.5 log2(x) ≈ C0 * x + C1 * x2...
105+ // for x mantissa >= 1.5 log2(x) ≈ log2(x / 1.5) + log2(1.5)
106+ // for x <= 1.0 = -log2(1/x)
115107 double mx, l2, inv_three_half, lx, out, poly, C0, C1, C2, C3, C4, C5, C6;
116108 bool low, low_mantissa;
117109 uint64_t tmpx;
118- /* coefficients */
110+ // coefficients
119111 C0 = -0.067508561412635e-00 ;
120112 C1 = 0.605786644896372e-00 ;
121113 C2 = -2.351461115180550e-00 ;
122114 C3 = 5.175006419193522e-00 ;
123115 C4 = -7.182524695365589e-00 ;
124116 C5 = 7.064678543395325e-00 ;
125117 C6 = -3.243977190921664e-00 ;
126- /* constants */
127- l2 = 0.5849625 ; /* log2(1.5) */
128- inv_three_half = 0.6666667 ; /* 1.0 / 1.5 */
118+ // constants
119+ l2 = 0.5849625 ; // log2(1.5)
120+ inv_three_half = 0.6666667 ; // 1.0 / 1.5
129121 mx = x;
130122 low = mx < 1.0 ;
131123 mx = low ? (1.0 / mx) : mx;
0 commit comments