Chromium Code Reviews| Index: runtime/vm/snapshot.cc |
| =================================================================== |
| --- runtime/vm/snapshot.cc (revision 34648) |
| +++ runtime/vm/snapshot.cc (working copy) |
| @@ -779,6 +779,10 @@ |
| if (object_id == kFalseValue) { |
| return Bool::False().raw(); |
| } |
| + if (object_id == kDoubleObject) { |
| + ASSERT(kind_ == Snapshot::kMessage); |
| + return Double::New(ReadDouble()); |
| + } |
| intptr_t class_id = ClassIdFromObjectId(object_id); |
| if (IsSingletonClassId(class_id)) { |
| return isolate()->class_table()->At(class_id); // get singleton class. |
| @@ -1208,6 +1212,13 @@ |
| return true; |
| } |
| + if ((kind_ == Snapshot::kMessage) && (rawobj->GetClassId() == kDoubleCid)) { |
| + WriteVMIsolateObject(kDoubleObject); |
| + RawDouble* rd = reinterpret_cast<RawDouble*>(rawobj); |
| + WriteDouble(rd->ptr()->value_); |
| + return true; |
| + } |
|
siva
2014/04/03 00:23:16
We should probably consider caching the class id i
Ivan Posva
2014/04/03 00:58:02
Done.
|
| + |
| // Check if object has already been serialized, in that case just write |
| // the object id out. |
| uword tags = rawobj->ptr()->tags_; |