diff options
| author | Jcw87 <Jcw87@users.noreply.github.com> | 2026-01-04 17:22:56 -0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-01-04 17:22:56 -0800 |
| commit | deb7bead205cb35ff5f57ee3d466179defde44cb (patch) | |
| tree | 22809a707a49f0253f05d45659cd142dacc0ca83 /src/JSystem/JKernel/JKRAramBlock.cpp | |
| parent | 1400687731baedd9419dbf3972c50e3faab0f24e (diff) | |
JKernel debug (#3012)
Diffstat (limited to 'src/JSystem/JKernel/JKRAramBlock.cpp')
| -rw-r--r-- | src/JSystem/JKernel/JKRAramBlock.cpp | 24 |
1 files changed, 6 insertions, 18 deletions
diff --git a/src/JSystem/JKernel/JKRAramBlock.cpp b/src/JSystem/JKernel/JKRAramBlock.cpp index c1416686e9..a7a1fcf96d 100644 --- a/src/JSystem/JKernel/JKRAramBlock.cpp +++ b/src/JSystem/JKernel/JKRAramBlock.cpp @@ -18,8 +18,7 @@ JKRAramBlock::~JKRAramBlock() { JSULink<JKRAramBlock>* prev = mBlockLink.getPrev(); if (prev) { - JKRAramBlock* block = prev->getObject(); - block->mFreeSize = mSize + mFreeSize + block->mFreeSize; + prev->getObject()->mFreeSize += mSize + mFreeSize; list->remove(&mBlockLink); } else { mFreeSize = mFreeSize + mSize; @@ -28,35 +27,24 @@ JKRAramBlock::~JKRAramBlock() { } JKRAramBlock* JKRAramBlock::allocHead(u32 size, u8 groupId, JKRAramHeap* aramHeap) { - u32 address = mAddress; - u32 usedSize = mSize; - u32 nextAddress = address + usedSize; - u32 freeSize = mFreeSize; - u32 nextFreeSize = freeSize - size; + u32 nextAddress = mAddress + mSize; + u32 nextFreeSize = mFreeSize - size; JKRAramBlock* block = new (aramHeap->getMgrHeap(), 0) JKRAramBlock(nextAddress, size, nextFreeSize, groupId, false); mFreeSize = 0; - JSULink<JKRAramBlock>* next = mBlockLink.getNext(); - JSUList<JKRAramBlock>* list = mBlockLink.getSupervisor(); - list->insert(next, &block->mBlockLink); + mBlockLink.getSupervisor()->insert(mBlockLink.getNext(), &block->mBlockLink); return block; } JKRAramBlock* JKRAramBlock::allocTail(u32 size, u8 groupId, JKRAramHeap* aramHeap) { - u32 freeSize = mFreeSize; - u32 address = mAddress; - u32 usedSize = mSize; - u32 endAddress = address + usedSize + freeSize; - u32 tailAddress = endAddress - size; + u32 tailAddress = mAddress + mSize + mFreeSize - size; JKRAramBlock* block = new (aramHeap->getMgrHeap(), 0) JKRAramBlock(tailAddress, size, 0, groupId, true); mFreeSize -= size; - JSULink<JKRAramBlock>* next = mBlockLink.getNext(); - JSUList<JKRAramBlock>* list = mBlockLink.getSupervisor(); - list->insert(next, &block->mBlockLink); + mBlockLink.getSupervisor()->insert(mBlockLink.getNext(), &block->mBlockLink); return block; } |
