add android support (#171)
* adjust for android * update docs * add const qualifier to `alloc_size` * check const qualifier in cmake
This commit is contained in:
@@ -457,7 +457,7 @@ namespace snmalloc
|
||||
return pointer_cast<void>(external_address<location>(p));
|
||||
}
|
||||
|
||||
static size_t alloc_size(void* p)
|
||||
static size_t alloc_size(const void* p)
|
||||
{
|
||||
// This must be called on an external pointer.
|
||||
size_t size = ChunkMap::get(address_cast(p));
|
||||
|
||||
@@ -39,9 +39,10 @@ namespace snmalloc
|
||||
return OS_PAGE_SIZE;
|
||||
}
|
||||
|
||||
static Mediumslab* get(void* p)
|
||||
static Mediumslab* get(const void* p)
|
||||
{
|
||||
return pointer_align_down<SUPERSLAB_SIZE, Mediumslab>(p);
|
||||
return pointer_align_down<SUPERSLAB_SIZE, Mediumslab>(
|
||||
const_cast<void*>(p));
|
||||
}
|
||||
|
||||
void init(RemoteAllocator* alloc, sizeclass_t sc, size_t rsize)
|
||||
|
||||
@@ -140,9 +140,9 @@ namespace snmalloc
|
||||
return (slab_end - allocation_start) % size == 0;
|
||||
}
|
||||
|
||||
static Slab* get_slab(void* p)
|
||||
static Slab* get_slab(const void* p)
|
||||
{
|
||||
return pointer_align_down<SLAB_SIZE, Slab>(p);
|
||||
return pointer_align_down<SLAB_SIZE, Slab>(const_cast<void*>(p));
|
||||
}
|
||||
|
||||
static bool is_short(Slab* p)
|
||||
|
||||
@@ -65,9 +65,10 @@ namespace snmalloc
|
||||
StatusChange = 2
|
||||
};
|
||||
|
||||
static Superslab* get(void* p)
|
||||
static Superslab* get(const void* p)
|
||||
{
|
||||
return pointer_align_down<SUPERSLAB_SIZE, Superslab>(p);
|
||||
return pointer_align_down<SUPERSLAB_SIZE, Superslab>(
|
||||
const_cast<void*>(p));
|
||||
}
|
||||
|
||||
static bool is_short_sizeclass(sizeclass_t sizeclass)
|
||||
|
||||
Reference in New Issue
Block a user