llvm-6502/tools
Lang Hames 63cc4f56a9 [Orc] New JIT APIs.
This patch adds a new set of JIT APIs to LLVM. The aim of these new APIs is to
cleanly support a wider range of JIT use cases in LLVM, and encourage the
development and contribution of re-usable infrastructure for LLVM JIT use-cases.

These APIs are intended to live alongside the MCJIT APIs, and should not affect
existing clients.

Included in this patch:

1) New headers in include/llvm/ExecutionEngine/Orc that provide a set of
   components for building JIT infrastructure.
   Implementation code for these headers lives in lib/ExecutionEngine/Orc.

2) A prototype re-implementation of MCJIT (OrcMCJITReplacement) built out of the
   new components.

3) Minor changes to RTDyldMemoryManager needed to support the new components.
   These changes should not impact existing clients.

4) A new flag for lli, -use-orcmcjit, which will cause lli to use the
   OrcMCJITReplacement class as its underlying execution engine, rather than
   MCJIT itself.

Tests to follow shortly.

Special thanks to Michael Ilseman, Pete Cooper, David Blaikie, Eric Christopher,
Justin Bogner, and Jim Grosbach for extensive feedback and discussion.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@226940 91177308-0d34-0410-b5e6-96231b3b80d8
2015-01-23 21:25:00 +00:00
..
bugpoint Fix style. 2014-11-07 21:30:36 +00:00
bugpoint-passes [CMake] Add LLVM_LINK_COMPONENTS to loadable modules, LLVMHello and BugpointPasses, on Win32. 2014-07-13 13:36:48 +00:00
dsymutil [dsymutil] Add the detected target triple to the debug map. 2015-01-19 23:33:14 +00:00
gold [PM] Move TargetLibraryInfo into the Analysis library. 2015-01-15 02:16:27 +00:00
llc [PM] Separate the TargetLibraryInfo object from the immutable pass. 2015-01-15 10:41:28 +00:00
lli [Orc] New JIT APIs. 2015-01-23 21:25:00 +00:00
llvm-ar Manually specify the folder that llvm-ranlib should reside in for CMake-produced solutions that care about such things (like MSVC). This takes llvm-ranlib out of the root solution folder and places it into the Tools folder where it belongs. 2015-01-07 14:19:15 +00:00
llvm-as Modernize raw_fd_ostream's constructor a bit. 2014-08-25 18:16:47 +00:00
llvm-bcanalyzer [cleanup] Re-sort all the #include lines in LLVM using 2015-01-14 11:23:27 +00:00
llvm-c-test Have llvm-c-test only use libLLVM if libLLVM has all the right components. 2014-12-18 21:03:49 +00:00
llvm-config [cmake] Teach the llvm-config program to respect LLVM_LIBDIR_SUFFIX. 2014-12-29 11:16:25 +00:00
llvm-cov [cleanup] Re-sort all the #include lines in LLVM using 2015-01-14 11:23:27 +00:00
llvm-diff Return a std::unique_ptr from the IRReader.h functions. NFC. 2014-08-26 17:29:46 +00:00
llvm-dis Use the DiagnosticHandler to print diagnostics when reading bitcode. 2015-01-10 00:07:30 +00:00
llvm-dwarfdump Remove unused includes and out of date comment. NFC. 2014-12-17 03:07:20 +00:00
llvm-extract Remove redundant calls to isMaterializable. 2014-11-01 16:46:18 +00:00
llvm-go Teach LLVM about llgo subproject. 2014-11-27 00:15:21 +00:00
llvm-jitlistener [cleanup] Re-sort all the #include lines in LLVM using 2015-01-14 11:23:27 +00:00
llvm-link Make it easier to pass a custom diagnostic handler to the IR linker. 2014-10-27 23:02:10 +00:00
llvm-lto llvm-lto: Add testing coverage for local contexts 2014-12-17 02:00:38 +00:00
llvm-mc Remove unused includes and out of date comment. NFC. 2014-12-17 03:07:20 +00:00
llvm-mcmarkup Explicitly pass ownership of the MemoryBuffer to AddNewSourceBuffer using std::unique_ptr 2014-08-21 20:44:56 +00:00
llvm-nm [cleanup] Re-sort all the #include lines in LLVM using 2015-01-14 11:23:27 +00:00
llvm-objdump Fix the problem with llvm-objdump and -archive-headers in printing the archive header size field. 2015-01-23 21:02:44 +00:00
llvm-profdata Assigning and copying command line option objects shouldn't be allowed. 2015-01-22 01:49:59 +00:00
llvm-readobj Add STB_GNU_UNIQUE to the ELF writer. 2015-01-23 04:44:35 +00:00
llvm-rtdyld [cleanup] Re-sort all the #include lines in LLVM using 2015-01-14 11:23:27 +00:00
llvm-shlib [cmake] Start making LLVM_LIBDIR_SUFFIX effective by adding it to 2014-12-29 11:16:19 +00:00
llvm-size Assigning and copying command line option objects shouldn't be allowed. 2015-01-22 01:49:59 +00:00
llvm-stress Modernize raw_fd_ostream's constructor a bit. 2014-08-25 18:16:47 +00:00
llvm-symbolizer llvm-symbolizer: teach it about PowerPC64 ELF function descriptors 2014-11-07 09:08:39 +00:00
llvm-vtabledump llvm-vtabledump: Handle Itanium VTables 2014-11-03 07:23:25 +00:00
lto Unbreak cmake build with shared libraries enabled. 2014-12-20 01:51:02 +00:00
macho-dump Add printing the LC_LINKER_OPTION load command with llvm-objdump’s -private-headers. 2014-12-18 00:53:40 +00:00
msbuild MSBuild integration: fix the loop in install.bat 2014-09-30 22:30:06 +00:00
obj2yaml obj2yaml, yaml2obj: Add support for COFF executables 2014-11-14 08:15:42 +00:00
opt [PM] Actually add the new pass manager support for the assumption cache. 2015-01-22 21:53:09 +00:00
verify-uselistorder Prologue support 2014-12-03 02:08:38 +00:00
yaml2obj [cleanup] Re-sort all the #include lines in LLVM using 2015-01-14 11:23:27 +00:00
CMakeLists.txt Initial dsymutil tool commit. 2014-12-12 17:31:24 +00:00
LLVMBuild.txt Initial dsymutil tool commit. 2014-12-12 17:31:24 +00:00
Makefile Initial dsymutil tool commit. 2014-12-12 17:31:24 +00:00