1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-25 22:12:57 +02:00
llvm-mirror/include/llvm/ExecutionEngine
Keno Fischer 3f65ad299f Fix performance problem in long-running SectionMemoryManagers
Summary:
Without this patch, the memory manager would call `mprotect` on every memory
region it ever allocated whenever it wanted to finalize memory (i.e. not just
the ones it just allocated). This caused terrible performance problems for
long running memory managers. In one particular compile heavy julia benchmark,
we were spending 50% of time in `mprotect` if running under MCJIT.

Fix this by splitting allocated memory blocks into those on which memory
permissions have been set and those on which they haven't and only running
`mprotect` on the latter.

Reviewers: lhames

Subscribers: reames, llvm-commits

Differential Revision: http://reviews.llvm.org/D13156

llvm-svn: 248981
2015-10-01 02:45:07 +00:00
..
Orc Add a global mapping layer for Orc. Adapted from a patch by Andy Somogyi. 2015-08-27 22:20:05 +00:00
ExecutionEngine.h Fix -Wextra-semi warnings. 2015-07-22 20:46:11 +00:00
GenericValue.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
Interpreter.h
JITEventListener.h [MCJIT] Replace JITEventListener::anchor (temporarily removed in r222861), and 2014-11-27 01:41:16 +00:00
JITSymbolFlags.h [Orc][MCJIT][RuntimeDyld] Re-apply r231726 and r231724 with fix suggested by 2015-03-11 00:43:26 +00:00
MCJIT.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
ObjectCache.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
ObjectMemoryBuffer.h [Orc] New JIT APIs. 2015-01-23 21:25:00 +00:00
OProfileWrapper.h
OrcMCJITReplacement.h [Orc] New JIT APIs. 2015-01-23 21:25:00 +00:00
RTDyldMemoryManager.h Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
RuntimeDyld.h Re-commit r247216: "Fix Clang-tidy misc-use-override warnings, other minor fixes" 2015-09-10 16:49:58 +00:00
RuntimeDyldChecker.h [Orc][MCJIT][RuntimeDyld] Re-apply r231726 and r231724 with fix suggested by 2015-03-11 00:43:26 +00:00
SectionMemoryManager.h Fix performance problem in long-running SectionMemoryManagers 2015-10-01 02:45:07 +00:00