| Index: src/serialize.cc
|
| diff --git a/src/serialize.cc b/src/serialize.cc
|
| index 9ee434d952318887ebcc6890eb1111a23b44839a..9d370dd51aa9b83bcdcb8d3af696e85f975e9bbe 100644
|
| --- a/src/serialize.cc
|
| +++ b/src/serialize.cc
|
| @@ -345,7 +345,8 @@ void SimulatedHeapSpace::InitCurrentHeap(AllocationSpace space) {
|
| case NEW_SPACE:
|
| current_ = RelativeAddress(space,
|
| 0,
|
| - Heap::NewSpaceTop() - Heap::NewSpaceStart());
|
| + static_cast<int>(Heap::NewSpaceTop()
|
| + - Heap::NewSpaceStart()));
|
| break;
|
| case LO_SPACE:
|
| int page_index = 0;
|
| @@ -576,7 +577,7 @@ void ExternalReferenceTable::PopulateTable() {
|
| Debug::k_debug_break_return_address << kDebugIdShift,
|
| "Debug::debug_break_return_address()");
|
| const char* debug_register_format = "Debug::register_address(%i)";
|
| - size_t dr_format_length = strlen(debug_register_format);
|
| + int dr_format_length = StrLength(debug_register_format);
|
| for (int i = 0; i < kNumJSCallerSaved; ++i) {
|
| Vector<char> name = Vector<char>::New(dr_format_length + 1);
|
| OS::SNPrintF(name, debug_register_format, i);
|
| @@ -624,11 +625,11 @@ void ExternalReferenceTable::PopulateTable() {
|
| #undef C
|
| };
|
|
|
| - size_t top_format_length = strlen(top_address_format) - 2;
|
| + int top_format_length = StrLength(top_address_format) - 2;
|
| for (uint16_t i = 0; i < Top::k_top_address_count; ++i) {
|
| const char* address_name = AddressNames[i];
|
| Vector<char> name =
|
| - Vector<char>::New(top_format_length + strlen(address_name) + 1);
|
| + Vector<char>::New(top_format_length + StrLength(address_name) + 1);
|
| const char* chars = name.start();
|
| OS::SNPrintF(name, top_address_format, address_name);
|
| Add(Top::get_address_from_id((Top::AddressId)i), TOP_ADDRESS, i, chars);
|
| @@ -924,7 +925,7 @@ void SnapshotWriter::Reserve(int bytes, int pos) {
|
| }
|
|
|
| int SnapshotWriter::InsertString(const char* s, int pos) {
|
| - int size = strlen(s);
|
| + int size = StrLength(s);
|
| pos = InsertC('[', pos);
|
| pos = InsertInt(size, pos);
|
| pos = InsertC(']', pos);
|
| @@ -947,7 +948,8 @@ class ReferenceUpdater: public ObjectVisitor {
|
| virtual void VisitPointers(Object** start, Object** end) {
|
| for (Object** p = start; p < end; ++p) {
|
| if ((*p)->IsHeapObject()) {
|
| - offsets_.Add(reinterpret_cast<Address>(p) - obj_address_);
|
| + offsets_.Add(
|
| + static_cast<int>(reinterpret_cast<Address>(p) - obj_address_));
|
| Address a = serializer_->GetSavedAddress(HeapObject::cast(*p));
|
| addresses_.Add(a);
|
| }
|
| @@ -959,7 +961,8 @@ class ReferenceUpdater: public ObjectVisitor {
|
| Code* target = Code::GetCodeFromTargetAddress(rinfo->target_address());
|
| Address encoded_target = serializer_->GetSavedAddress(target);
|
| // All calls and jumps are to code objects that encode into 32 bits.
|
| - offsets_32_bit_.Add(rinfo->target_address_address() - obj_address_);
|
| + offsets_32_bit_.Add(
|
| + static_cast<int>(rinfo->target_address_address() - obj_address_));
|
| uint32_t small_target =
|
| static_cast<uint32_t>(reinterpret_cast<uintptr_t>(encoded_target));
|
| ASSERT(reinterpret_cast<uintptr_t>(encoded_target) == small_target);
|
| @@ -971,7 +974,8 @@ class ReferenceUpdater: public ObjectVisitor {
|
| for (Address* p = start; p < end; ++p) {
|
| uint32_t code = reference_encoder_->Encode(*p);
|
| CHECK(*p == NULL ? code == 0 : code != 0);
|
| - offsets_.Add(reinterpret_cast<Address>(p) - obj_address_);
|
| + offsets_.Add(
|
| + static_cast<int>(reinterpret_cast<Address>(p) - obj_address_));
|
| addresses_.Add(reinterpret_cast<Address>(code));
|
| }
|
| }
|
| @@ -980,7 +984,8 @@ class ReferenceUpdater: public ObjectVisitor {
|
| Address target = rinfo->target_address();
|
| uint32_t encoding = reference_encoder_->Encode(target);
|
| CHECK(target == NULL ? encoding == 0 : encoding != 0);
|
| - offsets_.Add(rinfo->target_address_address() - obj_address_);
|
| + offsets_.Add(
|
| + static_cast<int>(rinfo->target_address_address() - obj_address_));
|
| addresses_.Add(reinterpret_cast<Address>(encoding));
|
| }
|
|
|
| @@ -1050,7 +1055,7 @@ static const int kMaxTagLength = 32;
|
|
|
| void Serializer::Synchronize(const char* tag) {
|
| if (FLAG_debug_serialization) {
|
| - int length = strlen(tag);
|
| + int length = StrLength(tag);
|
| ASSERT(length <= kMaxTagLength);
|
| writer_->PutC('S');
|
| writer_->PutInt(length);
|
| @@ -1415,7 +1420,7 @@ void Deserializer::Synchronize(const char* tag) {
|
| int length = reader_.GetInt();
|
| ASSERT(length <= kMaxTagLength);
|
| reader_.GetBytes(reinterpret_cast<Address>(buf), length);
|
| - ASSERT_EQ(strlen(tag), length);
|
| + ASSERT_EQ(StrLength(tag), length);
|
| ASSERT(strncmp(tag, buf, length) == 0);
|
| }
|
| }
|
| @@ -1931,8 +1936,8 @@ void Deserializer2::ReadChunk(Object** current,
|
| case OBJECT_SERIALIZATION + NEW_SPACE: {
|
| ReadObject(NEW_SPACE, Heap::new_space(), current);
|
| if (space != NEW_SPACE) {
|
| - Heap::RecordWrite(address,
|
| - reinterpret_cast<Address>(current) - address);
|
| + Heap::RecordWrite(address, static_cast<int>(
|
| + reinterpret_cast<Address>(current) - address));
|
| }
|
| current++;
|
| break;
|
| @@ -1989,8 +1994,8 @@ void Deserializer2::ReadChunk(Object** current,
|
| // Write a backreference to an object we unpacked earlier.
|
| int backref_space = (data & kSpaceMask);
|
| if (backref_space == NEW_SPACE && space != NEW_SPACE) {
|
| - Heap::RecordWrite(address,
|
| - reinterpret_cast<Address>(current) - address);
|
| + Heap::RecordWrite(address, static_cast<int>(
|
| + reinterpret_cast<Address>(current) - address));
|
| }
|
| *current++ = GetAddressFromEnd(backref_space);
|
| break;
|
| @@ -1999,8 +2004,8 @@ void Deserializer2::ReadChunk(Object** current,
|
| // Write a reference to an object we unpacked earlier.
|
| int reference_space = (data & kSpaceMask);
|
| if (reference_space == NEW_SPACE && space != NEW_SPACE) {
|
| - Heap::RecordWrite(address,
|
| - reinterpret_cast<Address>(current) - address);
|
| + Heap::RecordWrite(address, static_cast<int>(
|
| + reinterpret_cast<Address>(current) - address));
|
| }
|
| *current++ = GetAddressFromStart(reference_space);
|
| break;
|
| @@ -2082,7 +2087,7 @@ void Deserializer2::ReadChunk(Object** current,
|
| void SnapshotByteSink::PutInt(uintptr_t integer, const char* description) {
|
| const int max_shift = ((kPointerSize * kBitsPerByte) / 7) * 7;
|
| for (int shift = max_shift; shift > 0; shift -= 7) {
|
| - if (integer >= 1u << shift) {
|
| + if (integer >= static_cast<uintptr_t>(1u) << shift) {
|
| Put(((integer >> shift) & 0x7f) | 0x80, "IntPart");
|
| }
|
| }
|
| @@ -2283,7 +2288,7 @@ void Serializer2::ObjectSerializer::VisitExternalReferences(Address* start,
|
| int reference_id = serializer_->EncodeExternalReference(*current);
|
| sink_->PutInt(reference_id, "reference id");
|
| }
|
| - bytes_processed_so_far_ += (end - start) * kPointerSize;
|
| + bytes_processed_so_far_ += static_cast<int>((end - start) * kPointerSize);
|
| }
|
|
|
|
|
| @@ -2338,7 +2343,7 @@ void Serializer2::ObjectSerializer::VisitExternalAsciiString(
|
|
|
| void Serializer2::ObjectSerializer::OutputRawData(Address up_to) {
|
| Address object_start = object_->address();
|
| - int up_to_offset = up_to - object_start;
|
| + int up_to_offset = static_cast<int>(up_to - object_start);
|
| int skipped = up_to_offset - bytes_processed_so_far_;
|
| // This assert will fail if the reloc info gives us the target_address_address
|
| // locations in a non-ascending order. Luckily that doesn't happen.
|
|
|