v8
3.14.5(node0.10.28)
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 500 of file serialize.h.
|
inline |
Definition at line 502 of file serialize.h.
void Serialize | ( | ) |
Definition at line 1354 of file serialize.cc.
References SerializationAddressMapper::AddMapping(), HeapObject::address(), Serializer::address_mapper(), Serializer::Allocate(), CHECK_EQ, Map::instance_type(), HeapObject::IterateBody(), v8::internal::kObjectAlignmentBits, SerializerDeserializer::kPlain, v8::internal::kPointerSize, SerializerDeserializer::kStartOfObject, LOG, HeapObject::map(), SnapshotByteSink::Position(), SnapshotByteSink::Put(), SnapshotByteSink::PutInt(), Serializer::SerializeObject(), HeapObject::Size(), and Serializer::SpaceOfObject().
Referenced by PartialSerializer::SerializeObject(), and StartupSerializer::SerializeObject().
void VisitCodeEntry | ( | Address | entry_address | ) |
Definition at line 1493 of file serialize.cc.
References Code::cast(), Code::GetObjectFromEntryAddress(), and v8::internal::kPointerSize.
void VisitCodeTarget | ( | RelocInfo * | target | ) |
Definition at line 1483 of file serialize.cc.
References CHECK, and Code::GetCodeFromTargetAddress().
void VisitEmbeddedPointer | ( | RelocInfo * | target | ) |
Definition at line 1421 of file serialize.cc.
References SerializerDeserializer::kPlain.
void VisitExternalAsciiString | ( | v8::String::ExternalAsciiStringResource ** | resource | ) |
Definition at line 1510 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 1448 of file serialize.cc.
References SerializerDeserializer::kStartOfObject, SnapshotByteSink::Put(), SnapshotByteSink::PutInt(), and Serializer::sink_.
Definition at line 1432 of file serialize.cc.
References v8::internal::kPointerSize, SnapshotByteSink::Put(), SnapshotByteSink::PutInt(), and Serializer::sink_.
|
inline |
Definition at line 527 of file serialize.h.
References UNREACHABLE.
void VisitGlobalPropertyCell | ( | RelocInfo * | rinfo | ) |
Definition at line 1501 of file serialize.cc.
References ASSERT, and JSGlobalPropertyCell::cast().
Definition at line 1380 of file serialize.cc.
References ASSERT, HeapObject::cast(), SerializerDeserializer::CodeForRepeats(), HEAP, Serializer::kInvalidRootIndex, SerializerDeserializer::kMaxRepeats, v8::internal::kPointerSize, SerializerDeserializer::kRepeat, SerializerDeserializer::kRootArrayNumberOfConstantEncodings, SnapshotByteSink::Put(), SnapshotByteSink::PutInt(), and Serializer::sink_.
void VisitRuntimeEntry | ( | RelocInfo * | reloc | ) |
Definition at line 1463 of file serialize.cc.
References CHECK, SerializerDeserializer::kFromCode, SerializerDeserializer::kPlain, v8::internal::NULL, SnapshotByteSink::Put(), SnapshotByteSink::PutInt(), and Serializer::sink_.