v8
3.11.10(node0.8.26)
V8 is Google's open source JavaScript engine
|
#include <serialize.h>
Public Member Functions | |
ObjectSerializer (Serializer *serializer, Object *o, SnapshotByteSink *sink, HowToCode how_to_code, WhereToPoint where_to_point) | |
void | Serialize () |
void | VisitPointers (Object **start, Object **end) |
void | VisitEmbeddedPointer (RelocInfo *target) |
void | VisitExternalReferences (Address *start, Address *end) |
void | VisitExternalReference (RelocInfo *rinfo) |
void | VisitCodeTarget (RelocInfo *target) |
void | VisitCodeEntry (Address entry_address) |
void | VisitGlobalPropertyCell (RelocInfo *rinfo) |
void | VisitRuntimeEntry (RelocInfo *reloc) |
void | VisitExternalAsciiString (v8::String::ExternalAsciiStringResource **resource) |
void | VisitExternalTwoByteString (v8::String::ExternalStringResource **resource) |
Definition at line 496 of file serialize.h.
|
inline |
Definition at line 498 of file serialize.h.
void Serialize | ( | ) |
Definition at line 1427 of file serialize.cc.
References SerializationAddressMapper::AddMapping(), HeapObject::address(), Serializer::address_mapper(), Serializer::Allocate(), CHECK_EQ, Map::instance_type(), HeapObject::IterateBody(), SerializerDeserializer::kNewObject, SerializerDeserializer::kNewPage, v8::internal::kObjectAlignmentBits, SerializerDeserializer::kPlain, v8::internal::kPointerSize, SerializerDeserializer::kStartOfObject, LOG, HeapObject::map(), SnapshotByteSink::Position(), SnapshotByteSink::Put(), SnapshotByteSink::PutInt(), SnapshotByteSink::PutSection(), Serializer::SerializeObject(), HeapObject::Size(), and Serializer::SpaceOfObject().
Referenced by PartialSerializer::SerializeObject(), and StartupSerializer::SerializeObject().
void VisitCodeEntry | ( | Address | entry_address | ) |
Definition at line 1565 of file serialize.cc.
References Code::cast(), Code::GetObjectFromEntryAddress(), SerializerDeserializer::kFirstInstruction, SerializerDeserializer::kPlain, and v8::internal::kPointerSize.
void VisitCodeTarget | ( | RelocInfo * | target | ) |
Definition at line 1555 of file serialize.cc.
References CHECK, Code::GetCodeFromTargetAddress(), SerializerDeserializer::kFirstInstruction, and SerializerDeserializer::kFromCode.
void VisitEmbeddedPointer | ( | RelocInfo * | target | ) |
Definition at line 1498 of file serialize.cc.
References SerializerDeserializer::kFromCode, SerializerDeserializer::kPlain, and SerializerDeserializer::kStartOfObject.
void VisitExternalAsciiString | ( | v8::String::ExternalAsciiStringResource ** | resource | ) |
Definition at line 1580 of file serialize.cc.
References ExternalAsciiString::cast(), NativesCollection< type >::GetBuiltinsCount(), HEAP, SerializerDeserializer::kNativesStringResource, SnapshotByteSink::Put(), SnapshotByteSink::PutSection(), Serializer::sink_, and UNREACHABLE.
void VisitExternalReference | ( | RelocInfo * | rinfo | ) |
Definition at line 1522 of file serialize.cc.
References SerializerDeserializer::kExternalReference, SerializerDeserializer::kFromCode, SerializerDeserializer::kPlain, SerializerDeserializer::kStartOfObject, SnapshotByteSink::Put(), SnapshotByteSink::PutInt(), and Serializer::sink_.
Definition at line 1508 of file serialize.cc.
References SerializerDeserializer::kExternalReference, SerializerDeserializer::kPlain, v8::internal::kPointerSize, SerializerDeserializer::kStartOfObject, SnapshotByteSink::Put(), SnapshotByteSink::PutInt(), and Serializer::sink_.
|
inline |
Definition at line 521 of file serialize.h.
References UNREACHABLE.
void VisitGlobalPropertyCell | ( | RelocInfo * | rinfo | ) |
Definition at line 1573 of file serialize.cc.
References UNREACHABLE.
Definition at line 1458 of file serialize.cc.
References ASSERT, HeapObject::cast(), SerializerDeserializer::CodeForRepeats(), HEAP, Serializer::kInvalidRootIndex, SerializerDeserializer::kMaxRepeats, SerializerDeserializer::kPlain, v8::internal::kPointerSize, SerializerDeserializer::kRepeat, SerializerDeserializer::kRootArrayNumberOfConstantEncodings, SerializerDeserializer::kStartOfObject, SnapshotByteSink::Put(), SnapshotByteSink::PutInt(), and Serializer::sink_.
void VisitRuntimeEntry | ( | RelocInfo * | reloc | ) |
Definition at line 1536 of file serialize.cc.
References CHECK, SerializerDeserializer::kExternalReference, SerializerDeserializer::kFromCode, SerializerDeserializer::kPlain, SerializerDeserializer::kStartOfObject, v8::internal::NULL, SnapshotByteSink::Put(), SnapshotByteSink::PutInt(), and Serializer::sink_.