diff options
author | Owen Anderson <resistor@mac.com> | 2008-03-22 02:59:54 +0000 |
---|---|---|
committer | Owen Anderson <resistor@mac.com> | 2008-03-22 02:59:54 +0000 |
commit | 191dfcf5c8960d4816586da3d3ebc1a4e6c9aae6 (patch) | |
tree | 980432b47104be0ab660cd047d4e570c15606400 | |
parent | a4bf5c046da56cb0e8b6936c106b9b3d3d9b9fd0 (diff) |
Add a comment, and fix a bug where AllocateRW recurred to AllocateRWX instead of itself.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48677 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | include/llvm/System/Memory.h | 8 | ||||
-rw-r--r-- | lib/System/Unix/Memory.inc | 2 |
2 files changed, 9 insertions, 1 deletions
diff --git a/include/llvm/System/Memory.h b/include/llvm/System/Memory.h index 8c1c37a07c..d692b95c27 100644 --- a/include/llvm/System/Memory.h +++ b/include/llvm/System/Memory.h @@ -57,6 +57,14 @@ namespace sys { const MemoryBlock *NearBlock, std::string *ErrMsg = 0); + /// This method allocates a block of Read/Write memory. This memory + /// needs to have executable permissions set before it can be used + /// to execute JIT'ed code. + /// + /// On success, this returns a non-null memory block, otherwise it returns + /// a null memory block and fills in *ErrMsg. + /// + /// @brief Allocate Read/Write/Execute memory. static MemoryBlock AllocateRW(unsigned NumBytes, const MemoryBlock *NearBlock, std::string *ErrMsg = 0); diff --git a/lib/System/Unix/Memory.inc b/lib/System/Unix/Memory.inc index 164988793f..e0bf8d8dfd 100644 --- a/lib/System/Unix/Memory.inc +++ b/lib/System/Unix/Memory.inc @@ -103,7 +103,7 @@ llvm::sys::Memory::AllocateRW(unsigned NumBytes, const MemoryBlock* NearBlock, flags, fd, 0); if (pa == MAP_FAILED) { if (NearBlock) //Try again without a near hint - return AllocateRWX(NumBytes, 0); + return AllocateRW(NumBytes, 0); MakeErrMsg(ErrMsg, "Can't allocate RWX Memory"); return MemoryBlock(); |