| /arkcompiler/runtime_core/static_core/libpandabase/os/ |
| D | mem.h | 35 #include <memory> 46 * @brief Make memory region @param mem with size @param size with protection flags @param prot 47 * @param mem Pointer to memory region (should be aligned to page size) 48 * @param size Size of memory region 49 * @param prot Memory protection flags, a combination of MMAP_PROT_XXX values 55 * @brief Make memory region @param mem with size @param size readable and executable 56 * @param mem Pointer to memory region (should be aligned to page size) 57 * @param size Size of memory region 63 * @brief Make memory region @param mem with size @param size readable and writable 64 * @param mem Pointer to memory region (should be aligned to page size) [all …]
|
| /arkcompiler/runtime_core/libpandabase/os/ |
| D | mem.h | 35 #include <memory> 44 * \brief Make memory region \param mem with size \param size with protection flags \param prot 45 * @param mem Pointer to memory region (should be aligned to page size) 46 * @param size Size of memory region 47 * @param prot Memory protection flags, a combination of MMAP_PROT_XXX values 53 * \brief Make memory region \param mem with size \param size readable and executable 54 * @param mem Pointer to memory region (should be aligned to page size) 55 * @param size Size of memory region 61 * \brief Make memory region \param mem with size \param size readable and writable 62 * @param mem Pointer to memory region (should be aligned to page size) [all …]
|
| /arkcompiler/runtime_core/libabckit/tests/stress/ |
| D | options_list.json | 2 …"/tmp/abckit_test262/implementation-contributed/v8/mjsunit/asm/embenchen/zlib.js": ["--memory-size… 3 …ntributed/v8/mjsunit/harmony/well-formed-json-stringify-checked.js": ["--memory-size-limit", "7684… 4 …ributed/v8/mjsunit/harmony/well-formed-json-stringify-unchecked.js": ["--memory-size-limit", "3068… 5 …tion-contributed/v8/mjsunit/third_party/regexp-pcre/regexp-pcre.js": ["--memory-size-limit", "3068… 6 …"/tmp/abckit_nodejs/deps/v8/test/mjsunit/asm/embenchen/zlib.js": ["--memory-size-limit", "76843545… 7 …deps/v8/test/mjsunit/harmony/well-formed-json-stringify-checked.js": ["--memory-size-limit", "7684… 8 …ps/v8/test/mjsunit/harmony/well-formed-json-stringify-unchecked.js": ["--memory-size-limit", "7684… 9 …"/tmp/abckit_nodejs/deps/v8/test/mjsunit/third_party/regexp-pcre/regexp-pcre.js": ["--memory-size-…
|
| /arkcompiler/runtime_core/static_core/runtime/arch/ |
| D | memory_helpers.h | 19 #include "aarch64/memory.h" 21 #include "arm/memory.h" 23 #include "x86/memory.h" 25 #include "amd64/memory.h" 34 // Forces system-wide full memory synchronization 36 // Architecture-agnostic C++ memory order provides no reordering guarantees in case just one thread… 43 // Actually only full memory barrier guarantees StoreLoad order but separate implementation is used…
|
| /arkcompiler/runtime_core/tests/fuzztest/readwritelockholder_fuzzer/ |
| D | readwritelockholder_fuzzer.cpp | 22 panda::os::memory::DummyLock lock; in ReadWriteLockHolderFuzzTest() 25 panda::os::memory::LockHolder<panda::os::memory::DummyLock> lock_holder(lock); in ReadWriteLockHolderFuzzTest() 29 panda::os::memory::ReadLockHolder<panda::os::memory::DummyLock> read_lock_holder(lock); in ReadWriteLockHolderFuzzTest() 33 … panda::os::memory::WriteLockHolder<panda::os::memory::DummyLock> write_lock_holder(lock); in ReadWriteLockHolderFuzzTest()
|
| /arkcompiler/runtime_core/static_core/runtime/ |
| D | locks.cpp | 21 #include <memory> 30 os::memory::Mutex *Locks::customTlsLock_ = nullptr; 31 os::memory::Mutex *Locks::userSuspensionLock_ = nullptr; 36 Locks::customTlsLock_ = new os::memory::Mutex(); in Initialize() 37 Locks::userSuspensionLock_ = new os::memory::Mutex(); in Initialize() 49 // So we ignore such memory leaks by calling __lsan_ignore_object. in NewMutatorLock() 60 os::memory::RWLock::ReadLock(); in ReadLock() 68 os::memory::RWLock::WriteLock(); in WriteLock() 75 bool ret = os::memory::RWLock::TryReadLock(); in TryReadLock() 85 bool ret = os::memory::RWLock::TryWriteLock(); in TryWriteLock() [all …]
|
| D | thread_pool.h | 113 os::memory::LockHolder lock(scaleLock_); in ~ThreadPool() 120 os::memory::LockHolder scaleLock(scaleLock_); in Scale() 132 os::memory::LockHolder queueLock(queueLock_); in Scale() 147 os::memory::LockHolder queueLock(queueLock_); in Scale() 160 os::memory::LockHolder scaleLock(scaleLock_); in Help() 177 os::memory::LockHolder lock(queueLock_); in Help() 199 os::memory::LockHolder lock(queueLock_); in TryPutTask() 215 os::memory::LockHolder lock(queueLock_); in PutTask() 230 os::memory::LockHolder lock(queueLock_); in IsActive() 236 os::memory::LockHolder lock(scaleLock_); [all …]
|
| /arkcompiler/runtime_core/static_core/runtime/tooling/inspector/ |
| D | debuggable_thread.cpp | 29 os::memory::LockHolder lock(mutex_); in Reset() 35 os::memory::LockHolder lock(mutex_); in BreakOnStart() 41 os::memory::LockHolder lock(mutex_); in Continue() 48 os::memory::LockHolder lock(mutex_); in ContinueTo() 55 os::memory::LockHolder lock(mutex_); in StepInto() 62 os::memory::LockHolder lock(mutex_); in StepOver() 69 os::memory::LockHolder lock(mutex_); in StepOut() 76 os::memory::LockHolder lock(mutex_); in IsPaused() 82 os::memory::LockHolder lock(mutex_); in Touch() 88 os::memory::LockHolder lock(mutex_); in Pause() [all …]
|
| /arkcompiler/runtime_core/static_core/libpandabase/mem/ |
| D | arena.h | 36 * @brief Allocates memory with size @param size and aligned with @param alignment 37 * @param size - size of the allocated memory 38 * @param alignment - alignment of the allocated memory 39 * @return pointer to the allocated memory on success, or nullptr on fail 73 /// @return A pointer to the raw memory inside arena 95 …/// @brief Mark all memory after @param mem as free. Check that @param mem is stored inside this a… 98 /// @brief Set occupied memory size to @param new_size. 105 * @brief Expand arena. The new memory must be located just after the current buffer. 114 * @brief Fast allocates memory with size @param size 115 * @param size - size of the allocated memory, must be @param alignment aligned [all …]
|
| /arkcompiler/runtime_core/libpandabase/mem/ |
| D | arena.h | 36 * \brief Allocates memory with size \param size and aligned with \param alignment 37 * @param size - size of the allocated memory 38 * @param alignment - alignment of the allocated memory 39 * @return pointer to the allocated memory on success, or nullptr on fail 86 * @return A pointer to the raw memory inside arena 110 …* \brief Mark all memory after \param mem as free. Check that \param mem is stored inside this are… 115 * \brief Set occupied memory size to \param new_size. 125 * \brief Expand arena. The new memory must be located just after the current buffer. 134 * \brief Fast allocates memory with size \param size 135 * @param size - size of the allocated memory, must be \param alignment aligned [all …]
|
| D | code_allocator.h | 35 …locates \param size bytes, copies \param codeBuff to allocated memory and make this memory executa… 43 * \brief Allocates \param size bytes of non-protected memory 50 * Make memory \mem_range executable 69 os::memory::RWLock code_range_lock_;
|
| /arkcompiler/runtime_core/static_core/runtime/mem/ |
| D | alloc_config.h | 30 … stats about allocations and free events. Allocators don't care about the type of allocated memory. 31 …* It could be raw memory for any reason or memory for object in the programming language. If it's … 48 /// @brief Initialize an object memory allocated by an allocator. 56 // without 'volatile' specifier so full memory barrier is required in MemoryInit() 99 * @brief Initialize a Crossing map for the corresponding memory ranges. 109 * @brief Remove a Crossing map for the corresponding memory ranges. 120 * @param mem_range - range of a new young memory. 141 /// @brief Initialize an object memory allocated by an allocator. 149 // without 'volatile' specifier so full memory barrier is required in MemoryInit() 181 * @param mem_range - range of a new young memory. [all …]
|
| D | heap_space.cpp | 95 os::memory::WriteLockHolder lock(heapLock_); in ComputeNewSize() 120 // If can allocate pool (from free pool map or non-used memory) then just do it in WillAlloc() 122 // We have enough memory for allocation, no need to increase heap in WillAlloc() 127 …// if requested pool size greater free bytes in current heap space and non occupied memory then we… in WillAlloc() 146 os::memory::WriteLockHolder lock(heapLock_); in ClampCurrentMaxHeapSize() 174 os::memory::WriteLockHolder lock(heapLock_); in TryAllocPool() 195 os::memory::WriteLockHolder lock(heapLock_); in TryAllocArena() 201 os::memory::ReadLockHolder lock(heapLock_); in FreePool() 213 os::memory::ReadLockHolder lock(heapLock_); in FreeArena() 245 os::memory::ReadLockHolder lock(heapLock_); in GetCurrentFreeYoungSize() [all …]
|
| D | humongous_obj_allocator-inl.h | 47 os::memory::WriteLockHolder<LockConfigT, NEED_LOCK> wlock(allocFreeLock_); in Alloc() 48 LOG_HUMONGOUS_OBJ_ALLOCATOR(DEBUG) << "Try to allocate memory with size " << size; in Alloc() 50 // Check that we can get a memory header for the memory pointer by using PAGE_SIZE_MASK mask in Alloc() 73 …LOG_HUMONGOUS_OBJ_ALLOCATOR(DEBUG) << "Find reserved memory block with size " << memHeader->GetPoo… in Alloc() 80 …LOG_HUMONGOUS_OBJ_ALLOCATOR(DEBUG) << "Find free memory block with size " << memHeader->GetPoolSiz… in Alloc() 85 LOG_HUMONGOUS_OBJ_ALLOCATOR(DEBUG) << "Can't find memory for this size"; in Alloc() 90 LOG_HUMONGOUS_OBJ_ALLOCATOR(DEBUG) << "Allocated memory at addr " << std::hex << mem; in Alloc() 101 os::memory::WriteLockHolder wlock(allocFreeLock_); in Free() 109 LOG_HUMONGOUS_OBJ_ALLOCATOR(DEBUG) << "Try to free memory at invalid addr 0"; in FreeUnsafe() 112 LOG_HUMONGOUS_OBJ_ALLOCATOR(DEBUG) << "Try to free memory at addr " << std::hex << mem; in FreeUnsafe() [all …]
|
| D | bump-allocator.h | 19 #include <memory> 37 using CommonLock = os::memory::Mutex; 38 using DummyLock = os::memory::DummyLock; 44 // This allocator can allocate memory as a BumpPointerAllocator 45 // and also can allocate big pieces of memory for the TLABs. 50 // | Memory Pool … 52 // | allocated objects | unused memory | memory for TLABs … 56 // |xxxxxxxxxx|xxxxxx|xxxxxxxxx| free memory | TLAB 3 || TLAB 2 || … 107 * @brief Add an extra memory pool to the allocator. 108 * The memory pool must be located just after the current memory given to this allocator. [all …]
|
| D | freelist_allocator-inl.h | 51 os::memory::WriteLockHolder<LockConfigT, NEED_LOCK> wlock(allocFreeLock_); in Alloc() 64 …LOG_FREELIST_ALLOCATOR(DEBUG) << "Try allocate too big memory for free list allocator. Return null… in Alloc() 67 // Get best-fit memory piece from segregated list. in Alloc() 70 LOG_FREELIST_ALLOCATOR(DEBUG) << "Couldn't allocate memory"; in Alloc() 73 …LOG_FREELIST_ALLOCATOR(DEBUG) << "Found memory block at addr = " << std::hex << memoryBlock << " w… in Alloc() 79 …LOG_FREELIST_ALLOCATOR(DEBUG) << "Raw memory is not aligned as we need. Create special header for … in Alloc() 80 // Raw memory pointer is not aligned as we expected in Alloc() 96 LOG_FREELIST_ALLOCATOR(DEBUG) << "Created new memory block from the remainder part:"; in Alloc() 120 …LOG_FREELIST_ALLOCATOR(DEBUG) << "Allocated memory at addr " << std::hex << ToVoidPtr(memoryPointe… in Alloc() 141 os::memory::WriteLockHolder wlock(allocFreeLock_); in Free() [all …]
|
| /arkcompiler/runtime_core/docs/ |
| D | memory-management-SW-requirements.md | 3 The main components of Panda memory management: 12 Garbage collector(GC) automatically recycles memory that it can prove will never be used again. 13 GC used to recycle memory allocated as result of application work(objects, compiled code etc). 31 - Internal memory space for non-compiler part of runtime (including GC internals) 48 # 3. KEY FEATURES OF MEMORY MANAGEMENT SYSTEM 72 - Memory management flexible enough to work with multiple languages.
|
| /arkcompiler/runtime_core/static_core/docs/ |
| D | memory-management-SW-requirements.md | 3 The main components of Panda memory management: 12 Garbage collector(GC) automatically recycles memory that it can prove will never be used again. 13 GC used to recycle memory allocated as result of application work(objects, compiled code etc). 31 - Internal memory space for non-compiler part of runtime (including GC internals) 48 # 3. KEY FEATURES OF MEMORY MANAGEMENT SYSTEM 72 - Memory management flexible enough to work with multiple languages.
|
| /arkcompiler/runtime_core/static_core/compiler/docs/ |
| D | lse_doc.md | 4 The idea of optimization is to delete store instructions that store a value to memory that has been… 8 Elimination of load and store instructions generally reduces the number of long latency memory inst… 18 …s to know that two memory instructions access the same memory address. This can be done using ali… 19 * `MUST_ALIAS` if the instructions definitely access the same memory address 20 * `NO_ALIAS` if the instructions definitely access different memory addresses. 21 …lysis can't say with confidence whether the instructions access the same memory address or differe… 25 `"Memory Instruction" -> "Value stored at location pointed by instruction"` 27 …memory operates with a particular memory address. E.g. store instructions write values on the heap… 36 …red value then the new stored value is written into heap. The values of memory instructions that … 45 …memory operations may update heap using back edge. Therefore an initial heap for loop header is em… [all …]
|
| /arkcompiler/runtime_core/libabckit/tests/sanitizers/ |
| D | README.md | 3 - leak:NewMutatorLock - `static_core/runtime` has known memory leak issues, check `runtime_core/sta… 4 - leak:CreateJSVM - dynamic VM has memory leak issues 5 - leak:CreateSharedClass - dynamic VM has memory leak issues
|
| /arkcompiler/runtime_core/static_core/runtime/mem/gc/ |
| D | gc_queue.h | 19 #include <memory> 59 os::memory::LockHolder lock(lock_); in IsEmpty() 65 os::memory::LockHolder lock(lock_); in Signal() 71 os::memory::LockHolder lock(lock_); in WaitForGCTask() 85 mutable os::memory::Mutex lock_; 88 os::memory::ConditionVariable condVar_;
|
| /arkcompiler/runtime_core/scripts/ |
| D | memusage.py | 17 A tool to get memory usage reports 36 """Memory region information: name, size, rss, pss""" 58 """Checks whether memory region is stack""" 64 """Checks whether memory region is heap""" 93 """Represents panda memory regions""" 115 """Gets memory region information by name""" 136 """Parses smaps and returns memory usage report""" 170 """Aggregates memory usage reports""" 189 """Prints memory usage report row""" 195 """Prints memory usage report""" [all …]
|
| /arkcompiler/runtime_core/static_core/scripts/ |
| D | memusage.py | 17 A tool to get memory usage reports 36 """Memory region information: name, size, rss, pss""" 58 """Checks whether memory region is stack""" 64 """Checks whether memory region is heap""" 93 """Represents panda memory regions""" 115 """Gets memory region information by name""" 136 """Parses smaps and returns memory usage report""" 170 """Aggregates memory usage reports""" 189 """Prints memory usage report row""" 195 """Prints memory usage report""" [all …]
|
| /arkcompiler/toolchain/build/toolchain/ |
| D | concurrent_links.gni | 25 # links at once than we do compiles, because linking is memory-intensive. 26 # The default to use varies by platform and by the amount of memory 33 # Sanitizer coverage instrumentation increases linker memory consumption 43 # Full debug symbols require large memory for link. 48 # increase the memory overhead. 55 # Memory consumption on link without debug symbols is low on linux.
|
| /arkcompiler/runtime_core/static_core/runtime/mem/gc/g1/ |
| D | update_remset_worker.cpp | 31 … os::memory::Mutex *queueLock, size_t regionSize, in UpdateRemsetWorker() 52 os::memory::LockHolder holder(postBarrierBuffersLock_); in ~UpdateRemsetWorker() 81 os::memory::LockHolder holder(postBarrierBuffersLock_); in AddPostBarrierBuffer() 88 os::memory::LockHolder holder(*queueLock_); in FillFromDefered() 96 os::memory::LockHolder holder(*queueLock_); in FillFromQueue() 121 os::memory::LockHolder holder(postBarrierBuffersLock_); in FillFromPostBarrierBuffers() 256 os::memory::LockHolder holder(updateRemsetLock_); in DrainAllCards() 268 os::memory::LockHolder holder(updateRemsetLock_); in GCProcessCards() 288 os::memory::LockHolder holder(updateRemsetLock_); in GCInvalidateRegions() 298 // Atomic with relaxed order reason: memory order is not required in InvalidateRegions() [all …]
|