Change AllocateRWX/DeallocateRWX do not throw an exception.

llvm-svn: 29057
This commit is contained in:
Chris Lattner
2006-07-07 17:31:41 +00:00
parent 5053e153e3
commit 1fb6e0d79d

View File

@@ -414,17 +414,17 @@ unsigned char *JITMemoryManager::allocateStub(unsigned StubSize) {
}
sys::MemoryBlock JITMemoryManager::getNewMemoryBlock(unsigned size) {
try {
// Allocate a new block close to the last one.
const sys::MemoryBlock *BOld = Blocks.empty() ? 0 : &Blocks.front();
sys::MemoryBlock B = sys::Memory::AllocateRWX(size, BOld);
Blocks.push_back(B);
return B;
} catch (std::string &err) {
// Allocate a new block close to the last one.
const sys::MemoryBlock *BOld = Blocks.empty() ? 0 : &Blocks.front();
std::string ErrMsg;
sys::MemoryBlock B = sys::Memory::AllocateRWX(size, BOld, &ErrMsg);
if (B.base() == 0) {
std::cerr << "Allocation failed when allocating new memory in the JIT\n";
std::cerr << err << "\n";
std::cerr << ErrMsg << "\n";
abort();
}
Blocks.push_back(B);
return B;
}
//===----------------------------------------------------------------------===//