LLDB  mainline
Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
lldb_private::AllocatedMemoryCache Class Reference

#include <Memory.h>

Collaboration diagram for lldb_private::AllocatedMemoryCache:
Collaboration graph
[legend]

Public Member Functions

 AllocatedMemoryCache (Process &process)
 
 ~AllocatedMemoryCache ()
 
void Clear ()
 
lldb::addr_t AllocateMemory (size_t byte_size, uint32_t permissions, Status &error)
 
bool DeallocateMemory (lldb::addr_t ptr)
 

Protected Types

typedef std::shared_ptr< AllocatedBlockAllocatedBlockSP
 
typedef std::multimap< uint32_t, AllocatedBlockSPPermissionsToBlockMap
 

Protected Member Functions

AllocatedBlockSP AllocatePage (uint32_t byte_size, uint32_t permissions, uint32_t chunk_size, Status &error)
 

Protected Attributes

Processm_process
 
std::recursive_mutex m_mutex
 
PermissionsToBlockMap m_memory_map
 

Detailed Description

Definition at line 111 of file Memory.h.

Member Typedef Documentation

◆ AllocatedBlockSP

Definition at line 126 of file Memory.h.

◆ PermissionsToBlockMap

Definition at line 134 of file Memory.h.

Constructor & Destructor Documentation

◆ AllocatedMemoryCache()

AllocatedMemoryCache::AllocatedMemoryCache ( Process process)

Definition at line 324 of file Memory.cpp.

◆ ~AllocatedMemoryCache()

AllocatedMemoryCache::~AllocatedMemoryCache ( )

Definition at line 327 of file Memory.cpp.

Member Function Documentation

◆ AllocateMemory()

lldb::addr_t AllocatedMemoryCache::AllocateMemory ( size_t  byte_size,
uint32_t  permissions,
Status error 
)

◆ AllocatePage()

AllocatedMemoryCache::AllocatedBlockSP AllocatedMemoryCache::AllocatePage ( uint32_t  byte_size,
uint32_t  permissions,
uint32_t  chunk_size,
Status error 
)
protected

◆ Clear()

void AllocatedMemoryCache::Clear ( )

◆ DeallocateMemory()

bool AllocatedMemoryCache::DeallocateMemory ( lldb::addr_t  ptr)

Member Data Documentation

◆ m_memory_map

PermissionsToBlockMap lldb_private::AllocatedMemoryCache::m_memory_map
protected

Definition at line 135 of file Memory.h.

Referenced by AllocateMemory(), AllocatePage(), Clear(), and DeallocateMemory().

◆ m_mutex

std::recursive_mutex lldb_private::AllocatedMemoryCache::m_mutex
protected

Definition at line 133 of file Memory.h.

Referenced by AllocateMemory(), Clear(), and DeallocateMemory().

◆ m_process

Process& lldb_private::AllocatedMemoryCache::m_process
protected

Definition at line 132 of file Memory.h.

Referenced by AllocatePage(), and Clear().


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