summaryrefslogtreecommitdiff
path: root/src/memory.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/memory.cpp')
-rw-r--r--src/memory.cpp30
1 files changed, 15 insertions, 15 deletions
diff --git a/src/memory.cpp b/src/memory.cpp
index 7670b2f..064cad4 100644
--- a/src/memory.cpp
+++ b/src/memory.cpp
@@ -1,7 +1,7 @@
#include "memory.hpp"
-struct pke::MemBucket {
+struct MemBucket {
int64_t size;
int64_t head;
int64_t free;
@@ -10,7 +10,7 @@ struct pke::MemBucket {
char * ptr;
};
-pke::MemBucket buckets[128];
+MemBucket buckets[128];
int64_t bucketHead = 0;
int64_t InitNewBucket(int64_t sz, bool transient = false) {
@@ -23,7 +23,7 @@ int64_t InitNewBucket(int64_t sz, bool transient = false) {
return bucketHead++;
}
-void DestroyBucket(pke::MemBucket *bkt) {
+void DestroyBucket(MemBucket *bkt) {
std::free(bkt->ptr);
bkt->size = 0;
bkt->head = 0;
@@ -33,14 +33,14 @@ void DestroyBucket(pke::MemBucket *bkt) {
bkt->ptr = CAFE_BABE(char);
}
-void *pke::PkeNew(std::size_t sz, pke::MemBucket *bkt) {
+void *Pke_New(std::size_t sz, MemBucket *bkt) {
void *ptr = bkt->ptr + bkt->head;
bkt->head += sz;
bkt->allocs++;
return ptr;
}
-void *pke::PkeNew(std::size_t sz) {
+void *Pke_New(std::size_t sz) {
MemBucket *bkt = nullptr;
for (long i = 0; i < bucketHead; ++i) {
if (buckets[i].transient == false && buckets[i].size - buckets[i].head > sz) {
@@ -50,10 +50,10 @@ void *pke::PkeNew(std::size_t sz) {
if (bkt == nullptr) {
bkt = &buckets[InitNewBucket(DEFAULT_BUCKET_SIZE)];
}
- return PkeNew(sz, bkt);
+ return Pke_New(sz, bkt);
}
-void pke::PkeDelete(const void *ptr, std::size_t sz, pke::MemBucket *bkt) {
+void Pke_Delete(const void *ptr, std::size_t sz, MemBucket *bkt) {
assert(ptr >= bkt->ptr && ptr < bkt->ptr + bkt->size && "pointer not in bucket range");
bkt->allocs--;
bkt->free += sz;
@@ -64,8 +64,8 @@ void pke::PkeDelete(const void *ptr, std::size_t sz, pke::MemBucket *bkt) {
}
}
-void pke::PkeDelete(const void *ptr, std::size_t sz) {
- pke::MemBucket *bkt = nullptr;
+void Pke_Delete(const void *ptr, std::size_t sz) {
+ MemBucket *bkt = nullptr;
for (long i = 0; i < bucketHead; ++i) {
bkt = &buckets[i];
if (ptr >= bkt->ptr && ptr < bkt->ptr + bkt->size) break;
@@ -74,14 +74,14 @@ void pke::PkeDelete(const void *ptr, std::size_t sz) {
std::printf("bad pointer %llu", reinterpret_cast<unsigned long long>(ptr));
throw "bad pointer";
}
- PkeDelete(ptr, sz, bkt);
+ Pke_Delete(ptr, sz, bkt);
}
-pke::MemBucket *pke::BeginTransientBucket(int64_t sz) {
+MemBucket *BeginTransientBucket(int64_t sz) {
return &buckets[InitNewBucket(sz, true)];
}
-void pke::EndTransientBucket(pke::MemBucket *bkt) {
+void EndTransientBucket(MemBucket *bkt) {
int64_t foundIndex = -1;
for (int64_t i = 0; i < bucketHead; ++i) {
if (&buckets[i] == bkt) {
@@ -95,7 +95,7 @@ void pke::EndTransientBucket(pke::MemBucket *bkt) {
}
}
-void pke::Flush() {
+void Flush() {
for (long i = bucketHead - 2; i > -1; --i) {
if (buckets[i].head != 0) break;
if (buckets[i+1].head != 0) break;
@@ -116,9 +116,9 @@ uint64_t Buckets_NewHandle(std::size_t bucketBytes, uint64_t bucketItemCount, ui
}
if (bucketCounter > bucketIncrementer) {
int64_t newIncrement = bucketIncrementer * 1.5;
- char * newBuckets = reinterpret_cast<char *>(pke::PkeNew(bucketBytes * newIncrement));
+ char * newBuckets = reinterpret_cast<char *>(Pke_New(bucketBytes * newIncrement));
std::memcpy(newBuckets, buckets, bucketBytes * bucketIncrementer);
- pke::PkeDelete(buckets, bucketBytes * bucketIncrementer);
+ Pke_Delete(buckets, bucketBytes * bucketIncrementer);
buckets = newBuckets;
bucketIncrementer = newIncrement;
}