summaryrefslogtreecommitdiffstats
path: root/llvm/examples/LLJITExamples
Commit message (Collapse)AuthorAgeFilesLines
* [ORC] Fix the LLJITWithObjectCache example to address changes in ce2207abaf9.Lang Hames2020-01-291-4/+4
| | | | (cherry picked from commit 97d000da2e6025600c4709d611e853eb1d5d407c)
* [examples] Add missing dependency in llvm examplesHiroshi Inoue2020-01-111-0/+1
| | | | To fix build failure with BUILD_SHARED_LIBS=ON
* [examples] Rename LLJITWithJITLink to LLJITWithCustomObjectLinkingLayer.Lang Hames2019-12-154-17/+15
| | | | | | | | LLJIT now uses JITLink/ObjectLinkingLayer by default where available, so these steps aren't required to use it. The tutorial is still useful though: Clients can use it to test altervative linking layer implementations (e.g. handing off to the system linker) or to test implementations of JITLink that are still under development.
* [examples] Update LLJITWithJITLink example for change in c0143f37dab.Lang Hames2019-12-151-11/+9
|
* [ORC] Add a utility to support dumping JIT'd objects to disk for debugging.Lang Hames2019-11-143-0/+83
| | | | | | | | | Adds a DumpObjects utility that can be used to dump JIT'd objects to disk. Instances of DebugObjects may be used by ObjectTransformLayer as no-op transforms. This patch also adds an ObjectTransformLayer to LLJIT and an example of how to use this utility to dump JIT'd objects in LLJIT.
* [examples] Add a dependency on ExecutionEngine to LLJITWithObjectCache example.Lang Hames2019-10-211-0/+1
| | | | | | | | | ExecutionEngine.cpp contains the anchor() for the ObjectCache base class, so we need an explicit dependency on it. Patch by Stephen Neuendorffer. Thanks Stephen! llvm-svn: 375461
* [examples] Fix some comments in the LLJITWithJITLink exampleLang Hames2019-10-181-2/+2
| | | | llvm-svn: 375269
* [examples] Add an example of how to use JITLink and small-code-model with LLJIT.Lang Hames2019-10-183-0/+82
| | | | | | | | | | | | | | | | | | | | | JITLink is LLVM's newer jit-linker. It is an alternative to (and hopefully eventually a replacement for) LLVM's older jit-linker, RuntimeDyld. Unlike RuntimeDyld which requries JIT'd code to be complied with the large code model, JITlink can link code compiled with the small code model, which is the native code model for a number of targets (including all supported MachO targets). This example shows how to: -- Create a JITLink InProcessMemoryManager -- Set the code model to small -- Use a JITLink backed ObjectLinkingLayer as the linking layer for LLJIT (rather than the default RTDyldObjectLinkingLayer). Note: This example will only work on platforms supported by JITLink. As of this commit that's MachO/x86-64 and MachO/arm64. llvm-svn: 375266
* [llvm] Migrate llvm::make_unique to std::make_uniqueJonas Devlieghere2019-08-151-1/+1
| | | | | | | | Now that we've moved to C++14, we no longer need the llvm::make_unique implementation from STLExtras.h. This patch is a mechanical replacement of (hopefully) all the llvm::make_unique instances across the monorepo. llvm-svn: 369013
* [ORC] Add custom IR compiler configuration to LLJITBuilder to enable obj caches.Lang Hames2019-07-104-0/+161
LLJITBuilder now has a setCompileFunctionCreator method which can be used to construct a CompileFunction for the LLJIT instance being created. The motivating use-case for this is supporting ObjectCaches, which can now be set up at compile-function construction time. To demonstrate this an example project, LLJITWithObjectCache, is included. llvm-svn: 365671
OpenPOWER on IntegriCloud