David Blaikie
8ecf9938b2
Orc: Simplify lambda by using std::set's initializer_list ctor
...
llvm-svn: 258359
2016-01-20 22:24:26 +00:00
Evgeniy Stepanov
b640415f9b
Fix build warning.
...
error: field 'CCMgr' will be initialized after field 'IndirectStubsMgr' [-Werror,-Wreorder]
: DL(TM.createDataLayout()), CCMgr(std::move(CCMgr)),
llvm-svn: 258354
2016-01-20 22:02:07 +00:00
Lang Hames
6c3e790e78
[Orc] Fix a use-after-move bug in the Orc C-bindings stack.
...
llvm-svn: 258324
2016-01-20 17:39:52 +00:00
Lang Hames
829826bf96
[Orc] Enable user-supplied memory managers in the CompileOnDemand layer.
...
Previously the CompileOnDemand layer was hard-coded to use a new
SectionMemoryManager for each function when it was called.
llvm-svn: 257265
2016-01-09 20:55:18 +00:00
Lang Hames
ea39de81e4
[Orc] Rename IndirectStubsManagerBase to IndirectStubsManager.
...
No functional change.
llvm-svn: 254885
2015-12-06 19:44:45 +00:00
Lang Hames
f0f4b4c882
[Orc] Rename JITCompileCallbackManagerBase to JITCompileCallbackManager.
...
This class is turning into a useful interface, rather than an implementation
detail, so I'm dropping the 'Base' suffix.
No functional change.
llvm-svn: 254693
2015-12-04 02:15:39 +00:00
Rafael Espindola
e63e0188e4
Revert "Revert "[Orc] Directly emit machine code for the x86 resolver block and trampolines.""
...
This reverts commit r251937.
The test was updated to the new API, bring the API back.
llvm-svn: 251944
2015-11-03 16:40:37 +00:00
Rafael Espindola
2f344637d6
Revert "[Orc] Directly emit machine code for the x86 resolver block and trampolines."
...
This reverts commit r251933.
It broke the build of examples/Kaleidoscope/Orc/fully_lazy/toy.cpp.
llvm-svn: 251937
2015-11-03 16:25:20 +00:00
Lang Hames
a4a227f7e8
[Orc] Directly emit machine code for the x86 resolver block and trampolines.
...
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.
llvm-svn: 251933
2015-11-03 16:10:18 +00:00
Lang Hames
fd6e8dc369
[Orc] Expose the compile callback API through the C bindings.
...
llvm-svn: 251683
2015-10-30 03:20:21 +00:00
Lang Hames
130a7c4152
[Orc] Re-add C bindings for the Orc APIs, with a fix to remove the union that
...
was causing builder failures.
The bindings were originally added in r251472, and reverted in r251473 due to
the builder failures.
llvm-svn: 251482
2015-10-28 02:40:04 +00:00
Lang Hames
f6bd01097a
[Orc] Revert the C bindngs commit, r251472, while I debug some builder failures.
...
llvm-svn: 251473
2015-10-28 01:03:09 +00:00
Lang Hames
ec6151066f
[Orc] Add experimental C bindings for Orc.
...
llvm-svn: 251472
2015-10-28 00:28:26 +00:00