summaryrefslogtreecommitdiff
path: root/llvm/lib/ExecutionEngine/MCJIT/SectionMemoryManager.cpp
AgeCommit message (Collapse)Author
2015-02-06[Orc] Move SectionMemoryManager's implementation from MCJIT to ExecutionEngine.Lang Hames
This is a more sensible home for SectionMemoryManager, and allows the implementation to be shared between Orc and MCJIT. llvm-svn: 228427
2014-06-12Don't use 'using std::error_code' in include/llvm.Rafael Espindola
This should make sure that most new uses use the std prefix. llvm-svn: 210835
2014-05-31Use error_code() instead of error_code::succes()Rafael Espindola
There is no std::error_code::success, so this removes much of the noise in transitioning to std::error_code. llvm-svn: 209952
2014-04-24[C++] Use 'nullptr'.Craig Topper
llvm-svn: 207083
2014-01-24Fix known typosAlp Toker
Sweep the codebase for common typos. Includes some changes to visible function names that were misspelt. llvm-svn: 200018
2013-10-02This threads SectionName through the allocateCodeSection/allocateDataSection ↵Filip Pizlo
APIs, both in C++ and C land. It's useful for the memory managers that are allocating a section to know what the name of the section is. At a minimum, this is useful for low-level debugging - it's customary for JITs to be able to tell you what memory they allocated, and as part of any such dump, they should be able to tell you some meta-data about what each allocation is for. This allows clients that supply their own memory managers to do this. Additionally, we also envision the SectionName being useful for passing meta-data from within LLVM to an LLVM client. This changes both the C and C++ APIs, and all of the clients of those APIs within LLVM. I'm assuming that it's safe to change the C++ API because that API is allowed to change. I'm assuming that it's safe to change the C API because we haven't shipped the API in a release yet (LLVM 3.3 doesn't include the MCJIT memory management C API). llvm-svn: 191804
2013-10-01Adding multiple module support for MCJIT.Andrew Kaylor
Tests to follow. PIC with small code model and EH frame handling will not work with multiple modules. There are also some rough edges to be smoothed out for remote target support. llvm-svn: 191722
2013-05-21Put RTDyldMemoryManager into its own file, and make it linked into Filip Pizlo
libExecutionEngine. Move method implementations that aren't specific to allocation out of SectionMemoryManager and into RTDyldMemoryManager. This is in preparation for exposing RTDyldMemoryManager through the C API. This is a fixed version of r182407 and r182411. That first revision broke builds because I forgot to move the conditional includes of various POSIX headers from SectionMemoryManager into RTDyldMemoryManager. Those includes are necessary because of how getPointerToNamedFunction works around the glibc libc_nonshared.a thing. The latter revision still broke things because I forgot to include llvm/Config/config.h. llvm-svn: 182418
2013-05-21Roll out r182411 and 182412 because it's still broken.Filip Pizlo
llvm-svn: 182415
2013-05-21Put RTDyldMemoryManager into its own file, and make it linked into Filip Pizlo
libExecutionEngine. Move method implementations that aren't specific to allocation out of SectionMemoryManager and into RTDyldMemoryManager. This is in preparation for exposing RTDyldMemoryManager through the C API. This is a fixed version of r182407. That revision broke builds because I forgot to move the conditional includes of various POSIX headers from SectionMemoryManager into RTDyldMemoryManager. Those includes are necessary because of how getPointerToNamedFunction works around the glibc libc_nonshared.a thing. llvm-svn: 182411
2013-05-21Roll out r182407 and r182408 because they broke builds.Filip Pizlo
llvm-svn: 182409
2013-05-21Put RTDyldMemoryManager into its own file, and make it linked into Filip Pizlo
libExecutionEngine. Move method implementations that aren't specific to allocation out of SectionMemoryManager and into RTDyldMemoryManager. This is in preparation for exposing RTDyldMemoryManager through the C API. llvm-svn: 182407
2013-05-17Minor changes to the MCJITTest unittests to use the correct API for finalizingDavid Tweed
the JIT object (including XFAIL an ARM test that now needs fixing). Also renames internal function for consistency. llvm-svn: 182085
2013-05-05Add EH support to the MCJIT.Rafael Espindola
This gets exception handling working on ELF and Macho (x86-64 at least). Other than the EH frame registration, this patch also implements support for GOT relocations which are used to locate the personality function on MachO. llvm-svn: 181167
2013-04-24Making invalidateInstructionCache automatic in SectionMemoryManagerAndrew Kaylor
llvm-svn: 180225
2012-11-28Moving SectionMemoryManager to MCJIT to avoid cross dependency between JIT ↵Andrew Kaylor
and RuntimeDyld llvm-svn: 168755