| /ark/runtime_core/runtime/include/ |
| D | stack_walker-inl.h | 25 template <bool objects, bool with_reg_info, typename Func> 29 if (objects && !vreg.HasObject()) { in InvokeCallback() 44 template <bool objects, bool with_reg_info, typename Func> 50 if (objects && !vreg.HasObject()) { in IterateRegsForIFrame() 55 if (!InvokeCallback<objects, with_reg_info>(func, reg_info, vreg)) { in IterateRegsForIFrame() 62 return InvokeCallback<objects, with_reg_info>(func, reg_info, acc); in IterateRegsForIFrame() 65 template <bool objects, bool with_reg_info, typename Func> 69 return IterateRegsForIFrame<objects, with_reg_info>(func); in IterateRegs()
|
| /ark/runtime_core/runtime/mem/ |
| D | mem_stats.h | 63 * Number of allocated objects for all time 68 * Number of freed objects for all time 73 * Number of allocated large and regular (size <= FREELIST_MAX_ALLOC_SIZE) objects for all time 78 * Number of freed large and regular (size <= FREELIST_MAX_ALLOC_SIZE) objects for all time 83 * Number of allocated humongous (size > FREELIST_MAX_ALLOC_SIZE) objects for all time 88 * Number of freed humongous (size > FREELIST_MAX_ALLOC_SIZE) objects for all time 93 * Number of alive objects now 98 * Number of alive large and regular (size <= FREELIST_MAX_ALLOC_SIZE) objects now 103 * Number of alive humongous (size > FREELIST_MAX_ALLOC_SIZE) objects now
|
| D | pygote_space_allocator.h | 37 STATE_PYGOTE_INIT, // before pygote fork, used for small non-movable objects 38 STATE_PYGOTE_FORKING, // at first pygote fork, allocate for copied objects 39 STATE_PYGOTE_FORKED, // after fork, can't allocate/free objects in it
|
| D | region_allocator.h | 160 * \brief Iterates over all objects allocated by this allocator. 181 * and move all alive objects to the regions with type /param regions_type_to. 184 * @tparam regions_type_to - type of regions to which we want to move all alive objects. 186 * @param death_checker - checker what will return objects status for iterated object. 194 * and move all alive objects to the regions with type /param regions_type_to. 196 * @tparam regions_type_to - type of regions to which we want to move all alive objects. 199 * @param death_checker - checker what will return objects status for iterated object.
|
| D | bump-allocator-inl.h | 165 LOG_BUMP_ALLOCATOR(DEBUG) << "Iteration over objects started"; in IterateOverObjects() 177 // Iterate over objects in TLABs: in IterateOverObjects() 184 LOG_BUMP_ALLOCATOR(DEBUG) << "Iteration over objects finished"; in IterateOverObjects() 207 …// In this case, we iterate over objects in intersection of memory range of occupied memory via ar… in IterateOverObjectsInRange() 238 // In this case, we iterate over objects in intersection of memory range of TLABs in IterateOverObjectsInRange() 264 // We are interested only in moving alive objects, after that we cleanup arena in CollectAndMove()
|
| /ark/js_runtime/ecmascript/regexp/ |
| D | regexp_opcode.cpp | 23 …e g_saveStartOpcode = SaveStartOpCode(); // NOLINTNEXTLINE(fuchsia-statically-constructed-objects) 24 …g_saveEndOpcode = SaveEndOpCode(); // NOLINTNEXTLINE(fuchsia-statically-constructed-objects) 25 …harOpcode = CharOpCode(); // NOLINTNEXTLINE(fuchsia-statically-constructed-objects) 26 …otoOpcode = GotoOpCode(); // NOLINTNEXTLINE(fuchsia-statically-constructed-objects) 27 …e g_splitNextOpcode = SplitNextOpCode(); // NOLINTNEXTLINE(fuchsia-statically-constructed-objects) 29 …FirstOpCode(); // NOLINTNEXTLINE(fuchsia-statically-constructed-objects) 30 …tchOpCode g_matchOpcode = MatchOpCode(); // NOLINTNEXTLINE(fuchsia-statically-constructed-objects) 31 …opOpCode g_loopOpcode = LoopOpCode(); // NOLINTNEXTLINE(fuchsia-statically-constructed-objects) 33 …); // NOLINTNEXTLINE(fuchsia-statically-constructed-objects) 34 … g_pushCharOpcode = PushCharOpCode(); // NOLINTNEXTLINE(fuchsia-statically-constructed-objects) [all …]
|
| /ark/runtime_core/runtime/mem/gc/gen-gc/ |
| D | gen-gc.h | 73 * Marks objects in young generation 96 * Concurrently marking all objects 103 * ReMarks objects after Concurrent marking 109 * Mark all objects in stack recursively for Full GC. 114 * Collect dead objects in young generation and move survivors 130 * Update all refs to moved objects
|
| /ark/runtime_core/verification/util/ |
| D | equiv_classes.h | 221 void Equate(std::initializer_list<ObjIndex> objects) in Equate() argument 223 Equate(objects.begin(), objects.end()); in Equate() 267 bool IsAllEqual(std::initializer_list<ObjIndex> objects) in IsAllEqual() argument 269 return IsAllEqual(objects.begin(), objects.end()); in IsAllEqual() 363 void Equate(std::initializer_list<Obj> objects) 365 Equate(objects.begin(), objects.end()); 391 bool IsAllEqual(std::initializer_list<Obj> objects) 393 return IsAllEqual(objects.begin(), objects.end());
|
| /ark/runtime_core/runtime/mem/gc/g1/ |
| D | g1-gc.h | 82 * Marks objects in young generation 105 * Concurrently marking all objects 111 * ReMarks objects after Concurrent marking 117 * Mark all objects in stack recursively for Full GC. 122 * Collect dead objects in young generation and move survivors 138 * Update all refs to moved objects
|
| D | g1-allocator.h | 40 … HumongousObjAllocator<ObjectAllocConfigWithCrossingMap>; // Allocator used for humongous objects 65 * \brief iterates all objects in object allocator 70 * \brief iterates objects in all allocators except object allocator
|
| /ark/runtime_core/runtime/mem/refstorage/ |
| D | global_object_storage.cpp | 113 auto objects = PandaVector<ObjectHeader *>(allocator_->Adapter()); in GetAllObjects() local 116 objects.insert(objects.end(), global_objects.begin(), global_objects.end()); in GetAllObjects() 119 objects.insert(objects.end(), weak_objects.begin(), weak_objects.end()); in GetAllObjects() 121 return objects; in GetAllObjects()
|
| D | global_object_storage.h | 41 …* Storage for objects which need to handle by GC. GC will handle moving these objects and will not… 72 * Get all objects from storage. Used by debugging. 79 * Update pointers to moved Objects in global storage. 301 auto objects = PandaVector<ObjectHeader *>(allocator_->Adapter()); in GetAllObjects() local 308 objects.push_back(obj); in GetAllObjects() 312 return objects; in GetAllObjects()
|
| /ark/runtime_core/docs/diagrams/ |
| D | generational-minor-gc-activity.puactivity | 18 :Mark objects in young space; 19 :Copy marked/alive objects from young space to the tenured space; 20 :Update references to the moved objects;
|
| D | generational-major-gc-activity.puactivity | 18 :Mark objects in the tenured space; 19 :Sweep tenured space(remove non-marked objects);
|
| D | generational-concurrent-major-gc-activity.puactivity | 21 :Concurrently mark objects in the tenured space; 26 :Sweep tenured space(remove non-marked objects);
|
| /ark/runtime_core/runtime/mem/gc/ |
| D | gc_types.h | 120 GC_NONE = 0, // Non collected objects 121 GC_MINOR = 1U, // Objects collected at the minor GC 122 GC_MAJOR = 1U << 1U, // Objects collected at the major GC (MAJOR usually includes MINOR) 123 …GC_FULL = 1U << 2U, // Can collect objects from some spaces which very rarely contains GC candid… 125 GC_ALL = GC_MINOR | GC_MAJOR | GC_FULL, // Can collect objects at any phase
|
| /ark/runtime_core/runtime/include/mem/ |
| D | allocator.h | 56 ALLOCATOR_PURPOSE_OBJECT, // Allocator for objects 179 * \brief iterates all objects in object allocator 187 * \brief iterates objects in all allocators except object allocator 291 * Iterate over all objects and reclaim memory for objects reported as true by gc_object_visitor 298 * Return max size for regular size objects 299 * @return max size in bytes for regular size objects 304 * Return max size for large objects 305 * @return max size in bytes for large objects 570 …g LargeObjectAllocator = FreeListAllocator<ObjectAllocConfig>; // Allocator used for large objects 571 …bjectAllocator = HumongousObjAllocator<ObjectAllocConfig>; // Allocator used for humongous objects [all …]
|
| /ark/runtime_core/runtime/tests/ |
| D | allocator_test_base.h | 253 * \brief Try to allocate too many objects, must not allocate all objects 257 * Allocate too many elements, so must not allocate all objects 281 * \brief Allocate and free objects, collect via allocator method 288 * @param free_granularity - granularity for objects free before collection 291 …* Allocate objects, free part of objects and collect via allocator method with free calls during t… 299 * \brief Allocate and free objects, collect via allocator method 306 * @param free_granularity - granularity for objects free before collection 309 * Allocate objects, free part of objects and iterate via allocator method. 317 * \brief Allocate and free objects, iterate via allocator method iterating in range 325 * @param free_granularity - granularity for objects free before collection [all …]
|
| /ark/runtime_core/docs/ |
| D | memory-management-SW-requirements.md | 13 GC used to recycle memory allocated as result of application work (objects, compiled code etc). 21 - Arena Allocator (objects can be deallocated at once (list of arenas, almost at once - O (number o… 33 - Non-moving space (space for non-movable objects)
|
| D | glossary.md | 49 * **Compacting GC** is a GC which compacts live objects to reduce fragmentation. 66 It means that all objects which are currently in use are known and we know how to get a value 69 extract references to the objects. Opposite term: **Conservative GC**. 71 (one is empty and one used for allocation) and we just copy objects from one space to another 78 * **White object** is an object non visited by GC (at the end of GC white objects will be reclaimed…
|
| D | memory-management.md | 16 * application memory (i.e., memory for objects created by applications) 233 It is a region-based allocator, i.e., all objects allocated in region/arena can be efficiently deal… 272 Small objects are joined in "runs" (not individual element for each size, but some "containers" wit… 275 | header for run of objects with size X| obj with size X | free mem size X | ... | obj with size X | 279 Large objects are not joined in "runs". 281 Humongous objects can be allocated by simply proxying requests to the OS (but keeping reference to … 285 Each thread maintains a cache for objects (at least for all objects with small size). 320 - Humongous objects space 325 - Humongous objects space (optional) 387 Since one of the metric for this GC - high throughput, most objects in the Eden will live long enou… [all …]
|
| /ark/runtime_core/runtime/tooling/ |
| D | debug_inf.cpp | 61 // NOLINTNEXTLINE(readability-identifier-naming, fuchsia-statically-constructed-objects) 63 // NOLINTNEXTLINE(readability-identifier-naming, fuchsia-statically-constructed-objects) 70 // NOLINTNEXTLINE(fuchsia-statically-constructed-objects) 72 // NOLINTNEXTLINE(fuchsia-statically-constructed-objects) 74 // NOLINTNEXTLINE(fuchsia-statically-constructed-objects)
|
| /ark/js_runtime/ecmascript/mem/ |
| D | mem.h | 57 // Objects which are larger than half of the region size are huge objects. 58 // Regular objects will be allocated on regular regions and migrated on spaces. 60 // region as the border of regular objects.
|
| /ark/runtime_core/libpandabase/mem/ |
| D | space.h | 28 SPACE_TYPE_OBJECT, // Space for objects (all non-humongous sizes) 29 SPACE_TYPE_HUMONGOUS_OBJECT, // Space for humongous objects 30 SPACE_TYPE_NON_MOVABLE_OBJECT, // Space for non-movable objects
|
| /ark/runtime_core/tests/cts-generator/cts-template/ |
| D | newobj.yaml | 37 …default values (i.e. 0 for primitives and null for objects) and put a reference to the newly creat… 175 …default values (i.e. 0 for primitives and null for objects) and put a reference to the newly creat… 218 …default values (i.e. 0 for primitives and null for objects) and put a reference to the newly creat… 220 …description: Check that two objects created by 'newobj' instructions are different in PandaAssembl… 279 …default values (i.e. 0 for primitives and null for objects) and put a reference to the newly creat… 281 description: Check that objects fields are properly initialized in PandaAssembly context. 626 …description: Create objects with newobj instruction until OutOfMemoryError in PandaAssembly context
|