diff options
author | Keno Fischer <kfischer@college.harvard.edu> | 2016-01-10 18:17:12 +0000 |
---|---|---|
committer | Keno Fischer <kfischer@college.harvard.edu> | 2016-01-10 18:17:12 +0000 |
commit | 875b122dfd85fe25d5b7ea92695275a51ce3b420 (patch) | |
tree | d5c1e032b27126ab622cee67ba48f2ddacdd2c43 /llvm/lib/ExecutionEngine/SectionMemoryManager.cpp | |
parent | 7256059ef017346f50a91de6a19a58833bcfc8b3 (diff) | |
download | bcm5719-llvm-875b122dfd85fe25d5b7ea92695275a51ce3b420.tar.gz bcm5719-llvm-875b122dfd85fe25d5b7ea92695275a51ce3b420.zip |
[SectionMemoryManager] Don't just drop the RO free list
In r255760, I optimized the SectionMemoryManager to make better use
of virtual memory on platforms where the allocation granularity was
bigger than the protection granularity. As part of this, fixing up
the free list became more complicated and was moved into
`applyMemoryGroupPermissions`. Unfortunately, I forgot to actually
remove the call that drops the free list for RO memory (I did
remove the corresponding one for RX memory), defeating the whole
optimization.
llvm-svn: 257293
Diffstat (limited to 'llvm/lib/ExecutionEngine/SectionMemoryManager.cpp')
-rw-r--r-- | llvm/lib/ExecutionEngine/SectionMemoryManager.cpp | 3 |
1 files changed, 0 insertions, 3 deletions
diff --git a/llvm/lib/ExecutionEngine/SectionMemoryManager.cpp b/llvm/lib/ExecutionEngine/SectionMemoryManager.cpp index e2f220862cf..1ad5f174011 100644 --- a/llvm/lib/ExecutionEngine/SectionMemoryManager.cpp +++ b/llvm/lib/ExecutionEngine/SectionMemoryManager.cpp @@ -137,9 +137,6 @@ bool SectionMemoryManager::finalizeMemory(std::string *ErrMsg) return true; } - // Don't allow free memory blocks to be used after setting protection flags. - RODataMem.FreeMem.clear(); - // Make read-only data memory read-only. ec = applyMemoryGroupPermissions(RODataMem, sys::Memory::MF_READ | sys::Memory::MF_EXEC); |