[llvm-commits] [llvm] r54152 - /llvm/trunk/lib/ExecutionEngine/JIT/JITMemoryManager.cpp
Evan Cheng
evan.cheng at apple.com
Tue Jul 29 00:38:32 PDT 2008
Author: evancheng
Date: Tue Jul 29 02:38:32 2008
New Revision: 54152
URL: http://llvm.org/viewvc/llvm-project?rev=54152&view=rev
Log:
Fix for PR2578. Do not split off a block whose size is less than FreeRangeHeader::getMinBlockSize(). Patch by Damien.
Modified:
llvm/trunk/lib/ExecutionEngine/JIT/JITMemoryManager.cpp
Modified: llvm/trunk/lib/ExecutionEngine/JIT/JITMemoryManager.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/ExecutionEngine/JIT/JITMemoryManager.cpp?rev=54152&r1=54151&r2=54152&view=diff
==============================================================================
--- llvm/trunk/lib/ExecutionEngine/JIT/JITMemoryManager.cpp (original)
+++ llvm/trunk/lib/ExecutionEngine/JIT/JITMemoryManager.cpp Tue Jul 29 02:38:32 2008
@@ -202,6 +202,9 @@
assert(ThisAllocated && getBlockAfter().PrevAllocated &&
"Cannot deallocate part of an allocated block!");
+ // Don't allow blocks to be trimmed below minimum required size
+ NewSize = std::max<uint64_t>(FreeRangeHeader::getMinBlockSize(), NewSize);
+
// Round up size for alignment of header.
unsigned HeaderAlign = __alignof(FreeRangeHeader);
NewSize = (NewSize+ (HeaderAlign-1)) & ~(HeaderAlign-1);
More information about the llvm-commits
mailing list