summaryrefslogtreecommitdiff
path: root/lib/ExecutionEngine/Orc/OrcCBindingsStack.cpp
AgeCommit message (Collapse)AuthorFilesLines
2016-05-07[Orc] Rename OrcArchitectureSupport to OrcABISupport and add Win32 ABI support.Lang Hames1-7/+19
This enables lazy JITing on Windows x86-64. Patch by David. Thanks David! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@268845 91177308-0d34-0410-b5e6-96231b3b80d8
2016-04-25[ORC] clang-format code that was touched in r267457. NFC.Lang Hames1-22/+23
Commit r267457 made a lot of type-substitutions threw off code formatting and alignment. This patch should tidy those changes up. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@267475 91177308-0d34-0410-b5e6-96231b3b80d8
2016-02-10[Orc] Add lazy-JITting support for i386.Lang Hames1-0/+11
This patch adds a new class, OrcI386, which contains the hooks needed to support lazy-JITing on i386 (currently only for Pentium 2 or above, as the JIT re-entry code uses the FXSAVE/FXRSTOR instructions). Support for i386 is enabled in the LLI lazy JIT and the Orc C API, and regression and unit tests are enabled for this architecture. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@260338 91177308-0d34-0410-b5e6-96231b3b80d8
2016-01-11[Orc] Rename OrcTargetSupport to OrcArchitectureSupport to avoid confusion withLang Hames1-1/+1
the upcoming remote-target support classes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@257302 91177308-0d34-0410-b5e6-96231b3b80d8
2015-12-06[Orc] Rename IndirectStubsManagerBase to IndirectStubsManager.Lang Hames1-1/+2
No functional change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@254885 91177308-0d34-0410-b5e6-96231b3b80d8
2015-12-04[Orc] Rename JITCompileCallbackManagerBase to JITCompileCallbackManager.Lang Hames1-1/+1
This class is turning into a useful interface, rather than an implementation detail, so I'm dropping the 'Base' suffix. No functional change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@254693 91177308-0d34-0410-b5e6-96231b3b80d8
2015-11-03Revert "Revert "[Orc] Directly emit machine code for the x86 resolver block ↵Rafael Espindola1-9/+4
and trampolines."" This reverts commit r251937. The test was updated to the new API, bring the API back. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@251944 91177308-0d34-0410-b5e6-96231b3b80d8
2015-11-03Revert "[Orc] Directly emit machine code for the x86 resolver block and ↵Rafael Espindola1-4/+9
trampolines." This reverts commit r251933. It broke the build of examples/Kaleidoscope/Orc/fully_lazy/toy.cpp. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@251937 91177308-0d34-0410-b5e6-96231b3b80d8
2015-11-03[Orc] Directly emit machine code for the x86 resolver block and trampolines.Lang Hames1-9/+4
Bypassing LLVM for this has a number of benefits: 1) Laziness support becomes asm-syntax agnostic (previously lazy jitting didn't work on Windows as the resolver block was in Darwin asm). 2) For cross-process JITs, it allows resolver blocks and trampolines to be emitted directly in the target process, reducing cross process traffic. 3) It should be marginally faster. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@251933 91177308-0d34-0410-b5e6-96231b3b80d8
2015-10-28[Orc] Re-add C bindings for the Orc APIs, with a fix to remove the union thatLang Hames1-0/+47
was causing builder failures. The bindings were originally added in r251472, and reverted in r251473 due to the builder failures. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@251482 91177308-0d34-0410-b5e6-96231b3b80d8
2015-10-28[Orc] Revert the C bindngs commit, r251472, while I debug some builder failures.Lang Hames1-47/+0
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@251473 91177308-0d34-0410-b5e6-96231b3b80d8
2015-10-28[Orc] Add experimental C bindings for Orc.Lang Hames1-0/+47
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@251472 91177308-0d34-0410-b5e6-96231b3b80d8