Revision: 9544
Author:   [email protected]
Date:     Fri Oct  7 01:21:21 2011
Log:      Change cached powers of 10 to avoid constants that need a static
initializer to be called on process startup instead of being in
the read-only section.
Review URL: http://codereview.chromium.org/8177018
http://code.google.com/p/v8/source/detail?r=9544

Modified:
 /branches/bleeding_edge/src/cached-powers.cc

=======================================
--- /branches/bleeding_edge/src/cached-powers.cc        Tue Jul  5 04:54:11 2011
+++ /branches/bleeding_edge/src/cached-powers.cc        Fri Oct  7 01:21:21 2011
@@ -134,14 +134,12 @@
 };

 static const int kCachedPowersLength = ARRAY_SIZE(kCachedPowers);
-static const int kCachedPowersOffset = -kCachedPowers[0].decimal_exponent;
+static const int kCachedPowersOffset = 348; // -1 * the first decimal_exponent.
 static const double kD_1_LOG2_10 = 0.30102999566398114;  //  1 / lg(10)
-const int PowersOfTenCache::kDecimalExponentDistance =
-    kCachedPowers[1].decimal_exponent - kCachedPowers[0].decimal_exponent;
-const int PowersOfTenCache::kMinDecimalExponent =
-    kCachedPowers[0].decimal_exponent;
-const int PowersOfTenCache::kMaxDecimalExponent =
-    kCachedPowers[kCachedPowersLength - 1].decimal_exponent;
+// Difference between the decimal exponents in the table above.
+const int PowersOfTenCache::kDecimalExponentDistance = 8;
+const int PowersOfTenCache::kMinDecimalExponent = -348;
+const int PowersOfTenCache::kMaxDecimalExponent = 340;

 void PowersOfTenCache::GetCachedPowerForBinaryExponentRange(
     int min_exponent,

--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to