Revision: 5084
Author: [email protected]
Date: Fri Jul 16 01:20:39 2010
Log: Fix compilation errors on X64. Error from r5080 is constructor Operand(register) with too few arguments, while constructing a dummy return value in unreachable code to avoid compiler errors. Also added explicit cast from intptr_t to int in profile-generator.cc to avoid compiler warnings, introduced in r5078.
Review URL: http://codereview.chromium.org/3030002
http://code.google.com/p/v8/source/detail?r=5084

Modified:
 /branches/bleeding_edge/src/profile-generator.cc
 /branches/bleeding_edge/src/x64/codegen-x64.cc

=======================================
--- /branches/bleeding_edge/src/profile-generator.cc Thu Jul 15 08:41:05 2010 +++ /branches/bleeding_edge/src/profile-generator.cc Fri Jul 16 01:20:39 2010
@@ -1557,7 +1557,8 @@
 uint64_t HeapObjectsMap::FindEntry(Address addr) {
HashMap::Entry* entry = entries_map_.Lookup(addr, AddressHash(addr), false);
   if (entry != NULL) {
-    int entry_index = reinterpret_cast<intptr_t>(entry->value);
+    int entry_index =
+        static_cast<int>(reinterpret_cast<intptr_t>(entry->value));
     EntryInfo& entry_info = entries_->at(entry_index);
     entry_info.accessed = true;
     return entry_info.id;
@@ -1572,7 +1573,8 @@
   for (HashMap::Entry* entry = entries_map_.Start();
        entry != NULL;
        entry = entries_map_.Next(entry)) {
-    int entry_index = reinterpret_cast<intptr_t>(entry->value);
+    int entry_index =
+        static_cast<int>(reinterpret_cast<intptr_t>(entry->value));
     EntryInfo& entry_info = entries_->at(entry_index);
     if (entry_info.accessed) {
       entry->value = reinterpret_cast<void*>(new_entries->length());
=======================================
--- /branches/bleeding_edge/src/x64/codegen-x64.cc      Thu Jul 15 07:31:49 2010
+++ /branches/bleeding_edge/src/x64/codegen-x64.cc      Fri Jul 16 01:20:39 2010
@@ -438,7 +438,7 @@

     default:
       UNREACHABLE();
-      return Operand(rax);
+      return Operand(rsp, 0);
   }
 }

@@ -11526,7 +11526,7 @@

   // Make count the number of bytes to copy.
   if (!ascii) {
-    ASSERT_EQ(2, sizeof(uc16));  // NOLINT
+    ASSERT_EQ(2, static_cast<int>(sizeof(uc16)));  // NOLINT
     __ addl(count, count);
   }

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

Reply via email to