| Index: runtime/vm/raw_object_snapshot.cc
|
| diff --git a/runtime/vm/raw_object_snapshot.cc b/runtime/vm/raw_object_snapshot.cc
|
| index 13791de86ce08e556787214d9f9775b80492b2a0..06dce1270cfcef8cc55dd362cd12161f0f4d19eb 100644
|
| --- a/runtime/vm/raw_object_snapshot.cc
|
| +++ b/runtime/vm/raw_object_snapshot.cc
|
| @@ -2,6 +2,7 @@
|
| // for details. All rights reserved. Use of this source code is governed by a
|
| // BSD-style license that can be found in the LICENSE file.
|
|
|
| +#include "vm/native_entry.h"
|
| #include "vm/object.h"
|
| #include "vm/object_store.h"
|
| #include "vm/snapshot.h"
|
| @@ -1296,6 +1297,16 @@ RawObjectPool* ObjectPool::ReadFrom(SnapshotReader* reader,
|
| result.SetRawValueAt(i, raw_value);
|
| break;
|
| }
|
| + case ObjectPool::kNativeEntry: {
|
| + // Read nothing. Initialize with the lazy link entry.
|
| + uword entry = reinterpret_cast<uword>(&NativeEntry::LinkNativeCall);
|
| +#if defined(USING_SIMULATOR)
|
| + entry = Simulator::RedirectExternalReference(
|
| + entry, Simulator::kBootstrapNativeCall, NativeEntry::kNumArguments);
|
| +#endif
|
| + result.SetRawValueAt(i, entry);
|
| + break;
|
| + }
|
| default:
|
| UNREACHABLE();
|
| }
|
| @@ -1339,6 +1350,9 @@ void RawObjectPool::WriteTo(SnapshotWriter* writer,
|
| // TODO(rmacnak): Write symbolically.
|
| writer->Write<intptr_t>(entry.raw_value_);
|
| break;
|
| + case ObjectPool::kNativeEntry:
|
| + // Write nothing. Will initialize with the lazy link entry.
|
| + break;
|
| default:
|
| UNREACHABLE();
|
| }
|
|
|