Reviewers: jkummerow,

Message:
PTAL. Needed to fix build, which is currently busted.

Description:
Fixes build failures from FixedDoubleArray IC patch.

BUG=none
TEST=windows build bot works


Please review this at http://codereview.chromium.org/7342048/

SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge

Affected files:
  M src/assembler.cc
  M src/objects-debug.cc
  M src/objects-inl.h
  M src/objects.cc
  M src/v8globals.h


Index: src/assembler.cc
diff --git a/src/assembler.cc b/src/assembler.cc
index 5d79b84bd4407fb69beed05751c2f10034f82935..fbd808958044611bcd93ac4e77a53c07a07bcf28 100644
--- a/src/assembler.cc
+++ b/src/assembler.cc
@@ -71,8 +71,7 @@ const double DoubleConstant::one_half = 0.5;
 const double DoubleConstant::minus_zero = -0.0;
 const double DoubleConstant::uint8_max_value = 255;
 const double DoubleConstant::zero = 0.0;
-const double DoubleConstant::canonical_non_hole_nan =
-    BitCast<double>(kCanonicalNonHoleNanInt64);
+const double DoubleConstant::canonical_non_hole_nan = OS::nan_value();
 const double DoubleConstant::the_hole_nan = BitCast<double>(kHoleNanInt64);
 const double DoubleConstant::negative_infinity = -V8_INFINITY;
 const char* RelocInfo::kFillerCommentString = "DEOPTIMIZATION PADDING";
Index: src/objects-debug.cc
diff --git a/src/objects-debug.cc b/src/objects-debug.cc
index 3d325b8774f61f949b031cc7c73b968d176c7bdc..29632317a5e9309ee456c2e0ce9042b0b4c48cdf 100644
--- a/src/objects-debug.cc
+++ b/src/objects-debug.cc
@@ -315,7 +315,8 @@ void FixedDoubleArray::FixedDoubleArrayVerify() {
     if (!is_the_hole(i)) {
       double value = get(i);
       ASSERT(!isnan(value) ||
-             BitCast<uint64_t>(value) == kCanonicalNonHoleNanInt64);
+             (BitCast<uint64_t>(value) ==
+              BitCast<uint64_t>(canonical_not_the_hole_nan_as_double())));
     }
   }
 }
Index: src/objects-inl.h
diff --git a/src/objects-inl.h b/src/objects-inl.h
index 7fb46d07c77f14355bd8691a1d8bbdbb1f11b9b3..fdc5102049fcc2fd7b9119c9824218203af77053 100644
--- a/src/objects-inl.h
+++ b/src/objects-inl.h
@@ -1621,7 +1621,9 @@ inline double FixedDoubleArray::hole_nan_as_double() {


 inline double FixedDoubleArray::canonical_not_the_hole_nan_as_double() {
-  return BitCast<double, uint64_t>(kCanonicalNonHoleNanInt64);
+  ASSERT(BitCast<uint64_t>(OS::nan_value()) != kHoleNanInt64);
+  ASSERT((BitCast<uint64_t>(OS::nan_value()) >> 32) != kHoleNanUpper32);
+  return OS::nan_value();
 }


Index: src/objects.cc
diff --git a/src/objects.cc b/src/objects.cc
index 1157d723701648c2ee2d05c908c4b338722bbeaa..f728e111802013fc38519ed774978cfcf0603ea9 100644
--- a/src/objects.cc
+++ b/src/objects.cc
@@ -3421,6 +3421,8 @@ bool JSObject::IsSimpleEnum() {
 }


+
+
 int Map::NumberOfDescribedProperties() {
   int result = 0;
   DescriptorArray* descs = instance_descriptors();
Index: src/v8globals.h
diff --git a/src/v8globals.h b/src/v8globals.h
index 98874b50c05d01c7c687aeeac0f6ac14fec73f39..aff27579f8d78b6cd8337f9b8fba578237993c42 100644
--- a/src/v8globals.h
+++ b/src/v8globals.h
@@ -509,15 +509,10 @@ enum CallKind {

 static const uint32_t kHoleNanUpper32 = 0x7FFFFFFF;
 static const uint32_t kHoleNanLower32 = 0xFFFFFFFF;
-static const uint32_t kCanonicalNonHoleNanUpper32 = 0x7FF10000;
-static const uint32_t kCanonicalNonHoleNanLower32 = 0xFFFFFFFF;
 static const uint32_t kNaNOrInfinityLowerBoundUpper32 = 0x7FF00000;

 const uint64_t kHoleNanInt64 =
     (static_cast<uint64_t>(kHoleNanUpper32) << 32) | kHoleNanLower32;
-const uint64_t kCanonicalNonHoleNanInt64 =
-    (static_cast<uint64_t>(kCanonicalNonHoleNanUpper32) << 32) |
-        kCanonicalNonHoleNanLower32;
 const uint64_t kLastNonNaNInt64 =
     (static_cast<uint64_t>(kNaNOrInfinityLowerBoundUpper32) << 32);



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

Reply via email to