Flutter Engine
The Flutter Engine
Public Member Functions | List of all members
dart::MegamorphicCacheSerializationCluster Class Reference
Inheritance diagram for dart::MegamorphicCacheSerializationCluster:
dart::SerializationCluster dart::ZoneAllocated

Public Member Functions

 MegamorphicCacheSerializationCluster ()
 
 ~MegamorphicCacheSerializationCluster ()
 
void Trace (Serializer *s, ObjectPtr object)
 
void WriteAlloc (Serializer *s)
 
void WriteFill (Serializer *s)
 
- Public Member Functions inherited from dart::SerializationCluster
 SerializationCluster (const char *name, intptr_t cid, intptr_t target_instance_size=kSizeVaries, bool is_canonical=false)
 
virtual ~SerializationCluster ()
 
virtual void Trace (Serializer *serializer, ObjectPtr object)=0
 
virtual void WriteAlloc (Serializer *serializer)=0
 
virtual void WriteFill (Serializer *serializer)=0
 
void WriteAndMeasureAlloc (Serializer *serializer)
 
void WriteAndMeasureFill (Serializer *serializer)
 
const char * name () const
 
intptr_t cid () const
 
bool is_canonical () const
 
bool is_immutable () const
 
intptr_t size () const
 
intptr_t num_objects () const
 
intptr_t target_memory_size () const
 
- Public Member Functions inherited from dart::ZoneAllocated
 ZoneAllocated ()
 
void * operator new (size_t size)
 
void * operator new (size_t size, Zone *zone)
 
void operator delete (void *pointer)
 

Additional Inherited Members

- Static Public Attributes inherited from dart::SerializationCluster
static constexpr intptr_t kSizeVaries = -1
 
- Protected Attributes inherited from dart::SerializationCluster
const char *const name_
 
const intptr_t cid_
 
const intptr_t target_instance_size_
 
const bool is_canonical_
 
const bool is_immutable_
 
intptr_t size_ = 0
 
intptr_t num_objects_ = 0
 
intptr_t target_memory_size_ = 0
 

Detailed Description

Definition at line 4124 of file app_snapshot.cc.

Constructor & Destructor Documentation

◆ MegamorphicCacheSerializationCluster()

dart::MegamorphicCacheSerializationCluster::MegamorphicCacheSerializationCluster ( )
inline

Definition at line 4126 of file app_snapshot.cc.

4128 "MegamorphicCache",
4129 kMegamorphicCacheCid,
SerializationCluster(const char *name, intptr_t cid, intptr_t target_instance_size=kSizeVaries, bool is_canonical=false)

◆ ~MegamorphicCacheSerializationCluster()

dart::MegamorphicCacheSerializationCluster::~MegamorphicCacheSerializationCluster ( )
inline

Definition at line 4131 of file app_snapshot.cc.

4131{}

Member Function Documentation

◆ Trace()

void dart::MegamorphicCacheSerializationCluster::Trace ( Serializer s,
ObjectPtr  object 
)
inlinevirtual

Implements dart::SerializationCluster.

Definition at line 4133 of file app_snapshot.cc.

4133 {
4134 MegamorphicCachePtr cache = MegamorphicCache::RawCast(object);
4135 objects_.Add(cache);
4137 }
#define PushFromTo(obj,...)
void Add(const T &value)
static ObjectPtr RawCast(ObjectPtr obj)
Definition: object.h:325
DEF_SWITCHES_START aot vmservice shared library Name of the *so containing AOT compiled Dart assets for launching the service isolate vm snapshot The VM snapshot data that will be memory mapped as read only SnapshotAssetPath must be present isolate snapshot The isolate snapshot data that will be memory mapped as read only SnapshotAssetPath must be present cache dir Path to the cache directory This is different from the persistent_cache_path in embedder which is used for Skia shader cache icu native lib Path to the library file that exports the ICU data vm service The hostname IP address on which the Dart VM Service should be served If not defaults to or::depending on whether ipv6 is specified vm service A custom Dart VM Service port The default is to pick a randomly available open port disable vm Disable the Dart VM Service The Dart VM Service is never available in release mode disable vm service Disable mDNS Dart VM Service publication Bind to the IPv6 localhost address for the Dart VM Service Ignored if vm service host is set endless trace Enable an endless trace buffer The default is a ring buffer This is useful when very old events need to viewed For during application launch Memory usage will continue to grow indefinitely however Start app with an specific route defined on the framework flutter assets Path to the Flutter assets directory enable service port Allow the VM service to fallback to automatic port selection if binding to a specified port fails trace Trace early application lifecycle Automatically switches to an endless trace buffer trace skia Filters out all Skia trace event categories except those that are specified in this comma separated list dump skp on shader Automatically dump the skp that triggers new shader compilations This is useful for writing custom ShaderWarmUp to reduce jank By this is not enabled to reduce the overhead purge persistent cache
Definition: switches.h:191

◆ WriteAlloc()

void dart::MegamorphicCacheSerializationCluster::WriteAlloc ( Serializer s)
inlinevirtual

Implements dart::SerializationCluster.

Definition at line 4139 of file app_snapshot.cc.

4139 {
4140 const intptr_t count = objects_.length();
4141 s->WriteUnsigned(count);
4142 for (intptr_t i = 0; i < count; i++) {
4143 MegamorphicCachePtr cache = objects_[i];
4144 s->AssignRef(cache);
4145 }
4146 }
int count
Definition: FontMgrTest.cpp:50
intptr_t length() const
struct MyStruct s

◆ WriteFill()

void dart::MegamorphicCacheSerializationCluster::WriteFill ( Serializer s)
inlinevirtual

Implements dart::SerializationCluster.

Definition at line 4148 of file app_snapshot.cc.

4148 {
4149 const intptr_t count = objects_.length();
4150 for (intptr_t i = 0; i < count; i++) {
4151 MegamorphicCachePtr cache = objects_[i];
4152 AutoTraceObjectName(cache, cache->untag()->target_name_);
4154 s->Write<int32_t>(cache->untag()->filled_entry_count_);
4155 }
4156 }
#define WriteFromTo(obj,...)
#define AutoTraceObjectName(obj, str)

The documentation for this class was generated from the following file: